ST_REPLICAOBSMOF005 — Replicar Descrição do Produto no Campo Observação do Pedido
Tela de configuração: OFI001 — Parâmetros de Oficina
Localização: Aba Ordem 1 → CheckboxchkST_REPLICAOBSMOF005
Tabela:PARMOFICINA.ST_REPLICAOBSMOF005
Tipo:CHAR(1), aceitaSouN
Valor padrão:S(Sim)
Comportamento Geral
Controla se a descrição do item (DS_ITEM) lançado na Ordem de Serviço (MOF005) será replicada automaticamente no campo observação (DS_OBSERVACAO) do pedido de compra gerado a partir dessa OS.
- Ativado (
S): Ao gerar o pedido de compra, o campoDS_OBSERVACAOdoITEMPEDIDOrecebe o conteúdo deDS_ITEM. - Desativado (
N): O campoDS_OBSERVACAOdoITEMPEDIDOé gravado comoNULL.
A replicação ocorre tanto para itens (peças/produtos) quanto para serviços quando o pedido é gerado via MOF005.
Telas Impactadas
| Tela | Efeito |
|---|---|
| MOF005 — Ordem de Serviço | Ao clicar em Gerar Pedido, o SQL de INSERT em ITEMPEDIDO consulta ST_REPLICAOBSMOF005 para decidir se preenche DS_OBSERVACAO com DS_ITEM ou com NULL. |
Campos Envolvidos
| Campo | Tabela | Descrição |
|---|---|---|
ST_REPLICAOBSMOF005 | PARMOFICINA | Parâmetro (S/N) que ativa a replicação |
DS_OBSERVACAO | ITEMPEDIDO | Campo destino — observação do item no pedido |
DS_ITEM | ITEM (via tabITEMDS_ITEM / tabSERVICODS_ITEM) | Campo origem — descrição do item na OS |
Opções Disponíveis
S — Replicar Descrição (Padrão)
| O que faz | Detalhe |
|---|---|
Replica DS_ITEM → DS_OBSERVACAO | Ao gerar pedido, a descrição do produto/serviço é copiada para o campo observação do item no pedido de compra |
Simulação passo a passo
- Acesse OFI001 (Parâmetros de Oficina).
- Na aba Ordem 1, localize o checkbox "Replicar Descrição Produto no Campo Observação [MOF005]".
- Certifique-se de que o checkbox está marcado (valor
S). - Salve os parâmetros.
- Abra uma Ordem de Serviço em MOF005.
- Adicione um item (peça ou serviço) com descrição, por exemplo: "Pastilha de freio diária".
- Clique em Gerar Pedido (ou botão equivalente para gerar pedido de compra).
- Consulte o pedido de compra gerado e verifique o campo Observação do item.
Resultado esperado: O campo Observação (DS_OBSERVACAO) do item no pedido de compra exibe o texto "Pastilha de freio diária" — mesmo conteúdo da descrição do item na OS.
N — Não Replicar
| O que faz | Detalhe |
|---|---|
Campo DS_OBSERVACAO fica NULL | Ao gerar pedido, o campo observação do item no pedido não é preenchido automaticamente |
Simulação passo a passo
- Acesse OFI001 (Parâmetros de Oficina).
- Na aba Ordem 1, localize o checkbox "Replicar Descrição Produto no Campo Observação [MOF005]".
- Desmarque o checkbox (valor
N). - Salve os parâmetros.
- Abra uma Ordem de Serviço em MOF005.
- Adicione um item com descrição, por exemplo: "Óleo motor 5W30".
- Clique em Gerar Pedido.
- Consulte o pedido de compra gerado e verifique o campo Observação do item.
Resultado esperado: O campo Observação (DS_OBSERVACAO) do item no pedido de compra permanece vazio (NULL), independentemente da descrição informada na OS.
Procedures Impactadas
Rotinas Delphi com referência direta ao parâmetro
| Rotina | Arquivo | Linha | Evidência |
|---|---|---|---|
TfrmMOF005.btnGerarPedidoClick | source/MOF005/UMOF005.pas | 1619 | SeSenao(dmMOF005.ParmOficina.Values['ST_REPLICAOBSMOF005'] = 'S', Nulo(dmMOF005.tabITEMDS_ITEM.AsString, 'S'), 'NULL') — item/peça |
TfrmMOF005.btnGerarPedidoClick | source/MOF005/UMOF005.pas | 1696 | Mesma lógica aplicada ao bloco de serviços |
TdmOFI001.tabPARMOFICINAAfterInsert | source/OFI001/UdmOFI001.pas | 365 | Define valor padrão 'S' ao inserir novo registro |
Referências SQL diretas ao campo em Scripts/
Não foram encontradas referências diretas ao campo ST_REPLICAOBSMOF005 em procedures ou views SQL localizadas em Scripts/. O parâmetro é consultado exclusivamente via código Delphi (Delphi DataSet), não por SQL Server/Firebird diretamente.
Candidatas por uso da tabela PARMOFICINA
As seguintes procedures/views fazem JOIN ou consulta à tabela PARMOFICINA, mas não citam o campo ST_REPLICAOBSMOF005 diretamente. Não há impacto funcional documentado sobre este parâmetro:
| Procedure/View | Arquivo |
|---|---|
PARCELA_FINANC_MNF017 | Scripts/PARCELA_FINANC_MNF017.sql |
PARCELA_FINANCIAMENTO | Scripts/PARCELA_FINANCIAMENTO.sql |
REABRE_OS | Scripts/REABRE_OS.sql |
RETORNA_MOTIVOBLOQUEIO | Scripts/RETORNA_MOTIVOBLOQUEIO.sql |
RETORNA_PRECOITEM | Scripts/RETORNA_PRECOITEM.sql |
VERIFICA_BLOQUEIO | Scripts/VERIFICA_BLOQUEIO.sql |
VIEW_DOCUMENTOSBLOQUEADOS | Scripts/VIEW_DOCUMENTOSBLOQUEADOS.sql |
VIEW_ROF004 | Scripts/VIEW_ROF004.sql |
VIEW_ROF004B | Scripts/VIEW_ROF004B.sql |
VIEW_ROF004B_V2 | Scripts/VIEW_ROF004B_V2.sql |
VIEW_ROF008 | Scripts/VIEW_ROF008.sql |
Detalhes Técnicos
Lógica de replicação (código Delphi)
A decisão é tomada no momento do INSERT em ITEMPEDIDO durante btnGerarPedidoClick:
'0, ' + SeSenao(
dmMOF005.ParmOficina.Values['ST_REPLICAOBSMOF005'] = 'S',
Nulo(dmMOF005.tabITEMDS_ITEM.AsString, 'S'), // ← replica descrição
'NULL' // ← campo fica nulo
) + ', '
SeSenaoé uma função auxiliar equivalente a um ternário: se o parâmetro for'S', usa o valor deDS_ITEM; caso contrário, envia literal'NULL'no SQL.- A mesma lógica se repete para o bloco de serviços (linha 1696).
Valor padrão no AfterInsert
Ao inserir um novo registro em PARMOFICINA (primeira configuração da empresa), o campo recebe 'S':
tabPARMOFICINAST_REPLICAOBSMOF005.AsString := 'S';
Importante: Este parâmetro afeta apenas a geração de pedidos de compra a partir da tela MOF005. Itens inseridos diretamente em pedidos (MFA/MNF) ou em outras rotinas não são influenciados por esta configuração.