Espécies de documentos

Índice

Regras de validações para documentos

ESPDOC.CAD_REGRAS_VALIDACOES_DOC

Descrição

Configurações de regras para validação de um documento fiscal antes de sua emissão a fim de evitar a rejeição ou mesmo a denegação da operação pelo órgão autorizador (Sefaz, Prefeitura Municipal, etc).

A regra poderá impedir a emissão do documento, caso informado com o tipo "Erro", apresentando um mensagem com o motivo do impedimento da emissão e com a apresentação de uma possível solução para o problema.

O valor retornado no comando será utilizado como mensagem da regra.

Exemplos:

Campos:

Identificação da regra de validação.
Normalmente utiliza-se substantivos e adjetivos significativos, sem os elementos de ligação (p.ex.: DESTINATARIO_SEM_EMAIL para "Não foi informado o email do destinatário para envio eletrônico do documento!).
Texto livre contendo observações e comentários sobre a regra de validação para um melhor entendimento de sua aplicação e uso.
Linguagem utilizada para implementar a regra de validação.
  • SQL - Comando SQL com apenas um resultado (retorno).
    Não será apresentada nenhuma mensagem para o usuário caso o resultado do SQL seja nulo.
    Será apresentada a mensagem informada no SQL caso o resultado seja diferente de nulo.
    P.ex. (validar a existência de ao menos um item no documento):
    select (case when count(1)=0 then 'Não é permitido emitir documento fiscais sem itens!' else null end) from itens_doc_entradas_saidas where documento_id = ?
  • Groovy - Código Groovy com retorno da mensagem informada no código.
Momento que a operação é executada.
  • Documento - A regra de validação é executada para emissão do documento.
  • Item do documento - A regra de validação é executada na inclusão do item de documento
  • Cancelamento - Regra de validação é executada na operação de cancelamento do documento
Comando SQL ou Groovy para implementação da regra validação do documento.
No caso do comando ser SQL, a expressão permite o uso de macros para substituir parâmetros de sessão como o ID do usuário logado e/ou o estabelecimento ativo do usuário.

Caso o campo "EXECUCAO" esteja marcado com "Documento", "Cancelamento" é repassado o ID documento; caso informado "Item" é repassado o ID do item de documento.
Ex:
  • select (case when count(1)=0 then 'Não é permitido emitir documento fiscais sem itens!' else null end) from itens_doc_entradas_saidas where documento_id = ?
  • select case when destinatario_telefone_ou_fax is null or char_length(regexp_replace(destinatario_telefone_ou_fax , '[^0-9]*', '', 'g')) between 6 and 14 then null else 'Telefone do destinatário está fora do padrão!' end from doc_entradas_saidas where id = ?
Nível de crítica da regra.
O nível da regra será sobreposto caso seja especificado um nível diretamente no comando de validação da regra.
  • Informação - Será apresentada uma mensagem meramente informativa para o usuário.
    Não irá bloquear a emissão do documento.
  • Alerta - Será apresentado uma mensagem de alerta ao usuário, requerendo uma maior atenção por parte destes.
    Não irá bloquear a emissão do documento.
  • Erro - Apresenta uma mensagem de erro para o usuário para que este verifique as inconsistências ou erros que impedem a emissão do documento.
    Irá bloquear a emissão do documento.
Espécies de documentos onde a regra será aplicada.
Texto livre contendo uma possível solução para os problemas identificados pela execução da regra de validação.
Define se a regra está ativa ou inativa.
Define se a regra é customizada ou mesmo específica do ambiente de produção do cliente usuário do Eligo.
Indica que a regra não é uma regra padrão do Eligo, caso seja identificada como "customizada".
Espécies de documentos onde a regra será aplicada, este campo serve para uso na importação e exportação.

Operações

Topo

Pesquisar

Ao pesquisar, o usuário poderá informar critérios de filtro para listar apenas os registros desejados. Normalmente depois de informar os filtros desejados, o usuário deverá executar a operação [b:Listar].
Obtenha maiores detalhes em Como utilizar a tela de pesquisa?.
Topo

Listar

Apresenta uma lista com os registros que atendem aos filtros informados.
A lista possui diversos recursos práticos e importantes para o usuário:
SQLDocumentoselect (case when count(1)=0 then 'Não é permitido emitir documento fiscais sem itens!' else null end) from itens_doc_entradas_saidas where documento_id = ?InformaçãoNãoNão
GroovyItem do documentoselect case when destinatario_telefone_ou_fax is null or char_length(regexp_replace(destinatario_telefone_ou_fax , '[^0-9]*', '', 'g')) between 6 and 14 then null else 'Telefone do destinatário está fora do padrão!' end from doc_entradas_saidas where id = ?AlertaSimSim
SQLCancelamentoselect (case when count(1)=0 then 'Não é permitido emitir documento fiscais sem itens!' else null end) from itens_doc_entradas_saidas where documento_id = ?ErroNãoNão
GroovyDocumentoselect case when destinatario_telefone_ou_fax is null or char_length(regexp_replace(destinatario_telefone_ou_fax , '[^0-9]*', '', 'g')) between 6 and 14 then null else 'Telefone do destinatário está fora do padrão!' end from doc_entradas_saidas where id = ?InformaçãoSimSim
Comportamento:Topo

Consultar

A consulta de um registro é realizada quando o usuário clica no primeiro link de um dos registros resultantes a operação [b:Listar]. A tela apresenta as informações detalhadas do registro, bem como as ações que o usuário pode disparar a partir dele (alterar, excluir, cancelar, etc.).
SQL
Documento
select (case when count(1)=0 then 'Não é permitido emitir documento fiscais sem itens!' else null end) from itens_doc_entradas_saidas where documento_id = ?
Informação
Não
Não
Comportamento:Topo

Novo

Permite criar novos registros no sistema. Ao ser executado, o sistema apresenta um formulário com todos os campos do registro que deverão ser preenchidos. Quando todos os campos desejados estiverem preenchidos, clique em [b:Salvar].
Comportamento:Topo

Alterar

A partir da tela de consulta de um registro, esta operação permite alterar os dados do mesmo.
O sistema abre um formulário com os campos editáveis. Após alterar os campos, o usuário deverá clicar em [b:Salvar].
Comportamento:Topo

Excluir

Exclui o registro selecionado. A exclusão do registro pode ser disparada a partir da tela de consulta e/ou de manutenção do mesmo.
O registro somente será excluído se todas as condições necessárias forem encontradas, gerando um erro, caso alguma destas condições não estiver sendo atendida.
Topo

Importar

Funcionalidade que permite importar dados para o bloco desejado.
Topo

Exportar

Funcionalidade que permite exportar os dados de um bloco.
SQLDocumentoselect (case when count(1)=0 then 'Não é permitido emitir documento fiscais sem itens!' else null end) from itens_doc_entradas_saidas where documento_id = ?InformaçãoNãoNão
GroovyItem do documentoselect case when destinatario_telefone_ou_fax is null or char_length(regexp_replace(destinatario_telefone_ou_fax , '[^0-9]*', '', 'g')) between 6 and 14 then null else 'Telefone do destinatário está fora do padrão!' end from doc_entradas_saidas where id = ?AlertaSimSim
SQLCancelamentoselect (case when count(1)=0 then 'Não é permitido emitir documento fiscais sem itens!' else null end) from itens_doc_entradas_saidas where documento_id = ?ErroNãoNão
GroovyDocumentoselect case when destinatario_telefone_ou_fax is null or char_length(regexp_replace(destinatario_telefone_ou_fax , '[^0-9]*', '', 'g')) between 6 and 14 then null else 'Telefone do destinatário está fora do padrão!' end from doc_entradas_saidas where id = ?InformaçãoSimSim
Comportamento:

Dúvidas frequentes

  • Por que existem dois unbounds para "espécies"?
  • Configurações

    ESPDOC.CAD_REGRAS_VALIDACOES_DOC.EDICAO_REGRAS_NAO_CUSTOMIZADAS

    Permitir a ediçao de regras customizadas

    Permitir a inclusão/edição de regras customizadas

    Tipo: FLAG

    Valor padrão: N

    Regras

    Bloquear a edição para regras não customizadas

    Para regras não customizáveis não deve ser aberto a opção para alteração dos campos, com a exceção do campo "Ativo" e "Customizado"
    Eventos que disparam esta regra:
    • Antes de apresentar cada registro formulário "Alterar"

    Bloquear a inclusão de regras não customizadas

    Não permitir a inclusão de regras não customizadas. Para a criação de regras publicas/padrão deve ser informado a preferência "EDICAO_REGRAS_NAO_CUSTOMIZADAS"
    Eventos que disparam esta regra:
    • Antes de apresentar cada registro formulário "Novo"

    Popular espécies

    Popular a lista de espécies para a regra
    Eventos que disparam esta regra:
    • Antes de apresentar cada registro formulário "Alterar"
    • Antes de apresentar cada registro formulário "Consultar"
    • Antes de apresentar cada registro formulário "Exportar"
    • Antes de apresentar cada registro formulário "Listar"
    • Antes de apresentar cada registro formulário "Novo"

    Salvar espécies

    Salvar as espécies informadas
    Eventos que disparam esta regra:
    • Depois de alterar formulário "Alterar"
    • Depois de inserir formulário "Novo"

    Validar comando SQL

    Validar o comando SQL
    Eventos que disparam esta regra:
    • Antes de alterar formulário "Alterar"
    • Antes de inserir formulário "Novo"