Imprimi Página | Fechar janela

Ponto de entrada FINA110

Impresso de: Helpfacil - Portal do conhecimento
Nome do Forum: ADVPL
Descrição do Forum: Dúvidas sobre a programação em ADVPL
URL:http://www.helpfacil.com.br/display_topic_threads.asp?ForumID=1&TopicID=42007
Data da Impressão: quinta-feira, 28 de março de 2024 at 17:09


Topico: Ponto de entrada FINA110

Postado por: ACG1574
Assunto: Ponto de entrada FINA110
Data Postagem: quarta-feira, 20 de junho de 2018 at 07:36

Pessoal bom dia,
o ponto de entrada FINA110 na versao 12 esta comportando estranho
tenho um codigo la que na versao 11 funciona perfeito, gravando dados da se5 em outra tabela que se
chama za0, agora ele ta duplicando o titulo na tabela za0, fui debugar ele passa 2x no mesmo titulo
uma vem com o e5_seq em branco o banco em branco, agencia em branco, e a outra vem preenchido
se alguem puder me ajudar com isso agradeço muito
obrigado. em baixo vou deixar meu codigo.

User Function FINA110()

Local _aArea := GetArea()
Local _cRecibo:=_cReciboP

// nao executar se ponto de entrada estiver sendo chamado de programa do controle de leite
if alltrim(upper(funname()))$‘MGLT031/MGLT034/MGLT035/MGLT036/MGLT037/MGLT038/MGLT039/AGLT046/MCTB017‘
Return
Endif

dbselectarea("ZA0")
reclock("ZA0",.T.)

ZA0->ZA0_FILIAL:=xfilial("ZA0")
ZA0->ZA0_MSFIL :=SE1->E1_MSFIL
ZA0->ZA0_RECIBO:=_cRecibo
ZA0->ZA0_PREFIX:=SE1->E1_PREFIXO
ZA0->ZA0_NUM :=SE1->E1_NUM
ZA0->ZA0_PARCEL:=SE1->E1_PARCELA
ZA0->ZA0_TIPO :=SE1->E1_TIPO
ZA0->ZA0_DATA :=DBAIXA // variaveis "private" do fonte padrao
ZA0->ZA0_VALOR :=NVALREC // variaveis "private" do fonte padrao
ZA0->ZA0_MULTA :=NMULTA
ZA0->ZA0_JUROS :=NJUROS
ZA0->ZA0_DESC :=NDESCONT

ZA0->ZA0_SEQ := SE5->E5_SEQ
ZA0->ZA0_CARTEI := "E1"
ZA0->ZA0_BANCO := SE5->E5_BANCO
ZA0->ZA0_AGENCI := SE5->E5_AGENCIA
ZA0->ZA0_CONTA := SE5->E5_CONTA

ZA0->ZA0_CLIFOR := SE1->E1_CLIENTE
ZA0->ZA0_LOJA := SE1->E1_LOJA

msunlock()

dbselectarea("SE1")
reclock("SE1",.F.)
SE1->E1_C_RECIB:=_cRecibo
msunlock()

RestArea(_aArea)

return


Alexandre
Analista de Sistemas


Respostas:

Postado Por: EMERSON.EN
Data Postagem: quarta-feira, 20 de junho de 2018 at 09:18

naquela condição de retorno, avalie se o campo E5_SEQ está preenchido.

// nao executar se ponto de entrada estiver sendo chamado de programa do controle de leite
if alltrim(upper(funname()))$'MGLT031/MGLT034/MGLT035/MGLT036/MGLT037/MGLT038/MGLT039/AGLT046/MCTB017';
.OR. Empty(SE5->E5_SEQ)
   Return
Endif



Postado Por: ACG1574
Data Postagem: quarta-feira, 20 de junho de 2018 at 10:20

EMERSON eu ja fiz isso, quando é um titulo só funciona, quando é marca mais de um nao funciona. ta muito estranho isso.

Alexandre
Analista de Sistemas



Postado Por: ACG1574
Data Postagem: quarta-feira, 20 de junho de 2018 at 10:36

marco 2 titulos, usando o codigo q vc falou acima ai, ai ele só faz 1 titulo, nao faz o outro.kkkk

Alexandre
Analista de Sistemas




Imprimir Página | Fechar Janela