Á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 da nota fiscal quando o código do produto é inserido.
Relação entre os campos das tabelas SD1 (Itens da nota fiscal) e SB1 (Cadastro de produtos):
D1_CONTA => B1_CONTA
D1_CC => B1_CC
D1_ITEMCTA => B1_ITEMCC
D1_CLVL => B1_CLVL
D1_TES => B1_TE
O preenchimento padrão dos campos no item da Nota Fiscal 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 da nota, o conteúdo dos campos descritos é mantido conforme o que já estava preenchido, exceto para o campo D1_CONTA. No caso do campo D1_CONTA, o padrão de preenchimento é sempre sobrescrever o conteúdo do campo com àquele que corresponde ao cadastro de Produtos.
Assim, se o ponto de entrada MT103CPO 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 D1_CONTA, se ele for informado no vetor de retorno, não será carregado o conteúdo do cadastro de Produto.

Localização: função A103INICPO - responsável pela carga dos dados de item da Nota Fiscal a partir do código do produto selecionado.

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

Programa fonte: MATA103X.PRX

Sintaxe: MT103CPO - 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 (D1_CONTA)

 

X

 

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

Observações: este ponto de entrada permite alterar o comportamento original de preenchimento da conta contábil no item da nota (sempre substituir conforme cadastro). Se no retorno do vetor existir o nome do campo (D1_CONTA), o gatilho preservará a informação preenchida no campo.
Já para os campos D1_CC, D1_ITEMCTA, D1_CLVL e D1_TES, 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 MT103CPO()

//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Altera a forma padrão de carregamento de campos dos itens da nota fiscal . ³
//³ quando o código do produto é inserido. Correspondencia abaixo:                    ³
//³ D1_CONTA 	-> B1_CONTA                                                       ³
//³ D1_CC 		-> B1_CC                                                          ³
//³ D1_ITEMCTA 	-> B1_ITEMCC                                                      ³
//³ D1_CLVL 		-> B1_CLVL                                                        ³
//³ D1_TES 		-> B1_TE                                                          ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ

Local aCpo:= PARAMIXB[1] //Padrao = D1_CONTA

AADD(aCpo,  "D1_CONTA" 	 ) // Faz com que seja mantido o conteudo pre-existente no campo
AADD(aCpo,  "D1_TES" 	 ) // Faz com seja carregado o valor do cadastro de produto
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