Pular para o conteúdo principal

ST_CALCULOCOMISSAO — Descontar Comissão do Mecânico no Cálculo do Vendedor

Tela de configuração: OFI001 — Parâmetros da Oficina Localização na UI: Aba Ordem 1 Tabela / Campo: PARMOFICINA.ST_CALCULOCOMISSAO Tipo: CHAR(1), NOT NULL, padrão 'S' Controle: Checkbox chkST_CALCULOCOMISSAO


Finalidade​

Controla se o cálculo de comissão do vendedor sobre serviços e peças de uma Ordem de Serviço deve descontar previamente o valor da comissão do mecânico antes de aplicar o percentual do vendedor.

  • Marcado (S): Base do vendedor = Total - Descontos - Comissão do Mecânico.
  • Desmarcado (N): Base do vendedor = Total - Descontos (comissão do mecânico não é deduzida).

O parâmetro atua conjuntamente com ST_COMISSAOTERCEIROS (configurado em OFI001 — Parâmetros da Oficina, aba Ordem 1) e ST_DESCONTOTERCEIROS (mesma tela), que controlam respectivamente se serviços de terceiros entram na base e se seus descontos são considerados.


Telas / Rotinas impactadas​

Tela / RotinaArquivoEfeito
MOF001 — Ordem de Serviçosource/MOF001/UMOF001.pasFunção CalculaComissao deduz a comissão do mecânico antes de calcular a do vendedor
LNF107 — Layout Nota Fiscal (impressão)source/LNF107/ULNF107.pasProcedures Calcula_Comissao e Calcula_Totais aplicam a mesma lógica para exibição no relatório
ROF004 — Relatório de ComissõesScripts/VIEW_ROF004.sqlView SQL busca o parâmetro e aplica a dedução ao calcular comissões do vendedor
ROF004B — Relatório de Comissões (variação)Scripts/VIEW_ROF004B.sqlMesma lógica no script SQL
ROF004B_V2 — Relatório de Comissões v2Scripts/VIEW_ROF004B_V2.sqlCarrega o parâmetro para cálculo
ROF004_OFXMM — Relatório (variante)Scripts/VIEW_ROF004_OFXMM.sqlCarrega o parâmetro para cálculo
MOF006 — Consulta de OSsource/MOF006/UdmMOF006.pasCarrega o parâmetro em Busca_Parametros para uso interno

Campos envolvidos​

CampoTabelaPapel
ST_CALCULOCOMISSAOPARMOFICINAParâmetro (configuração)
PC_COMISSAOMECORDEMSERVICOPercentual de comissão do mecânico
PC_COMISSAOVENDORDEMSERVICOPercentual de comissão do vendedor (serviços)
PC_COMISSAOPECAVENDORDEMSERVICOPercentual de comissão do vendedor (peças)
VL_COMISSAOMECORDEMSERVICOValor calculado da comissão do mecânico
VL_COMISSAOVENDORDEMSERVICOValor calculado da comissão do vendedor

Opções disponíveis​

S — Descontar Comissão do Mecânico (Padrão)​

O que fazDetalhe
ComportamentoA comissão do vendedor é calculada sobre o valor líquido após deduzir a comissão do mecânico
Fórmula serviçosComissãoVendServ = PC_COMISSAOVEND × (TotalServiços − Descontos − ComissãoMecServ) / 100
Fórmula peçasComissãoVendPeca = PC_COMISSAOPECAVEND × (TotalPeças − DescontosPeca − ComissãoMecPeca) / 100
Valor padrão'S' (marcado ao inserir novo registro em PARMOFICINA)

Simulação passo a passo​

  1. Acesse OFI001 (Parâmetros da Oficina).
  2. Na aba Ordem 1, localize o checkbox "Descontar da Comissão da Empresa no Cálculo da Comissão dos Vend.".
  3. Certifique-se de que está marcado.
  4. Salve o parâmetro.
  5. Abra uma Ordem de Serviço em MOF001 com um mecânico e um vendedor configurados.
  6. Registre serviços de R$ 1.000,00 com comissão do mecânico de 10% (R$ 100,00) e comissão do vendedor de 5%.
  7. Feche a OS.
  8. Consulte o relatório de comissões (ROF004).

Resultado esperado: A comissão do vendedor é calculada sobre R$ 900,00 (R$ 1.000,00 − R$ 100,00), resultando em R$ 45,00. A comissão do mecânico permanece R$ 100,00 (integral).


N — Não Descontar Comissão do Mecânico​

O que fazDetalhe
ComportamentoA comissão do vendedor é calculada sobre o valor bruto sem deduzir a comissão do mecânico
Fórmula serviçosComissãoVendServ = PC_COMISSAOVEND × (TotalServiços − Descontos) / 100
Fórmula peçasComissãoVendPeca = PC_COMISSAOPECAVEND × (TotalPeças − DescontosPeca) / 100

Simulação passo a passo​

  1. Acesse OFI001 (Parâmetros da Oficina).
  2. Na aba Ordem 1, localize o checkbox "Descontar da Comissão da Empresa no Cálculo da Comissão dos Vend.".
  3. Desmarque o checkbox.
  4. Salve o parâmetro.
  5. Abra uma Ordem de Serviço em MOF001 com as mesmas condições do exemplo anterior (serviços de R$ 1.000,00, comissão mecânico 10%, comissão vendedor 5%).
  6. Feche a OS.
  7. Consulte o relatório de comissões (ROF004).

Resultado esperado: A comissão do vendedor é calculada sobre R$ 1.000,00 (valor integral), resultando em R$ 50,00. A comissão do mecânico permanece R$ 100,00.

Excecao / Importante: Quando TP_COMISSAOMEC = 'V' (configurado em OFI001 — Parâmetros da Oficina, aba Ordem 1), o sistema calcula uma média ponderada das comissões de peças e serviços para o vendedor. A lógica de dedução do mecânico continua sendo controlada por ST_CALCULOCOMISSAO: se 'S', a média é calculada já descontando a comissão do mecânico; se 'N', a média usa os valores brutos. O parâmetro TP_COMISSAOMEC altera o método (individual vs. média), mas não substitui o papel de ST_CALCULOCOMISSAO.


Regra Geral de Cálculo​

A fórmula resumida aplicada em MOF001, LNF107 e nas views de relatório (ROF004) é:

BaseVendedor = TotalLiquido − Descontos − (se ST_CALCULOCOMISSAO = 'S' então ComissaoMec senão 0)
ComissaoVendedor = PercentualVendedor × BaseVendedor / 100

Se ST_CALCULOCOMISSAO = 'N', a parcela ComissaoMec não é subtraída, e o vendedor recebe comissão sobre o valor integral (menos descontos).


Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoLinha
Calcula_Comissaosource/LNF107/ULNF107.pas362
Calcula_Totaissource/LNF107/ULNF107.pas396
CalculaComissaosource/MOF001/UMOF001.pas1069, 1190, 1198
Busca_Parametrossource/MOF001/UdmMOF001.pas669, 687
Busca_Parametrossource/MOF006/UdmMOF006.pas270, 288
tabPARMOFICINAAfterInsertsource/OFI001/UdmOFI001.pas349

Referências SQL diretas ao campo em Scripts/​

ViewArquivoLinha
VIEW_ROF004Scripts/VIEW_ROF004.sql37, 46, 49, 91
VIEW_ROF004BScripts/VIEW_ROF004B.sql65
VIEW_ROF004B_V2Scripts/VIEW_ROF004B_V2.sql69
VIEW_ROF004_OFXMMScripts/VIEW_ROF004_OFXMM.sql70

Candidatas por uso da tabela (sem referência direta ao campo)​

Estas procedures/views acessam a tabela PARMOFICINA, mas não citam o campo ST_CALCULOCOMISSAO literalmente. Não há impacto funcional direto identificado:

PARCELA_FINANC_MNF017, PARCELA_FINANCIAMENTO, REABRE_OS, RETORNA_MOTIVOBLOQUEIO, RETORNA_PRECOITEM, VERIFICA_BLOQUEIO, VIEW_DOCUMENTOSBLOQUEADOS, VIEW_ROF008.


Tabela Comparativa Resumida​

AspectoS (Marcado)N (Desmarcado)
Base de cálculo do vendedorTotal − Descontos − Comissão MecânicoTotal − Descontos
Comissão do vendedor ficaMenor (base reduzida)Maior (base completa)
Impacto na comissão do mecânicoNenhum (recebe integral)Nenhum (recebe integral)
Valor padrão✅ 'S'—