ST_CONTROLACARCACA - Controle de Carcaças
Tela de configuração: MFA001 — Parâmetros de Faturamento Localização: Parâmetros → Ambos → Opção 1 Tabela:
PARMFATUR.ST_CONTROLACARCACATipo: Checkbox (S= Marcado /N= Desmarcado) Valor padrão:N(Desmarcado)
Telas impactadas
| Tela | Rotina | Quando age |
|---|---|---|
| MNF001 | Manutenção de Nota Fiscal | Na geração/cancelamento de nota fiscal |
| MNF002 | Nota Fiscal (Saída) | Ao salvar a nota — valida e gera pedido de saída de carcaça |
| MPD002 | Pedido de Venda/Compra | Ao salvar o pedido — gera pedido de entrada de carcaça e valida saldo |
| MPD011 | NF Ordem de Carregamento | Ao salvar a nota de ordem — valida e gera pedido de saída de carcaça |
| MCO006 | Consulta | Carrega o parâmetro para lógica de exibição |
Campos envolvidos
| Campo | Tabela | Papel na regra |
|---|---|---|
STCONTROLACARCACA | TIPOSERVICORECAP | Define se o tipo de serviço recap controla carcaça |
IDITEMCARCACA | SERVICOPNEU | Item de carcaça vinculado ao serviço de pneu |
ST_FATURACARCACAAUTO | PESSOA | Define se o faturamento automático de carcaça está ativo para a pessoa |
CD_MOVSAIDA | PARMFATUR | Movimentação padrão de saída usada no pedido de saída de carcaça |
CD_MOVENTRADA | PARMFATUR | Movimentação padrão de entrada usada no pedido de entrada de carcaça |
NR_LANCTONOTACARCACA | NOTA | Armazena o lançamento da nota de carcaça gerada |
CD_EMPRNOTACARCACA | NOTA | Empresa da nota de carcaça |
NR_PEDIDOCARCACA / TP_PEDIDOCARCACA | PEDIDO | Referência ao pedido de carcaça |
Opções disponíveis
N — Desmarcado (Controle de carcaças desativado)
| O que faz | Detalhe |
|---|---|
| Desativa o controle de carcaças | Nenhuma validação de carcaça é executada ao salvar pedidos ou notas |
Simulação passo a passo
- Abra MFA001 — Parâmetros de Faturamento.
- Desmarque o checkbox Controle Carcaças.
- Salve os parâmetros.
- Abra MPD002 e cadastre um pedido com itens de serviço de pneu (recap).
- Salve o pedido normalmente — nenhuma validação de carcaça será executada.
- Abra MNF002 e emita uma nota fiscal para esse pedido — nenhuma validação de carcaça será executada.
Resultado esperado: Pedidos e notas fiscais são gravados sem qualquer validação de carcaça, saldo ou vinculação automática de itens de serviço recap.
S — Marcado (Controle de carcaças ativado)
| O que faz | Detalhe |
|---|---|
| Ativa controle completo de carcaças | Valida vínculo de itens de carcaça em pedidos e notas, gera pedidos automáticos de entrada/saída, controla saldo |
Interage com ST_FATURACARCACAAUTO | Se a pessoa tiver faturamento automático (PESSOA.ST_FATURACARCACAAUTO <> 'N'), pedidos de entrada são gerados automaticamente ao salvar o pedido em MPD002 |
Interage com TIPOSERVICORECAP.STCONTROLACARCACA | Apenas itens vinculados a tipos de serviço com esse flag = S são controlados |
Simulação passo a passo — Pedido de entrada automático (MPD002)
- Abra MFA001 e marque o checkbox Controle Carcaças.
- Certifique-se de que o cadastro de serviço recap possui
STCONTROLACARCACA = 'S'no tipo de serviço e que o serviço de pneu possui umIDITEMCARCACAvinculado. - No cadastro da pessoa (cliente), defina
ST_FATURACARCACAAUTOcom valor diferente deN. - Abra MPD002 e crie um pedido de venda contendo itens de serviço de pneu recap com controle de carcaça.
- Clique em Salvar.
- O sistema chama
GERA_PEDIDOENTRADACARCACAque verifica os itens do pedido, identifica aqueles com tipo de serviço recap que controla carcaça e gera automaticamente um pedido de entrada com os itens de carcaça correspondentes. - Em seguida, o sistema chama
GERA_NOTAPEDIDOpara o pedido de entrada gerado, emitindo a nota fiscal de entrada de carcaça.
Resultado esperado: Ao salvar o pedido em MPD002, é gerado automaticamente um pedido de entrada de carcaça e sua respectiva nota fiscal de entrada, vinculando os itens de serviço recap aos itens de carcaça.
Simulação passo a passo — Validação de nota fiscal (MNF002 / MPD011)
- Com o parâmetro
S, abra MNF002 (ou MPD011 para ordem de carregamento). - Informe os dados da nota fiscal, incluindo itens de serviço recap que controlam carcaça.
- Clique em Salvar.
- O sistema chama
VALIDA_NOTAPEDIDOCARCACAque verifica:- Cada item da nota que controla carcaça deve ter um pedido de venda associado contendo esse item.
- Para itens de serviço recap com
STCONTROLACARCACA = 'S', é verificado se existe nota de entrada de carcaça vinculada viaNOTAPEDIDOORIGEMDEST. - Se o pedido pendente não possuir nota de entrada de carcaça vinculada, a operação é bloqueada com mensagem de erro.
- Se a validação for bem-sucedida e houver pedidos pendentes vinculados a notas de entrada:
- É chamada
GERA_PEDIDOSAIDACARCACApara gerar um pedido de saída de carcaça. - Os campos
CD_EMPRNOTACARCACA,NR_LANCTONOTACARCACA,CD_SERIENOTACARCACAeTP_NOTACARCACAsão atualizados na nota original. - Para cada item com operação de estoque, é chamada
GERA_MOVSALDOITEMpara controlar o saldo de carcaça.
- É chamada
Resultado esperado: A nota fiscal é salva com sucesso, um pedido de saída de carcaça é gerado automaticamente, os saldos de carcaça são atualizados e a nota original fica vinculada à nota de carcaça.
Simulação passo a passo — Cancelamento de nota fiscal (CANCELA_NOTAFISCAL)
- Com o parâmetro
S, abra a tela de cancelamento de nota fiscal. - Selecione a nota a ser cancelada e confirme o cancelamento.
- O sistema verifica se a nota contém itens de serviço recap com controle de carcaça (
STCONTROLACARCACA = 'S'). - Se existir um pedido de carcaça associado (via
RETORNA_CHAVEPEDIDO+SERVICOPNEU+TIPOSERVICORECAP), o sistema cancela o pedido de carcaça (ST_PEDIDO = 'C').
Resultado esperado: Ao cancelar a nota fiscal, o pedido de carcaça vinculado também é cancelado automaticamente.
Simulação passo a passo — Controle de saldo (GERA_MOVSALDOITEM)
- Quando uma movimentação de saldo é gerada para um item, o sistema verifica se o parâmetro
Sestá ativo e se o faturamento automático da pessoa não éN(ou se é nota de saída). - Para itens de pedido de saída (
TP_PEDIDO = 'S'), busca o tipo de serviço recap vinculado ao item para verificar se controla carcaça. - Para demais itens, busca pelo
IDITEMCARCACAno cadastro de serviço pneu. - Se o item controla carcaça e possui item de carcaça vinculado (
IDITEMCARCACA IS NOT NULL), registra a movimentação de saldo na tabelaMOVSALDOITEM.
Resultado esperado: O saldo de carcaça é registrado na tabela MOVSALDOITEM, vinculando o item de carcaça à pessoa e à nota fiscal correspondente.
Exceção / Importante:
- Se o campo
PESSOA.ST_FATURACARCACAAUTOestiver comoN, o pedido de entrada automático não é gerado ao salvar em MPD002. Nesse caso, o saldo de carcaça será gerado pela procedureGERA_NOTAPEDIDOno momento do faturamento.- O controle de carcaça depende do cadastro correto em
TIPOSERVICORECAP.STCONTROLACARCACA = 'S'e do vínculoSERVICOPNEU.IDITEMCARCACA. Sem esses cadastros, o parâmetro não tem efeito prático.- Mensagens de erro típicas: "O Item X controla carcaça. Portanto é obrigatório ser informado um Pedido de Venda que possua esse item." e "O Item X do pedido Y não possui Nota de Entrada de Carcaça Vinculada."
Procedures impactadas
Rotinas Delphi com referência direta
| Rotina | Arquivo | Ação |
|---|---|---|
TdmMFA001.tabPARMFATURAfterInsert | UdmMFA001.pas | Inicializa o campo com 'N' ao inserir novo registro |
TfrmMNF002.btnSalvarClick | UMNF002.pas | Chama VALIDA_NOTAPEDIDOCARCACA, gera pedido de saída e atualiza saldo |
TfrmMPD002.btnSalvarClick | UMPD002.pas | Chama GERA_PEDIDOENTRADACARCACA, GERA_NOTAPEDIDO e VALIDA_SALDOITEM |
TfrmNFORDEM.btnSalvarClick | UNFORDEM.pas | Chama VALIDA_NOTAPEDIDOCARCACA, gera pedido de saída e atualiza saldo |
TdmMNF002.BuscaParametros_MNF002 | UdmMNF002.pas | Carrega o parâmetro para uso na tela MNF002 |
TdmMPD002.BuscaParametros_MPD002 | UdmMPD002.pas | Carrega o parâmetro para uso na tela MPD002 |
TdmMNF008.BuscaParametros_MNF008 | UdmMNF008.pas | Carrega o parâmetro para uso na tela MNF008 |
TdmMCO006.BuscaParametros_MCO006 | UdmMCO006.pas | Carrega o parâmetro para uso na tela MCO006 |
Procedures SQL com referência direta ao campo
| Procedure | Arquivo | Finalidade |
|---|---|---|
CANCELA_NOTAFISCAL | CANCELA_NOTAFISCAL.sql | Ao cancelar nota, cancela pedido de carcaça vinculado |
GERA_MOVSALDOITEM | GERA_MOVSALDOITEM.sql | Gera movimentação de saldo para itens de carcaça |
GERA_NFORDEMCARREGMRC049 | GERA_NFORDEMCARREGMRC049.sql | Na geração de NF por ordem de carregamento (MRC049), controla carcaça |
GERA_NOTAFISCALORDEMCARREG | GERA_NOTAFISCALORDEMCARREG.sql | Na geração de NF por ordem de carregamento, controla carcaça |
GERA_NOTAPEDIDO | GERA_NOTAPEDIDO.sql | Ao gerar nota a partir de pedido, insere saldo em MOVSALDOITEM e atualiza NOTAPEDIDOORIGEMDEST |
GERA_PEDIDOENTRADACARCACA | GERA_PEDIDOENTRADACARCACA.sql | Gera pedido de entrada de carcaça ao salvar pedido em MPD002 |
GERA_PEDIDOSAIDACARCACA | GERA_PEDIDOSAIDACARCACA.sql | Gera pedido de saída de carcaça ao faturar nota com item recap |
GRAVA_NOTAFISCALPEDIDO | GRAVA_NOTAFISCALPEDIDO.sql | Ao gravar NF, processa carcaça |
MOVSALDOITEM_AI0 | MOVSALDOITEM_AI0.sql | Trigger após insert — controla saldo de carcaça |
PROCESSA_MOVSALDOITEM | PROCESSA_MOVSALDOITEM.sql | Processa movimentação de saldo de carcaça |
VALIDA_NOTAPEDIDOCARCACA | VALIDA_NOTAPEDIDOCARCACA.sql | Valida vínculo de carcaça na nota fiscal e dispara geração de pedido de saída |
VALIDA_SALDOITEM | VALIDA_SALDOITEM.sql | Valida saldo de carcaça ao salvar pedido |
Tabela comparativa resumida
| Valor | Comportamento |
|---|---|
N | Controle de carcaças desativado. Nenhuma validação ou geração automática. |
S | Controle de carcaças ativado. Valida vínculos, gera pedidos de entrada/saída automáticos, controla saldo e cancela pedidos ao cancelar nota. |