Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Este tópico visa explicar o funcionamento do processo customizado da NFS-e e como configurá-lo.


Orientações


O Processo Customizado disponibilizado pelo Mega Empresarial permite que o usuário possa customizar determinados processos do sistema e inserir regras específicas dele no sistema.
No módulo NFS-e, estão disponíveis os seguintes processos customizados:

  • P_BUSCAMUNICIPIO: Deve retornar os códigos dos municípios do prestador e da prestação de serviço.
  • P_DISCRIMINACAOSERVICO: Deve retornar a discriminação do serviço para a NFS-e.


Configuração

Todos os processos customizados de todos os módulos têm sua configuração armazenada na tabela MGGLO.GLO_PROCESSOCUSTOMIZADO, que possui os seguintes campos:


PRC_ST_NOMEOBJETO: Nome do objeto do banco (function) que retornará os dados customizados. Deve conter o nome do usuário (Owner) e o nome do objeto (Exemplo: MGNFS.F_NOMEOBJETO);
PRC_ST_NOMEPROCESSO: Nome de identificação do processo customizado.
PRC_ST_OWNER: Nome do usuário (Owner) da package
PRC_ST_PACKAGE: Nome da package que terá customização.
PRC_ST_DESCRICAO: Descreve a utilização do processo customizado.
PRC_ST_EXEMPLO: Código de uma função exemplo, de como implementar a função específica, que será indicada no campo PRC_ST_NOMEOBJETO.
PRC_BO_STATUS: Define se o processo customizado está ativado (S) ou desativado (N).


A figura a seguir, é apresentado um exemplo de como ficam os dados de configuração do(s) processo(s) customizado(s) da NFS-e quando não há nenhuma customização.



Para que o Processo Customizado seja executado, será necessário ajustar os seguintes campos da tabela MGGLO.GLO_PROCESSOCUSTOMIZADO:


PRC_ST_NOMEOBJETO: Informar o nome do objeto do banco (function) que retornará os dados customizados. Este nome deve ser composto pelo nome do usuário (Owner) e o nome do objeto (Exemplo: MGNFS.F_NOMEOBJETO);
PRC_BO_STATUS: Informar “S”.


Não existe uma tela dentro do Mega Empresarial onde esses dados possam ser manipulados, por isso é necessário um profissional de conhecimento técnico para configurá-lo.

A regra só será utilizada pelo Sistema se esses valores forem informados corretamente.

Funcionamento

O Processo customizado é executado da seguinte forma: a Package responsável pelo processo da NFS-e (owner MGNFS) chama a Package de funções globais (owner MGGLO) passando os parâmetros que identificam o registro do processo customizado na Tabela MGGLO.GLO_PROCESSOCUSTOMIZADO e também os parâmetros necessários para a função específica. A função global dos processos customizados verifica se há uma função específica para customização e se o processo customizado está ativo, caso afirmativo será executada a função específica que retornará os dados customizados para o processo da NFS-e.

A função específica que retornará os dados customizados deverá ser criada com as mesmas características existentes na função de exemplo.
Dentre as questões mais importantes a serem utilizadas para a criação desta função estão:

  • Sempre deverá ser uma Função (Function), ou seja, não poderá ser um procedimento (Procedure);
  • A função a ser criada sempre deverá receber um parâmetro do tipo Varchar2;
  • Deverá ser criada uma variável do tipo “sys_refcursor”;
  • Deverá ser criada uma variável do tipo “xmltype”;
  • O retorno da função obrigatoriamente deverá ser a variável do tipo sys_refcursor.


Caso ocorra algum erro no processo customizado, como por exemplo, erro de implementação na função específica, o sistema não acusará nenhum erro ao módulo da NFS-e, ele simplesmente não retornará nenhum valor ao processo da NFS-e como se não houvesse processo customizado. Por esse motivo é importante fazer todos os tratamentos de erros necessários para garantir que a implementação da função funcione corretamente.
O objeto específico pode ser criado em qualquer owner, com permissão ao owner MGGLO.


Processo Busca Município


O processo customizado P_BUSCAMUNICIPIO, permitirá a customização do preenchimento da tag <CodigoMunicipio> do grupo <Servico> e a tag <CodigoMunicipio> do grupo <Tomador> referentes aos campos "Código Município da Prestação de Serviço" e "Código do Município do Tomador" do arquivo XML NFS-e.
Este processo customizado esta disponível somente para o município de Goiânia-ABRASF.

Registro de Configuração

O registro de configuração do processo customizado P_BUSCAMUNICIPIO, é identificado pelos seguintes valores:

Campo PRC_ST_NOMEPROCESSO: P_BUSCAMUNICIPIO;
Campo PRC_ST_OWNER: MGNFS;
Campo PRC_ST_PACKAGE: NFS_PCK_LAYOUTABRASF;


A figura a seguir, apresenta como ficará o registro deste processo customizado quando devidamente configurado para ser executado:


Visualização do Registro de Configuração configurado para ser executado


Processo Discriminação Serviço


O processo customizado P_ DISCRIMINACAOSERVICO, permitirá a customização do preenchimento da tag <Discriminacao> do grupo <Servico> do arquivo XML NFS-e.
Este processo customizado esta disponível para os layouts DSF e ABRASF.

Registro de Configuração

O registro de configuração do processo customizado P_ DISCRIMINACAOSERVICO, é identificado pelos seguintes valores:


Campo PRC_ST_NOMEPROCESSO: P_DISCRIMINACAOSERVICO;
Campo PRC_ST_OWNER: MGNFS;
Campo PRC_ST_PACKAGE: NFS_PCK_UTILIDADES;


A figura a seguir, apresenta como ficará o registro deste processo customizado quando devidamente configurado para ser executado:


Visualização do Registro de Configuração configurado para ser executadoImage Modified


Image Added