Páginas filhas
  • LGX - LFormMetaData

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Expandir
titleINIT_FORM

Método SET: INIT_FORM

Junção dos métodos "FORM" e "ACTIVATE" para carregar as informações do formulário e executá-lo em seguida.

Sintaxe



Bloco de código
_ADVPL_set_property(< l_form_reference >,"INIT_FORM", < l_form_name >, <l_4glRecord1>, < l_4glRecord2 >, ..., <l_4GLrecordNz> )

Parâmetros



NomeTipoDescriçãoObrigatório?
l_form_reference
CHAR
Referência do formulário de cadastro (FRM1002)Sim
l_4glRecord (1,2,..,N)
4GL 
RECORD

Variáveis RECORD ou ARRAY OF RECORD, separadas por vírgula, que irão controlar o conteúdo do formulário, sendo que para cada tabela informada no formulário é necessário uma variável RECORD para tabelas do tipo mestre e ARRAY OF RECORD para as tabelas do tipo detalhe ou mestre-detalhe.

Dica
iconfalse
A  ordem das variáveis RECORD ou ARRAY OF RECORD deve obedecer a ordem informada no campo "Posição Record 4GL" no cadastro de formulários cadastrais (FRM0002).
Sim

Exemplo



Bloco de código
languageruby
themeConfluence
linenumberstrue
CALL _ADVPL_set_property(l_form_reference,"INIT_FORM","man10021",mr_item,ma_item_man)




Expandir
titlePROPERTY

Método SET: PROPERTY

Ajustar o valor de uma propriedade de um campo do formulário antes que ele seja carregado em memória (evento BEFORE_LOAD), para que ele passe a respeitar o valor da propriedade durante a carga da tela.

(aviso) Esta ação somente é válida quando acionada no evento BEFORE_LOAD do formulário. (aviso) 

Sintaxe



Bloco de código
_ADVPL_set_property(< l_form_reference >,"PROPERTY", < l_property >, < l_value_property >, < l_table >, < l_column > )

Parâmetros



NomeTipoDescriçãoObrigatório?
l_form_reference
CHAR
Referência do formulário.Sim
l_property
CHAR
Nome da propriedade do componente da coluna do formulário.Sim
l_value_property
CHAR
Valor a ser atribuído para a propriedade informada.Sim
l_table
CHAR
Nome da tabela no formulário.Sim
l_column
CHAR
Nome da coluna no formulário.Sim
l_alias
CHAR
Alias da tabela com a coluna do formulário.Não

Exemplo



Bloco de código
languageruby
themeConfluence
linenumberstrue
 CALL _ADVPL_set_property(m_form_reference,"PROPERTY","IS_VISIBLE",FALSE,"empresa","rastreada","a")




Expandir
titleORDER_BY

Método SET: ORDER_BY

Ordem de consulta padrão para determinado(s) campos do formulário que será utilizada para toda pesquisa executada no formulário.

Sintaxe



Bloco de código
_ADVPL_set_property(< l_form_reference >,"ORDER_BY", < l_table_alias >, < l_column >, [ l_order ])

Parâmetros



NomeTipoDescriçãoObrigatório?
l_form_reference
CHAR
Referência do formulário.Sim
l_table_alias
CHAR
Nome da tabela OU alias. Ccaso a tabela tenha alias definido no formulário, deverá ser informado apenas o alias para definir a ordenação a ser utilizada na operação de pesquisa padrão do formulário.Sim
l_column
CHAR
Nome da coluna da qual deseja definir a ordenação para ser utilizada na operação de pesquisa padrão do formulário.Sim
l_order
CHAR

Ordenação da coluna a ser respeitada.
ASC - ordenação crescente.
DESC - ordenação decrescente.

(informação) Quando não informado irá assumir automaticamente a ordenação como ASC.

Não

Exemplo



Bloco de código
languageruby
themeConfluence
linenumberstrue
CALL _ADVPL_set_property(l_form_reference,"ORDER_BY","item","cod_item","DESC")




Expandir
titleVALUE

Método SET: VALUE

Atribui valor para determinado campo do formulário.

Sintaxe



Bloco de código
_ADVPL_set_property(< l_form_reference >,"VALUE", < l_table>, < l_column >, < l_value >, [ l_row ], [ l_alias ])

Parâmetros



NomeTipoDescriçãoObrigatório?
l_form_reference
CHAR
Referência do formulário.Sim
l_table
CHAR
Tabela da coluna do formulário da qual terá o valor alterado.Sim
l_column
CHAR
Coluna do formulário da qual terá o alterado.Sim
l_value
-
Qualquer valor a ser atribuído para a coluna do formulário, respeitando o tipo de dado.Sim
l_row
INTEGER
Linha do grid do formulário da qual terá o valor alteradoNão
l_alias
CHAR
Alias da tabela com a coluna do formulário da qual terá o valor alterado.Não

Exemplo



Bloco de código
languageruby
themeConfluence
linenumberstrue
CALL _ADVPL_set_property(l_form_reference,"VALUE","item","cod_empresa","50")




Expandir
titleWHERE_CLAUSE

Método SET: WHERE_CLAUSE

Filtro de consulta padrão para o formulário que será utilizado para toda pesquisa realizada.

Sintaxe



Bloco de código
_ADVPL_set_property(< l_form_reference >,"WHERE_CLAUSE", < l_where_clause >)

Parâmetros



NomeTipoDescriçãoObrigatório?
l_form_reference
CHAR
Referência do formulário.Sim
l_where_clause
CHAR
Filtro de pesquisa SQL para ser utilizado na operação de pesquisa padrão do formulário.Sim

(informação) Este filtro será utilizado no filtro WHERE do SQL padrão do metadado.

Exemplo



Bloco de código
languageruby
themeConfluence
linenumberstrue
#Definir um filtro para uma tabela mestre (item):
LET l_where_clause = "item.cod_empresa = '50'"

CALL _ADVPL_set_property(l_form_reference,"WHERE_CLAUSE",l_where_clause)

Neste exemplo acima, quando o usuário executar a pesquisa, este filtro será montado da seguinte forma:


FROM item WHERE item_man.cod_empresa = '50'




Expandir
titleREFRESH_COMPONENTS

Método SET: REFRESH_COMPONENTS

Força atualização da exibição de todos campos do formulário.

Sintaxe



Bloco de código
_ADVPL_set_property(< l_form_reference >,"REFRESH_COMPONENTS")

Parâmetros



NomeTipoDescriçãoObrigatório?
l_form_reference
CHAR
Referência do formulário.Sim

Exemplo



Bloco de código
languageruby
themeConfluence
linenumberstrue
CALL _ADVPL_set_property(l_form_reference,"REFRESH_COMPONENTS")



Expandir
titleZOOM_NAME

Método SET: ZOOM_NAME

Atribui valor para uma determinada linha e coluna da operação 'Listar' do formulário.

Sintaxe



Bloco de código
_ADVPL_set_property(< l_form_reference >,"ZOOM_NAME", < l_zoom_name 	>, <l_table >, [ l_alias ])

Parâmetros



NomeTipoDescriçãoObrigatório?
l_form_reference
CHAR
Referência do formulário.Sim
l_zoom_name
CHAR
Nome do novo zoom que será atribuído para o campo. Este zoom deve estar cadastrado no programa "FRM1008 - Zoom".Sim
l_table
CHAR
Nome da tabela da coluna do formulário da qual terá o zoom alterado.Sim
l_column
CHAR
Nome da coluna do formulário da qual terá o zoom alterado.Sim
l_alias
CHAR
Alias da tabela com a coluna do formulário da qual terá o zoom alterado.Não

Exemplo



Bloco de código
languageruby
themeConfluence
linenumberstrue
CALL _ADVPL_set_property(l_form_reference,"ZOOM_NAME","zoom_item_man","item","cod_item")
 



Sintaxe

...

Bloco de código
LET m_form_reference = _ADVPL_create_component(NULL,"LFORMMETADATA")     
CALL _ADVPL_set_property(m_form_reference,"INIT_FORM",<form_name>,<4GLrecord1>,<4GLrecord2>,...,<4GLrecordN>) 

Exemplo

...

Bloco de código
languageruby
themeConfluence
linenumberstrue
DATABASE logix 

GLOBALS     
	DEFINE p_user        LIKE usuarios.cod_usuario     
	DEFINE p_cod_empresa LIKE empresa.cod_empresa 
END GLOBALS 

DEFINE mr_item           RECORD LIKE item.* 

DEFINE ma_item_man       ARRAY[100] OF RECORD LIKE item_man.* 

DEFINE m_form_reference  VARCHAR(10)

#-------------------# 
 FUNCTION man10021()
#-------------------#     
	# Verifica permissão para o usuário conforme módulo do programa.     

	IF  LOG_initApp("PADRAO") <> 0 THEN         
		RETURN     
	END IF     

	INITIALIZE mr_item.*, ma_item_man TO NULL     
	LET m_form_reference = _ADVPL_create_component(NULL,"LFORMMETADATA")     
	CALL _ADVPL_set_property(m_form_reference,"INIT_FORM","man10021",mr_item,ma_item_man) 
END FUNCTION

...