Histórico da Página
E DO REQUISITO
Características do Requisito
Linha de Produto: | RM |
Segmento: | Framework |
Módulo: | EAI |
Requisito (ISSUE): | Informe o requisito relacionado (Issue). |
País(es): | BRA |
Definições importantes
- As regras atuais de manipulação das mensagens existentes atualmente no EAI (handle de dataServers, handles de process e handle de WebServices) devem ser escritas pelas equipes dos segmentos.
- A equipe de frame fornecerá funções (API's genéricas) para serem utilizadas pelos adapters.
- As regras atuais de réplica entre coligadas existentes atualmente no EAI serão escritas pelas equipes dos segmentos. A equipe de frame fornecerá API's genéricas para serem utilizadas pelos adapters;
- O EAI não armazenará os xslts (de saída, entrada e retorno) nas tabelas de EAI. A transformação das mensagens de entrada e saída ficará sob a responsabilidades dos adapters. Os adapters dos produtos devem usar usar transformação via xslt.
- Os fontes localizados nos extensions (GSourceCodes) devem ser migrados para estruturas de adapters.
- Informações de contexto (coligada, filial, etc) não serão manipuladas pelo EAI, as mesmas devem ser manipuladas dentro dos adapters.
- O recurso de fórmula visual não deve ser usado para enviar as mensagens para o EAI. O EAI deve ser chamado dentro dos objetos de negócio dos produtos para envio das mensagens;
- Não será permitido o envio de mensagens síncronas para múltiplas rotas, sendo permitido somente mensagens assíncronas.
Solução
DER
,
GEAICONFIG: Configurações gerais do EAI
Coluna | Descrição | Regras |
TipoEAI | Tipo do EAI - Define a engine a ser executada no ambiente do cliente.
| 0 ou Null –EAI 1.0 1 – EAI 2.0 |
ProxyUsr | usuário proxy rede interna |
|
ProxyPassword | senha proxy rede interna |
|
Timeout | Tempo máximo de envio da mensagem. | Será utilizado o valor default em caso de não preenchimento |
ValidaXsd | Habilita/desabilita validação xsd | Permite validar xml no recebimento/envio de mensagens usando o xsd (perda de performance) 0 ou NULL– Não valida 1 - valida |
UsaLog | Habilita/desabilita gravação de log do EAI | 0 OU NULL – NÃO USA 1 - USA LOG |
UsaDebugLog | Habilita/desabilita gravação de informações de objetos de debug | DataSet e outros objetos serializados poderão ser gravados na tabela de log (perda de performance); 0 OU NULL – NÃO USA 1 - Usa |
UsaContextoLog | Habilita/desabilita gravação do objeto de contexto do EAI na execução da mensagem | Perda de performance e espaço. 0 OU NULL – NÃO USA 1 - USA |
UrlMonitorInterno | Endereço do monitor interno |
|
UrlWSDLInterno | Endereço WSDL interno |
|
NumTentativasExec | Número de tentativas de execução da mensagem em caso de mensagens assíncronas com erro | Valor maior que 0 informará o número de tentativas de execução. Valor NULL ou 0 - Será executado uma única vez |
IntervaloDeExecucao | Tempo de intervalo de execução (em milissegundos) | Valor NULL ou 0: será executado imediatamente |
DesabilitaCustomizacao | Desabilita a execução das extensões de customização | 0 ou NULL - Habilitado 1 - Desabilitado |
|
|
|
TABELAS DE CONFIGURAÇÃO DA INTEGRAÇÃO
GEAIAPP: cadastro de aplicativos
Coluna | Descrição | Regras |
Id (pk) | Identificador do aplicativo | autoinc |
Nome | Nome do aplicativo |
|
Descricao | Descrição longa do aplicativo |
|
AppHost | Define se o app em questão é o app host (app interno) | Só haverá um app interno por instalação 0 – interno 1 - externo |
SourceApplication | Informação enviada no protocolo “TotvsMessage” do atributo “MessageInformation/SourceApplication”. | No aplicativo interno, esse valor será o nome da instância do RM (Inicialmente será “RM”). Não será permitido o cadastro de mais de um aplicativo com o mesmo SourceApplication/CodProduto.
|
CodProduto | Nome do produto. Corresponde ao atributo “ProductName” enviado através do protocolo TotvsMessage. | Ex: Protheus, DataSul, Logix, RM. No aplicativo interno, esse valor terá o nome “RM”. Em se tratando de recebimento de mensagens, os valores “Sourceapplication” e “CodProduto“ enviados na mensagem definirão o aplicativo correto. Caso não seja encontrado o aplicativo, a mensagem não será executada, retornando erro.
|
UrlWSDLExterno | Endereço WSDL do aplicativo externo |
|
UsrWSDLExterno | Usuário para conectar na url WSDL do aplicativo externo |
|
PassWSDLExterno | senha para conectar nas url WSDL do aplicativo externo |
|
Ativo | Ativo: ativa / desativa um app | 0 ou null – inativo 1 - ativo |
RMColigadaNoProtheus | Mapeamento da coligada com o Protheus (em caso de aplicativo Protheus) | Grupo de empresa - 1 Unidade de negócio- 2 Empresa - 3 |
GEAITRANSACAO: cadastro de transação
Coluna | Descrição | Regras |
Id (pk) | Identificador da transação | Ex: COSTCENTER, BANK, CUSTOMERVENDOR, ORDER, etc.
|
Descricao | Descrição da transação |
|
ModoSuportado | Modo suportado pela transação, ou seja, são as formas possíveis de uso da mesma | 1 [envio_habilitado]: A transação só pode ser usada no aplicativo para enviar mensagens; 2 [recebimento_habilitado]: A transação só pode ser usada no aplicativo para receber mensagens; 3 [ambos_habilitado]: A transação pode ser usada tanto para envio quanto para recebimento;
|
SyncAsyncEnvio | Informa se a transação é síncrona ou assíncrona (em caso de envio) | 0 – Sincrona 1 – Assincrona Default é 0 |
PermiteRecAsync | Permite recebimento assíncrono em caso de recebimento? | 0 – permite 1 – Não permite. Default é 0 |
GEAITRANSACAOVERSAO: Mapeamento transação / versão
Coluna | Descrição | Regras |
IdTransacao (pk) (fk) | Identificador da transação | chave estrangeira para tabela GEAITransacao |
Versao (pk) | Versão da transação |
|
NomeClasseAdapterCst | Nome da classe (fullName) do adapter de customização (se existir). Se estiver vazio (default) será usado o adapter nativo carregado automaticamente. |
GEAITRANSACAOAPP: Cadastro de rotas (mapeamento entre app/transação/versão)
Coluna | Descrição | Regras |
IdApp (pk)(fk) | Identificador do app | Chave estrangeira para tabela GEAIApp |
IdTransacao (pk)(fk) | Identificador da transação. | Chave estrangeira para tabela GEAITransacaoVersao |
Versao (fk) | Versão da mensagem ativada para o aplicativo em questão |
|
IdSourceCode (fk) | Identificador do código fonte customizado | Chave estrangeira para tabela GSourceCode; |
IncluiMensagemOriginal | Indica se na mensagem de resposta de uma transação/versão será adicionado a mensagem original no corpo da mensagem de resposta | 0 OU NULL –INCLUI 1 – Não INCLUI |
ModoHabilitado | Modo habilitado da transação, ou seja, o que de fato está habilitado no momento. | 1 [envio_habilitado]: A transação só pode ser usada no aplicativo para enviar mensagens; 2 [recebimento_habilitado]: A transação só pode ser usada no aplicativo para receber mensagens; 3 [ambos_habilitados]: A transação pode ser usada tanto para envio quanto para recebimento ; 4 [Não_habilitado]: a transação não está habilitada para essa versão de mensagem no app em questão;
|
GEAIPACOTEINSTALADO: pacotes instalados
Coluna | Descrição | Regras |
IdPacote (pk) | identificador do pacote instalado | Número do Guid incluído nos arquivos de configuração de integração (json) |
NomePacote | nome do pacote instalado |
|
NomeReduzido | Nome reduzido do pacote instalado |
|
AppId (fk) | Identificador do aplicativo instalado | Chave estrangeira para tabela GEAIAPP |
TABELAS DE MENSAGENS
GEAIGRUPOMENSAGEM: Agrupador de mensagens
Coluna | Descrição |
Id (pk) | identificador único do grupo autoinc |
Grupo | Identificador do grupo de mensagens. Deve ser enviado um guid que representará um grupo de mensagens |
NomeGrupo | Nome do grupo. Ex: Pedido de compra |
InfoGrupo | Informações complementares do grupo |
|
|
GEAIMENSAGEM: representará uma mensagem (business, response ou receipt). Cada mensagem recebida, enviada ou respondida será uma nova linha nessa tabela.
Coluna | Descrição |
Id (pk) | identificador da mensagem (gautoinc) |
UUID | Armazenará o UUID da mensagem. Exemplo: a) Ao receber uma mensagem do Protheus, será gravado nesse campo o UUID gerado lá no sistema do Protheus (TotvsMessage.MessageInformation.UUID) b) Ao enviar uma mensagem, será gravado nesse campo o UUID (GUID) gerado para a mensagem de envio. |
TipoEntrega | Tipo de entrega (Assíncrono e síncrono). 0 – Sync 1 - Async |
EntradaSaida | Tipo de entrada/saída (envio ou recebimento). |
Evento | Tipo do evento de mensagem. BusinessEvent Request |
Tipo | Tipo da mensagem 0 – BusinessMessage 1 – ResponseMessage 2 - ReceiptMessage |
TransactionId (fk) | Identificador da transação. Chave estrangeira para tabela GEAITRANSACAO |
Versao | Versão da mensagem |
XMLOriginal | XML contendo a mensagem original. Se for uma mensagem de recebimento, será o TotvsMessage enviado. Se for uma mensagem de envio, será o dataSet de origem serializados. |
IdGrupo | Identificador do grupo de mensagem mensagem (chave estrangeira para tabela GEAIGrupoMensagem). |
IdMensagemPai | Armazenará o identificador (Id) da mensagem pai. Ex: 1) Quando o RM enviar uma mensagem de forma assíncrona, imediatamente será retornada uma mensagem de recibo (receiptMessage). Essa será gravada em uma nova linha nessa tabela. Nessa nova linha, no campo “IdMensagemRelac” será gravado o Id da mensagem origem. 2) O destino ao enviar a resposta (responseMessage) da mensagem para o RM, essa será gravada em uma nova linha. Será gravado nessa linha o id da mensagem pai. |
RMSContexto | Armazena o objeto RMSContext |
GEAIROTAMENSAGEM: Rotas geradas para execução das mensagens
Coluna | Descrição |
Id (pk) | Identificador da rota/mensagem (gautoinc) |
IdMensagem (fk) | identificador da mensagem Chave estrangeira para tabela GEAIMensagem |
IdApp (fk) | Armazenará o aplicativo da mensagem. Se o RM estiver recebendo uma mensagem, o IdApp será do aplicativo externo (quem enviou a mensagem); Se o RM estiver enviando uma mensagem, o IdApp será do aplicativo de destino da mensagem Chave estrangeira para tabela GEAIApp |
| Estado da mensagem: 0: Received (recebida) 1: Recognized (reconhecida) 2: Validated (validada) 3: Delivering (entregaando) 4: Processing (processando) 5: Delivered (entregue) 6: Processed (processada com sucesso) 7: Refused (negada) 8: Malformed (mal formatada) 9: NotDelivered (não entregue) 10: BusinessError (erro de negócio) |
GEAIROTALOGMENSAGEM: Log gerado pela execução da rota da mensagem
Coluna | Descrição |
Id (pk) | Identificador do log (gautoinc) |
IdRotaMensagem (fk) | Identificador da rota/mensagem. Chave estranheira para GEAIRotaMensagem |
TipoLog | 0 - Info 1 - Warning 1 Error |
InfoLog | Texto contendo informações do log |
InfoDebugVar | Informações de debug de variaveis |
InfoDebugObj | Informações de debug de objetos.
|
GEAIEXECROTAMENS: Informações de execução da rota da mensagem.
Coluna | Descrição |
Id (pk) | Identificador da execução (gautoinc) |
IdRotaMensagem | Identificador da rota/mensagem. Chave estrangeira para tabela GEAIRotaMensagem |
XmlMensTransformada | XML contendo a mensagem transformada |
MensagemExecucao | Mensagem da execução |
CodigoExecucao | Código da execução |
EAIContext | Armazenará o objeto EAIContext serializado através do “DataContractSerialization”. Todas as informações de contexto de execução da mensagem naquele momento serão gravadas nesse campo. Essa gravação ocorrerá somente se o parâmetro GEAIParams.UsaContextoLog = true) estiver setado. |
DeParaInfo | Informações de de/para |
Procedimento para Implantação
O sistema é atualizado logo após a aplicação do pacote de atualizações (Patch) deste chamado.
- Aplique o patch do chamado e execute uma vez a rotina Informe o nome da rotina.
- No módulo informe o nome do módulo acesse informe o caminho e verifique que o parâmetro informe o nome do parâmetro é criado conforme especificações abaixo:
Nome da Variável: | Informe o Nome da Variável |
Tipo: | Informe o Tipo |
Descrição: | Informe a Descrição |
Valor Padrão: | Informe o Valor Padrão |
Atualizações do Compatibilizador
(Apenas para Microsiga Protheus, versões anteriores à versão 12)
- Criação ou Alteração de Perguntas no arquivo SX1 – Cadastro de Perguntes:
Pergunte | (X1_PERGUNT) |
Nome |
|
Grupo | (X1_GRUPO) |
Ordem | (X1_ORDEM) |
Tipo | (X1_TIPO) |
Tamanho | (X1_TAMANHO) |
2. Criação ou Alteração de tabela no arquivo SX2– Tabelas:
Chave | Nome | Modo | PYME |
B04 (X2_CHAVE) | Dente/Região (X2_NOME) | C (X2_MODO) | N (X2_PYME) |
3. Criação ou Alteração de Tabelas Genéricas no arquivo SX5 – Tabelas Genéricas:
Chave | Ex.: AR |
Descrição | Ex.: Tabela de IR de Aplicações Financeiras |
4. Criação ou Alteração (mantenha somente a instrução correspondente) de Campos no arquivo SX3 – Campos:
- Tabela BGD - Prod x Cob x Proc x Co-Part:
Campo | (X3_CAMPO) |
Tipo | (X3_TIPO) |
Tamanho | (X3_TAMANHO) |
Decimal | (X3_DECIMAL) |
Formato | (X3_PICTURE) |
Título | (X3_TITULO) |
Descrição | (X3_DESCRIC) |
Nível | (X3_NÍVEL) |
Usado | (X3_USADO) Informe Sim ou Não |
Obrigatório | (X3_OBRIGAT) Informe Sim ou Não |
Browse | (X3_BROWSE) Informe Sim ou Não |
Opções | (X3_CBOX) |
When | (X3_WHEN) |
Relação | (X3_RELACAO) |
Val. Sistema | (X3_VALID) |
Help | Descreva o conteúdo informado para Help de Campo no ATUSX |
Importante:
O tamanho dos campos que possuem grupo pode variar conforme ambiente em uso.
5. Criação ou Alteração de Consulta Padrão no arquivo SXB – Consulta Padrão:
- Pesquisa B05PLS:
Alias | (XB_ALIAS) |
Tipo | (XB_TIPO) |
Sequência | (XB_SEQ) |
Coluna | (XB_COLUNA) |
Descrição | (XB_DESCRI) |
Contém | (XB_CONTEM) |
6. Criação ou Alteração de Índices no arquivo SIX – Índices:
Índice | AA1 |
Ordem | 6 |
Chave | AA1_FILIAL+AA1_CODVEN |
Descrição | Cod. Vendedor |
Proprietário | S |
7. Criação ou Alteração de Parâmetros no arquivo SX6 – Parâmetros:
Nome da Variável | (X6_VAR) |
Tipo | (X6_TIPO) |
Descrição | (X6_DESCRIC + X6_DESC1 + X6_DESC2) |
Valor Padrão | (X6_CONTEUD) |
8. Criação ou Alteração (mantenha somente a instrução correspondente) de Gatilhos no arquivo SX7 – Gatilhos:
- Tabela BD5 – Contas Médicas:
Campo | Informe o conteúdo do (X7_CAMPO) |
Sequência | Informe o conteúdo do (X7_SEQUENC) |
Campo Domínio | Informe o conteúdo do (X7_CDOMIN) |
Tipo | Informe o conteúdo do (X7_TIPO) |
Regra | Informe o conteúdo do (X7_REGRA) |
Posiciona? | Informe o conteúdo do (X7_SEEK) |
Chave | Informe o conteúdo do (X7_CHAVE) |
Condição | Informe o conteúdo do (X7_CONDIC) |
Proprietário | Informe o conteúdo do (X7_PROPRI) |
Procedimento para Configuração
(Estes procedimentos devem ser feitos quando for necessário configurar parâmetros e/ou rotinas no menu).
CONFIGURAÇÃO DE PARÂMETROS
- No Configurador (SIGACFG), acesse Ambientes/Cadastros/Parâmetros (CFGX017). Crie/configure (mantenha somente a instrução correspondente) o(s) parâmetro(s) a seguir:
(É necessário criar uma tabela para cada parâmetro descrito no item Parâmetro(s), da tabela Características do Requisito)
Itens/Pastas | Descrição |
Nome: |
|
Tipo: | Informe o Tipo do parâmetro |
Cont. Por.: | Informe o Conteúdo padrão |
Descrição: |
|
CONFIGURAÇÃO DE MENUS
2. No Configurador (SIGACFG), acesse Ambientes/Cadastro/Menu (CFGX013). Informe a nova opção de menu do informe o nome do módulo, conforme instruções a seguir:
Menu | Informe o Menu em que estará localizada a rotina |
Submenu | Informe o Submenu em que estará localizada a rotina |
Nome da Rotina | Informe o Título da rotina |
Programa | Informe o Fonte da rotina |
Módulo | Informe o Nome do(s) produto(s) a ser utilizado ou “Todos” |
Tipo | Informe a Função |
Procedimento para Utilização
- Descreva os procedimentos, passo a passo (caso de uso), que serão realizados pelos usuários para que a melhoria seja visualizada identificando as seguintes informações:
- Localização da rotina no menu;
- Localização dos novos campos e/ou perguntas e respectivas pastas de cadastro que são visualizadas pelo usuário;
- Caso seja necessário ter algum cadastro feito previamente, faça uma observação.
Exemplo:
1. No Plano de Saúde (SIGAPLS), acesse Atualizações / Produto Saúde / Produto Saúde (PLSA800).
O sistema apresenta a janela de produtos cadastrados.
2. Posicione o cursor em um produto e clique em Alterar.
3. Na pasta Cobertura/Carências selecione a subpasta Tipo de Prestador.
4. Dê duplo clique no campo TP Prestador (BCW_TIPPRE).
O sistema apresenta a janela Tipo de Prestador – Coparticipação – Alterar.
5. Informe os dados conforme orientação do help de campo e observe o preenchimento do novo campo:
Som. p/Compra (BCW_SOMCOM): selecione Sim para indicar se a coparticipação cadastrada será válida somente para efeito de compra de procedimentos ou Não, caso contrário.
6. Confira os dados e confirme.
Vídeo
- Vídeo hospedado no youtube e inserido no template por meio da macro Widget Connector.
** Canal do youtube e software de vídeoem definição.
Título do Vídeo: | Disponibilizado pelo Marketing. |
Introdução: | Disponibilizado pelo Marketing. |
Passo a Passo: | Capturar diretamente do sistema. |
Finalização: | Disponibilizado pelo Marketing. |
Ponto de Entrada
Descrição: | Informe o Menu em que estará localizada a rotina | ||||||||||||||||
Localização: | Informe o Submenu em que estará localizada a rotina | ||||||||||||||||
Eventos: | Informe o Título da rotina | ||||||||||||||||
Programa Fonte: | Informe o Fonte da rotina | ||||||||||||||||
Função: | Informe o Nome do(s) produto(s) a ser utilizado ou “Todos” | ||||||||||||||||
Retorno: |
|
Exemplo:
#Include 'Protheus.ch'
User Function CN120ALT()
Local aCab:= PARAMIXB[1]
Local cTipo:= PARAMIXB[2]
If cTipo == '1'
aCab[4][2]:= 'NF' //Validações do usuário
EndIf
Return aCab