You are on page 1of 2

Pgina 1 de 2

06 Contabilizando
Reviso: 13/07/2002

Abrangncia Verso 5.07 Verso 5.08

A contabilizao de registros em um sistema ERP necessrio toda vez que houverem operaoes envolvendo valores na empresa, como por exemplo, a emisso de uma nota fiscal, um recebimento de dinheiro, um pagamento na folha, entre outros. Para quem est programando fundamental que este conceito esteja bastante sidimentado. Para se definir a contabilizao em qualquer rotina deve-se : Definir os lanamentos padronizados que sero utilizados para a rotina (cada mdulo ou famlia de mdulo possui uma sequencia lgica) Preparar o programa para efetuar as atualizaes e a contabilizao. Este detalhe muito importante pois o lanamento padro uma frmula e o posicionamento dos registros fundamental. Exemplo : Na rotina de exclusao de nota fiscal deve-se executar a contabilizao antes do comando dbDelete(). A chamada do lanamento contbil deve estar em um lugar estratgicamente correto, pois teoricamente a ltima coisa a ser feita na rotina. No aconselhvel executar a contabilizao e depois efetuar outros comandos.

Existem trs funes que devero ser utilizadas, para que seja criado um arquivo texto, contendo as informaes a serem contabilizadas. Como temos 2 sistemas contbeis (SIGACON e SIGACTB) com procedimentos diferenciados programamos de forma identica para ambos porm internamente as rotinas efetuam comandos diferentes. Os comandos para a contabilizao so :

A Funo HeadProva Este funo cria o cabealho da contabilizao. tratada de forma diferenciada para os mdulos SIGACON e SIGACTB.
Sintaxe:

nHdlPrv := HeadProva(cLoteAtf, cNomProg, Substr(cUsuario,7,6), @arquivo, .T.) Onde: NHdlPrv -> Varivel que conter o num. (Handle) do arquivo (.LAN) criado. cLoteAtf -> Cdigo do lote do mdulo (Ex.: Ativo Fixo: 8866) cNomProg -> Nome do Programa (Ex.: ATFA060) cUsuario -> Usurio arquivo: nome do arquivo (Ex.: cArquivo := )

http://dem.microsiga.com.br/w_wEx011.apw?Cod=018279

24/8/2004

Pgina 2 de 2

A funo DetProva()

Em primeiro lugar, deve-se estar posicionado no registro, que contm o valor ser contabilizado
Sintaxe:

ExpN1 := DetProva(ExpN2,ExpC1,ExpC2,ExpC3) onde ExpN1 -> Valor Total da Contabilizao ExpN2 -> Handle retornado da funo anterior ExpC1 -> Cdigo do Lanamento Padro ExpC2 -> Nome da rotina Geradora ExpC3 -> Lanamento Padro

A funo RodaProva()

Esta funo ir cria a finalizao da contabilizao.


Sintaxe:

RodaProva(ExpN1, ExpN2) onde ExpN1 -> Handle retornado da funo anterior ExpN2 -> Valor Total da contabililizao

No Final, ou seja, aps todos registros serem processados utilizar a funo CA100INCL(), cujo objetivo ler o arquivo gerado (.LAN), e gerar os lanamentos no arquivo SI2 (Lanamentos contbeis). Exemplo:

CA100Incl( cArquivo, nHdlPrv, nOpcx, cLoteContabil, lDigita, lAglut, cOnLine, dData) Onde: Arquivo -> Nome do arquivo nHdlPrv -> Numero do Header nOpcx -> Numero da Opcao escolhida cLoteContabil -> Numero do Lote lDigita -> Se Mostra ou nao lAglut -> Se Aglutina ou no cOnLine -> Determina se sera On Line ou pelo cProva

Grupos Relacionados Principal / Guias de Referncia / Como programar Advpl no ERP

Topo da Pgina

http://dem.microsiga.com.br/w_wEx011.apw?Cod=018279

24/8/2004