CD_SECAO — Seção (Departamento)
Tela de configuração: MFA006 - Parâmetros de Tabela de Preço
Componente:edtCD_SECAO(Edit)
Tabela:PARMTABPRECO.CD_SECAO
Tipo: INTEGER (FK paraSECAO.CD_SECAO)
Obrigatório: Não
Valor padrão: N/A (campo livre, preenchido via busca <F9>)
Descrição
O campo CD_SECAO permite filtrar parâmetros de tabela de preço por seção (departamento/área de produto). Quando preenchido, o registro de preço somente será aplicado a itens que pertençam à seção informada.
A seção é um nível hierárquico de classificação de itens, ficando entre o grupo/subgrupo e o item específico. É configurada na tabela SECAO e atribuída aos produtos no cadastro de itens (ITEM.CD_SECAO).
Telas impactadas
| Tela | Nome | Uso do campo |
|---|---|---|
| MFA006 | Parâmetros de Tabela de Preço | Configuração do filtro de preço por seção |
| CFA001 | Parâmetros de Formação de Preço | Parâmetros de formação de preço por seção |
| CEQ001 | Consulta de Equipe/Seção | Filtros de consulta por seção |
| CEQ004 | Relatório de Comissão por Seção | Filtros de relatório por seção |
| CEQ005 | Relatório de Produção por Seção | Filtros de relatório por seção |
Campos envolvidos
| Tabela | Campo | Tipo | Relação |
|---|---|---|---|
| PARMTABPRECO | CD_SECAO | INTEGER | FK → SECAO.CD_SECAO |
| SECAO | CD_SECAO | INTEGER | PK |
| SECAO | DS_SECAO | VARCHAR(60) | Descrição da seção |
| SECAO | ST_ATIVA | CHAR(1) | Status (S/N) |
| ITEM | CD_SECAO | INTEGER | Seção do produto |
Opções disponíveis
O campo aceita:
| O que faz | Detalhe |
|---|---|
| Vazio (NULL) | O filtro de seção não é aplicado; o parâmetro vale para todas as seções |
| Código válido | Informar o código de uma seção existente para restringir o parâmetro àquela seção |
Simulação passo a passo
- Acesse MFA006 → Parâmetros de Tabela de Preço
- Localize o campo Seção (edtCD_SECAO)
- Para informar uma seção:
- Pressione <F9> para abrir a busca de seções
- Selecione a seção desejada (ex: código
10— "Departamento A") - O campo será preenchido automaticamente com o código selecionado
- Para limpar o filtro:
- Selecione todo o conteúdo do campo e apague
- Ou pressione <Delete>
- Salve o registro (<F5> ou botão Salvar)
Resultado esperado: O parâmetro de tabela de preço será aplicado apenas a itens da seção informada. Se o campo estiver vazio, o parâmetro se aplica a todas as seções.
Exceção / Importante:
O código informado deve existir na tabelaSECAOe estar comST_ATIVA = 'S'. Seções inativas podem não aparecer na busca (<F9>).
Regra de busca automática (RETORNA_TABPRECO)
A procedure RETORNA_TABPRECO consulta os parâmetros de preço considerando a seção do produto. O processo é:
- Obtém a seção do produto:
SELECT CD_SECAO FROM ITEM WHERE CD_ITEM = :I_CD_ITEM - Compara com os registros em
PARMTABPRECO - Prioriza registros com seção específica do produto
- Se não encontrar, usa registros com seção nula (todas as seções)
A priorização segue a hierarquia: Item > Seção > Subgrupo > Grupo > (todas)
Regra Geral de Autorização
Não há regra de autorização específica para este campo. A validação é estrutural: o código deve referenciar uma seção válida na tabela SECAO.
Tabela Comparativa Resumida
| Situação | CD_SECAO | Efeito no preço |
|---|---|---|
| Todas as seções | NULL | Parâmetro vale para qualquer seção |
| Seção específica | 10 | Parâmetro vale apenas para itens da seção 10 |
| Seção inativa | 5 (ST_ATIVA='N') | Seção não aparece na busca; parâmetro não é aplicado |
Procedures impactadas
Rotinas Delphi com referência direta ao parâmetro
| Rotina | Arquivo | Linha | Evidência |
|---|---|---|---|
TfrmMFA006.edtCD_SECAOKeyDown | source/MFA006/UMFA006.pas | 663 | dmMFA006.tabPARMTABPRECOCD_SECAO.AsString := result.getParam(0); |
Referências SQL diretas ao campo CD_SECAO
| Procedure/View | Arquivo | Linha | Evidência |
|---|---|---|---|
RETORNA_TABPRECO | Scripts/RETORNA_TABPRECO.sql | 21 | V_CD_SECAO INTEGER; — obtém seção do item para filtro de preço |
ATUALIZA_PRECOVENDA | Scripts/ATUALIZA_PRECOVENDA.sql | 79 | FROM PARMTABPRECO PP — tabela de parâmetros consultada |
RETORNA_PRECOITEM | Scripts/RETORNA_PRECOITEM.sql | 104 | FROM PARMTABPRECO P — consulta preço do item |
VERIFICA_BLOQUEIO | Scripts/VERIFICA_BLOQUEIO.sql | 1115 | FROM PARMTABPRECO P — verifica bloqueio de preço |
Candidatas por uso da tabela (sem referência direta ao campo)
| Procedure/View | Arquivo | Linha | Evidência |
|---|---|---|---|
CALCULA_MAQUINA | Scripts/CALCULA_MAQUINA.sql | 81 | FROM PARMTABPRECO P |
CALCULA_MAQUINAFICHA | Scripts/CALCULA_MAQUINAFICHA.sql | 79 | FROM PARMTABPRECO P |
GERA_COMISSAOTABPRECO | Scripts/GERA_COMISSAOTABPRECO.sql | 84 | from PARMTABPRECO |
VIEW_TFA006 | Scripts/VIEW_TFA006.sql | 84 | INNER JOIN PARMTABPRECO PT ON (PT.CD_TABPRECO = TABPRECO.CD_TABPRECO) |
Referências cruzadas
O campo CD_SECAO aparece em diversas tabelas do sistema, indicando que seção é um conceito transversal:
| Tabela | Finalidade |
|---|---|
ITEM | Seção do produto |
GRUPOESTOQUE | Filtro de estoque por seção |
GRUPOMOVIMENTACAO | Filtro de movimentação por seção |
COMISSAOVENDEDOR | Comissão por seção |
COMISSAOEXECUTORETAPA | Comissão de executor por seção |
METAVENDEDOR | Meta de venda por seção |
FILTROPRECOVENDA | Filtro de preço por seção |
PARMFORMAPRECO | Parâmetro de formação de preço por seção |
PARMORCAMENTO | Seções específicas (armadura, oficina, concretagem) |
Observações
- O campo faz parte do filtro hierárquico de preço: Grupo → Subgrupo → Seção → Item → Perfil
- A seção é configurada no cadastro de itens (
ITEM.CD_SECAO) e não neste parâmetro - Este parâmetro apenas filtra quais itens o preço se aplica
- A busca <F9> lista apenas seções ativas (
ST_ATIVA = 'S') - O campo
CD_SECAOemPARMTABPRECOé parte do filtro junto comCD_GRUPO,CD_SUBGRUPO,CD_ITEMeCD_PERFIL