CD_PERFILEMBALAGEM - Perfil de Embalagem + Diversos
Tela de configuracao: TPO041 — Parametros Impressao Mat Prima Tabela:
PARMIMPMATPRIMA.CD_PERFILEMBALAGEMComponente:edtCD_PERFILEMBALAGEM(edit) Tipo: Integer (link paraPERFIL.CD_PERFIL) Valor padrao: vazio (campo nao obrigatorio)
Visao geral
Define o perfil de custos vinculado a etapa de Embalagem + Diversos formacao do preco de venda.
- O campo armazena o codigo de um registro da tabela
PERFIL - Ao digitar ou pressionar
<F9>, o usuario seleciona um perfil valido - Se informado, todos os itens pertencentes a esse perfil terao sua validacao ativada durante os calculos de formacao de preco.
Como configurar na tela
- Acesse a tela
TPO041— Parametros Impressao Mat Prima. - Localize o campo "Perfis — Embalagem + Diversos" (label do componente).
- Pressione
<F9>ou digite diretamente o codigo do perfil desejado (ex.:15). - O sistema exibe a descricao do perfil (
DS_PERFIL) no campo adjacente (DS_PERFILPERFILEMBALAGEM). - Salve o registro.
Resultado esperado: O perfil de Embalagem fica vinculado a empresa e sera utilizado nas rotinas de formacao de precos.
Excecao / Importante: Se o codigo informado nao existir na tabela
PERFIL, o sistema dispara a excecaoE-0250ao validar o campo.
Telas impactadas
| Tela | Evidencia |
|---|---|
| TPO041 — Parametros Impressao Mat Prima | Vinculo direto (UTPO041.dfm DataField + UTPO041.pas, dmTPO041) |
Campos envolvidos
| Campo | Tabela | Tipo | Origem |
|---|---|---|---|
CD_PERFILEMBALAGEM | PARMIMPMATPRIMA | INTEGER | Chave primaria FK RPARMIMPMATPRIMA_PERIFLEMB -> PERFIL |
DS_PERFILPERFILEMBALAGEM | PARMIMPMATPRIMA (campo calculado) | STRING | LEFT JOIN PERFIL PE ON (PE.CD_PERFIL = P.CD_PERFILEMBALAGEM) |
Procedures impactadas
Rotinas Delphi
| Rotina | Arquivo | O que faz |
|---|---|---|
edtCD_PERFILEMBALAGEMKeyDown | UTPO041.pas | Ao pressionar <F9>, abre busca na tabela PERFIL e atribui o codigo ao campo |
tabPARMIMPMATPRIMACD_PERFILEMBALAGEMValidate | UdmTPO041.pas | Valida o codigo digitado contra a tabela PERFIL; preenche DS_PERFILPERFILEMBALAGEM; dispara E-0250 se nao encontrar |
Referencias SQL diretas ao campo
| Procedure | Arquivo | O que faz |
|---|---|---|
RETORNA_CUSTOITEMFORMPRECOVENDA | RETORNA_CUSTOITEMFORMPRECOVENDA.sql | Le o perfil de PARMIMPMATPRIMA; quando I_ST_VALIDAPERFIL = 'E', usa V_CD_PERFILEMBALAGEM para validar itens |
RETORNA_STPERFILFORMPRECOVENDA | RETORNA_STPERFILFORMPRECOVENDA.sql | Le o perfil de PARMIMPMATPRIMA; se o item (I_CD_ITEM) existir em ITEMPERFIL com CD_PERFIL = V_CD_PERFILEMBALAGEM, retorna O_ST_PERFIL = 'S' |
Comportamento em formacao de preco
RETORNA_STPERFILFORMPRECOVENDA
A procedure percorre todos os perfis cadastrados na PARMIMPMATPRIMA. Para cada perfil nao nulo, verifica se o item consta na tabela ITEMPERFIL. Se encontrar, retorna 'S'.
| Perfil | Flag | Exemplo |
|---|---|---|
CD_PERFILSEMIACABADO | S | Perfil semi-acabado |
CD_PERFILEMBALAGEM | E | Perfil embalagens/diversos |
CD_PERFILMAODEOBRA1 | M | Maodeobra 1 |
CD_PERFILMAODEOBRA2 | O | Maodeobra 2 |
CD_PERFILGASTOSGERAIS | G | Gastos gerais |
RETORNA_CUSTOITEMFORMPRECOVENDA
Quando chamada com I_ST_VALIDAPERFIL = 'E', o custo e calculado usando os itens do perfil definido em CD_PERFILEMBALAGEM.
Tabela comparativa
| Aspecto | Detalhe |
|---|---|
| Valor padrao | Vazio (NULL) |
| Obrigatoriedade | Nao obrigatorio |
| Tabela origem | PARMIMPMATPRIMA (1 registro por empresa) |
| FK | PERFIL (CD_PERFIL) |
| Busca rapida | <F9> → abre pesquisa na tabela PERFIL |
| Validacao | Erro E-0250 se codigo nao existir |
| Procedures consumidoras | RETORNA_STPERFILFORMPRECOVENDA, RETORNA_CUSTOITEMFORMPRECOVENDA |
Exemplo pratico
Suponha:
- Empresa
01configuraCD_PERFILEMBALAGEM = 42. - O perfil
42possui na tabelaITEMPERFILos itens100e101. - Quando a formacao de preco roda com
I_ST_VALIDAPERFIL = 'E', somente os itens100e101sao validados como pertencentes ao perfil de embalagem. - Itens que nao estao nesse perfil (ex.:
200) nao passam pela validacao de embalagem.