Árvore de páginas

A098CPCJ - Inclusão de Campos Específicos no Array de Conjuntos

Linha de Produto:

Protheus

Segmento:

Manufatura

Módulo:

SIGAPCP

Rotina:

MATA098 - Codificação

Ponto de Entrada:

A098CPCJ - Inclusão de Campos Específicos no Array de Conjuntos

País(es):

Todos

Banco(s) de Dados:

Todos

Sistema(s) Operacional(is):

Todos

Ponto de Entrada

Descrição:

No MATA098 (Codificação) ao definir a forma de cadastro, selecionar a opção 'Copia' e copiar da origem de um 'Conjunto', é possível executar o ponto de entrada 'A098CpCj'.

Ao efetuar a cópia em que a origem é um conjunto, é carregado um array conforme a estrutura da tabela SBS (Opções para Características) com as informações da SBX (Opções dos Conjuntos) do conjunto selecionado. Neste momento é possível incluir um novo campo específico da SBS no array.

Localização:

Função: A098LeCjt - Retorna um array com as opções definidas num conjunto

Eventos:

N/A

Programa Fonte:

MATA098 - Codificação

Parâmetros:

PARAMIXB -> Array 
[1] Índice da primeira posição do array (nCnt) 
[2] Array com os valores do conjunto (este array possui a estrutura conforme a estrutura da tabela SBS) (aRet)

Retorno:

Nome

Tipo

Descrição

Obrigatório

 aRet

Array

Array com os valores do conjunto (este array possui a estrutura conforme a estrutura da tabela SBS)

Sim

 

Exemplo:

Na tabela SBS foi incluído um novo campo específico 'BS_NOVO'.
Parar carregar a informação deste campo específico deve ser utilizado o ponto de entrada 'A098CpCj'

No MATA098, a carga do array aRet para os campos padrões é feita da seguinte maneira:

Aadd(aRet, Array(SBS->(FCount())))
aRet[nCnt,SBS->(FieldPos("BS_CODIGO" ))] := SBX->BX_CODOP
aRet[nCnt,SBS->(FieldPos("BS_DESCR" ))] := SBX->BX_DESC
aRet[nCnt,SBS->(FieldPos("BS_DESCPRD"))] := SBX->BX_DESCPR
aRet[nCnt,SBS->(FieldPos("BS_ATIVO" ))] := SBX->BX_ATIVO

 

Este array é passado como parâmetro para o PE e o PE retorna o array com o valor do novo campo específico.


user function A098CpCj()

Local nCnt := PARAMIXB[1]
Local aRet := PARAMIXB[2]

aRet[nCnt,SBS->(FieldPos("BS_NOVO" ))] := 'NOVO'

return aRet