Pular para o conteúdo principal

MNF019 — Gerenciamento de Notas Geral/Mestra

Fonte​

  • Source: source/MNF019/
  • Form principal: source/MNF019/UMNF019.pas
  • DataModule: source/MNF019/UdmMNF019.pas
  • Forms auxiliares: UMNF019ITEMNOTA.pas (edicao do item), UMNF019MSGITEM.pas (mensagens do item), UMNF019RATEIO.pas (rateio de lotes de semente), UMNF019SERIAL.pas (selecao de seriais), UfrmChaveAcessoMNF019.pas (chave NFe), UMNF019ENTREGA.pas (vinculo com CONTROLEENTREGA), UPEDIDO.pas (pedido relacionado).

Objetivo​

Tela de gerenciamento generico de notas fiscais (entrada/saida/mestras) com suporte a NFe, grade de produto, lotes de semente rateados, seriais, controle de entrega e geracao de mestra (MESTRA/REMESSA) para operacoes simbolicas. Permite abrir notas existentes, editar itens, recalcular impostos, gerar parcelamento e executar processos de integracao contabil/financeira. Alimenta NOTA, ITEMNOTA, suas tabelas filhas (grade, local, semente, vendedor, serial), IMPOSTONOTA, DEVOLUCAONOTA, EMBARQUE, NFE, PARCELANOTA e PEDIDO. Serve tanto para fluxos de gestao/correcao quanto para geracao de mestra a partir de notas ja emitidas.

Funcionalidades​

  • Seleção de Notas de Origem (Mestras)
  • Seleção de Itens da Nota Mestra
  • Geração da Nota Fiscal
  • Gestão de Itens da Nota
  • Gestão de Impostos
  • Dados de Embarque e Transporte
  • Controle de Entrega
  • Rateio de Nota Fiscal
  • Chave de Acesso NF-e
  • Observação do Produto
  • Controle de Seriais

Mensagens exibidas​

Levantadas de source/MNF019/ pela camada 0 (commit 96fc51e236).

Mais 132 mensagens com texto literal no código: MNF019.

Parâmetros lidos​

Campos PARM* lidos via values[] em source/MNF019/ (commit 96fc51e236).

ParâmetroTabela
ST_CONFIRMAENTREGAREMESSAPARMFATUR
ST_ENTREGAPARMFATUR
ST_VARIOSITENSCONTRATOPARMFATUR
ST_VARIOSVENDEDORESPARMFATUR
TP_MOVCONTENTREGAPARMFATUR

Tabelas de Escrita (INSERT/UPDATE/DELETE)​

TabelaOperacoes
DEVOLUCAONOTADELETE, INSERT, SELECT
EMBARQUEDELETE, INSERT, SELECT, UPDATE
EMPRESADELETE, INSERT, SELECT, UPDATE
IMPOSTONOTADELETE, INSERT, SELECT, UPDATE
ITEMNOTADELETE, INSERT, SELECT, UPDATE
ITEMNOTAGRADEDELETE, INSERT, SELECT
ITEMNOTALOCALINSERT, SELECT
ITEMNOTASEMENTEINSERT, SELECT
ITEMNOTAVENDEDORINSERT, SELECT
ITEMSERIALDELETE, INSERT, SELECT, UPDATE
NFEDELETE, INSERT, SELECT, UPDATE
NOTADELETE, INSERT, SELECT, UPDATE
PARCELANOTAINSERT
PEDIDOINSERT, SELECT, UPDATE

EMPRESA com DELETE/INSERT/UPDATE provem de infraestrutura do framework, nao do fluxo transacional da tela.

Tabelas de Leitura (SELECT)​

TabelaOperacoes
AGENCIASELECT
ALIQUOTASELECT
BANCOSELECT
COLUNAGRADESELECT
COMISSAOVENDEDORSELECT
CONDPAGTOSELECT
CONDPARCELASELECT
CONTASSELECT
CONTRATONFSELECT
CONTROLEENTREGASELECT
ENDERECOPESSOASELECT
ESTADOSELECT
FORMAPAGTOSELECT
IMPOSTOSELECT
ITEMSELECT
ITEMPEDIDOSELECT
ITEMTABPRECOSELECT
JUROSELECT
LOCALESTOQUESELECT
LOTESEMENTESELECT
MARCASELECT
MESTRASELECT
MODELONFSELECT
MOTIVOSELECT
MOVIMENTACAOSELECT
MUNICIPIOSELECT
NATUREZACARGASELECT
OBSFISCALSELECT
PARMCONTABILSELECT
PARMENTREGASELECT
PARMFATURSELECT
PARMNOTASELECT
PEDIDONOTASELECT
PESSOASELECT
PROCESSOSELECT
REGIAOCOMERCIALSELECT
REMESSASELECT
TIPOCALCULOSELECT
TIPOCONTASELECT
TIPOLOCALSELECT
TIPOPESSOASELECT

Procedures Chamadas​

ProcedureTabelas Acessadas
CALCULA_VALORITEM (SELECT), TIPOCALCULO (SELECT)
DEVOLUCAO_CONTROLEENTREGACONTROLEENTREGA (DELETE/SELECT/UPDATE), CONTROLEENTREGADEVOLUCAO (INSERT/SELECT), NOTA (SELECT), PEDIDONOTA (SELECT)
EXECUTA_PROCESSOAGENCIA (SELECT), AJUSTEFISCALITEMNOTA (DELETE/INSERT/SELECT), ALIQUOTA (SELECT), AVISOSCPC (INSERT), BANCO (SELECT), CHEQUE (SELECT) +63
GERA_IMPOSTONOTAALIQUOTA (SELECT), CONFIGNFSE (SELECT), CTRC (SELECT), EMPRESA (SELECT), ENDERECOPESSOA (SELECT), ESTADO (SELECT) +19
GERA_INTEGRACAOAJUSTEFISCALITEMNOTA (DELETE/INSERT/SELECT), ALIQUOTA (SELECT), CODRECEITA (SELECT), CONDPAGTO (SELECT), CONTAS (SELECT), CONTASCTB (DELETE/INSERT/SELECT) +53
GERA_MESTRACONTROLEENTREGA (DELETE/INSERT/SELECT/UPDATE), CONTROLEENTREGADEVOLUCAO (INSERT), ITEMNOTA (SELECT), MESTRA (INSERT/SELECT/UPDATE), NOTA (SELECT), PARMFATUR (SELECT) +2
GERA_NFECONFIGNFE (SELECT), ITEMNOTA (UPDATE), MOVIMENTACAO (SELECT), NFE (INSERT/SELECT), NOTA (SELECT), PARMNOTA (SELECT)
GERA_NOTAFISCALAGENCIA (SELECT), AJUSTEFISCALITEMNOTA (DELETE/INSERT/SELECT), ALIQUOTA (SELECT), AVISOSCPC (INSERT), BANCO (SELECT), BOLETO (SELECT) +145
GERA_SEQUENCIASEQUENCIA (SELECT/UPDATE)
GRAVA_MOVTOPROCESSOCONTAS (SELECT), CONTASHISTORICO (SELECT), HISTORICO (SELECT), MOVTOPROCESSO (INSERT/SELECT), PARMFINANC (SELECT), PROCESSO (SELECT/UPDATE)
GRAVA_PROCESSOPROCESSO (INSERT), SEQUENCIA (SELECT/UPDATE), SESSAO (SELECT)
HABILITA_PESOQTDEITEM (SELECT), TIPOCALCULO (SELECT), UNIDMED (SELECT)
RETORNA_CHAVEPEDIDOEMBARQUE (SELECT), NOTA (SELECT), ORDEMCARREG (SELECT), PEDIDO (SELECT), PEDIDONOTA (SELECT)
RETORNA_DADOSCONTROLEENTREGACONTROLEENTREGA (SELECT), ITEMNOTA (SELECT), NOTA (SELECT)
RETORNA_LOCAISARMAZENAGEMITEMEMPRESA (SELECT), ITEMLOCAL (SELECT), LOCALESTOQUE (SELECT), LOCALUSUARIO (SELECT), PARMFATUR (SELECT), SESSAO (SELECT) +1
RETORNA_MOVIMENTACAOMESTRACONDPAGTO (SELECT), ENDERECOPESSOA (SELECT), GRUPOMOVIMENTACAO (SELECT), ITEM (SELECT), MOVIMENTACAO (SELECT), PARMFATUR (SELECT) +2
RETORNA_OBSNOTACFO (SELECT), CONTROLESELO (SELECT), CTRC (SELECT), DEVOLUCAONOTA (SELECT), EMBARQUE (SELECT), EMPRESA (SELECT) +30
RETORNA_PRECOITEMCONDPAGTO (SELECT), ITEM (SELECT), ITEMTABPRECO (SELECT), ITEMTABPRECODATA (SELECT), PARAMRECAP (SELECT), PARMFATUR (SELECT) +6
RETORNA_SALDOESTOQUEESTOQUE (SELECT), ESTOQUEDIA (SELECT), ITEMLOCAL (SELECT), MOVESTOQUE (SELECT), OPERACAO (SELECT), PARMESTOQUE (SELECT)
RETORNA_TABPRECOITEM (SELECT), ITEMPERFIL (SELECT), ITEMTABPRECO (SELECT), PARAMRECAP (SELECT), PARMTABPRECO (SELECT), SESSAO (SELECT) +1
VALIDA_UNIDADEFECHADAITEM (SELECT)
VALOR_IMPOSTOIMPOSTO (SELECT), IMPOSTONOTA (SELECT), NOTA (SELECT), PESSOA (SELECT)
VIEW_SALDOMESTRAITEMNOTA (SELECT), MESTRA (SELECT), MOVIMENTACAO (SELECT), NOTA (SELECT), REMESSA (SELECT)

Tabelas via Procedures (acesso indireto)​

Total: 173 tabelas acessadas indiretamente via procedures. Amostra:

TabelaOperacoes
AGENCIASELECT
AJUSTEFISCALITEMNOTADELETE, INSERT, SELECT
ALIQUOTASELECT
AVISOSCPCINSERT
BANCOSELECT
BOLETOSELECT
CFOSELECT
CHEQUESELECT
CODRECEITASELECT
COLUNAGRADESELECT
COMISSAOCONTASINSERT
COMISSAOTABPRECOINSERT
CONDPAGTOSELECT
CONDPARCELASELECT
CONFIGNFESELECT
CONFIGNFSESELECT
CONTASINSERT, SELECT, UPDATE
CONTASBLOQFINANCSELECT
CONTASCTBDELETE, INSERT, SELECT
CONTASHISTORICOINSERT, SELECT
CONTROLEENTREGADEVOLUCAOINSERT, SELECT
MOVTOPROCESSOINSERT, SELECT
...+153 tabelas

Dependencias Aferentes (quem alimenta esta tela)​

Telas que escrevem em tabelas lidas por MNF019. Limitado a 30 entradas mais acopladas.

TelaTítuloTabelas em Comum
MNF001Recebimento de Notas Fiscais de CompraEMBARQUE, EMPRESA, ENDERECOPESSOA, IMPOSTONOTA, ITEM +15
CNF001Consulta de Notas FiscaisCONDPAGTO, CONTAS, EMBARQUE, EMPRESA, IMPOSTONOTA +14
MPD011Confirmação Ordem CarregamentoCONTAS, EMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA +9
MNF002Emissão de Nota Fiscal de VendaEMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTAGRADE +8
MRC020Confirmação de Ordem de Carregamento RecapadoraCONTAS, EMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA +8
MNF008Emissão Nota Fiscal de Venda - ObrasCONTROLEENTREGA, EMBARQUE, IMPOSTONOTA, ITEMNOTA, ITEMNOTAGRADE +7
MNF024EMPRESA, IMPOSTONOTA, ITEM, ITEMNOTA, ITEMNOTAGRADE +7
MNF007Devolução / Retorno de Notas FiscaisCONTROLEENTREGA, DEVOLUCAONOTA, EMBARQUE, EMPRESA, IMPOSTONOTA +6
MNF011Alteração de ComissõesCONTAS, EMPRESA, ENDERECOPESSOA, ITEM, ITEMNOTA +6
MNF030EMBARQUE, EMPRESA, ENDERECOPESSOA, ITEM, ITEMNOTA +6
MNF026Troca de Produtos com Emissão de Nota FiscalDEVOLUCAONOTA, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTAGRADE +5
CNF012Consulta de CTRCCONDPAGTO, CONTAS, EMPRESA, IMPOSTONOTA, ITEM +4
MNF032Importação de XML TransmitidoEMBARQUE, ENDERECOPESSOA, IMPOSTONOTA, ITEMNOTA, ITEMNOTALOCAL +4
JunsoftServiceFatAppDEVOLUCAONOTA, ITEMNOTA, ITEMNOTALOCAL, ITEMNOTAVENDEDOR, ITEMPEDIDO +3
MTR004DespesasENDERECOPESSOA, IMPOSTONOTA, ITEMNOTA, ITEMNOTALOCAL, MODELONF +3
TFA006Tabelas de PreçoCONDPAGTO, EMPRESA, FORMAPAGTO, ITEM, ITEMTABPRECO +3
CPD001Consulta de PedidosEMPRESA, ITEM, ITEMPEDIDO, MOVIMENTACAO, NFE +2
MCB015Envio de EmailCONDPAGTO, EMPRESA, ESTADO, FORMAPAGTO, MUNICIPIO +2
MNF016Controle de EntregaCONTROLEENTREGA, EMPRESA, ITEM, ITEMNOTA, ITEMPEDIDO +2
MNF017Venda BalcãoITEMNOTA, ITEMNOTAGRADE, ITEMNOTALOCAL, ITEMNOTASEMENTE, ITEMPEDIDO +2
MNF036Transferência por Estoque MínimoEMPRESA, ITEMNOTA, ITEMNOTALOCAL, ITEMPEDIDO, NOTA +2
MPD010Ordem de CarregamentoEMBARQUE, EMPRESA, FORMAPAGTO, MUNICIPIO, PEDIDO +2
MRC018Emissão de Remessa de Entrada/Saída por Pedido RecapagemEMPRESA, ITEMNOTA, ITEMNOTALOCAL, ITEMPEDIDO, NOTA +2
MRC019Ordem de Carregamento RecapadoraEMBARQUE, EMPRESA, ITEMPEDIDO, MUNICIPIO, PEDIDO +2
MRC049Faturamento Automático de Ordem de CarregamentoCONTAS, EMBARQUE, EMPRESA, ITEMPEDIDO, PEDIDO +2
CNF009Programação/Fechamento de ComissõesEMPRESA, ITEM, ITEMNOTAVENDEDOR, MARCA, NOTA +1
JunsoftIntegracaoITEM, ITEMTABPRECO, MARCA, NFE, PEDIDO +1
MNF013CTRC - Conhecimento de TransporteCONTAS, EMBARQUE, IMPOSTONOTA, ITEMNOTA, ITEMNOTALOCAL +1
MPD084EMPRESA, ITEM, ITEMPEDIDO, MOVIMENTACAO, PEDIDO +1
MRC048Montagem Ordem Carregamento Automática - Pré-FaturamentoEMBARQUE, EMPRESA, MUNICIPIO, PEDIDO, PESSOA +1
...+604 telas

Dependencias Eferentes (quem consome dados desta tela)​

Telas que leem as tabelas escritas por MNF019. Limitado a 30 entradas.

TelaTítuloTabelas em Comum
CNF001Consulta de Notas FiscaisDEVOLUCAONOTA, EMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA +9
MNF001Recebimento de Notas Fiscais de CompraEMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTAGRADE +7
MNF002Emissão de Nota Fiscal de VendaEMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTAGRADE +6
RNF005Demonstrativo de Notas FiscaisDEVOLUCAONOTA, EMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA +6
EspelhoNotaEMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTASEMENTE +5
LNF400EMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTAGRADE +5
LNF500EMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTAGRADE +5
MNF007Devolução / Retorno de Notas FiscaisDEVOLUCAONOTA, EMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA +5
MNF026Troca de Produtos com Emissão de Nota FiscalDEVOLUCAONOTA, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTAGRADE +5
jFaturamentoDEVOLUCAONOTA, EMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA +5
CNF012Consulta de CTRCDEVOLUCAONOTA, EMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA +4
LNF169EMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTASEMENTE +4
LNF175EMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTASEMENTE +4
MNF008Emissão Nota Fiscal de Venda - ObrasEMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTAGRADE +4
MNF032Importação de XML TransmitidoEMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTALOCAL +4
MPD011Confirmação Ordem CarregamentoEMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTAVENDEDOR +3
MRC020Confirmação de Ordem de Carregamento RecapadoraEMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTALOCAL +3
RNF004Relação de Notas FiscaisEMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTAVENDEDOR +3
RNF010Curva ABC de ProdutosDEVOLUCAONOTA, EMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTAGRADE +3
CPD001Consulta de PedidosEMBARQUE, EMPRESA, ITEMNOTA, ITEMNOTASEMENTE, NFE +2
LNF107EMBARQUE, EMPRESA, ITEMNOTA, ITEMNOTASEMENTE, NOTA +2
MNF014Impressão de Nota Fiscal AvulsaEMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, NOTA +2
MNF017Venda BalcãoEMPRESA, IMPOSTONOTA, ITEMNOTA, ITEMNOTAGRADE, ITEMNOTALOCAL +2
MNF033Faturamento AgrupadoEMBARQUE, EMPRESA, ITEMNOTA, NFE, NOTA +2
RFI031Sped Fiscal(EFD)DEVOLUCAONOTA, EMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA +2
CNF011Consulta de NFS-eEMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, NOTA +1
CNF014EMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, NFE +1
JunsoftGerNotasEMBARQUE, EMPRESA, IMPOSTONOTA, ITEMNOTA, NFE +1
JunsoftIntegracaoEMPRESA, IMPOSTONOTA, ITEMNOTA, NFE, NOTA +1
JunsoftServiceFatAppEMBARQUE, EMPRESA, ITEMNOTA, ITEMNOTALOCAL, ITEMNOTAVENDEDOR +1
...+1197 telas

Regras de Negocio​

  1. Data de emissao da nota e obrigatoria (É Obrigatório Informar a Data de Emissão da Nota Fiscal!).
  2. Numero e serie da nota sao obrigatorios antes da gravacao; serie validada contra TFI007.
  3. Pessoa fisica/juridica e seu endereco (ativo em ENDERECOPESSOA/MUNICIPIO) sao obrigatorios ([TFA001]).
  4. Condicao de pagamento obrigatoria e deve estar ativa em CONDPAGTO ([TFC002]); quando digitada, exige DT_VENCTO >= DT_EMISSAO.
  5. Forma de pagamento obrigatoria; valor da nota deve ser maior que zero quando ha parcelamento financeiro.
  6. Item da nota exige produto cadastrado e ativo em ITEM ([TPO001]); itens duplicados sao bloqueados (O Produto "X" já foi Informado na Nota Fiscal!).
  7. Quantidade de item deve ser maior que zero; VALIDA_UNIDADEFECHADA impede fracionamento em unidades de venda fechadas.
  8. Grade: quando o item possui grade, UMNF019RATEIO/jGradeProduto exige preenchimento via ITEMNOTAGRADE (Não foi Informado os Dados da Grade...).
  9. Lotes de semente: quando cancelado pelo usuario, aborta (Rateio de Lotes de Semente Cancelado!). Soma dos saldos dos lotes escolhidos e conferida contra quantidade do item.
  10. Seriais: tela UMNF019SERIAL persiste ITEMSERIAL; cancelamento interrompe a gravacao (Seleção dos Seriais do Produto Cancelada!).
  11. Parcelamento: via jParcelamento; cancelamento aborta a operacao (Parcelamento da Nota Cancelado!).
  12. Impostos: GERA_IMPOSTONOTA recalcula por item e grava IMPOSTONOTA; VALOR_IMPOSTO sumariza totais do cabecalho.
  13. Mestra: GERA_MESTRA cria/atualiza MESTRA e movimenta CONTROLEENTREGA/CONTROLEENTREGADEVOLUCAO para operacoes simbolicas (consumo, saida, retorno).
  14. Chave de acesso: UfrmChaveAcessoMNF019 valida e persiste chave NFe via GERA_NFE (NFE).
  15. Integracao: EXECUTA_PROCESSO/GERA_INTEGRACAO/GRAVA_PROCESSO/GRAVA_MOVTOPROCESSO persistem os lancamentos financeiros, contábeis e de processo (CONTAS, CONTASCTB, MOVTOPROCESSO, PROCESSO).

Datasets e SQL​

  • tabCABECALHO/tabNOTA — cabecalho da nota (pessoa, endereco, modelo, serie, numero, datas, valores).
  • tabITEMNOTA — itens da nota com suporte a grade, local, semente, vendedor e serial.
  • tabPARCELA / PARCELANOTA — parcelas a receber/pagar (engine jParcelamento).
  • tabIMPOSTONOTA — impostos calculados por item/nota.
  • tabCONTROLEENTREGA / tabEMBARQUE — vinculos logisticos da nota.
  • tabMESTRA / tabREMESSA — apuracao simbolica de saldo de mestra via VIEW_SALDOMESTRA.
  • Uso predominante de JException com codigo W-0000 (warnings) — difere de MNF017 que usa E-0000.