Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

NOME DO REQUISITO

Características do Requisito

Linha de Produto:

Informe a linha de produto.RM

Segmento:

Informe o segmento.FRAMEWORK

Módulo:

Informe o móduloEAI 2.0

Rotina:

Rotina

Nome Técnico

Informe a rotina.

Informe o nome técnico da rotina.

Rotina(s) envolvida(s)

Nome Técnico

Informe a(s) rotina(s) envolvidas.

Informe o nome técnico da(s) rotina(s) envolvidas.

 

 

Cadastros Iniciais:

Relacione os cadastros necessários que precisam ser preenchidos antes da utilização desse requisito.

Parâmetro(s):

Informe os parâmetros utilizados.

Ponto de Entrada:

Informe o ponto de entrada relacionado (link).

Chamados Relacionados

Informe o(s) chamado(s) relacionado(s).

Requisito (ISSUE): Informe o requisito relacionado (Issue).

País(es):

Informe o(s) Pais(es).

Banco(s) de Dados:

Informe o(s) Banco(s) de Dados utilizado(s).

Tabelas Utilizadas:

Informe as tabelas utilizadas.

Sistema(s) Operacional(is):

Informe o(s) sistema(s) operacional(is) utilizados.

Descrição

Escreva aqui a descrição da nova implementação ou melhoria.

 

Importante

(Apenas para Microsiga Protheus, versões anteriores à versão 12)

Antes de executar o compatibilizador informe o nome do compatibilizador é imprescindível:

  • Realizar o backup da base de dados do produto que será executado o compatibilizador (diretório PROTHEUS_DATA\DATA, se versão 10, ou \PROTHEUS11_DATA\DATA, se versão 11) e dos dicionários de dados SXs (diretório PROTHEUS_DATA_SYSTEM, se versão 10, ou \PROTHEUS11_DATA\SYSTEM, se versão  11).
  • Os diretórios acima mencionados correspondem à instalação padrão do Protheus, portanto, devem ser alterados conforme o produto instalado na empresa.
  • Essa rotina deve ser executada em modo exclusivo, ou seja, nenhum usuário deve estar utilizando o sistema.
  • Se os dicionários de dados possuírem índices personalizados (criados pelo usuário), antes de executar o compatibilizador, certifique-se de que estão identificados pelo nickname. Caso o compatibilizador necessite criar índices, irá adicioná-los a partir da ordem original instalada pelo Protheus, o que poderá sobrescrever índices personalizados, caso não estejam identificados pelo nickname.
  • O compatibilizador deve ser executado com a Integridade Referencial desativada*.

 

Atenção

O procedimento a seguir deve ser realizado por um profissional   qualificado como Administrador de Banco de Dados (DBA) ou equivalente!

A ativação indevida da Integridade Referencial pode alterar   drasticamente o relacionamento entre tabelas no banco de dados. Portanto,   antes de utilizá-la, observe atentamente os procedimentos a seguir:

  1. No   Configurador (SIGACFG), veja se a empresa utiliza Integridade   Referencial, selecionando a opção Integridade/Verificação   (APCFG60A).
  2. Se não   há Integridade Referencial ativa,   são relacionadas em uma nova janela todas as empresas e filiais cadastradas   para o sistema e nenhuma delas estará selecionada. Neste caso, E SOMENTE NESTE, não é necessário   qualquer outro procedimento de ativação   ou desativação de integridade, basta finalizar a verificação e aplicar   normalmente o compatibilizador, conforme instruções.
  3.  Se há Integridade Referencial ativa   em todas as empresas e filiais, é   exibida uma mensagem na janela Verificação   de relacionamento entre tabelas. Confirme a mensagem para que a   verificação seja concluída, ou;
  4.  Se   há Integridade Referencial ativa   em uma ou mais empresas, que não   na sua totalidade, são relacionadas em uma nova janela todas as empresas e   filiais cadastradas para o sistema e, somente, a(s) que possui(em)   integridade está(arão) selecionada(s). Anote qual(is) empresa(s) e/ou   filial(is) possui(em) a integridade ativada e reserve esta anotação para   posterior consulta na reativação (ou ainda, contate nosso Help Desk Framework   para informações quanto a um arquivo que contém essa informação).
  5. Nestes   casos descritos nos itens “iii” ou   “iv”, E SOMENTE NESTES CASOS, é necessário desativar tal integridade, selecionando a opção Integridade/ Desativar (APCFG60D).
  6.  Quando desativada a Integridade Referencial,   execute o compatibilizador, conforme instruções.
  7. Aplicado o compatibilizador, a Integridade   Referencial deve ser reativada, SE E   SOMENTE SE tiver sido desativada, através da opção Integridade/Ativar (APCFG60). Para isso, tenha em mãos as   informações da(s) empresa(s) e/ou filial(is) que possuía(m) ativação da   integridade, selecione-a(s) novamente e confirme a ativação.

 

Contate o Help Desk Framework EM CASO DE DÚVIDAS!

 

  1. Em Microsiga Protheus TOTVS Smart Client (se versão 10), digite o nome do compatibilizador no campo Programa Inicial. Descreva se o compatibilizador deve ter uma data específica ou superior para que a atualização nos dicionários seja efetuada corretamente. Importante: Para a correta atualização do dicionário de dados, certifique-se que a data do compatibilizador seja igual ou superior a ___/___/____.
  2. Clique em OK para continuar.
  3. Após a confirmação é exibida uma tela para a seleção da empresa em que o dicionário de dados será modificado ou é apresentada a janela para seleção do compatibilizador. Selecione o programa xxxx().
  4. Ao confirmar é exibida uma mensagem de advertência sobre o backup e a necessidade de sua execução em modo exclusivo.
    1. Clique em Processar para iniciar o processamento. O primeiro passo da execução é a preparação dos arquivos.
      É apresentada uma mensagem explicativa na tela.
    2. Em seguida, é exibida a janela Atualização concluída com o histórico (log) de todas as atualizações processadas. Nesse log de atualização são apresentados somente os campos atualizados pelo programa. O compatibilizador cria os campos que ainda não existem no dicionário de dados.
    3. Clique em Gravar para salvar o histórico (log) apresentado.
    4. Clique em OK para encerrar o processamento.

 

Descreva se há algum procedimento necessário após a aplicação do compatibilizador.

Procedimento para Implantação

O sistema é atualizado logo após a aplicação do pacote de atualizações (Patch) deste chamado.

  1. Aplique o patch do chamado e execute uma vez a rotina Informe o nome da rotina.
  2. 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)

  1. 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

 

  1. 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.

 

 

Descrição

Efetuar a migração dos dados cadastrados nas tabelas de integração do EAI 1.0 para as tabelas do EAI 2.0.

Definições importantes

É importante que um backup da base seja feito  antes da execução desse processo;

 

Modelo de solução

Abaixo será descrito as regras de negócio do conversor.

1) - Localização 

O assistente de conversor deve ser chamado do caminho abaixo: 

Integração/Mensagem Única/Conversor EAI 2.0

Obs: Esse menu deve ser habilitado para o usuário no sistema de segurança do RM.

Image Added

2) - Opções do assistente de conversão 

a) - Tipo de execução

 

Converter para o EAI 2.0:

Efetuará a migração dos dados do EAI 1.0 para as tabelas do EAI 2.0. 

Porém, o EAI 2.0 ficará travado até a execução desse processo com a opção "Liberar utilização do EAI 2.0".

Durante esse período, tanto o EAI 1.0 quanto o EAI 2.0 ficarão fora de operação.

 

Voltar para o EAI 1.0

 Exclui todas as linhas geradas nas tabelas do EAI 2.0 e volta para o EAI 1.0.

 

Liberar utilização do EAI 2.0

Libera a utilização do EAI 2.0. A partir desse momento todas as mensagens recebidas e enviadas serão processadas pelo EI 2.0.

 

Image Added

b) - Mensagens de conversão

Algumas mensagens aparecerão para o usuário nessa página do assistente.

O usuário deverá selecionar a opção  "Continuar Conversão" para prosseguir com o processo.

Image Added

 

c) - Integrações disponíveis

Todas as integrações, com exceção das integrações inativas,  (cadastradas na tabela HCIntegracao) aparecerão na grid.

O usuário deverá selecionar uma ou várias integrações a serem convertidas para o novo modelo de EAI.

 
Opção "Atualiza informação de "Sourceapplication" dos aplicativos chamando a mensage Whois":

      Com essa opção marcada, o processo enviará uma mensagem de Whois para cada endereço de webServices cadastrado nas integrações selecionadas.

      O processo fará uma leitura na resposta dessa mensagem e buscará a informação de "SourceApplication".

      O valor desse atributo será usado para preencher o campo "SourceApplication" da tabela GEAIApp.

Caso essa opção não seja marcada no processo de conversão, o valor para o campo "SOURCEAPPLICATION", disponível no cadastro de aplicativos, deve ser alterado manualmente após a conversão.

 

Opção "Importa mensagens assíncronas":

   Com essa opção marcada, todas as mensagens assíncronas, que não foram processadas com sucesso, com menos de 5 (cinco) tentativas de processamento,

   serão migradas para a nova tabela de mensagens;

 

Opção "Data Início das mensagens":

Somente as mensagens assíncronas com data de inclusão maior que o informado serão migradas.

 

 

Image Added

 


3) - Mapeamento de informações (EAI 1.0 / 2.0)

 

Aplicativos

Tabela/Coluna EAI 1.0

Tabela/Coluna EAI 2.0

Regras

 GEAIAPP.IDauto incremento
 GEAIAPP.SOURCEAPPLICATION

O valor de SourceApplication será recuperado pela busca do atributo "SourceApplication" da resposta da mensagem de Whois.

A mensagem de whois será enviada para cada endereço de webServices cadastrado nas integrações a serem convertidas.

HCINTEGRACAO.SISTEMAINTEGRADO

GEAIAPP.CODDPRODUTO

 

 GEAIAPP.NOME

Concatenação dos campos HCIntegracao.SISTEMAINTEGRADO + "-" + SOURCEAPPLICATION

O valor de SourceApplication será recuperado pela busca do atributo "SourceApplication" da resposta da mensagem de Whois.

 

 GEAIAPP.DESCRICAO

Concatenação dos campos HCIntegracao.SISTEMAINTEGRADO + "-" + SOURCEAPPLICATION

O valor de SourceApplication será recuperado pela busca do atributo "SourceApplication" da resposta da mensagem de Whois

HCINTEGRACAO.WSURL

GEAIAPP.URLWSDLEXTERNO

 

 

HCINTEGRACAO.WSUSUARIO

GEAIAPP.USRWSDLEXTERNO

 

HCINTEGRACAO.WSSENHA

GEAIAPP.PASSWSDLEXTERNO

 
HCINTEGRACAO.RMCOLIGADAONPROTHEUSGEAIAPP.RMCOLIGADAONPROTHEUS 
 

Não poderá existir mais de um aplicativo com o mesmo "SourceApplication" / "CodProduto".

A partir de agora o RM poderá integrar com mais de um aplicativo "Protheus" desde que os mesmos possuem SourceApplications diferentes.

 

Transação 

Tabela/Coluna EAI 1.0

Tabela/Coluna EAI 2.0

Regras

 GEAITRANSACAO.IDAuto incremento

HCTRANSFORMACAO.TRANSACTIONID

GEAITRANSACAO.TRANSACAO

 

 

HCTRANSFORMACAO.DESCRICAO

GEAITRANSACAO.DESCRICAO

 

 

GEAITRANSACAO.MODOSUPORTADO

1 - Envio

HCTRANSFORMACAO.XSLTSAIDA diferente de vazio

HCTRANSFORMACAO.XSLTENTREDA vazio

2 - Recebimento

HCTRANSFORMACAO.XSLTSAIDA vazio

HCTRANSFORMACAO.XSLTENTREDA diferente de vazio

3 - Ambos

HCTRANSFORMACAO.XSLTSAIDA diferente de vazio

HCTRANSFORMACAO.XSLTENTREDA diferente de vazio

 

GEAITRANSACAO.SYNCASYNCENVIO

Será gravado o valor "0 - Sincrono".

No EAI 1.0 RM não deve existir mensagens assincronas, pois o mesmo não foi projetadopara enviar

/receber esse tipo de mensagem. Somente mensagens com características de "falso assíncrono" que será detalhado nesse mesmo documento.

 

GEAITRANSACAO.PERMITERECASYNC

Será gravado o valor "0 - Não permite"

O EAI 1.0 não está preparado para envio/recebimento assíncrono

 GEAITRANSACAO.EXECVIAJOB

Esse campo definirá se as mensagens de envio (nas transações em questão) serão executadas via Job ou imediatamente na chamada do método.

Esse campo foi criado para resolver a situação do "falso assíncrono". Algumas mensagens são enviadas para o EAI 1.0 com o tipo de entrega assíncrono.

Porém, essas mensagens , no momento de execução pelo Job, são enviadas para outro aplicativo com o tipo entrega "sincrono".

Abaixo serão listadas essas transações com esse comportamento:

DEVICEEQUIPMENTAPPOINTMENT

DEVICETASKSAPPOINTMENT

DEVICETRANSPORTCYCLEAPPOINTMENT

LABORDEVICETASKSAPPOINTMENT


 

Transação / Versão

 

 

 

Tabela/Coluna EAI 1.0

Tabela/Coluna EAI 2.0

Regras

HCMAPAINTEGRACAO.VERSAOMENSAGEM

GEAITRANSACAOVERSAO.VERSAO

 

 

HCMAPAINTEGRACAO.ENTIDADE

GEAITRANSACAOVERSAO.IDTRANSACAO

 O campo identificação da transação será buscado da tabela GEAITransacao.

 

 

 

 

Transação / Aplicativo (rotas)

 

Tabela/Coluna EAI 1.0

Tabela/Coluna EAI 2.0

Regras

HCMAPAINTEGRACAO.IDINTEGRACAO

HCINTEGRACAO.SISTEMAINTEGRADO

GEAITRANSACAOAPP.IDAPP

 

O identificador do App será buscado da tabela GEAIApp.

HCMAPAINTEGRACAO.ENTIDADE

GEAITRANSACAOAPP.IDTRANSACAO

 O campo identificação da transação será buscado da tabela GEAITransacao.

HCMAPAINTEGRACAO.VERSAOMENSAGEM

GEAITRANSACAOAPP.IDTRANSACAO

 
 GEAITRANSACAOAPP.IDSOURCECODE

Identificador do código fonte (GSourceCode).

 GEAITRANSACAOAPP.INCLUIMENSAGEMORIGINALSerá gravado o valor 1. Por default, a mensagem original sempre será incluída na mensagem de resposta.
 GEAITRANSACAOAPP.MODOHABILITADOO valor será copiado da transação (GEAITRANSACAO.MODOSUPORTADO)
   
 

Não será permitido o mapeamento entre um aplicativo e uma transação em versões diferentes.

Ex: A transação "COSTCENTER" poderá ser mapeada para o aplicativo "Protheus/Enviromment" somente na versão 1.000.

 

Os códigos fontes cadastrados na tabela GSourceCode e mapeados na tabela "HCMapaTransacao.Extensions" não serão migrados para tabela GEAITransacaoApp.IdSourceCode.

No EAI 2.0 esse campo será usado exclusivamente para armazenar códigos customizados feitos pelo cliente/customização.

 

Ex: Transação mapeada para mais de um um aplicativo:

O RM ao enviar uma mensagem dessa transação, a mesma poderá ser enviada somente em caso assíncrono.

O RM ao receber uma mensagem, os atributos "SourceApplication" e "ProductCode" do xml TotvsMessage serão recuperados e usados para localizar o aplicativo correto.

 

Pacote de instalação

 

Tabela/Coluna EAI 1.0

Tabela/Coluna EAI 2.0

Regras

HCINTEGRACAO.NOMEINTEGRACAO

GEAIPACOTEINSTALADO.NOMEPACOTE

 

 

HCINTEGRACAO.NOMEREDUZIDO

GEAIPACOTEINSTALADO.NOMEREDUZIDO

 

 

GEAIPACOTEINSTALADO.ID

Novo Guid

HCINTEGRACAO.SISTEMAINTEGRADO

GEAIPACOTEINSTALADO.APPID

O valor do campo "SistemaIntegrado" será usado para buscar o AppId da tabela GEAIApp.

 

 

 

 

4) - Atualização das informações de DE/PARA

  • A chave primária da tabela "HCINTEGRACAOID" foi removida;
  • Foi criada nessa tabela a coluna "APPID" para armazenar o identificador do aplicativo responsável pela inclusão/atualização do De/Para;
    • Ex: O centro de custo do RM 001, no protheus/Produção  possuirá o externalId 1|001 e no Protheus/Homologação o externalId 0007.
  • A coluna "SistemaIntegrado" dessa tabela  não será mais usada. A mesma não será removida para questões de histórico.
  • A coluna AppId será atualizada de acordo com o campo "SistemaIntegrado". 

5) - Migração das mensagens assíncronas

  • Todas as mensagens assíncronas, que não possuem execução com sucesso e com menso de 5 tentativas de execução serão migradas para a nova tabela de mensagens;
  • Para cada uma dessas mensagens migradas, será criado um job responsável em executar essa mensagem em questão;
  • Mensagens de envio "assíncronas" serão tratadas como "falso assíncrono"
    Essas serão processas pelo Job  (da mesma forma que uma mensagem assíncrona) porém serão enviadas para o aplicativo destino como uma mensagem síncrona;
  • Sentença de seleção das mensagens:

     

    select HCFILAMENSAGEM.UUID, HCFILAMENSAGEM.TIPOENTREGA, HCFILAMENSAGEM.NOMEPRODUTO,
                                                    HCFILAMENSAGEM.ENTRADASAIDA, HCFILAMENSAGEM.EVENTOMENSAGEM, HCFILAMENSAGEM.TIPOMENSAGEM,
                                                    HCFILAMENSAGEM.TRANSACTIONID, HCFILAMENSAGEM.STATUSPROCESSAMENTO,HCFILAMENSAGEM.VERSAOMENSAGEM,
                                                    HCFILAMENSAGEM.DATAINCLUSAO, HCFILAMENSAGEM.MENSAGEMORIGINAL, HCFILAMENSAGEM.IDINTEGRACAO,
                                                    HCFILAMENSAGEM.CODCOLIGADA, HCFILAMENSAGEM.CODFILIAL, HCFILAMENSAGEM.CODUSUARIO,
                                                    HCINTEGRACAO.SISTEMAINTEGRADO
                                             from HCFILAMENSAGEM (nolock)
                                              INNER JOIN HCINTEGRACAO (NOLOCK)
                                                ON (HCFILAMENSAGEM.IDINTEGRACAO = HCINTEGRACAO.IDINTEGRACAO)
                                             where UUID not in (select HCFILAEXECUCAO.UUID
                                                                from HCFILAEXECUCAO (nolock)
                                                                where HCFILAMENSAGEM.UUID = HCFILAEXECUCAO.UUID                 
                                                                and STATUSEXECUCAO = 1)
                                             and  ((select count(HCFILAEXECUCAO.UUID)
                                                    from HCFILAEXECUCAO (nolock)
                                                     where HCFILAMENSAGEM.UUID = HCFILAEXECUCAO.UUID) <= 5)
                                             and TIPOENTREGA = 1
                                             and  HCINTEGRACAO.SISTEMAINTEGRADO = :sistemaintegrado
                                             and  HCFILAMENSAGEM.DATAINCLUSAO >= :datainicio
                                             and HCFILAMENSAGEM.STATUSPROCESSAMENTO = 0
                                             ORDER BY HCFILAMENSAGEM.DATAINCLUSAO

 

  

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:

Nome

Tipo

Descrição

Obrigatório

 

 

 

 

 

 

 

 

 

 

 

 

 

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