Perguntas Update não funciona.

Mais
2 anos 11 meses atrás #33078 por andreluna
Boa noite pessoal,
Vocês podem me dar uma dica, fiz um fonte de baixa automática do contas a receber.
Preciso que no final de Array e faça um update no campo ZA4_IMPORT =''E".
Mas está dando erro no indice.
Desde já agradeço...

#include 'Totvs.ch'
#include 'Topconn.ch'
#include 'Tbiconn.ch'
//ZA4_PREFIX;ZA4_NUM;ZA4_TIPO;ZA4_CLIENT;ZA4_LOJA;ZA4_NATURE;ZA4_PARCEL;ZA4_PORTAD;ZA4_BANCO;ZA4_AGENCI;ZA4_CONTA;ZA4_BAIXA;ZA4_DTCRED;ZA4_HIST
user function ZIAFIN03()
Local aBaixa :={}
Local aData :={}
Local aEnc :="E"

PREPARE ENVIRONMENT EMPRESA "01" FILIAL "01"

cQuery1 := " SELECT ZA4_PREFIX, ZA4_NUM, ZA4_TIPO, ZA4_CLIENT, ZA4_LOJA, ZA4_BANCO, ZA4_AGENCI, ZA4_CONTA, ZA4_HIST, ZA4_IMPORT FROM "+RetSQlName("ZA4")+" "
cQuery1 += " WHERE D_E_L_E_T_<>'*' AND ZA4_IMPORT ='P' "

If Select("QRY1") <> 0
dbSelectArea("QRY1")
dbCloseArea()
aData := QRY1-> ZA4_BAIXA


EndIf
TCQuery cQuery1 New Alias "QRY1"

While QRY1->(!Eof())
aBaixa := {{"E1_PREFIXO" ,QRY1->ZA4_PREFIX ,Nil },;
{"E1_NUM" ,QRY1->ZA4_NUM ,Nil },;
{"E1_TIPO" ,QRY1->ZA4_TIPO ,Nil },;
{"E1_CLIENTE" ,QRY1->ZA4_CLIENT ,Nil },;
{"E1_LOJA" ,QRY1->ZA4_LOJA ,Nil },;
{"AUTMOTBX" ,"NOR" ,Nil },;
{"AUTBANCO" ,ZA4->ZA4_BANCO ,Nil },;
{"AUTAGENCIA" ,ZA4->ZA4_AGENCI ,Nil },;
{"AUTCONTA" ,ZA4->ZA4_CONTA ,Nil },;
{"AUTDTBAIXA" ,cTod("aData") ,Nil },;
{"AUTDTCREDITO",cTod("aData") ,Nil },;
{"AUTHIST" ,"BAIXA AR CSV" ,Nil },;
{"AUTJUROS" ,0 ,Nil,.T.}}

lMsErroAuto := .F.
MSExecAuto({|x,y| Fina070(x,y)},aBaixa,3)

If lMsErroAuto
MostraErro()

EndIf

If lMsErroAuto :=.T.
QRY1 ->(DbSeek(FWxFilial("ZA4") + "ZA4_IMPORT"))
QRY1->ZA4_IMPORT := aEnc
MsgInfo('Titulo Baixado com sucesso')

EndIf

QRY1->(DbSkip())


EndDo

Por favor Acessar ou Registrar para participar da conversa.

Mais
2 anos 11 meses atrás #33079 por admin
Respondido por admin no tópico Update não funciona.
É um job que vc esta rodando ? ou está chamando pelo menu ?

Por favor Acessar ou Registrar para participar da conversa.

Mais
2 anos 11 meses atrás #33080 por admin
Respondido por admin no tópico Update não funciona.
Fiz alguns ajustes no seu fonte, mas chamando pelo menu.
#include 'Totvs.ch'
#include 'Topconn.ch'
#include 'Tbiconn.ch'
//ZA4_PREFIX;ZA4_NUM;ZA4_TIPO;ZA4_CLIENT;ZA4_LOJA;ZA4_NATURE;ZA4_PARCEL;ZA4_PORTAD;ZA4_BANCO;ZA4_AGENCI;ZA4_CONTA;ZA4_BAIXA;ZA4_DTCRED;ZA4_HIST
user function ZIAFIN03()
Local aArea := GetArea()

//PREPARE ENVIRONMENT EMPRESA "01" FILIAL "01"

cQuery1 := " SELECT ZA4_PREFIX, ZA4_NUM, ZA4_TIPO, ZA4_CLIENT, ZA4_LOJA, ZA4_BANCO, ZA4_AGENCI, ZA4_CONTA, ZA4_HIST, ZA4_IMPORT, ZA4_BAIXA, R_E_C_N_O_ REGZA4 FROM "+RetSQlName("ZA4")+" "
cQuery1 += " WHERE D_E_L_E_T_<>'*' AND ZA4_IMPORT = 'P' "

If Select("QRY1") <> 0
	dbSelectArea("QRY1")
	dbCloseArea()
EndIf

TCQuery cQuery1 New Alias "QRY1"

TCSETFIELD("QRY1","ZA4_BAIXA", "D",8,0)		// Converte o retorno do campo data da query para data

Begin Transaction // Inicia transacao, caso de algum erro retorna posicao original

While QRY1->(!Eof())

	ZA4->(dbGoTo(QRY->REGZA4))		// vai direto no registro da za4

	aBaixa := {{"E1_PREFIXO" ,ZA4->ZA4_PREFIX ,Nil },;
				{"E1_NUM" ,ZA4->ZA4_NUM ,Nil },;
				{"E1_TIPO" ,ZA4->ZA4_TIPO ,Nil },;
				{"E1_CLIENTE" ,ZA4->ZA4_CLIENT ,Nil },;
				{"E1_LOJA" ,ZA4->ZA4_LOJA ,Nil },;
				{"AUTMOTBX" ,"NOR" ,Nil },;
				{"AUTBANCO" ,ZA4->ZA4_BANCO ,Nil },;
				{"AUTAGENCIA" ,ZA4->ZA4_AGENCI ,Nil },;
				{"AUTCONTA" ,ZA4->ZA4_CONTA ,Nil },;
				{"AUTDTBAIXA" ,ZA4->ZA4_BAIXA ,Nil },;
				{"AUTDTCREDITO",ZA4->ZA4_BAIXA ,Nil },;
				{"AUTHIST" ,"BAIXA AR CSV" ,Nil },;
				{"AUTJUROS" ,0 ,Nil,.T.}}

	lMsErroAuto := .F.
	MSExecAuto({|x,y| Fina070(x,y)},aBaixa,3)

	If lMsErroAuto
		MostraErro()
		DisarmTransaction() // Desarma transacao e volta a situação anterior dos registros sem baixa.
		Exit	// Cai fora do while
	Else
		If RecLock("ZA4",.F.)
			ZA4->ZA4_IMPORT := 'E'
			ZA4->(MsUnlock())
		Endif
	EndIf
	
	QRY1->(dbSkip(1))
Enddo
QRY1->(dbCloseArea())

End Transaction // Finaliza transacao confirmando todas as baixas
RestArea(aArea)
Return Nil

Por favor Acessar ou Registrar para participar da conversa.

Mais
2 anos 11 meses atrás #33085 por andreluna
Respondido por andreluna no tópico Update não funciona.
`Bom noite
É um chamado pelo menu.

Por favor Acessar ou Registrar para participar da conversa.

Mais
2 anos 11 meses atrás #33086 por admin
Respondido por admin no tópico Update não funciona.
blz, deu certo o codigo que te passei ?

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.097 segundos
Joomla templates by a4joomla