Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.


01. 

...

VISIÓN GENERAL

Exemplos de execução via rotina automática na rotina de lançamentos contábeis Extemporâneos Ejemplos de ejecución vía rutina automática en la rutina de asientos contables Extemporáneos (CTBS460), mostrando exemplos de utilização e tabelas ejemplos de utilización y tablas relacionadas.

02. 

...

EJEMPLO DE

...

UTILIZACIÓN

A continuación se muestran algunos ejemplos de utilización

...

Abaixo mostraremos exemplos de utilização.


Aviso
titleAviso

As Execuções Automáticas demonstradas abaixo são apenas um exemplo.

...

Las Ejecuciones automáticas mostradas a continuación solamente son un ejemplo.


Inclusión


Bloco de código
languagepy
themeMidnight
titleMyCtbs460Inc
linenumberstrue
collapsetrue
#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"
#INCLUDE "rwmake.ch"
#include 'totvs.ch'
#include 'tbiconn.ch'

Static __oModelAut := NIL //variavelvariable oModel para substituirsustituir msexecauto emen MVC

User Function MyCtbs460Inc() 
Local lNotFound := .F.
Local oModelCSQ
Local nX
Local aLog
Local cLog :=""
Local lRet := .T.

PREPARE ENVIRONMENT EMPRESA 'T1' FILIAL 'D MG 01' TABLES 'CSQ','CT2' MODULO 'CTB'

While CT2->(!Eof()) .AND. lNotFound == .F.
	CSQ->(dbSetOrder(1))
    lNotFound  :=  !CSQ->(dbSeek(CT2->CT2_FILIAL+DTOS(CT2->CT2_DATA)+CT2->CT2_LOTE+CT2->CT2_SBLOTE+CT2->CT2_DOC+CT2->CT2_LINHA+CT2->CT2_EMPORI+CT2->CT2_FILORI))
	If lNotFound
		Loop
	else
		CT2->( dbSkip() )
	Endif
	
Enddo

If __oModelAut == Nil //somentesolamente umauna unicaúnica vez carregacarga oel modelo CTBS460
__oModelAut := FWLoadModel( 'CTBS460' )
EndIf

__oModelAut:SetOperation(MODEL_OPERATION_INSERT)
__oModelAut:Activate()

oModelCSQ := __oModelAut:GetModel('CSQMASTER')
oModelCSQ:SetValue("CSQ_FILIAL",CT2->CT2_FILIAL)
oModelCSQ:SetValue("CSQ_DATA",CT2->CT2_DATA)
oModelCSQ:SetValue("CSQ_LOTE",CT2->CT2_LOTE)
oModelCSQ:SetValue("CSQ_SBLOTE",CT2->CT2_SBLOTE)
oModelCSQ:SetValue("CSQ_DOC",CT2->CT2_DOC)
oModelCSQ:SetValue("CSQ_LINHA",CT2->CT2_LINHA)
oModelCSQ:SetValue("CSQ_EMPORI",CT2->CT2_EMPORI)
oModelCSQ:SetValue("CSQ_FILORI",CT2->CT2_FILORI)
oModelCSQ:SetValue("CSQ_DTEXT",Stod("20230723"))
oModelCSQ:SetValue("CSQ_NATLCT","1") // 1 - LançamentoRegistro emen ContasCuentas de Patrimôniopatrimonio/ 2 - LançamentoRegistro emen ContasCuentas de Resultadoresultado

If __oModelAut:VldData() //validacao dos dados pelovalidación de los datos por el modelo

	__oModelAut:CommitData() //gravacaograbación de doslos dadosdatos

Else
	aLog := __oModelAut:GetErrorMessage() //Recupera oel erroerror dodel model quandocuando naono passoupasó noen VldData
	//lacobucle para gravargrabar emen string cLog conteudocontenido dodel array aLog
	For nX := 1 to Len(aLog)
		If !Empty(aLog[nX])
			cLog += Alltrim(aLog[nX]) + CRLF
		EndIf
	Next nX

	lMsErroAuto := .T. //setaflecha variavelvariable private como erroerror
	AutoGRLog(cLog) //gravagraba log para exibirmostrar comcon funcaofunción mostraerro
	mostraerro()
	lRet := .F. //retornadevuelve false
Endif


__oModelAut:DeActivate() //desativadesactiva modelo

Return( lRet )
 

...


Modificación


Bloco de código
languagepy
themeMidnight
titleMyCtbs460Alt
collapsetrue
#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"
#INCLUDE "rwmake.ch"
#include 'totvs.ch'
#include 'tbiconn.ch'

Static __oModelAut := NIL //variavelvariable oModel para substituirsustituir msexecauto emen MVC

User Function MyCtbs460Alt() 
Local lFound := .F.
Local oModelCSQ
Local nX
Local aLog
Local cLog :=""
Local lRet := .T.

PREPARE ENVIRONMENT EMPRESA 'T1' FILIAL 'D MG 01' TABLES 'CSQ','CT2' MODULO 'CTB'

While CT2->(!Eof()) .AND. lFound == .F.
	CSQ->(dbSetOrder(1))
    lFound  :=  CSQ->(dbSeek(CT2->CT2_FILIAL+DTOS(CT2->CT2_DATA)+CT2->CT2_LOTE+CT2->CT2_SBLOTE+CT2->CT2_DOC+CT2->CT2_LINHA+CT2->CT2_EMPORI+CT2->CT2_FILORI))
	If lFound
	    Loop
	else
		CT2->( dbSkip() )
	Endif
	
Enddo

If __oModelAut == Nil //somentesolamente umauna unicaúnica vez carregacarga oel modelo CTBS460
__oModelAut := FWLoadModel( 'CTBS460' )
EndIf

__oModelAut:SetOperation(MODEL_OPERATION_UPDATE)
__oModelAut:Activate()

oModelCSQ := __oModelAut:GetModel('CSQMASTER')
oModelCSQ:SetValue("CSQ_DTEXT",Stod("20230823"))


If __oModelAut:VldData() //validacao dos dados pelovalidación de los datos por el modelo

	__oModelAut:CommitData() //gravacaograbación de doslos dados

Else
	aLog := __oModelAut:GetErrorMessage() //Recupera oel erroerror dodel model quandocuando naono passoupasó noen VldData
	//lacobucle para gravargrabar emen string cLog conteudocontenido dodel array aLog
	For nX := 1 to Len(aLog)
		If !Empty(aLog[nX])
			cLog += Alltrim(aLog[nX]) + CRLF
		EndIf
	Next nX

	lMsErroAuto := .T. //setaflecha variavelvariable private como erroerror
	AutoGRLog(cLog) //gravagraba log para exibirmostrar comcon funcaofunción mostraerro
	mostraerro()
	lRet := .F. //retornadevuelve false
Endif


__oModelAut:DeActivate() //desativadesactiva modelo

Return( lRet )

...


Borrado


Bloco de código
languagepy
themeMidnight
titleMyCtbs460Exl
collapsetrue
#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"
#INCLUDE "rwmake.ch"
#include 'totvs.ch'
#include 'tbiconn.ch'

Static __oModelAut := NIL //variavelvariable oModel para substituirsustituir msexecauto emen MVC

User Function MyCtbs460Exl() 
Local lFound := .F.
Local nX
Local aLog
Local cLog :=""
Local lRet := .T.

PREPARE ENVIRONMENT EMPRESA 'T1' FILIAL 'D MG 01' TABLES 'CSQ','CT2' MODULO 'CTB'

While CT2->(!Eof()) .AND. lFound == .F.
	CSQ->(dbSetOrder(1))
    lFound  :=  CSQ->(dbSeek(CT2->CT2_FILIAL+DTOS(CT2->CT2_DATA)+CT2->CT2_LOTE+CT2->CT2_SBLOTE+CT2->CT2_DOC+CT2->CT2_LINHA+CT2->CT2_EMPORI+CT2->CT2_FILORI))
	If lFound
	    Loop
	else
		CT2->( dbSkip() )
	Endif
	
Enddo

If __oModelAut == Nil //somentesolamente umauna unicaúnica vez carregacarga oel modelo CTBS460
__oModelAut := FWLoadModel( 'CTBS460' )
EndIf

__oModelAut:SetOperation(MODEL_OPERATION_DELETE)
__oModelAut:Activate()

If __oModelAut:VldData() //validacao dos dados pelovalidación de los datos por el modelo

	__oModelAut:CommitData() //gravacaograbación de doslos dadosdatos

Else
	aLog := __oModelAut:GetErrorMessage() //Recupera oel erroerror dodel model quandocuando naono passoupasó noen VldData
	//lacobucle para gravargrabar emen string cLog conteudocontenido dodel array aLog
	For nX := 1 to Len(aLog)
		If !Empty(aLog[nX])
			cLog += Alltrim(aLog[nX]) + CRLF
		EndIf
	Next nX

	lMsErroAuto := .T. //setaflecha variavelvariable private como erroerror
	AutoGRLog(cLog) //gravagraba log para exibirmostrar comcon funcaofunción mostraerro
	mostraerro()
	lRet := .F. //retornadevuelve false
Endif


__oModelAut:DeActivate() //desativadesactiva modelo

Return( lRet )
  


03. 

...

TABLAS UTILIZADAS

  • CT2- Lançamentos ContábeisAsientos contables
  • CSQ - Lançamento Extemporâneo Registro extemporáneo       

04.

...

...

OTROS ASUNTOS

...