Manoel Frederico da Silva / Product Manager & MAGIC Evangelist / Magic Software Brasil
Neste post anterior, foi abordado um tema bastante comum no dia-a-dia operacional das empresas: EDI.
Embora se fale muito hoje em novos padrões para troca eletrônica de informações (xml por exemplo), o grande volume ainda é baseado em arquivos texto (TXT). Vide o exemplo dos bancos (CNAB).
A troca eletrônica de informações pode ser necessária entre a empresa e seus clientes, fornecedores, parceiros, governo, mas também internamente entre diferentes sistemas que possam existir.
Vamos então focar neste último cenário. Imaginemos esta situação hipotética:
A empresa possui diferentes sistemas, entre eles um de Folha de Pagamento (FOPAG) e um Contábil (CTB). A necessidade é fazer com que as informações geradas no FOPAG sejam transferidas para o CTB de uma forma mais ágil e eficiente do que a existente atualmente: digitação. Infelizmente, não foi possível haver uma ‘parceria’ entre dos dois fornecedores dos sistemas, de modo que isso ocorresse de forma transparente (ou pelo menos, facilitada).
Entra em campo então o ESB. No nosso caso, o iBOLT. A tarefa é ter um projeto (sistema) encarregado de buscar as informações geradas no FOPAG e colocá-las dentro do CTB.
Não é corriqueiro encontrar nesses sistemas, facilitadores (interfaces) para exportação e importação de dados. Vejamos então o que temos disponível (à mão):
- FOPAG não exporta dados para outros sistemas (ou pelo menos para o que precisamos aqui), mas ele gera diversos relatórios, e tem a opção de gerá-los em arquivos eletrônicos (TXT neste exemplo).
- CTB tem rotina para importação de dados externos, mas em um layOut próprio e imutável. O layOut disponibilizado pelo CTB para importar movimentos contábeis de folhas de pagamento é:
A;B;C;D;E;F;G;H;I
A = Uma informação fixa (constante) de relevância apenas para o CTB
B = Código da empresa empregadora
C = Nro seqüencial do funcionário
D = Nro da matrícula do funcionário
E = Nome do funcionário
F = Mês/Ano de referência
G = Código do provento ou desconto
H = Referência (qdte) deste provento ou desconto
I = Valor do referido provento ou desconto
Estamos falando então de pegar um relatório assim:
E transformá-lo em um arquivo assim:
NOTA: Todos os nomes e informações contidos neste exemplo são meramente fictícios
Difícil? Não para o iBOLT.
Veja um resumo do processo:
Esta tarefa pode ser completada por um projeto iBOLT de apenas dois fluxos de integração.
Um que lê o relatório gerado pelo FOPAG e cria o arquivo (EDI) necessário ao CTB:
Outro que analisa o conteúdo do relatório, extrai as informações relevantes, e formata-as de acordo com as regras exigidas pelo CTB:
Neste endereço, você pode baixar o projeto iBOLT (3.2sp2a) que realiza a tarefa acima.
Para executá-lo, basta seguir estes passos:
1) Instale o iBolt 3.2 sp2a.
2) Certifique-se de ter uma licença iBolt Studio (IBNPSTD) e iBolt Server Não Produção (IBNPSRV) válidas (não vencidas) no arquivo ‘License.dat’ na pasta do iBOLT
3) Baixe o projeto e descompacte a pasta ‘FolPagEDI’ dentro da pasta ‘projects’ do iBOLT
4) Abra o projeto (FolPagEDI.ibs) no iBolt Studio e faça um ‘build’ para criar os atalhos (start, stop e webMonitor) segundo as configurações de sua instalação
5) Vá ao menu ‘Project -> Enviroment Variables’ e crie três variáveis de ambiente cfe. abaixo:
- FOPAG_WATHCFOLDER %currentprojectdir%InFiles%sl%
- FOPAG_PROCESSFOLDER %currentprojectdir%OutFiles%sl%
- FOPAG_EDIFOLDER %currentprojectdir%EDIFiles%sl%
6) Clique ‘OK’
7) Abra o projeto no iBolt Monitor (pode fechá-lo no Studio se quiser), e use o atalho ‘start’ para colocar o projeto no ar.
8) Na pasta ‘SampleFiles’ do projeto, há um arquivo de exemplo do FOPAG, chamado relatorio_folha_pagamento.txt
9) Copie-o para a pasta ‘InFiles’. Em instantes, o arquivo será capturado pelo iBOLT e movido para a pasta ‘OutFiles’. É quando o processo tem início. Dentro de mais alguns instantes, o arquivo EDI (convertido) será gerado na pasta ‘EDIFiles’
Toda vez que for gerado o relatório de folha de pagamento (FOPAG) em arquivo, e salvo na pasta que está sendo monitorada pelo iBOLT, ele é capturado e convertido automaticamente. Supondo que o CTB possua alguma forma de importação automática, o próprio projeto iBOLT pode colocar o arquivo EDI (convertido) dentro do sistema.
Bom dia FRED,
Muito bom o exemplo de uso do iBolt, as vezes ficamos imaginando oque poderia ser feito… ou em que o iBolt poderia ser utilizado, este é mais um bom exemplo do poder da ferramenta.
No meu caso, para teste (abrir o projeto)… tenho instalado o iBolt 3.2k que está sendo utilizado com o projeto NFe (Magic Software), tenho que instalar a versão 3.2sp2a para abrir este projeto ? ao instalar esta nova versão.. não terei problemas com a já instalada 3.2k ?
Obrigado.
Bom dia Carlos,
precisa sim instalar a versão 3.2sp2a, e a princípio, se você não utiliza o “Portal NFe” não haverão problemas ( desde que você não instale o novo iBolt como serviço ).
Mas se o propósito é só testar e sua máquina possui aplicações sensíveis, verifique a possibilidade de fazer isto em uma máquina virtual: http://www.virtualbox.org/
Aqui você também encontrará mais exemplos do que pode ser feito com o iBOLT: http://www.youtube.com/MagicSoftwareBR#p/u/6/kElKl_rmp3k