Identificador de Regra
CPR-440NFITE02
Módulo: CPR - Compras.
Finalidade: Passar para a regra todos os dados dos itens de produto da nota fiscal de entrada após o fechamento, após a efetivação no banco de dados.
São passadas para o identificador de regra as seguintes variáveis:
- todos os campos da tabela E440RAT (VS + nome do campo).
Os tipos devem ser respeitados conforme configuração da base de dados (alfa ou número).
Tela: Fechamento Nota Fiscal de Entrada (F440GNE_SRNF)
Transação: estar ligada a uma transação. Neste caso, considera-se sempre a transação de produto dos dados gerais da nota fiscal.
Regra:
Definir Numero VSCodEmp;
Definir Numero VSCodFil;
Definir Alfa VSTnsPro;
Definir Alfa VSProSer;
Definir Numero VSCodFor;
Definir Numero VSNumNfc;
Definir Alfa VSCodSnf;
Definir Numero VSSeqIpc;
Definir Alfa VSCodCcu;
Definir Numero VSCtaFin;
Definir Numero VSCtaRed;
Definir Cursor Cur_ItensNf;
Cur_ItensNf.sql "SELECT CODCCU, CTAFIN, CTARED FROM E440IPC WHERE E440IPC.CODEMP = :VSCodEmp AND E440IPC.CODFIL = :VSCodFil AND E440IPC.CODFOR = :VSCodFor AND E440IPC.NUMNFC = :VSNumNfc AND E440IPC.CODSNF = :VSCodSnf AND E440IPC.SEQIPC = :VSSeqIpc ";
Cur_ItensNf.AbrirCursor();
ENQUANTO (Cur_ItensNf.Achou)
INICIO
/*( SQL_RetornarSeNulo(Cur_ItensNf,"CodCcu") = 0) {*/
SE ((Cur_ItensNf.CodCcu <> "") E (Cur_ItensNf.CodCcu <> " ") E (VSCodCcu <> Cur_ItensNf.CodCcu)) {
mensagem(erro, "Centro de Custos informado no item é diferente do informado no rateio ");}
SENAO {SE ((Cur_ItensNf.CtaFin > 0) E (VSCtaFin <> Cur_ItensNf.CtaFin)) {
mensagem(erro, "Conta Financeira informada no item é diferente da informada no rateio");}
SENAO {SE ((Cur_ItensNf.CtaRed > 0) E (VSCtaRed <> Cur_ItensNf.CtaRed)) {
mensagem(erro, "Conta Contabil informada no item é diferente da informada no rateio");}
}
}
Cur_ItensNf.Proximo();
FIM;
Cur_ItensNf.FecharCursor();
Atenção
Caso o parâmetro global LisVarReg esteja habilitado, a variável ListaVariaveis estará disponível em todos os identificadores de regras do sistema. O conteúdo desta variável lista os campos disponibilizados no identificador de regras em questão.
Não é aconselhada a ativação desse parâmetro global para o uso cotidiano. Esse recurso de listagem dos campos de identificadores auxilia a construção de regras e o Suporte para, por exemplo, depuração ou quando não houver acesso à documentação dos identificadores de regras.