Pular para o conteúdo principal

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 → Checkbox chkST_REPLICAOBSMOF005
Tabela: PARMOFICINA.ST_REPLICAOBSMOF005
Tipo: CHAR(1), aceita S ou N
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 campo DS_OBSERVACAO do ITEMPEDIDO recebe o conteúdo de DS_ITEM.
  • Desativado (N): O campo DS_OBSERVACAO do ITEMPEDIDO é gravado como NULL.

A replicação ocorre tanto para itens (peças/produtos) quanto para serviços quando o pedido é gerado via MOF005.


Telas Impactadas​

TelaEfeito
MOF005 — Ordem de ServiçoAo 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​

CampoTabelaDescrição
ST_REPLICAOBSMOF005PARMOFICINAParâmetro (S/N) que ativa a replicação
DS_OBSERVACAOITEMPEDIDOCampo destino — observação do item no pedido
DS_ITEMITEM (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 fazDetalhe
Replica DS_ITEM → DS_OBSERVACAOAo 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​

  1. Acesse OFI001 (Parâmetros de Oficina).
  2. Na aba Ordem 1, localize o checkbox "Replicar Descrição Produto no Campo Observação [MOF005]".
  3. Certifique-se de que o checkbox está marcado (valor S).
  4. Salve os parâmetros.
  5. Abra uma Ordem de Serviço em MOF005.
  6. Adicione um item (peça ou serviço) com descrição, por exemplo: "Pastilha de freio diária".
  7. Clique em Gerar Pedido (ou botão equivalente para gerar pedido de compra).
  8. 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 fazDetalhe
Campo DS_OBSERVACAO fica NULLAo gerar pedido, o campo observação do item no pedido não é preenchido automaticamente

Simulação passo a passo​

  1. Acesse OFI001 (Parâmetros de Oficina).
  2. Na aba Ordem 1, localize o checkbox "Replicar Descrição Produto no Campo Observação [MOF005]".
  3. Desmarque o checkbox (valor N).
  4. Salve os parâmetros.
  5. Abra uma Ordem de Serviço em MOF005.
  6. Adicione um item com descrição, por exemplo: "Óleo motor 5W30".
  7. Clique em Gerar Pedido.
  8. 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​

RotinaArquivoLinhaEvidência
TfrmMOF005.btnGerarPedidoClicksource/MOF005/UMOF005.pas1619SeSenao(dmMOF005.ParmOficina.Values['ST_REPLICAOBSMOF005'] = 'S', Nulo(dmMOF005.tabITEMDS_ITEM.AsString, 'S'), 'NULL') — item/peça
TfrmMOF005.btnGerarPedidoClicksource/MOF005/UMOF005.pas1696Mesma lógica aplicada ao bloco de serviços
TdmOFI001.tabPARMOFICINAAfterInsertsource/OFI001/UdmOFI001.pas365Define 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/ViewArquivo
PARCELA_FINANC_MNF017Scripts/PARCELA_FINANC_MNF017.sql
PARCELA_FINANCIAMENTOScripts/PARCELA_FINANCIAMENTO.sql
REABRE_OSScripts/REABRE_OS.sql
RETORNA_MOTIVOBLOQUEIOScripts/RETORNA_MOTIVOBLOQUEIO.sql
RETORNA_PRECOITEMScripts/RETORNA_PRECOITEM.sql
VERIFICA_BLOQUEIOScripts/VERIFICA_BLOQUEIO.sql
VIEW_DOCUMENTOSBLOQUEADOSScripts/VIEW_DOCUMENTOSBLOQUEADOS.sql
VIEW_ROF004Scripts/VIEW_ROF004.sql
VIEW_ROF004BScripts/VIEW_ROF004B.sql
VIEW_ROF004B_V2Scripts/VIEW_ROF004B_V2.sql
VIEW_ROF008Scripts/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 de DS_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.