Integração entre o SigGestão e o SigERP
Revisão: 1.0
A Integração do SigGestão com o SigERP, se dá em duas etapas:
1) Exportação de dados do SigGestão para arquivo txt
2) Importação do arquivo txt gerado na primeira etapa para o SigERP
Primeira etapa
Nesta etapa serão utilizados programas desenvolvidos em Cobol que devem ser executado dentro do executor de programas para a primeira exportação(exportação total da base) e as alterações serão automaticas, ou seja o proprio SigGestão irá gerar os arquivos txt de exportação automáticamente, sempre que alguma dado que seja integravel seja alterado na base cobol.
Os programas utilizados nesta etapa tem o seguinte formato XXX2ope.cob, onde XXX é o nome do módulo. Ex.: cre -> contas a receber, cpg -> contas a pagar, etc...
Estes programas devem estar na pasta objetos do SigGestão.
Segunda etapa
Nesta etapa serão utilizados programas desenvolvidos em Python que devem ser executados manualmente para a primeira importação(Importação total da base) e as alterações serão automáticas, executadas de dentro do SigGestão.
Os programas utilizados nesta etapa tem o seguinte formato XXX2ope.py onde XXX é o nome do módulo. Ex.: cre -> contas a receber, cpg -> contas a pagar, etc...
Estes programas devem estar na pasta objetos do SigGestão.
Configuração para integração
É necessário criar uma pasta "int" que deve ficar dentro da pasta /mm/arquivos. Nesta pasta serão colocados os arquivos txt gerados na primeira etapa.
É necessário criar um arquivo sigestao.cfg que deve ficar dentro da pasta /mm/objetos. Este arquivo vai controlar quais arquivos serão integrados e tem dois tipos de linha que tem o seguinte formato:
Também haverá outro arquivo de configuração sigerp.cfg, que tambem ficará na pasta /mm/objetos. Este arquivo controla os parametros de integração, como identificação do servidor, usuário, senha, etc...
Arquivo sigestao.cfg
Primeira Linha do arquivo sigestao.cfg
parar=X
- "parar=" é fixo e deve estar na primeira coluna da primeira linha
- 'X' deve ser 's' ou 'n' onde 's' informa que é para parar a integração, e 'n' indica que não é para parar a integração
Se em algum momento for necessário parar a integração, bastar colocar o 's' que a integração será paralizada.
Atenção: Uma vez paralizado, as alterações na base do cobol que acontecerem enquanto a integração está parada, serão perdidas para efeito de integração.
Segunda linha em diante do arquivo sigestao.cfg
AAABBBCCDE onde:
AAA = o numero da empresa que será integrada com 3 digitos(zeros a esquerda)
BBB = o nome do modulo como por exempo cre, cpg, fis, etc
CC= o número do arquivo que será integrado. Este número é o mesmo utilizado no sis045.
D = 's' ou 'n' onde 's' informa que a primeira etapa deve funcionar e 'n' diz que não
E = 's' ou 'n' onde 's' informa que a segunda etapa deve funcionar e 'n' diz que não.
Como exemplo, Se quizermos integrar os seguintes arquivos Clientes, duplicatas, cadastros e grades da empresa 2, o arquivo sigestao.cfg ficaria assim:
parar=n
002cre01ss
002cre02ss
002est01ss
002est05ss
-> cre01 é o cadastro de cliente(arquivo 01 do modulo cre do sis045)
-> cre02 é o arquivo de duplicatas(arquivo 02 do modulo cre do sis045)
-> est01 é o cadastro de itens(arquivo 01 do modulo est do sis045)
-> est05 é o cadastro de grades(arquivo 05 do modulo est do sis045)
Entre as linhas, pode haver espaços para facilitar a visualização se quizer, porem não pode haver espaços entre os dados dentro de uma linha.
Todas as letras devem estar em minusculas.
Outro exemplo:
Caso queira que o SigGestão exporte, mas por algum motivo não queira que o SigERP importe o arquivo de duplicatas, a linha ficaria assim:
002cre02sn
Neste caso a cada duplicata nova ou alterada no SigGestão, o txt referente a alteração será gerado na pasta int, mas o SigERP não irá importar.
Qdo o 'n' no final desta linha for trocado por 's', na primeira exportação que houver de duplicatas, tudo que estava pendente será importado para o SigERP.
Arquivo sigerp.cfg
Este arquivo identifica servidor, usuário, etc...
Seu formato é:
Primeira linha
Esta linha deve ser sempre:
hostname,username,password,porta,database,dbhostname,dbuser,dbpasswd
obs.: nada nesta linha pode ser alterado, é copiar e colar
Segunda linha
Esta linha indica os dados que foram colocados na primeira linha
ex.:
localhost,admin,senha,8069,base,dblocalhost,usuario,dbsenha
onde:
- localhost, deve ser o ip do servidor do SigERP
- admin, é o usuário cadastrado dentro do SigERP
- senha é a senha do usuario cadastrado no SigERP
- 8069 é a porta que onde o SigERP está esperando a conecção
- base é o nome da base de dados do postgre, é o banco de dados onde voce quer inserir
- dblocalhost é o ip de onde está o postgresql
- usuario é o nome do usuario do postgresql
- dbsenha é a senha do usuário no postgresql
Obs.: não pode haver espaço entre as virgulas.
Arquivos de log
Os arquivos de logs serão gerados na pasta logs que está dentro do /mm/arquivos e o formato dos arquivos é:
XXX2ope.log.AAAAMMDD.log
onde:
XXX é o módulo. Ex.: cre, cpg, est, etc...
AAAAMMDD é a data no formato invertido em que a transação aconteceu.
Arquivos de integração(txt)
Estes arquivos serão gerados na pasta int e o seu formato é:
XXXYY_AAAAMMDD_HHMMSSDD_WWW_Z
onde:
XXX é o módulo ex.: cre, cpg, etc
YY é o numero do arquivo no sis045
AAAAMMDD é a data da transação
HHMMSSDD é o horário da transação
WWW é a empresa a que pertence o arquivo
Z varia conforme a transação. Z pode ser:
'X' para exportação total(primeira exportação)
'W' para gravação, inclusão de registro
'D' para exclusao de registro
'R' para atualização de uma informação que já existe.
Com exceção da primeira exportação, estes arquivos contem apenas 1 registro, portanto serão tantos arquivos quanto sejam as alterações acontecidas no SigGestão.
Sempre que um arquivo é importado com sucesso, ele é removido da pasta int, porem, se houver algum problema com a integração, uma mensagem é gerado no arquivo de log indentificando o problema e o arquivo é mantido na pasta.
No casa do primeira importação, como o arquivo txt(arquivo com final = 'X') contem todos os registros da tabela exportada no SigGestão, pode ser que algum registro tenha problema para ser importado. Neste caso, tambem será gerada uma mensagem no log identificando o problema e o registro que não foi importado será gravado na pasta int em um novo arquivo com o final 'W'.
Estrutura para integração
/mm
/arquivos
/int
/logs
/objetos
/sigerp.cfg
/sigestao.cfg
/*2ope.cob
/*2ope.py
Roteiro para Integração
Para efetuar a integração, o seguinte roteiro deve ser seguido:
- Crie os arquivos de configuracao e a estrutura de pastas necessárias para a integração,
- Instale todos os módulos necessários e não faça nenhum lançamento (adm, automacao, balanca, compras, concorrencia, contabil, documento, ecf, estoque, estoquealmoxarifado, estoquepedidos, estoqueressuprimento, financeiro, fiscal, fluxocaixa, kit, legado, orcamentos, patrimonio, rh, tarefas, veiculos, vendas). Obs.: Não pode faltar nenhum destes módulos.
- Crie a correlação de empresas (configuracoes/empresas/correlação de empresas) para cada empresa crie duas correlações (com e sem nf)
- Importe o cadastro de pessoas (cliente e fornecedor)
- Altere o cadastro da empresa, completando todos os dados, principalmente da aba pessoa juridica
- Associe a empresa a pessoa(cadastro de empresas)
- Crie o parametro do estoque
- Crie o parametro do fiscal
- Exporte e importe os cfops sis2ope e demais tabelas
- Importe os titulos (cre02, cre03, cpg03, cpg06)
- No fiscal, associe à empresa os encargos existentes
- Crie um item antes de importar o cadastro(porcausa do sequence)
- Importe as tabelas básicas do estoque e depois o cadastro
Obs:
- Apos a importação do estoque, chamar o atu2ope para estoque_produto_grade para calcular as function storeadas
- Apos a importação do fiscal, chamar o atu2ope para fiscal_nf_capa para calcular as function storeadas