Árvore de páginas

PCA200MD - Adicionar campos no model e na view

Linha de Produto:

Protheus

Segmento:

Manufatura

Módulo:

SIGAPCP - Planejamento e Controle da Produção

Parâmetro(s):
NomeTipoDescriçãoDefaultObrigatórioReferencia
PARAMIXB[1]Caractere

Função def que está chamando o ponto de entrada

"MODEL" - Chamada a partir da montagem do model

"VIEW" - Chamada a partir da montagem da view



PARAMIXB[2]ObjectObejto struct do header

X
PARAMIXB[3]ObjectObjeto struct do componente

X
PARAMIXB[4]ObjectObjeto struct da grid de detalhes

X
PARAMIXB[5]CaractereContador da ordem do campos na estrutura da view


Idiomas:

Todos

País(es):

Todos

Banco(s) de Dados:

Todos

Sistema(s) Operacional(is):

Todos

Ponto de Entrada

Descrição:O ponto de entrada PCA200MD permite ao usuário customizar os objetos view e model da rotina.
Localização:

Funções AltFldMdl e AltFldView do fonte PCP200.prw

Eventos:

Permite adicionar campos na estrutura dos objetos view e model da rotina.

Programa Fonte:PCPA200.prw

Sintaxe:

PCA200MD

Retorno:

Nil

Observações:

O parâmetro PARAMIXB[5] será enviado apenas quando o ponto de entrada for chamado a partir da montagem da view.

Exemplo
#INCLUDE "PROTHEUS.CH"

User Function PCA200MD()
	Local cOpcx     := ParamixB[1] //Model ou View
	Local oStrMaster:= ParamixB[2] //Struct Header
	Local oStrCmp   := ParamixB[3] //Struct Componente
	Local oStrDet   := ParamixB[4] //Struct Detalhe
	Local cOrdem    := Iif(cOpcx == "VIEW",ParamixB[5],"0") //Ordem, somente enviado para view

	If cOpcx == "MODEL"    
		oStrDet:AddField("Titulo do Campo"          ,;	 // [01]  C   Titulo do campo  
							"Tootip do Campo"       ,;   // [02]  C   ToolTip do campo 
							"CNOME"                 ,;   // [03]  C   Id do Field
							"C"                     ,;   // [04]  C   Tipo do campo
							10                      ,;   // [05]  N   Tamanho do campo
							0                       ,;   // [06]  N   Decimal do campo
							NIL                     ,;   // [07]  B   Code-block de validação do campo
							NIL                     ,;   // [08]  B   Code-block de validação When do campo
							NIL                     ,;   // [09]  A   Lista de valores permitido do campo
							.F.                     ,;   // [10]  L   Indica se o campo tem preenchimento obrigatório
							NIL                     ,;   // [11]  B   Code-block de inicializacao do campo
							NIL                     ,;   // [12]  L   Indica se trata-se de um campo chave
							NIL                     ,;   // [13]  L   Indica se o campo pode receber valor em uma operação de update.
							.T.)	                     // [14]  L   Indica se o campo é virtual
	ElseIf cOpcx == "VIEW"
		cOrdem := Soma1(cOrdem)
		oStrDet:AddField("CNOME"			     	,;	// [01]  C   Nome do Campo
							cOrdem					,;	// [02]  C   Ordem
							"Titulo do Campo"	    ,;	// [03]  C   Titulo do campo    
							"Descricao do Campo"	,;	// [04]  C   Descricao do campo 
							NIL						,;	// [05]  A   Array com Help
							"C"						,;	// [06]  C   Tipo do campo
							"@S30"					,;	// [07]  C   Picture
							NIL						,;	// [08]  B   Bloco de Picture Var
							NIL						,;	// [09]  C   Consulta F3
							.F.						,;	// [10]  L   Indica se o campo é alteravel
							NIL						,;	// [11]  C   Pasta do campo
							NIL						,;	// [12]  C   Agrupamento do campo
							NIL						,;	// [13]  A   Lista de valores permitido do campo (Combo)
							NIL						,;	// [14]  N   Tamanho maximo da maior opção do combo
							NIL						,;	// [15]  C   Inicializador de Browse
							.T.						,;	// [16]  L   Indica se o campo é virtual
							NIL						,;	// [17]  C   Picture Variavel
							NIL)                       	// [18]  L   Indica pulo de linha após o campo
	EndIf

Return Nil