Pular para o conteúdo principal

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ódigoTipoMensagem
W-0153AvisoA 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).

ParâmetroTabela
CD_CATEGORIABANDAPARAMRECAP
CD_SERVCANALETAPARAMRECAP
STBONIFICACAOLAUDOPARAMRECAP
STOBRIGAFATURACARCACAPARAMRECAP
STUTILIZACONTRATOCOLETAPARAMRECAP
STUTILIZASERIEPESSOAPARAMRECAP
ST_ALTERACLIENTEMRC020PARAMRECAP
ST_ALTERACABECALHONOTAPARMFATUR
ST_ALTERANOTAPARMFATUR
ST_ATENDECARREGPARMFATUR
ST_BLOQCONFIRMACAOPARMFATUR
ST_BLOQNOTAPEDJABLOQPARMFATUR
ST_BLOQUEIOVENDEDORPARMFATUR
ST_FECHAORDEMCARREGNOTASPARMFATUR
ST_FILTROPESSOAPARMFATUR
ST_IMPRIMERECIBOCOMISSAOPARMFATUR
ST_MOSTRARDEVENDOPARMFATUR
ST_OBSCLIENTEPARMFATUR
ST_OBSPEDIDONOTAPARMFATUR
ST_ORDEMCARREGPARMFATUR
ST_REPRMOVCLIMPD020PARMFATUR
ST_REPROCESSATABPRECOPARMFATUR
ST_REPROCESSAVENDPARMFATUR
ST_TABPRECOPARMFATUR
ST_VALIDATABVENDEDORPARMFATUR
ST_VARIOSVENDEDORESPARMFATUR
TP_MOSTRAVENDEDORESPARMFATUR
TP_OBSNOTAPARMFATUR

Tabelas de Escrita (INSERT/UPDATE/DELETE)​

TabelaOperacoes
CONTASSELECT, UPDATE
EMBARQUEDELETE, INSERT, SELECT, UPDATE
EMPRESADELETE, INSERT, SELECT, UPDATE
IMPOSTONOTADELETE, INSERT, SELECT, UPDATE
ITEMNOTADELETE, INSERT, SELECT, UPDATE
ITEMNOTALOCALDELETE, INSERT, SELECT, UPDATE
ITEMNOTAVENDEDORDELETE, INSERT, SELECT
ITEMPEDIDOSELECT, UPDATE
ITEMRECAPFATURDELETE, INSERT, SELECT
LAUDORECAPDESCNOTAINSERT, SELECT
MOVTOCAIXASELECT, UPDATE
NFSESELECT, UPDATE
NOTADELETE, INSERT, SELECT, UPDATE
ORDEMCARREGDELETE, INSERT, SELECT, UPDATE
ORDEMCARREGRECAPDELETE, INSERT, SELECT, UPDATE
PEDIDOINSERT, SELECT, UPDATE
PEDIDONOTAINSERT
PESSOADELETE, INSERT, SELECT, UPDATE
REGIAOCOMERCIALDELETE, INSERT, SELECT, UPDATE

Tabelas de Leitura (SELECT)​

TabelaOperacoes
ACESSOSELECT
AGENCIASELECT
ALIQUOTASELECT
AUTORIZADORSELECT
BANCOSELECT
BOLETOSELECT
CLASSIFICACAOLAUDOSELECT
CONDPAGTOSELECT
CONDPARCELASELECT
CONFIGNFESELECT
CONSERTOMANCHAOSELECT
CONSERTOPNEUSELECT
CONTRATORECAPSELECT
ENDERECOPESSOASELECT
EXAMEFINALPNEUSELECT
EXAMEINICIALSELECT
FORMAPAGTOSELECT
GRUPOMOVIMENTACAOSELECT
HISTORICOSELECT
IMPOSTOSELECT
INTERMEDIADORSELECT
ITEMSELECT
ITEMEMPRESASELECT
ITEMLOCALSELECT
ITEMPEDIDOPNEUSELECT
ITEMPEDIDOVENDEDORSELECT
ITEMSIMILARSELECT
ITEMTABPRECOSELECT
JUROSELECT
LAUDOTECNICOPNEURECAPSELECT
LAUDOTECPNEUCONTASSELECT
LIMPEZAMANCHAOSELECT
LOCALESTOQUESELECT
MARCASELECT
MARCAPNEUSELECT
MEDIDAPNEUSELECT
MESTRASELECT
MODELONFSELECT
MODELOPNEUSELECT
MOVESTOQUESELECT
MOVIMENTACAOSELECT
MOVTOPROCESSOSELECT
MUNICIPIOSELECT
NATUREZACARGASELECT
OBSFISCALSELECT
ORDEMPRODUCAORECAPSELECT
PARAMRECAPSELECT
PARMENTREGASELECT
PARMESTOQUESELECT
PARMFATURSELECT
PARMFINANCSELECT
PARMNOTASELECT
PARMTABPRECOSELECT
PARMUSUARIOSELECT
PEDIDOPNEUSELECT
PESSOAFISICASELECT
PESSOAFORMAPAGTOSELECT
PESSOASERIENFSELECT
PLUGORDRECAPPEDIDOSELECT
PNEUSELECT
PROCESSOSELECT
PRODUCAOSELECT
SERVICOCONTRATORECAPSELECT
SERVICOPNEUSELECT
TABPRECOSELECT
TABPRECOVENDEDORSELECT
TEFSELECT
TIPOCALCULOSELECT
TIPOCONTASELECT
TIPOLOCALSELECT
TIPOPESSOASELECT
TIPOVENDEDORSELECT
USUARIOSELECT
USUARIOEMPRESASELECT
VENDEDORSELECT

Procedures Chamadas​

ProcedureTabelas Acessadas
ATUALIZA_PEDIDONOTACONTRATORECAP (SELECT/UPDATE), ITEMPEDIDO (SELECT/UPDATE), ITEMPEDIDOPNEU (SELECT), NOTA (SELECT), ORDEMPRODUCAORECAP (SELECT), PARAMRECAP (SELECT) +5
CALCULA_COMISSAO_V2COMISSAOVENDEDOR (SELECT), CONDPAGTO (SELECT), ITEM (SELECT), ITEMNOTA (SELECT), ITEMNOTAVENDEDOR (SELECT), ITEMPERFIL (SELECT) +9
CALCULA_IMPOSTOPEDIDOEMPRESA (SELECT), ENDERECOPESSOA (SELECT), IMPOSTO (SELECT), IMPOSTOITEM (SELECT), IMPOSTOMOV (SELECT), ITEM (SELECT) +9
CALCULA_IMPOSTOSALIQUOTA (SELECT), CONFIGNFSE (SELECT), DEVOLUCAONOTA (SELECT), EMPRESA (SELECT), ESTADO (SELECT), IMPOSTO (SELECT) +14
CALCULA_VALORITEM (SELECT), TIPOCALCULO (SELECT)
CONTROLE_CAIXACAIXA (SELECT), PARMFINANC (SELECT), PARMUSUARIO (SELECT)
GERA_ESTOQUECOLUNAGRADE (SELECT), DEVOLUCAONOTA (SELECT), ESTOQUE (INSERT/SELECT/UPDATE), ESTOQUEDIA (INSERT/SELECT/UPDATE), ESTOQUEDIAPESSOA (INSERT/SELECT/UPDATE), ESTOQUEGRADE (INSERT/SELECT/UPDATE) +28
GERA_IMPOSTONOTAALIQUOTA (SELECT), CONFIGNFSE (SELECT), CTRC (SELECT), EMPRESA (SELECT), ENDERECOPESSOA (SELECT), ESTADO (SELECT) +19
GERA_MESTRACONTROLEENTREGA (DELETE/INSERT/SELECT/UPDATE), CONTROLEENTREGADEVOLUCAO (INSERT), ITEMNOTA (SELECT), MESTRA (INSERT/SELECT/UPDATE), NOTA (SELECT), PARMFATUR (SELECT) +2
GERA_NOTAFISCALAGENCIA (SELECT), AJUSTEFISCALITEMNOTA (DELETE/INSERT/SELECT), ALIQUOTA (SELECT), AVISOSCPC (INSERT), BANCO (SELECT), BOLETO (SELECT) +145
GERA_ORDEMPRODUCAOCOLUNAGRADE (SELECT), DEVOLUCAONOTA (SELECT), ESTOQUE (INSERT/SELECT/UPDATE), ESTOQUEDIA (INSERT/SELECT/UPDATE), ESTOQUEDIAPESSOA (INSERT/SELECT/UPDATE), ESTOQUEGRADE (INSERT/SELECT/UPDATE) +32
GERA_SEQUENCIASEQUENCIA (SELECT/UPDATE)
GRAVA_CONTASAJUSTEFISCALITEMNOTA (DELETE/INSERT/SELECT), ALIQUOTA (SELECT), BOLETO (SELECT), CODRECEITA (SELECT), CONDPAGTO (SELECT), CONDPARCELA (SELECT) +64
GRAVA_MOVTOCAIXAAJUSTEFISCALITEMNOTA (DELETE/INSERT/SELECT), ALIQUOTA (SELECT), CODRECEITA (SELECT), CONDPAGTO (SELECT), CONTAS (SELECT), CONTASCTB (DELETE/INSERT/SELECT) +56
HABILITA_PESOQTDEITEM (SELECT), TIPOCALCULO (SELECT), UNIDMED (SELECT)
RETORNA_CHAVENOTANOTA (SELECT), ORDEMCARREG (SELECT), PEDIDONOTA (SELECT)
RETORNA_CHAVEPEDIDOEMBARQUE (SELECT), NOTA (SELECT), ORDEMCARREG (SELECT), PEDIDO (SELECT), PEDIDONOTA (SELECT)
RETORNA_COMPLEMENTOCONTAS (SELECT), CONTASHISTORICO (SELECT), HISTORICO (SELECT), MOVTOCAIXA (SELECT), PARMCOMPLCAIXA (SELECT), PARMFINANC (SELECT) +3
RETORNA_LOCAISARMAZENAGEMITEMEMPRESA (SELECT), ITEMLOCAL (SELECT), LOCALESTOQUE (SELECT), LOCALUSUARIO (SELECT), PARMFATUR (SELECT), SESSAO (SELECT) +1
RETORNA_MODELOCOMISSAOVENDEDOR (SELECT)
RETORNA_MOVIMENTACAOPADRAOCONTRATORECAP (SELECT), ENDERECOPESSOA (SELECT), ITEM (SELECT), PARAMRECAP (SELECT), PARMFATUR (SELECT), PESSOA (SELECT) +1
RETORNA_OBSNOTACFO (SELECT), CONTROLESELO (SELECT), CTRC (SELECT), DEVOLUCAONOTA (SELECT), EMBARQUE (SELECT), EMPRESA (SELECT) +30
RETORNA_OBSORDEMCARREGEMBARQUE (SELECT), EMPRESA (SELECT), ITEMPEDIDO (SELECT), ITEMPEDIDOPNEU (SELECT), ORDEMCARREG (SELECT), ORDEMCARREGRECAP (SELECT) +5
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
RETORNA_TOTAISCONTRATORECAPCONSERTOMANCHAO (SELECT), CONTRATORECAP (SELECT), ITEMNOTA (SELECT), ITEMPEDIDOPNEU (SELECT), LAUDORECAPDESCNOTA (SELECT), LIMPEZAMANCHAO (SELECT) +7
RETORNA_VLATENDIDOLAUDOCLASSIFICACAOLAUDO (SELECT), CONTAS (SELECT), EMBARQUE (SELECT), LAUDOORCAMENTORECAP (SELECT), LAUDORECAPDESCNOTA (SELECT), LAUDOTECNICOCARREGDESC (SELECT) +3
VALOR_IMPOSTOIMPOSTO (SELECT), IMPOSTONOTA (SELECT), NOTA (SELECT), PESSOA (SELECT)
VERIFICA_BLOQUEIOBENEFICIOCLIENTE (SELECT), CONDPAGTO (SELECT), CONDPARCELA (SELECT), CONTAS (SELECT), CREDITOGRUPO (SELECT), CREDITOPERIODICO (SELECT) +35
VERIFICA_CREDITOCONTAS (SELECT), PARMFATUR (SELECT)
VIEW_PLANOCONTASCENTROCUSTO (SELECT), CONTASPESSOA (SELECT), PARMCONTABIL (SELECT), PARMSISTEMA (SELECT), PLANOCONTAS (SELECT), PLANOEMPRESA (SELECT)

Tabelas via Procedures (acesso indireto)​

TabelaOperacoes
AGENCIASELECT
AJUSTEFISCALITEMNOTADELETE, INSERT, SELECT
ALIQUOTASELECT
AVISOSCPCINSERT
BANCOSELECT
BENEFICIOCLIENTESELECT
BOLETOSELECT
CAIXASELECT
CENTROCUSTOSELECT
CFOSELECT
CHEQUESELECT
CLASSIFICACAOLAUDOSELECT
CODRECEITASELECT
COLUNAGRADESELECT
COMISSAOCONTASINSERT
COMISSAOTABPRECOINSERT
COMISSAOVENDEDORSELECT
CONDPAGTOSELECT
CONDPARCELASELECT
CONFIGNFESELECT
...+188 tabelas

Dependencias Aferentes (quem alimenta esta tela)​

Telas que escrevem em tabelas lidas por esta tela.

TelaTítuloTabelas em Comum
MFC023Duplicata / Adiantamento por ObraCONTAS
MFC027Gerenciamento Conciliação BancáriaCONTAS
MFC005Cancelamento de Duplicata / AdiantamentoCONTAS
MNF034Lançamento Documento Fiscal em LoteCONTAS
CNF012Consulta de CTRCCONTAS
MPD026Controle de ObrasCONTAS
MTR005Consulta / Fechamento de ViagemCONTAS
RPD015CONTAS
MRC030CONTAS
jFaturamentoCONTAS
MCA004Fechamento de ContratosCONTAS
MFC014CONTAS
MCA009Complemento de PagamentoCONTAS
MNF002Emissão de Nota Fiscal de VendaCONTAS
MFC034Provisão Financeira/Contábil para Devedores DuvidososCONTAS
MPD019Gerenciamento de Contrato/Romaneio ObrasCONTAS
MPD022CONTAS
MFC019Reparcelamento de ContasCONTAS
MFC012Agrupamento de ContasCONTAS
MNF023Gerenciamento de Contas de ContratosCONTAS
MNF009CONTAS
MNF017Venda BalcãoCONTAS
MNF024CONTAS
MNF007Devolução / Retorno de Notas FiscaisCONTAS
MFC015Desconto de Duplicatas / ChequesCONTAS
MFC032Gerenciamento de Títulos a PagarCONTAS
TFA067Contratos e Licenças de SoftwareCONTAS
MNF004Emissão de Notas Fiscais LiberadasCONTAS
MNF001Recebimento de Notas Fiscais de CompraCONTAS
MNF026Troca de Produtos com Emissão de Nota FiscalCONTAS
...+74 telas

Dependencias Eferentes (quem consome dados desta tela)​

Telas que leem tabelas escritas por esta tela.

TelaTítuloTabelas em Comum
MPD052Controle de Obra / RomaneioCONTAS
LCX007CONTAS
RFC046CONTAS
MPD026Controle de ObrasCONTAS
RPD015CONTAS
LCX009CONTAS
MFC014CONTAS
MCA009Complemento de PagamentoCONTAS
RNF006Relação de Custo X Lucro sobre VendasCONTAS
MPD088CONTAS
LCX002CONTAS
LNF238CONTAS
MFC019Reparcelamento de ContasCONTAS
MFC012Agrupamento de ContasCONTAS
MNF023Gerenciamento de Contas de ContratosCONTAS
LNF090CONTAS
LDP019CONTAS
LCX017CONTAS
LCX032CONTAS
LNF200CONTAS
RPD033CONTAS
MPD010Ordem de CarregamentoCONTAS
LTC004CONTAS
RTR008Relatório de ViagensCONTAS
LNF216CONTAS
LNF211CONTAS
MNF001Recebimento de Notas Fiscais de CompraCONTAS
LCX018CONTAS
TFA063CONTAS
MOF007Desbloqueio de Ordens de ServiçoCONTAS
...+323 telas

Regras de Negocio​

  1. Obrigatoriedade de empresa: btnProcurarClick exige CD_EMPRESA preenchido antes de executar qualquer consulta; lança JException W-0000 se vazio.
  2. 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). Desabilita btnEmitirNF se iST_EMITENFCARREG='N'.
  3. 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' e UPDATE ORDEMCARREGRECAP ST_ORDEMCARREGRECAP = 'A' via transactionOrdem.
  4. 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.
  5. 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. Executa UPDATE ORDEMCARREG e UPDATE EMBARQUE para reverter status.
  6. Duas transações separadas: transaction (leitura/filtros) e transactionOrdem (gravações de confirmação/reabertura). Isso permite rollback seletivo em caso de erro na confirmação sem desfazer os filtros da tela.
  7. tabEMPRESACD_PESSOAValidate: Ao informar CD_PESSOA no filtro de empresa, valida que a pessoa existe e está ativa em PESSOA.
  8. tabORDEMPRODAfterScroll / tabORDEMAfterScroll: Recarrega detail de ordem de produção e totais ao navegar entre ordens de carregamento.

Datasets e SQL​

DatasetTabela PrincipalTipoDescricao
tabEMPRESAEMPRESATFDQueryFiltro de empresas; permite múltiplas empresas com data inicial/final de embarque
tabREGIAOCOMERCIALREGIAOCOMERCIALTFDQueryFiltro de regiões comerciais para pesquisa de ordens
tabPESSOAPESSOATFDQueryFiltro de clientes/pessoas para pesquisa
tabEMBARQUEEMBARQUETFDQueryFiltro de embarques específicos
tabMOTORISTAPESSOATFDQueryFiltro de motoristas
tabTRANSPORTADORPESSOATFDQueryFiltro de transportadores
tabORDEMORDEMCARREGTFDQueryOrdens de carregamento resultantes da pesquisa
tabORDEMPESSOA(view/join)TFDQueryDetalhe de clientes por ordem; detail de tabORDEM
tabORDEMPRODORDEMPRODUCAORECAPTFDQueryOrdens de produção de recapagem vinculadas à ordem
tabReabertura(view)TFDQueryItens para reabertura da ordem de carregamento
tabPEDIDOPEDIDOPNEUTFDQueryPedidos de pneu vinculados à ordem; para faturamento
tabNOTANOTATFDQueryNotas fiscais já emitidas para a ordem
tabEMBEMBARQUETFDQueryDados completos do embarque selecionado (motorista, placa, frete)
tabPESQPED(in-memory)TFDQueryFiltro de pedidos por número
tabPESQPEDCLI(in-memory)TFDQueryFiltro de pedidos por número do pedido do cliente