Histórico da Página
Integração Protheus
PCOxPCO x TOTVS Planning
Contexto de negócio (Introdução)
O planejamento de um orçamento empresarial ocorre, em uma empresa, de tempos em tempos, tipicamente a cada ano. Esse processo envolve o levantamento e cálculo de informações de várias áreas de negócio, permitindo ao gestor ter uma visão de quantidades e valores que irá reservar para investimentos e execução de sua atividade durante o período orçamentário.
Normalmente, essa informação é organizada por meio de contas orçamentárias, centros de custo, unidades de negócio e outros classificadores que ajudam os gestores a organizar e posteriormente controlar os gastos realizados para o período que foi feito o orçamento.
Atualmente, os sistemas ERP se propõem a todo o ciclo de controle e execução desse orçamento, permitindo assim as empresas controlar seus gastos.
Sistemas Envolvidos
- TOTVS Planning – O TOTVS Planning é um sistema de modelos de decisão aberto, que permite ao usuário, por meio de fórmulas e outras características comuns às planilhas eletrônicas, fazer o planejamento de diversas atividades de negócio, inclusive planejamento orçamentário, utilizando dados locais de outros fontes, como bancos de dados de ERPs.
- Protheus/PCO – O Planejamento e Controle Orçamentário (PCO), é um sistema que permite o controle do orçamento por meio de movimentos de realização do orçamento e bloqueio de seu orçamento, quando necessário e configurado pelo usuário, o início do processo de controle ocorre na inclusão das planilhas orçamentária.
Nos próximos capítulos, utilizaremos o nome PCO para representar o sistema Protheus PCO e Planning para representar o sistema TOTVS Planning.
Integração
Essa integração diz respeito à possibilidade do usuário utilizar o Planning como ferramenta para fazer o planejamento e utilizar o PCO como ferramenta para fazer o controle e execução orçamentária.
No lado do PCO, o usuário alimentará as planilhas orçamentárias e seus cadastros relacionados, como, contas orçamentárias, classe orçamentária, operação unidade orçamentária, centros de custos, item conta e classe de valor.
No lado do Planning, o usuário poderá buscar essas informações cadastrais e associá-las aos valores que serão orçados, durante certo período. Depois de realizar a fase de planejamento, a integração permitirá que esses valores estejam disponíveis no PCO para posterior controle e execução orçamentária.
Embora todo o processo de planejamento e controle possa ser feito no PCO, a integração tem o objetivo de permitir ao usuário utilizar um produto de planejamento mais robusto e flexível. Ao mesmo tempo, embora o Planning não possa fazer o controle e execução orçamentária, poderá por meio de seus painéis, apresentar esses resultados do controle, opcionalmente.
- Premissas
- Pacote A38 (ou superior) do Planning para utilização de integração síncrona.
- Pacote A40 (ou superior) do Planning para utilização de integração assíncrona.
- Integração configurada e habilitada no módulo Metadata Manager do Planning.
- Cadastros de Planilha, Conta e Classe Orçamentárias realizados no módulo PCO.
- Acesso de conexão ao banco de dados do Protheus pelo Planning para leitura.
- Versão 11.80 ou superior do ERP Protheus.
- Fonte PCOI100 com data igual ou superior a 04/08/2014.
- Fontes PCOXFUN e PCOA100 com data igual ou superior a 24/07/14.
- Servidor de EAI configurado na rotina PCOA100.
- Arquitetura (Tecnologia)
- Servidor de aplicação do Planning ter acesso à rede do servidor de EAI do PCO e vice-versa.
- Banco de dados do ERP Protheus deve ser MS SQL Server ou Oracle.
Escopo
O escopo da integração entre os dois produtos está apenas na fase de planejamento do processo de orçamento. Ela ocorre no momento em que o usuário termina o planejamento e precisa atualizar as informações orçadas no PCO a fim de iniciar a fase de controle do orçamento em questão.
Embora exista uma comunicação entre os dois sistemas para que se possa iniciar o planejamento do orçamento, momento esse em que o Planning carrega as informações de cadastros do PCO, não é esse processo que caracteriza a integração entre os sistemas já que isso ocorre por meio de uma conexão direta ao banco de dados do PCO, que é um característica do próprio Planning. A integração é caracterizada pelo envio das informações de orçamento já planejadas para o PCO por intermédio de mecanismo de mensagem única e o serviço de EAI.
Como o Planning é um sistema aberto, o usuário pode relacionar, na mesma planilha em que faz a entrada dos valores orçados, outras informações como valores e fórmulas que não serão enviadas ao PCO. A área de dados a ser enviada é definida apenas pela interseção de coluna de período e uma linha de dados da estrutura de informação que foi criada a partir da importação dos cadastros do PCO. Esse processo será detalhado no item Fluxo das Informações.
O PCO receberá do Planning os itens do orçamento na planilha orçamentária previamente cadastrada, retornará apenas confirmação de recebimento ou algum problema ocorrido no processo de importação, dependendo do envio ser síncrono ou assíncrono.
Não haverá retorno para o Planning, sobre o controle do orçamento efetuado no PCO, sobre alterações nos itens da planilha originados do Planning, validação de controle de usuário e acesso as entidades da planilha como ocorre na inclusão manual.
No processo de integração, do lado do Planning existem três papéis importantes:
- Papel de usuário administrador do sistema: precisa habilitar a integração do produto com o PCO. Essa configuração é por meio do módulo Metadata Manager. O administrador é responsável por criar uma conexão com o banco de dados do PCO, criar uma configuração de destino para o EAI, informando o endereço do web service, definir uma empresa padrão para checagem das tabelas e definir um tamanho de pacote para as mensagens do EAI.
- Papel de usuário planejador: esse papel é responsável por determinar o plano que irá conter os dados de integração com uma versão de uma planilha de orçamento. O usuário determina, nesse momento, qual a empresa, filial, planilha, versão, contas orçamentárias e outros filtros que irão compor a pasta, no Planning, em que serão associados os valores a serem enviados ao PCO.
- Papel de usuário integrador: esse papel é responsável por selecionar os planos que terão seus dados enviados ao PCO. Esse envio pode ser manual, plano a plano, como também ser agendado para envio em lote.
No processo de integração, do lado do Protheus são os seguintes papeis:
- Papel de usuário administrador do sistema: será responsável pela configuração do servidor EAI, configurar o JOB PCOA100.
- Papel de usuário PCO: efetuar cadastros básicos como conta orçamentária, classe orçamentária, unidade orçamentária, operação, centro de custo, item conta, classe de valor e planilha orçamentária, analisar, simular, revisar a planilha e controlar o orçamento.
Para um entendimento geral do escopo da integração, abaixo serão apresentadas as telas dos produtos em que a integração ocorre.
Tela do TOTVS Planning com a visão de uma pasta de um plano de integração:
Conforme apresentado na tela acima, as células B1 a B6 são valores que o usuário pode indicar os códigos para cada item, se necessário, e todas as células que compõe as contas orçamentárias e seus períodos (iniciando em B10) são as células que formam os valores a serem enviados ao PCO. Abaixo a tela do PCO em que os valores dessa planilha são cadastrados após ocorrer o processo da integração (apenas ilustrativo).
Tela do PCO onde os valores atribuídos para as contas são cadastrados:
Pré-requisitos instalação/implantação/utilização
Datasul
Para o Planning, a integração está disponível a partir do pacote A38 no modo síncrono e a partir do pacote A40 no modo assíncrono, que é a configuração padrão. A instalação do produto já inclui todos os itens necessários para o funcionamento da integração, no entanto, ela está desabilitada, por padrão, sendo necessário fazer a sua configuração para ativá-la.
Protheus
Para o PCO, será necessário ter incluso as planilhas orçamentárias e seus cadastros relacionados, como, contas orçamentárias, classe orçamentária, operação unidade orçamentária, centros de custos, item conta e classe de valor.
Instalação/Atualização
Datasul
O Planning possui um instalador que faz tanto a instalação do produto como sua atualização em um ambiente com uma versão anterior. O processo de instalação é automático e prepara todos os arquivos e instala todos os serviços necessários para o funcionamento da integração. A partir do pacote A40, a instalação ou atualização configura o Planning para trabalhar no modo assíncrono.
Para configurar a integração, acessar o módulo Metadata Manager:
- Configurar um escopo para conexão ao banco de dados do ERP Protheus.
- Configurar ao menos um destino EAI, informando um nome, o tempo máximo de espera em segundos (normalmente 30) e o endereço do servidor EAI do ERP Protheus no seguinte formato:
“http://[endereço]:porta/EAISERVICE.apw”. - Configurar os parâmetros de integração, como empresa padrão, tamanho do pacote em KBytes, sugerido um valor de 50 que pode ser estendido até 4.000, nome do destino EAI configurado no item “b” e escopo de conexão com banco de dados do PCO configurado no item “a”.
- Configurar o modo de envio da mensagem para “Síncrono” caso queira que os dados de cada mensagem sejam processados assim que a mensagem é enviada ou “Assíncrono” caso queira que a mensagem seja apenas entregue e processada posteriormente pelo PCO. O modo padrão é o modo “Assíncrono” porque permite que o usuário do Planning não tenha que aguardar o processamento da mensagem que pode ser lento, dependendo do volume de dados.
Quando a configuração do Planning é feita para o modo “Assíncrono”, as respostas de processamento das mensagens pelo PCO devem ser enviadas ao serviço de EAI do Planning, no entanto, para isso é preciso que seja configurado no PCO o endereço completo do serviço de EAI do Planning. Por padrão o endereço do serviço de EAI do Planning é configurado como “http://[nome do servidor de aplicação]:8100/EAIService.svc” e o endereço é exibido na tela de configuração da integração, caso tiver sido ajustado no arquivo de configuração.
Protheus
Esse documento não visa descrever os procedimentos de instalação do Protheus padrão e suas configurações. Neste documento são passadas informações referentes ao EAI da Linha Protheus.
1. Cadastrar/Configurar Adapter para Integração no Protheus
Entre no módulo Configurador (SIGACFG), em Ambiente | Schedule | Adapter EAI, e preencha da seguinte maneira:
Mensagem Única | Rotina | Mensagem | Envia | Recebe | Método | Operação | Canal |
---|---|---|---|---|---|---|---|
Sim | PCOA100 | BUDGETITEMS | Sim | Sim | Síncrono | Todas | EAI |
Tabela 1 – Rotina com integração por Mensagem Única.
2. Configurar o EAI para Integração no Protheus
No Protheus, entre no Configurador (SIGACFG) e acesse Ambiente / Schedule / Schedule.
3. Cadastrar Agent
- Para abrir as opções Cadastro e Monitor.
- Clique no sinal de +(Soma) ao lado esquerdo do Globo Verde com o título Agent.
- Na opção Cadastro, clique no Globo Verde com sinal de +(Soma) que está à direita da tela.
- São apresentadas as informações da tela de detalhes sendo preenchidas automaticamente.
4. Cadastrar Agendamento
- Para abrir as opções Cadastro e Monitor.
- Clique no sinal de +(Soma) ao lado esquerdo do Globo Verde com o título Agendamento.
- Clique na opção Cadastro, na tela de detalhes na parte inferior da tela principal.
- Clique no primeiro Ícone de um caderno com sinal de +(soma).
- São apresentadas algumas informações automaticamente.
- Complete o campo Rotina com FWEAI.
- No campo Empresa/Filial, clique na lupa ao lado direito.
- É apresentada a tela com as empresas.
- Selecione a empresa desejada que será realiza a integração.
- Dê um duplo clique no check-box ao lado esquerdo do Nome da empresa.
- Clique em OK.
- Confira os dados e clique em Confirmar.
5. EAI – Como Visualizar os Arquivos XML Criados pelas Rotinas
São apresentadas duas telas, sendo a de Transações na parte superior, e a tela de Eventos da Tarefa na parte inferior.
Na tela de Transações:
- Posicione na linha da mensagem gerada.
- Clique na Lupa azul, na parte superior da tela.
- É aberto o arquivo XML no navegador padrão da estação de trabalho.
Na tela de Eventos da Tarefa, ao clicar na linha da mensagem é apresentada as informações de início de processamento, Falhas, Processo interrompido, Fim do Processo conforme consta na mensagem.
Importante:
Para identificar a cor da Legenda com o tipo de mensagem, é necessário clicar duas vezes na bolinha colorida.
6. Limpar Histórico de Mensagens
Opção Limpeza de Tabelas: Caso queira realizar uma limpeza dos históricos das mensagens.
Ao clicar nesta opção, é apresentada a tela Tabelas com a opção Selecione a Tabela.
Clique na seta preta que aponta para baixo do lado esquerdo.
São apresentadas as opções: Tarefas ou EAI.
Para a utilização, clique em EAI.
Marque um tipo de mensagem que deseja limpar do histórico.
Clique no check-box ao lado esquerdo da opção para marcar ou desmarcar. Sendo elas:
- Aguardando Execução.
- Executando.
- Finalizada.
- Falhou.
- Bloqueado.
Controle de Versão
O grupo TOTVS representado por suas marcas administrará as demandas de evolução dos layouts e demais ajustes, acordando junto aos solicitantes o prazo de liberação de release.
Todas as evoluções programadas deverão ser discutidas e aprovadas pelas marcas antes do início do desenvolvimento e somente serão desenvolvidas em caso de concordância das marcas e alinhamento com as diretivas definidas pelo Comitê de Integração TOTVS.
Suporte
O suporte aos recursos da Integração será de responsabilidade de todas as linhas, sendo assim as equipes de suporte dos produtos Planning e PCO estarão aptas a fazer a primeira análise e, quando necessário, repassar para a equipe mais adequada em cada caso.
Observação: Este modelo de suporte está sendo revisado pela TOTVS.
Transações/Entidades/Mensagens únicas
O fluxo de dados da integração, para cada um dos sistemas, é apresentado abaixo:
Mensagem Única | |||||
Método | ID | Descrição | Origem | Destino | XSD |
Cadastros | 01 | Itens de Orçamento | Planning | PCO | BudgetItems_1_000.xsd |
Fluxo das Informações
O Planning tem uma característica, inerente ao produto, que permite ao usuário realizar conexão à bases de dados de sistemas ERP de forma a poder executar consultas mescladas às fórmulas. Essa característica é utilizada no processo de planejamento orçamentário para que o sistema possa montar a planilha na qual será feita a entrada de dados. Embora a leitura desses dados sirva a funcionalidade de integração ao orçamento, apenas a operação de exportação do orçamento caracteriza uma integração, pois apenas ela utiliza o serviço de EAI 2 e mensagens únicas para enviar os valores orçados ao PCO.
Para a mensagem utilizada nessa integração, a relação entre entidades nos dois sistemas são caracterizadas por uma relação de um registro no PCO para muitos registros no Planning e isso inviabiliza a utilização de sincronização de entidades. A figura abaixo ilustra com um dado de orçamento no Planning é armazenado na tabela do PCO e em uma das tabelas do Planning (as tabelas complementares foram suprimidas para facilitar o entendimento).
Assim, a construção de um mecanismo de sincronização entre os dois sistemas foi descartada pela complexidade e baixo desempenho, justificada pelo prazo de implementação da solução sem uma contrapartida funcional para ambos os sistemas.
Dessa forma, o Planning não recebe dados do PCO nesse processo de integração. A integração de itens de orçamento ocorre apenas no sentido Planning => PCO, onde as informações são enviadas através do serviço de EAI 2 e posteriormente gravadas na tabela de itens de orçamento do PCO.
Cadastros
<BudgetItems>
Identificador da Mensagem: BudgetItems_1_000
Versão: 1.000
Tipo de Envio: Síncrono ou Assíncrono
TAG | PCO | Planning | |||
---|---|---|---|---|---|
Tabela | Campo | Origem1 | |||
CompanyId | SM0 – Cadastro de empresas | M0_CODIGO | Célula do PlanoBudgetWorksheet | ||
BranchId | SM0 – Cadastro de empresas | M0_FILIAL | Célula do Plano | ||
WorksheetVersionBudgetWorksheet | AK2 – Itens do Orçamento | AK2_ORCAME | Célula do Plano | ||
AccountIdWorksheetVersion | AK2 – Itens do Orçamento | AK2_VERSAO | Célula do Plano | ||
CostCenterAccountId | AK2 – Itens do Orçamento | AK2_CO | Estrutura de informação | ||
AccountItemCostCenter | AK2 – Itens do Orçamento | AK2_CC | Célula ou estrutura de informação | ||
AccountItem | AK2 – Itens do Orçamento | AK2_ITCTB | Célula ou estrutura de informação | ||
ClassValue | AK2 – Itens do Orçamento | AK2_CLVLR | Célula ou estrutura de informação | ||
ClassBudget | AK2 – Itens do Orçamento | AK2_CLASSE | Célula ou estrutura de informação | ||
Operation | AK2 – Itens do Orçamento | AK2_OPER | Célula ou estrutura de informação | ||
Currency | AK2 – Itens do Orçamento | AK2_MOEDA | Importação do orçamento | ||
BudgetUnit | AK2 – Itens do Orçamento | K2_UNIORC | Célula ou estrutura de informação | ||
AccountEnt05 | AK2 – Itens do Orçamento | AK2_ENT05 | N/A | ||
AccountEnt06 | AK2 – Itens do Orçamento | AK2_ENT06 | N/A | ||
AccountEnt07 | AK2 – Itens do Orçamento | AK2_ENT07 | N/A | ||
AccountEnt08 | AK2 – Itens do Orçamento | AK2_ENT08 | N/A | ||
AccountEnt09 | AK2 – Itens do Orçamento | AK2_ENT09 | N/A | ||
DatePeriod | AK2 – Itens do Orçamento | AK2_PERIOD | Tabulação da estrutura de informação | ||
Amount | AK2 – Itens do Orçamento | K2_VALOR | Célula interna a estrutura de informação |
TAG PCO Planning Tabela Campo Origem1 CompanyId SM0 – Cadastro de empresas M0_CODIGO Célula do Plano BranchId SM0 – Cadastro de empresas M0_FILIAL Célula do Plano BudgetWorksheet AK2 – Itens do Orçamento AK2_ORCAME Célula do Plano WorksheetVersion AK2 – Itens do Orçamento AK2_VERSAO Célula do Plano AccountId AK2 – Itens do Orçamento AK2_CO Estrutura de informação CostCenter AK2 – Itens do Orçamento AK2_CC Célula ou estrutura de informação AccountItem AK2 – Itens do Orçamento AK2_ITCTB Célula ou estrutura de informação ClassValue AK2 – Itens do Orçamento AK2_CLVLR Célula ou estrutura de informação ClassBudget AK2 – Itens do Orçamento AK2_CLASSE Célula ou estrutura de informação Operation AK2 – Itens do Orçamento AK2_OPER Célula ou estrutura de informação Currency AK2 – Itens do Orçamento AK2_MOEDA Importação do orçamento BudgetUnit AK2 – Itens do Orçamento AK2_UNIORC Célula ou estrutura de informação AccountEnt05 AK2 – Itens do Orçamento AK2_ENT05 N/A AccountEnt06 AK2 – Itens do Orçamento AK2_ENT06 N/A AccountEnt07 AK2 – Itens do Orçamento AK2_ENT07 N/A AccountEnt08 AK2 – Itens do Orçamento AK2_ENT08 N/A AccountEnt09 AK2 – Itens do Orçamento AK2_ENT09 N/A DatePeriod AK2 – Itens do Orçamento AK2_PERIOD Tabulação da estrutura de informação Amount AK2 – Itens do Orçamento AK2_VALOR Célula interna a estrutura de informação
Mensagem Padrão | PROTHEUS | RM | ||
Tabela | Campo | Tabela | Campo | |
Code | CTO990 | CTO_SIMB | GMOEDA | SIMBOLO * |
Description | CTO990 | CTO_DESC | GMOEDA | DESCRICAO |
Symbol | CTO990 | CTO_SIMB | GMOEDA | SIMBOLO |
Notas:
Observações sobre comportamento desta mensagem ou dos processos envolvidos nela/para ela
A seguir descrever as variações, particularidades da mensagem e processos (integração) de acordo com cada marca
Limitações/Restrições
Descreva limitações e restrições para a integração que está sendo descrita.
Processos
Descreva características gerais do fluxo de informações e que serão comuns para este tipo de entidade. Características particulares para cada entidade deverão ser citadas em tópicos específicos de cada entidade.
Sempre que existir (a sugestão é sempre criar) e for agregador ao documento acrescentar aqui os diagramas/imagens ou até mesmo colocar tais diagramas diretamente na especificação dos processos
Em seguida faça uma descrição para cada um dos fluxos para cada entidade
<Transação/Processo>
Tipo de Fluxo: Protheus -> RM
Mensagem: Request_1_000
Versão: 1.000
Descrição de todo o comportamento e funcionamento do processo. Breve contexto, origem, regras, integração (geração da mensagem, envio, recebimento no destino), o quê supostamente irá ocorrer no destino, retorno, impacto, consequências, o que foi afetado, como conferir, validar, etc o retorno.
Acrescentar um diagrama do processo.
A seguir descrever as variações, particularidades da mensagem e processos (desta integração) de acordo com cada marca
Notas:
Observações sobre comportamento desta mensagem ou dos processos envolvidos nela/para ela
Limitações/Restrições
Descreva limitações e restrições para a integração que está sendo descrita.
Limitações / Restrições Gerais
Descreva limitações e restrições para cada fluxo descrito no tópico anterior. Exemplo:
- ERP1 envia ITEM cadastrado para o ERP2
ERP1 somente enviará o ITEM se este estiver em uma das famílias cadastradas no parâmetro FAMILIA_INTEGRACAO.
Se o tipo de valorização do estoque for FIFO.
- ERP2 envia PEDIDO cadastrado para o ERP1
O pedido recebido no ERP1 vindo do ERP2 estará bloqueado para alteração.
Como fazer (opcional)
Descreva os passos que viabilizem a integração.
Exemplo:
Os passos para viabilizar a integração são:
- No Logix ou no Protheus efetue o cadastro das seguintes informações: Clientes, fornecedores, transportadores, cidades, cotação de moeda e unidades de medida.
- No Logix cadastrar um novo depositante e efetuar toda a parametrização necessária para a operação de WMS.
- No Logix cadastrar um novo produto que seja controlado pelo WMS, para o depositante cadastrado anteriormente.
- No Logix efetuar um processo de recebimento para o produto cadastrado anteriormente, utilizando uma nota fiscal provisória (tipo “A”).
- No Protheus consultar a nota fiscal de recebimento que foi registrada no Logix, validando as informações recebidas.
- No Logix efetuar um processamento de regularização fiscal, efetuando a cobertura dos produtos recebidos anteriormente.
- No Protheus verificar se foi efetuado corretamente o relacionamento entre os dois documentos.
- No Logix efetuar um processo de expedição para o novo produto cadastrado, até o momento do envio da mensagem de integração de pedido de venda.
- No Protheus efetuar o faturamento do pedido de venda recebido.
- No Protheus verificar se a nota fiscal gerada contém todas as informações necessárias para o segmento de operador logístico (armazém geral).
- No Protheus efetuar a escrituração fiscal das notas fiscais, verificando se as regras da legislação deste segmento foram respeitadas.
- No Logix é possível consultar o número do pedido de venda gerado para as notas fiscais de retorno simbólico e conta/ordem no programa WMS6333 (Consulta de Documentos). Para os processos de faturamento de serviço o número do pedido está disponível no programa WMS6411 (Movimentos a Faturar).
Situações comuns (opcional)
Descreva situações problemáticas comuns que podem ocorrer durante o funcionamento da integração e como solucioná-los. Neste ponto também é importante dar instruções de como reconhecer e investigar problemas que podem vir a ocorrer durante a integração. Se houver, apresente tabelas de códigos e descrições de erros que a integração poderá apresentar.
Este tópico possivelmente será alimentado com as experiências durante o desenvolvimento da integração e poderá ser realimentado durante o uso da integração no cliente.
Exemplo 1:
Tratamento de erros de integração (Produto A)
Erro | Mensagem | Solução |
Código do erro | Mensagem exibida | Ação a ser tomada para resolução do erro. |
Tratamento de erros de integração (Produto B)
Erro | Mensagem | Solução |
Código do erro | Mensagem exibida | Ação a ser tomada para resolução do erro. |
Exemplo 2:
Quando uma mensagem é enviada do Logix para o Protheus, podem ocorrer situações em que o WebService não estará totalmente funcional. Nestes casos uma mensagem de erro genérica irá aparecer na tela:
Exemplo:
Erro ao enviar a mensagem de Cidade via Integração
Se o arquivo de log for analisado, poderemos ver a falha na comunicação com o sistema destino:
-------------------------------------------------------------------------------
WSCERR044 / Não foi possível POST : URL http://172.16.31.57:8011/ws/FWWSEAI.apw
ADVPL WSDL Client 1.080707 / tst on 20120315 08:49:51
-------------------------------------------------------------------------------
Para resolver este problema, verifique as configurações do sistema de destino, analisando o funcionamento do servidor utilizado para esta comunicação e a habilitação do endereço do WebService.
Checklist de suporte da aplicação
Crie um check-list de verificação de alguns pontos importantes para o funcionamento e atendimento da integração.
Instalação/Configuração
Relacione itens de verificação para garantir que a integração está corretamente instalada e configurada. Isto não pode ser uma cópia do procedimento de instalação/configuração, mas verificações pontuais que podem remeter aos itens da instalação.
Checklist de Verificações:
Relacione itens de verificações para que o atendente possa:
- Identificar o funcionamento da integração;
- Identificar a ocorrências de problemas;
- Coletar evidências do mau funcionamento relatado pelo cliente;
- Realizar possíveis ajustes na integração quanto à configuração ou negócio.
Notas:
O valor de InternalId da mensagem é composto pelo código da empresa + código da filial que são códigos informados pelo próprio usuário.
Embora o ERP Protheus possa ser implantado em modo de Grupo de Empresa + Máscara de unidades de negócio ao invés de Empresa + Filial, a mensagem identifica apenas código para campo Empresa e Filial. Dessa forma, o usuário determina os valores a serem enviados nesses campos e deve ser compatível com a forma de implantação do ERP Protheus.
Apenas um plano orçamentário é enviado por vez ao PCO. Como um plano pode conter várias contas, centros de custo e outras informações e a mensagem tem um limite de tamanho configurado pelo usuário, pode ser necessário o envio de várias mensagens para completar os dados de um plano.
Limitações/Restrições
- No modo síncrono, a mensagem ocorre apenas no sentido Planning -> PCO
- Não existe DE-PARA para essa mensagem por não haver entidade receptora no lado do Planning, assim não é enviado informações no item “BusinessEvent” da mensagem.
Fluxo das Informações
Envio da Mensagem BudgetItems:
- Planning seleciona o plano com integração configurada e bloqueia o plano.
- Planning seleciona as contas orçamentárias e outros parâmetros configurados pelo usuário no plano de integração.
- Planning seleciona as células que possuem valores associados ao orçamento. As células sem valor são ignoradas.
- Planning faz a validação dos dados informados nos parâmetros quanto ao tamanho permitido e os parâmetros que são obrigatórios. Caso não sejam válidos, encerra.
- Planning calcula, de acordo com o tamanho de mensagem configurado pelo usuário, as mensagens únicas que serão enviadas ao PCO.
- Para cada uma das mensagens:
- Planning envia a mensagem ao PCO ao mecanismo do EAI 2 do Planning.
- EAI do Planning envia a mensagem ao EAI do ERP Protheus e aguarda.
- EAI do ERP Protheus recebe a mensagem única.
- Caso a mensagem tenha sido enviado no modo Síncrono:
- EAI do ERP Protheus entrega a mensagem ao adapter do PCO.
- PCO recebe a mensagem.
- PCO efetua a leitura da mensagem e faz as verificações se os dados do orçamento estão corretos caso alguma informação como: planilha, versão, conta orçamentária, centro de custo, classe orçamentária, item conta, classe de valor, unidade orçamentária, operação estiver inconsistente , o mesmo retorna a mensagem erro.
- Caso todas as informações estejam consistentes ele grava o item do orçamento na tabela AK2.
- PCO retorna uma mensagem de resposta por meio do EAI.
- Planning recebe a mensagem de resposta que estava aguardando. Caso confirme que os itens de orçamento foram atualizados, o processo continua até terminar todas as mensagens. Caso haja erro, o envio é interrompido.
- Caso a mensagem tenha sido enviada no modo Assíncrono:
- EAI do ERP Protheus retorna uma mensagem de recibo por meio do EAI.
- Planning recebe a mensagem de recibo e continua até terminar o envio de todas as mensagens.
- Caso a mensagem tenha sido enviada no modo Assíncrono:
- Planning desbloqueia o plano e termina o processo.
Processamento da Mensagem BudgetItems no modo assíncrono:
- PCO recebe a mensagem da fila do EAI do ERP Protheus.PCO efetua a leitura da mensagem e faz as verificações se os dados do orçamento estão corretos.
- PCO faz a validação das informações como: planilha, versão, conta orçamentária, centro de custo, classe orçamentária, item conta, classe de valor, unidade orçamentária.
- Caso todas as informações estejam consistentes ele grava o item do orçamento na tabela AK2.
- PCO retorna uma mensagem de resposta através do EAI, sendo que retorna a mensagem com erro caso a validação verifique alguma inconsistência.
- EAI do Planning recebe a mensagem única com a resposta.
- EAI do Planning grava o log de recebimento associando o ID da resposta com o ID da mensagem enviada anteriormente.
Quando operando em modo assíncrono, o usuário pode acompanhar no monitor EAI do Planning as mensagens que foram enviadas e para quais delas já houve uma resposta do serviço de EAI. A resposta pode ser positiva ou de erro. O usuário deverá avaliar esse monitor para saber se é necessário alguma correção nos dados e reenvio do plano.
Como Fazer
Os passos para viabilizar a integração são:
- No PCO, cadastre as entidades gerenciais para uso do PCO, obrigatórias para utilização: conta orçamentária e classe orçamentária.
- No PCO, efetue as configurações básicas para uso e cadastramento da planilha como: cadastro dos tipos de saldo e configuração do lançamento por processo 000252, para geração de lançamentos orçados na tabela AKD. Os cadastros de centro de custo, item conta, classe de valor, unidade orçamentária e operação, deverão ser cadastrado conforme necessidade do cliente.
- No PCO, configure o servidor EAI para receber a mensagem BudgetItems.
- No Planning, certifique-se que a opção de Integração com ERP Protheus esteja habilitada e configurada por meio do módulo Metadata Manager e que o modo de envio da mensagem (síncrono ou assíncrono) esteja compatível com o modo configurado no PCO.
- No Planning, configure plano para utilizar a integração, efetuando uma importação de orçamento, configurando a empresa, filial, selecionando a planilha orçamentária, versão da planilha, contas orçamentárias e os restante do parâmetros de acordo com a necessidade do usuário.
- No Planning, informe os valores orçados para cada conta/período. Caso configure uma estrutura com mais de um nível, os valores devem ser informados apenas nas células de último nível da hierarquia da estrutura de informação. Os outros níveis são apenas totalizadores hierárquicos.
- No PCO, efetue a conferência da mensagem importada e utilização do módulo conforme necessidade do cliente.
- No Planning e no PCO, utilize os monitores de envio e recebimento de mensagens para saber quando os dados precisam ser ajustados e reenviados.
Situações comuns
Tratamento de erros de integração (Planning):
No processo de integração, ao realizar a exportação do orçamento, seja de forma direta ou agendada, existem alguns tipos de erro que podem ocorrer:
- Erros de Tamanho:
- Situação: O sistema faz uma validação nos parâmetros informados na pasta do plano que contém o orçamento a ser enviado. A validação ocorre pela comparação ao tamanho máximo do código que pode ser informado em um parâmetro.
- Solução: Ajustar o valor para o tamanho correto e reiniciar a exportação.
- Erros de Validação:
- Situação: Ao informar códigos de Unidade Orçamentária, Classe Valor, Item Contábil e outros que são parâmetros de cabeçalho da importação, o sistema não pode validar esses valores com o PCO antes da mensagem de integração ser enviada. Dessa forma, pode ocorrer um erro de valor inválido indicando que o PCO não aceitou o código.
- Solução: Ao receber o erro, verifique a mensagem e altere o valor do parâmetro que está inválido. É importante verificar se a formatação da célula que tem o valor está como formatação tipo “Texto”. Alguns códigos, embora numéricos, contém zeros na esquerda e só é possível ter esse tipo de valor na célula se a célula estiver formatada como texto.
- Erros de Estouro de Tempo:
- Situação: Ao enviar os dados por meio da exportação de orçamento, o sistema demora e retorna uma mensagem de “estouro de tempo” ou “time out”.
- Solução 1: Verifique o parâmetro de tempo na configuração de “Destinos EAI” no módulo Metadata Manager. Ele deve ter um valor em segundos, normalmente 30. Se o tempo que o sistema está esperando antes da mensagem for igual ao valor configurado antes de retornar o erro, verifique as próximas soluções.
- Solução 2: Pode ser um problema de endereço de rede. Verifique o endereço do EAI na tela de “Destinos EAI” do Metadata Manager e confirme com o administrador se os endereços estão corretos.
- Solução 3: Pode ser um problema de firewall de rede. Verifique junto ao administrador se as portas dos serviços não estão com restrição de uso.
- Solução 4: Pode ser que o servidor de EAI do ERP Protheus está realmente carregado e não consegue responder no tempo configurado na tela “Destinos EAI”. Nesse caso aumente o tempo de espera e investigue o problema no servidor de EAI do ERP Protheus.
- Outros Erros não previstos:
- Situação: Ao enviar os dados uma mensagem de falha do tipo “Não foi possível enviar a mensagem” seguida de um texto aparentemente técnico como resultado.
- Solução: Em algumas situações, erros ocorridos no processamento da mensagem no PCO são retornados como mensagem de erro. Nesse caso, verifique o erro junto ao administrador do sistema.
Checklist de suporte da aplicação
Instalação/Configuração
Planning:
- Verificar a presença dos seguintes arquivos na pasta de instalação “DM\bin” no servidor de aplicação:
- Integracaoorcamento.xml
- Integracaopco.txt
- totvsmsg.xsd
- ListOfInternalid_1_000.xsd
- BudgetItems_1_000.xsd
- No arquivo de configuração do servidor de aplicação (Datasul.ApplicationManager.config), verificar se o adapter para a mensagem está configurado corretamente, verificando o seguinte item abaixo para o produto “Datasul.Planning”.
- No arquivo de configuração do servidor de aplicação (Datasul.ApplicationManager.config), verificar se o serviço de EAI está configurado e o endereço informado está apontando para a máquina do servidor de aplicação em uma porta aberta no firewall, verificando o item “DMService Settings” conforme exemplo abaixo:
Checklist de Verificações:
Planning:
- Abrir o módulo Metadata Manager e verificar se a integração com o PCO está habilitada e configurada corretamente.
- Na tela de configuração da integração, verifique se a URL que é apresentada está respondendo por meio da entrada do endereço em um navegador web no próprio servidor de aplicação do Planning. Isso garantirá que o serviço está ativo. Depois faça o mesmo teste a partir do servidor EAI do Protheus para verificar se não existe restrição de firewall impedindo a comunicação.
- A partir de um navegador web no servidor de aplicação do Planning, entre com a URL do serviço de EAI do Protheus para verificar se nenhuma restrição de firewall está impedindo a comunicação.
- Verificar se o plano em que o problema está ocorrendo teve uma importação de orçamento na mesma base do ERP Protheus para o qual está tentando exportar.
- Uma forma de fazer a verificação é criar um plano novo e configurar uma nova importação com os mesmos parâmetros e verificar se os códigos de planilhas, versão e contas orçamentárias são as mesmas.
- Outra verificação que pode ser feita é consultar a string de conexão associada ao escopo configurado para a integração, se ela aponta para o mesmo ERP Protheus que o serviço EAI configurado na janela de “Destinos EAI”.
- Verificar se os valores informados no plano de integração correspondem a códigos válidos no PCO.
- Verificar os registros de alteração e o monitor de EAI no módulo administrativo a fim de identificar mensagens de erro durante o processo de integração.
PCO:
Para verificar porque os itens orçamentários não foram integrados:
- O Protheus é versão 11.80 ou superior?
- Digite o endereço informado em configurações iniciais dos campos Url do WS e Url do EAI no browser para verificar o status.
- O Agent está configurado corretamente e está iniciado?
- O agendamento está configurado e habilitado corretamente?