MRC020 — Confirmação de Ordem de Carregamento Recapadora
Fonte
- Form:
source/MRC020/UMRC020.pas - DataModule:
source/MRC020/UdmMRC020.pas - DataModule auxiliar:
source/MRC020/UdmMRC020NFORDEM.pas
Objetivo
O módulo MRC020 - Confirmação de Ordem de Carregamento Recapadora é responsável por gerenciar o processo de confirmação, faturamento e finalização das ordens de carregamento de pneus recapados. Este módulo representa a etapa final do ciclo de expedição no sistema Vulcano.
Este módulo permite que o usuário consulte as ordens de carregamento geradas pelo módulo MRC019, edite informações do embarque (motorista, transportador, frete, pedágio), emita notas fiscais para os clientes, e confirme/encerre as ordens de carregamento. Ao confirmar uma ordem, o sistema automaticamente gera movimentações de estoque e lançamentos financeiros (contas a receber).
O MRC020 é utilizado principalmente pelo setor de expedição, faturamento e logística da recapadora, sendo fundamental para o controle financeiro e fiscal da saída dos pneus recapados. É parte essencial do fluxo de trabalho do sistema Vulcano para empresas do ramo de recapagem de pneus.
O módulo integra-se diretamente com os processos de estoque, financeiro e fiscal, garantindo que todas as movimentações sejam registradas corretamente no sistema.
Funcionalidades
- Consulta de Ordens de Carregamento
- Visualização de Detalhes da Ordem
- Edição de Dados do Embarque
- Inclusão/Remoção de Produtos da Ordem
- Emissão de Nota Fiscal
- Confirmação/Encerramento de Ordem
- Cancelamento de Ordem
- Impressão de Ordem de Carregamento
- Visualização de Notas Fiscais
Mensagens exibidas
Levantadas de source/MRC020/ pela camada 0 (commit 96fc51e236).
| Código | Tipo | Mensagem |
|---|---|---|
| W-0153 | Aviso | A Forma de Pagamento %s não está Liberada para a Pessoa %s . Verifique! [TFA001] |
Mais 210 mensagens com texto literal no código: MRC020.
Parâmetros lidos
Campos PARM* lidos via values[] em source/MRC020/ (commit 96fc51e236).
Tabelas de Escrita (INSERT/UPDATE/DELETE)
| Tabela | Operacoes |
|---|---|
| CONTAS | SELECT, UPDATE |
| EMBARQUE | DELETE, INSERT, SELECT, UPDATE |
| EMPRESA | DELETE, INSERT, SELECT, UPDATE |
| IMPOSTONOTA | DELETE, INSERT, SELECT, UPDATE |
| ITEMNOTA | DELETE, INSERT, SELECT, UPDATE |
| ITEMNOTALOCAL | DELETE, INSERT, SELECT, UPDATE |
| ITEMNOTAVENDEDOR | DELETE, INSERT, SELECT |
| ITEMPEDIDO | SELECT, UPDATE |
| ITEMRECAPFATUR | DELETE, INSERT, SELECT |
| LAUDORECAPDESCNOTA | INSERT, SELECT |
| MOVTOCAIXA | SELECT, UPDATE |
| NFSE | SELECT, UPDATE |
| NOTA | DELETE, INSERT, SELECT, UPDATE |
| ORDEMCARREG | DELETE, INSERT, SELECT, UPDATE |
| ORDEMCARREGRECAP | DELETE, INSERT, SELECT, UPDATE |
| PEDIDO | INSERT, SELECT, UPDATE |
| PEDIDONOTA | INSERT |
| PESSOA | DELETE, INSERT, SELECT, UPDATE |
| REGIAOCOMERCIAL | DELETE, INSERT, SELECT, UPDATE |
Tabelas de Leitura (SELECT)
Procedures Chamadas
| Procedure | Tabelas Acessadas |
|---|---|
| ATUALIZA_PEDIDONOTA | CONTRATORECAP (SELECT/UPDATE), ITEMPEDIDO (SELECT/UPDATE), ITEMPEDIDOPNEU (SELECT), NOTA (SELECT), ORDEMPRODUCAORECAP (SELECT), PARAMRECAP (SELECT) +5 |
| CALCULA_COMISSAO_V2 | COMISSAOVENDEDOR (SELECT), CONDPAGTO (SELECT), ITEM (SELECT), ITEMNOTA (SELECT), ITEMNOTAVENDEDOR (SELECT), ITEMPERFIL (SELECT) +9 |
| CALCULA_IMPOSTOPEDIDO | EMPRESA (SELECT), ENDERECOPESSOA (SELECT), IMPOSTO (SELECT), IMPOSTOITEM (SELECT), IMPOSTOMOV (SELECT), ITEM (SELECT) +9 |
| CALCULA_IMPOSTOS | ALIQUOTA (SELECT), CONFIGNFSE (SELECT), DEVOLUCAONOTA (SELECT), EMPRESA (SELECT), ESTADO (SELECT), IMPOSTO (SELECT) +14 |
| CALCULA_VALOR | ITEM (SELECT), TIPOCALCULO (SELECT) |
| CONTROLE_CAIXA | CAIXA (SELECT), PARMFINANC (SELECT), PARMUSUARIO (SELECT) |
| GERA_ESTOQUE | COLUNAGRADE (SELECT), DEVOLUCAONOTA (SELECT), ESTOQUE (INSERT/SELECT/UPDATE), ESTOQUEDIA (INSERT/SELECT/UPDATE), ESTOQUEDIAPESSOA (INSERT/SELECT/UPDATE), ESTOQUEGRADE (INSERT/SELECT/UPDATE) +28 |
| GERA_IMPOSTONOTA | ALIQUOTA (SELECT), CONFIGNFSE (SELECT), CTRC (SELECT), EMPRESA (SELECT), ENDERECOPESSOA (SELECT), ESTADO (SELECT) +19 |
| GERA_MESTRA | CONTROLEENTREGA (DELETE/INSERT/SELECT/UPDATE), CONTROLEENTREGADEVOLUCAO (INSERT), ITEMNOTA (SELECT), MESTRA (INSERT/SELECT/UPDATE), NOTA (SELECT), PARMFATUR (SELECT) +2 |
| GERA_NOTAFISCAL | AGENCIA (SELECT), AJUSTEFISCALITEMNOTA (DELETE/INSERT/SELECT), ALIQUOTA (SELECT), AVISOSCPC (INSERT), BANCO (SELECT), BOLETO (SELECT) +145 |
| GERA_ORDEMPRODUCAO | COLUNAGRADE (SELECT), DEVOLUCAONOTA (SELECT), ESTOQUE (INSERT/SELECT/UPDATE), ESTOQUEDIA (INSERT/SELECT/UPDATE), ESTOQUEDIAPESSOA (INSERT/SELECT/UPDATE), ESTOQUEGRADE (INSERT/SELECT/UPDATE) +32 |
| GERA_SEQUENCIA | SEQUENCIA (SELECT/UPDATE) |
| GRAVA_CONTAS | AJUSTEFISCALITEMNOTA (DELETE/INSERT/SELECT), ALIQUOTA (SELECT), BOLETO (SELECT), CODRECEITA (SELECT), CONDPAGTO (SELECT), CONDPARCELA (SELECT) +64 |
| GRAVA_MOVTOCAIXA | AJUSTEFISCALITEMNOTA (DELETE/INSERT/SELECT), ALIQUOTA (SELECT), CODRECEITA (SELECT), CONDPAGTO (SELECT), CONTAS (SELECT), CONTASCTB (DELETE/INSERT/SELECT) +56 |
| HABILITA_PESOQTDE | ITEM (SELECT), TIPOCALCULO (SELECT), UNIDMED (SELECT) |
| RETORNA_CHAVENOTA | NOTA (SELECT), ORDEMCARREG (SELECT), PEDIDONOTA (SELECT) |
| RETORNA_CHAVEPEDIDO | EMBARQUE (SELECT), NOTA (SELECT), ORDEMCARREG (SELECT), PEDIDO (SELECT), PEDIDONOTA (SELECT) |
| RETORNA_COMPLEMENTO | CONTAS (SELECT), CONTASHISTORICO (SELECT), HISTORICO (SELECT), MOVTOCAIXA (SELECT), PARMCOMPLCAIXA (SELECT), PARMFINANC (SELECT) +3 |
| RETORNA_LOCAISARMAZENAGEM | ITEMEMPRESA (SELECT), ITEMLOCAL (SELECT), LOCALESTOQUE (SELECT), LOCALUSUARIO (SELECT), PARMFATUR (SELECT), SESSAO (SELECT) +1 |
| RETORNA_MODELOCOMISSAO | VENDEDOR (SELECT) |
| RETORNA_MOVIMENTACAOPADRAO | CONTRATORECAP (SELECT), ENDERECOPESSOA (SELECT), ITEM (SELECT), PARAMRECAP (SELECT), PARMFATUR (SELECT), PESSOA (SELECT) +1 |
| RETORNA_OBSNOTA | CFO (SELECT), CONTROLESELO (SELECT), CTRC (SELECT), DEVOLUCAONOTA (SELECT), EMBARQUE (SELECT), EMPRESA (SELECT) +30 |
| RETORNA_OBSORDEMCARREG | EMBARQUE (SELECT), EMPRESA (SELECT), ITEMPEDIDO (SELECT), ITEMPEDIDOPNEU (SELECT), ORDEMCARREG (SELECT), ORDEMCARREGRECAP (SELECT) +5 |
| RETORNA_PRECOITEM | CONDPAGTO (SELECT), ITEM (SELECT), ITEMTABPRECO (SELECT), ITEMTABPRECODATA (SELECT), PARAMRECAP (SELECT), PARMFATUR (SELECT) +6 |
| RETORNA_SALDOESTOQUE | ESTOQUE (SELECT), ESTOQUEDIA (SELECT), ITEMLOCAL (SELECT), MOVESTOQUE (SELECT), OPERACAO (SELECT), PARMESTOQUE (SELECT) |
| RETORNA_TABPRECO | ITEM (SELECT), ITEMPERFIL (SELECT), ITEMTABPRECO (SELECT), PARAMRECAP (SELECT), PARMTABPRECO (SELECT), SESSAO (SELECT) +1 |
| RETORNA_TOTAISCONTRATORECAP | CONSERTOMANCHAO (SELECT), CONTRATORECAP (SELECT), ITEMNOTA (SELECT), ITEMPEDIDOPNEU (SELECT), LAUDORECAPDESCNOTA (SELECT), LIMPEZAMANCHAO (SELECT) +7 |
| RETORNA_VLATENDIDOLAUDO | CLASSIFICACAOLAUDO (SELECT), CONTAS (SELECT), EMBARQUE (SELECT), LAUDOORCAMENTORECAP (SELECT), LAUDORECAPDESCNOTA (SELECT), LAUDOTECNICOCARREGDESC (SELECT) +3 |
| VALOR_IMPOSTO | IMPOSTO (SELECT), IMPOSTONOTA (SELECT), NOTA (SELECT), PESSOA (SELECT) |
| VERIFICA_BLOQUEIO | BENEFICIOCLIENTE (SELECT), CONDPAGTO (SELECT), CONDPARCELA (SELECT), CONTAS (SELECT), CREDITOGRUPO (SELECT), CREDITOPERIODICO (SELECT) +35 |
| VERIFICA_CREDITO | CONTAS (SELECT), PARMFATUR (SELECT) |
| VIEW_PLANOCONTAS | CENTROCUSTO (SELECT), CONTASPESSOA (SELECT), PARMCONTABIL (SELECT), PARMSISTEMA (SELECT), PLANOCONTAS (SELECT), PLANOEMPRESA (SELECT) |
Tabelas via Procedures (acesso indireto)
| Tabela | Operacoes |
|---|---|
| AGENCIA | SELECT |
| AJUSTEFISCALITEMNOTA | DELETE, INSERT, SELECT |
| ALIQUOTA | SELECT |
| AVISOSCPC | INSERT |
| BANCO | SELECT |
| BENEFICIOCLIENTE | SELECT |
| BOLETO | SELECT |
| CAIXA | SELECT |
| CENTROCUSTO | SELECT |
| CFO | SELECT |
| CHEQUE | SELECT |
| CLASSIFICACAOLAUDO | SELECT |
| CODRECEITA | SELECT |
| COLUNAGRADE | SELECT |
| COMISSAOCONTAS | INSERT |
| COMISSAOTABPRECO | INSERT |
| COMISSAOVENDEDOR | SELECT |
| CONDPAGTO | SELECT |
| CONDPARCELA | SELECT |
| CONFIGNFE | SELECT |
| ... | +188 tabelas |
Dependencias Aferentes (quem alimenta esta tela)
Telas que escrevem em tabelas lidas por esta tela.
| Tela | Título | Tabelas em Comum |
|---|---|---|
| MFC023 | Duplicata / Adiantamento por Obra | CONTAS |
| MFC027 | Gerenciamento Conciliação Bancária | CONTAS |
| MFC005 | Cancelamento de Duplicata / Adiantamento | CONTAS |
| MNF034 | Lançamento Documento Fiscal em Lote | CONTAS |
| CNF012 | Consulta de CTRC | CONTAS |
| MPD026 | Controle de Obras | CONTAS |
| MTR005 | Consulta / Fechamento de Viagem | CONTAS |
| RPD015 | CONTAS | |
| MRC030 | CONTAS | |
jFaturamento | CONTAS | |
| MCA004 | Fechamento de Contratos | CONTAS |
| MFC014 | CONTAS | |
| MCA009 | Complemento de Pagamento | CONTAS |
| MNF002 | Emissão de Nota Fiscal de Venda | CONTAS |
| MFC034 | Provisão Financeira/Contábil para Devedores Duvidosos | CONTAS |
| MPD019 | Gerenciamento de Contrato/Romaneio Obras | CONTAS |
| MPD022 | CONTAS | |
| MFC019 | Reparcelamento de Contas | CONTAS |
| MFC012 | Agrupamento de Contas | CONTAS |
| MNF023 | Gerenciamento de Contas de Contratos | CONTAS |
| MNF009 | CONTAS | |
| MNF017 | Venda Balcão | CONTAS |
| MNF024 | CONTAS | |
| MNF007 | Devolução / Retorno de Notas Fiscais | CONTAS |
| MFC015 | Desconto de Duplicatas / Cheques | CONTAS |
| MFC032 | Gerenciamento de Títulos a Pagar | CONTAS |
| TFA067 | Contratos e Licenças de Software | CONTAS |
| MNF004 | Emissão de Notas Fiscais Liberadas | CONTAS |
| MNF001 | Recebimento de Notas Fiscais de Compra | CONTAS |
| MNF026 | Troca de Produtos com Emissão de Nota Fiscal | CONTAS |
| ... | +74 telas |
Dependencias Eferentes (quem consome dados desta tela)
Telas que leem tabelas escritas por esta tela.
| Tela | Título | Tabelas em Comum |
|---|---|---|
| MPD052 | Controle de Obra / Romaneio | CONTAS |
LCX007 | CONTAS | |
| RFC046 | CONTAS | |
| MPD026 | Controle de Obras | CONTAS |
| RPD015 | CONTAS | |
LCX009 | CONTAS | |
| MFC014 | CONTAS | |
| MCA009 | Complemento de Pagamento | CONTAS |
| RNF006 | Relação de Custo X Lucro sobre Vendas | CONTAS |
| MPD088 | CONTAS | |
LCX002 | CONTAS | |
LNF238 | CONTAS | |
| MFC019 | Reparcelamento de Contas | CONTAS |
| MFC012 | Agrupamento de Contas | CONTAS |
| MNF023 | Gerenciamento de Contas de Contratos | CONTAS |
LNF090 | CONTAS | |
LDP019 | CONTAS | |
LCX017 | CONTAS | |
LCX032 | CONTAS | |
LNF200 | CONTAS | |
| RPD033 | CONTAS | |
| MPD010 | Ordem de Carregamento | CONTAS |
LTC004 | CONTAS | |
| RTR008 | Relatório de Viagens | CONTAS |
LNF216 | CONTAS | |
LNF211 | CONTAS | |
| MNF001 | Recebimento de Notas Fiscais de Compra | CONTAS |
LCX018 | CONTAS | |
| TFA063 | CONTAS | |
| MOF007 | Desbloqueio de Ordens de Serviço | CONTAS |
| ... | +323 telas |
Regras de Negocio
- Obrigatoriedade de empresa:
btnProcurarClickexige CD_EMPRESA preenchido antes de executar qualquer consulta; lançaJException W-0000se vazio. - Parâmetros de configuração (
Busca_Parametros): Lê PARAMRECAP e PARMFATUR para obter código de layout da ordem (iCD_LAYORDEM), status de ordem de carregamento (iST_ORDEMCARREG), bloqueio (iST_BLOQUEIAORDEMCARREG) e permissão de emitir NF (iST_EMITENFCARREG). DesabilitabtnEmitirNFseiST_EMITENFCARREG='N'. - Confirmação de ordem: Verifica se existem NFs pendentes não emitidas; se houver, bloqueia confirmação com mensagem específica. Verifica NFs bloqueadas; após aprovação, executa
UPDATE ORDEMCARREG SET ST_ORDEMCARREG = 'C'eUPDATE ORDEMCARREGRECAP ST_ORDEMCARREGRECAP = 'A'viatransactionOrdem. - Validação de pneus da casa: Antes de confirmar, valida via
VALIDA_NOTAPEDIDOCARCACA(chamado indiretamente) que pneus da casa com carcaça não faturada são tratados; caso contrário, lança erro bloqueando o faturamento. - Reabertura de ordem: Permite reabrir (cancelar confirmação) somente quando nenhuma NF foi emitida para a ordem (
O_CD_ITEM IS NULL). Se NFs existirem, instrui usar MRC021. ExecutaUPDATE ORDEMCARREGeUPDATE EMBARQUEpara reverter status. - Duas transações separadas:
transaction(leitura/filtros) etransactionOrdem(gravações de confirmação/reabertura). Isso permite rollback seletivo em caso de erro na confirmação sem desfazer os filtros da tela. - tabEMPRESACD_PESSOAValidate: Ao informar CD_PESSOA no filtro de empresa, valida que a pessoa existe e está ativa em
PESSOA. - tabORDEMPRODAfterScroll / tabORDEMAfterScroll: Recarrega detail de ordem de produção e totais ao navegar entre ordens de carregamento.
Datasets e SQL
| Dataset | Tabela Principal | Tipo | Descricao |
|---|---|---|---|
tabEMPRESA | EMPRESA | TFDQuery | Filtro de empresas; permite múltiplas empresas com data inicial/final de embarque |
tabREGIAOCOMERCIAL | REGIAOCOMERCIAL | TFDQuery | Filtro de regiões comerciais para pesquisa de ordens |
tabPESSOA | PESSOA | TFDQuery | Filtro de clientes/pessoas para pesquisa |
tabEMBARQUE | EMBARQUE | TFDQuery | Filtro de embarques específicos |
tabMOTORISTA | PESSOA | TFDQuery | Filtro de motoristas |
tabTRANSPORTADOR | PESSOA | TFDQuery | Filtro de transportadores |
tabORDEM | ORDEMCARREG | TFDQuery | Ordens de carregamento resultantes da pesquisa |
tabORDEMPESSOA | (view/join) | TFDQuery | Detalhe de clientes por ordem; detail de tabORDEM |
tabORDEMPROD | ORDEMPRODUCAORECAP | TFDQuery | Ordens de produção de recapagem vinculadas à ordem |
tabReabertura | (view) | TFDQuery | Itens para reabertura da ordem de carregamento |
tabPEDIDO | PEDIDOPNEU | TFDQuery | Pedidos de pneu vinculados à ordem; para faturamento |
tabNOTA | NOTA | TFDQuery | Notas fiscais já emitidas para a ordem |
tabEMB | EMBARQUE | TFDQuery | Dados completos do embarque selecionado (motorista, placa, frete) |
tabPESQPED | (in-memory) | TFDQuery | Filtro de pedidos por número |
tabPESQPEDCLI | (in-memory) | TFDQuery | Filtro de pedidos por número do pedido do cliente |