×
Linguagem de Programação ADVPL
Perguntas Retorno na Tela
- danielzv
- Autor do Tópico
- Desconectado
- Membro Especialista
Menos
Mais
- Postagens: 91
- Obrigados Recebidos: 0
9 anos 11 meses atrás #26295
por danielzv
Retorno na Tela foi criado por danielzv
Boa tarde galera,
Estou desenvolvendo uma tela para consulta de saldo em estoque através de um atalho do teclado,
no caso estou utilizando o Ctrl+A para chamar a função de consulta saldo de todas as filais,
dentro do cadastro de produtos.
Ao pressionar o atalho ele lista corretamente o produto e saldo em todas as filiais, porém ao fechar a tela,
e voltar a tela de cadastro de produto, ele não atualiza a tela, fica como se estivesse no registro que fiz a busca,
porém se clicar pra baixo ele mostra que esta no código 000001, ao invés de estar no código que foi feita a pesquisa.
Testei chamar a função em um botão nas ações relacionadas da rotina de cadastro de produto, e assim ele retorna,
no registro correto.
Segue abaixo o Ponto de Entrada utilizado com as duas chamadas.
User Function MT010BRW
Local aRet := {}
AAdd( aRet, { "Saldo", "U_FKSALDPRO", 0, 4 } )
SetKey( K_CTRL_A , {|| U_FKSALDPRO() })
Return aRet
Alguém tem ideia de como devo fazer para que chamando pelo atalho ele retorne no registro correto.
Grato.
Estou desenvolvendo uma tela para consulta de saldo em estoque através de um atalho do teclado,
no caso estou utilizando o Ctrl+A para chamar a função de consulta saldo de todas as filais,
dentro do cadastro de produtos.
Ao pressionar o atalho ele lista corretamente o produto e saldo em todas as filiais, porém ao fechar a tela,
e voltar a tela de cadastro de produto, ele não atualiza a tela, fica como se estivesse no registro que fiz a busca,
porém se clicar pra baixo ele mostra que esta no código 000001, ao invés de estar no código que foi feita a pesquisa.
Testei chamar a função em um botão nas ações relacionadas da rotina de cadastro de produto, e assim ele retorna,
no registro correto.
Segue abaixo o Ponto de Entrada utilizado com as duas chamadas.
User Function MT010BRW
Local aRet := {}
AAdd( aRet, { "Saldo", "U_FKSALDPRO", 0, 4 } )
SetKey( K_CTRL_A , {|| U_FKSALDPRO() })
Return aRet
Alguém tem ideia de como devo fazer para que chamando pelo atalho ele retorne no registro correto.
Grato.
Por favor Acessar ou Registrar para participar da conversa.
- admin
- Desconectado
- Administrador
Menos
Mais
- Postagens: 297
- Obrigados Recebidos: 21
- danielzv
- Autor do Tópico
- Desconectado
- Membro Especialista
Menos
Mais
- Postagens: 91
- Obrigados Recebidos: 0
9 anos 11 meses atrás #26297
por danielzv
Respondido por danielzv no tópico Retorno na Tela
Valeu pela atenção,
Mas já havia feito isso e mesmo assim não retorna corretamente quando a Função FKSALDPRO() é chamada pelo Ctrl+A, e chamado pelo Ações relacionadas funciona corretamente.
Vlw
Mas já havia feito isso e mesmo assim não retorna corretamente quando a Função FKSALDPRO() é chamada pelo Ctrl+A, e chamado pelo Ações relacionadas funciona corretamente.
Vlw
Por favor Acessar ou Registrar para participar da conversa.
- admin
- Desconectado
- Administrador
Menos
Mais
- Postagens: 297
- Obrigados Recebidos: 21
- danielzv
- Autor do Tópico
- Desconectado
- Membro Especialista
Menos
Mais
- Postagens: 91
- Obrigados Recebidos: 0
9 anos 11 meses atrás #26303
por danielzv
Respondido por danielzv no tópico Retorno na Tela
Segue abaixo.
User Function FKSALDPRO()
Local aIndex := {}
Local oSButton1
Local aAreaSB1 := SB1->(GetArea())
Private _oDlg
dbSelectArea("SB1")
dbSetOrder(1)
nProduto := SB1->B1_COD
cDProduto := SB1->B1_DESC
cDUnidade := SB1->B1_UM
dbCloseArea("SB1")
nPreco := POSICIONE("DA1",1,XFILIAL("DA1")+"001"+nProduto,"DA1->DA1_PRCVEN")
DEFINE MSDIALOG _oDlg TITLE "Estoque Filiais" FROM 000, 000 TO 330, 500 OF GetWndDefault() PIXEL //COLORS 0, 16777215 PIXEL
_oDlg:lEscClose := .T.
@ 007, 012 SAY oSay1 PROMPT "Produto:" SIZE 025, 007 OF _oDlg COLORS 0, 16777215 PIXEL
@ 007, 040 SAY oSay2 PROMPT alltrim(nProduto) +" - "+ alltrim(cDProduto) SIZE 163, 007 OF _oDlg COLORS 0, 16777215 PIXEL
@ 015, 012 SAY oSay3 PROMPT "Preço de Venda:" SIZE 163, 007 OF _oDlg COLORS 0, 16777215 PIXEL
@ 015, 052 SAY oSay4 PROMPT TRANSFORM(nPreco, "@E 999,999.99") SIZE 163, 007 OF _oDlg COLORS 0, 16777215 PIXEL
@ 015, 080 SAY oSay2 PROMPT " - "+ alltrim(cDUnidade) SIZE 163, 007 OF _oDlg COLORS 0, 16777215 PIXEL
fFiliais(nProduto)
DEFINE SBUTTON FROM 150,216 TYPE 2 ACTION Close(_oDlg) ENABLE OF _oDlg
ACTIVATE MSDIALOG _oDlg CENTERED
RestArea(aAreaSB1)
Return
User Function FKSALDPRO()
Local aIndex := {}
Local oSButton1
Local aAreaSB1 := SB1->(GetArea())
Private _oDlg
dbSelectArea("SB1")
dbSetOrder(1)
nProduto := SB1->B1_COD
cDProduto := SB1->B1_DESC
cDUnidade := SB1->B1_UM
dbCloseArea("SB1")
nPreco := POSICIONE("DA1",1,XFILIAL("DA1")+"001"+nProduto,"DA1->DA1_PRCVEN")
DEFINE MSDIALOG _oDlg TITLE "Estoque Filiais" FROM 000, 000 TO 330, 500 OF GetWndDefault() PIXEL //COLORS 0, 16777215 PIXEL
_oDlg:lEscClose := .T.
@ 007, 012 SAY oSay1 PROMPT "Produto:" SIZE 025, 007 OF _oDlg COLORS 0, 16777215 PIXEL
@ 007, 040 SAY oSay2 PROMPT alltrim(nProduto) +" - "+ alltrim(cDProduto) SIZE 163, 007 OF _oDlg COLORS 0, 16777215 PIXEL
@ 015, 012 SAY oSay3 PROMPT "Preço de Venda:" SIZE 163, 007 OF _oDlg COLORS 0, 16777215 PIXEL
@ 015, 052 SAY oSay4 PROMPT TRANSFORM(nPreco, "@E 999,999.99") SIZE 163, 007 OF _oDlg COLORS 0, 16777215 PIXEL
@ 015, 080 SAY oSay2 PROMPT " - "+ alltrim(cDUnidade) SIZE 163, 007 OF _oDlg COLORS 0, 16777215 PIXEL
fFiliais(nProduto)
DEFINE SBUTTON FROM 150,216 TYPE 2 ACTION Close(_oDlg) ENABLE OF _oDlg
ACTIVATE MSDIALOG _oDlg CENTERED
RestArea(aAreaSB1)
Return
Por favor Acessar ou Registrar para participar da conversa.
Tempo para a criação da página:0.083 segundos