Árvore de páginas

Versões:Microsiga Protheus 11
Compatível Países:Todos
Sistemas Operacionais:Todos
Compatível às Bases de Dados:Todos
Idiomas:Português, Espanhol, Inglês


 

Descrição: altera a forma padrão de carregamento de campos dos itens do Pedido de Compra quando o código do produto é inserido.
Relação entre os campos das tabelas SC7 (Itens do Pedido de Compra) e SB1 (Cadastro de produtos):

C7_CC => B1_CC
C7_CONTA => B1_CONTA
C7_ITEMCTA => B1_ITEMCC
C7_CLVL => B1_CLVL

O preenchimento padrão dos campos no Pedido de Compra obedece as seguintes regras:
1) Se o campo estiver vazio, ele é preenchido com o conteúdo do campo do Cadastro de Produto.
2) Se já estiver preenchido, ao alterar o produto do item do Pedido, o conteúdo dos campos descritos é mantido conforme o que já estava preenchido, exceto para o campo C7_CONTA (Cta Contabil). No caso do campo C7_CONTA (Cta Contabil), o padrão de preenchimento é sempre sobrescrever o conteúdo do campo com aquele que corresponde ao Cadastro de Produtos.
Assim, se o ponto de entrada MT120CPO estiver compilado e alguma posição do vetor de retorno possuir algum campo da nota, dentre os descritos, o conteúdo será preenchido conforme o Cadastro de Produto, porém, no caso específico do campo C7_CONTA (Cta Contabil), se ele for informado no vetor de retorno, não será carregado o conteúdo do Cadastro de Produto.

Localização: função A120Produto - responsável pela carga dos dados de item do Pedido de Compra a partir do código do produto selecionado.

Eventos: antes da execução do gatilho de carga dos campos do aCols do item do Pedido de Compra, após o preenchimento do código do produto.

Programa fonte: MATA120.PRX

Sintaxe: MT120CPO - gatilho do código de produto para dados contábeis ( [ PARAMIXB[1] ] ) --> aCpo

Parâmetros: 

NOMETIPODESCRIÇÃOOBRIGATÓRIO


PARAMIXB[1]


Array of records

Vetor contendo o campo padrão que sempre

é carregado no item da nota a partir do

cadastro de produto C7_CONTA (Cta Contabil)


X

 

Retorno: aCpo - vetor contendo em cada elemento o nome do campo que deverá alterar o modo de carregamento no item do Pedido de Compra.

Observações: este ponto de entrada permite alterar o comportamento original de preenchimento da conta contábil no item do Pedido (sempre substituir conforme cadastro). Se no retorno do vetor existir o nome do campo C7_CONTA (Cta Contabil), o gatilho preservará a informação preenchida no campo.
Já para os campos C7_CC (Centro Custo), C7_ITEMCTA (Item Conta) e C7_CLVL (Classe Valor) o comportamento padrão de preenchimento é manter o conteúdo existente nos respectivos campos. Dessa forma, caso seja necessário alterar o comportamento padrão, sempre preencha de acordo com o Cadastro de Produtos, o vetor de retorno deve possuir em alguma posição o nome dos campos desejados.

Exemplo
#Include 'Protheus.ch'

User Function MT120CPO()

//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Altera a forma padrão de carregamento de campos dos itens do Pedido de Compra.³
//³ quando o código do produto é inserido. Correspondência abaixo:                ³
//³ C7_CONTA 	-> B1_CONTA                                                       ³
//³ C7_CC 		-> B1_CC                                                          ³
//³ C7_ITEMCTA 	-> B1_ITEMCC                                                      ³
//³ C7_CLVL 	-> B1_CLVL                                                        ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ

Local aCpo:= PARAMIXB[1] //Padrão = C7_CONTA

AADD(aCpo,   "D1_CONTA"   ) // Faz com que seja mantido o conteúdo pre-existente no campo
AADD(aCpo,   "D1_CC"      ) // Faz com seja carregado o valor do cadastro de produto
AADD(aCpo,	 "D1_ITEMCTA" ) // Faz com seja carregado o valor do cadastro de produto
AADD(aCpo,	 "D1_CLVL"    ) // Faz com seja carregado o valor do cadastro de produto

Return aCpo