ST_BLOQMESMOTIPOVENDEDOR - Bloquear Mesmo Tipo de Vendedor por Produto
Tela de configuração: MFA001 - Parâmetros de Faturamento
Localização: aba Vendedor
Tabela:PARMFATUR.ST_BLOQMESMOTIPOVENDEDOR
Valor padrão:N(Desmarcado)
Telas impactadas
| Tela | Contexto |
|---|---|
| MFA001 | Configuração do parâmetro |
Tela de Vendedores Individual (UVendedorIndividual) | Validação ao confirmar o rateio de vendedores |
Tela de Vendedores Agrupado (UVendedorAgrupado) | Carrega o parâmetro para repassar à validação |
Campos envolvidos
| Campo | Tabela | Descrição |
|---|---|---|
CD_TIPOVENDEDOR | Vendedor do item | Tipo do vendedor no rateio |
ST_VARIOSVENDEDORES | PARMFATUR | Pré-requisito — precisa ser S para que este parâmetro seja visível e funcional |
Pré-requisito
Este parâmetro só aparece quando ST_VARIOSVENDEDORES = S. Caso contrário, o checkbox é ocultado pelo evento cmbST_VARIOSVENDEDORESChange do MFA001.
ST_VARIOSVENDEDORES(configurado em MFA001 — Parâmetros de Faturamento, aba Vendedor).
Opções disponíveis
| O que faz | Detalhe |
|---|---|
| S — Marcado | Impede que dois vendedores do mesmo tipo sejam incluídos no rateio de um mesmo produto. Ao confirmar com tipo duplicado, exibe erro W-0135. |
| N — Desmarcado (padrão) | Permite repetir o mesmo tipo de vendedor livremente no rateio. |
S — Marcado (bloqueia tipo duplicado)
Simulação passo a passo
- Acesse MFA001 → Parâmetros de Faturamento → aba Vendedor.
- Marque "Vários Vendedores" (
ST_VARIOSVENDEDORES=S). - Marque "Bloquear mesmo Tipo de Vendedor por Produto" (
ST_BLOQMESMOTIPOVENDEDOR=S). - Salve os parâmetros (F9).
- Em um pedido/orçamento, abra o rateio de vendedores de um produto.
- Adicione um vendedor com tipo "Vendedor Interno" e percentual de 50%.
- Adicione um segundo vendedor, também com tipo "Vendedor Interno", e percentual de 50%.
- Clique em OK para confirmar o rateio.
Resultado esperado: O sistema exibe a mensagem de erro W-0135 e impede a confirmação. Para prosseguir, o segundo vendedor precisa ter um tipo diferente (ex.: "Representante").
Exceção / Importante: A validação só é acionada se
ST_VARIOSVENDEDOREStambém estiver com valorS. SeST_VARIOSVENDEDORES=N, o parâmetro é ignorado (a tela de rateio nem é exibida).
N — Desmarcado (permite tipo repetido)
Simulação passo a passo
- Acesse MFA001 → Parâmetros de Faturamento → aba Vendedor.
- Marque "Vários Vendedores" (
ST_VARIOSVENDEDORES=S). - Deixe desmarcado "Bloquear mesmo Tipo de Vendedor por Produto" (
ST_BLOQMESMOTIPOVENDEDOR=N). - Salve os parâmetros (F9).
- Em um pedido/orçamento, abra o rateio de vendedores de um produto.
- Adicione dois vendedores com o mesmo tipo (ex.: ambos "Vendedor Interno") e distribua os percentuais.
- Clique em OK para confirmar o rateio.
Resultado esperado: O rateio é aceito normalmente, sem nenhuma mensagem de bloqueio.
Regra geral
| Condição | Efeito |
|---|---|
ST_VARIOSVENDEDORES = N | O checkbox fica oculto no MFA001; validação de tipo duplicado nunca roda. |
ST_VARIOSVENDEDORES = S e ST_BLOQMESMOTIPOVENDEDOR = S | Validação ativa: tipo de vendedor duplicado no rateio gera erro W-0135. |
ST_VARIOSVENDEDORES = S e ST_BLOQMESMOTIPOVENDEDOR = N | Sem validação de tipo duplicado; permite vendedores do mesmo tipo livremente. |
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Linha | Descrição |
|---|---|---|---|
TfrmMFA001.cmbST_VARIOSVENDEDORESChange | source/MFA001/UMFA001.pas | 2134 | Oculta/exibe o checkbox conforme ST_VARIOSVENDEDORES |
TdmMFA001.tabPARMFATURAfterInsert | source/MFA001/UdmMFA001.pas | 580 | Inicializa com valor padrão 'N' |
TfrmVendedorAgrupado.setParametros | source/jVendedor/UVendedorAgrupado.pas | 1198 | Carrega o campo no SELECT para uso na validação |
TfrmVendedorIndividual.btnOKClick | source/jVendedor/UVendedorIndividual.pas | 450 | Validação principal: verifica tipos duplicados e gera W-0135 |
Scripts SQL
Não foi encontrada referência direta ao campo ST_BLOQMESMOTIPOVENDEDOR nos scripts SQL (Scripts/). A validação ocorre exclusivamente no lado cliente (Delphi).