Cria e executa uma tela de pesquisa, onde são informados filtros utilizados na seleção de registros.

As tabelas e colunas que poderão ser filtradas podem ser informadas manualmente ou recuperadas através do conteúdo metadado.

Nesta tela podem ser informados filtros no formato básico (apenas com valores), avançado (utilizando valores e comandos especiais) e também permite definir a ordenação dos registros. Este componente não executa nenhum comando na base de dados, apenas monta um filtro no formato SQL para que seja utilizado em uma pesquisa.


Hierarquia



Sintaxe


_ADVPL_create_component( NULL, "LCONSTRUCT" )


Métodos GET


Métodos acessíveis através da função _ADVPL_get_property que permite recuperar e manipular os valores do componente:


Método GET: INIT_CONSTRUCT 

Inicia a execução da tela de filtro de pesquisa e retorna se o filtro foi ou não confirmado pelo usuário.

Sintaxe



_ADVPL_get_property( <cReference>, "INIT_CONSTRUCT" ) => Boolean

Retorno



TipoDescrição
BOOLEAN

Verdadeiro se o filtro foi confirmado pelo usuário, falso se foi cancelado


Exemplo



  LET l_status = _ADVPL_get_property( <cReference>, "INIT_CONSTRUCT" )



Método GET: WHERE_CLAUSE

Retorna o filtro informado na tela de pesquisa, no formato SQL.

Sintaxe



_ADVPL_get_property( < creference >, "WHERE_CLAUSE" ) => Char

Retorno



TipoDescrição
CHAR

Filtro informado na tela de pesquisa no formato SQL.


Exemplo



LET l_where_clause = _ADVPL_get_property( <cReference>, "WHERE_CLAUSE" )



Método GET: WHERE_CLAUSE_TABLE_COLUMN

Retorna o filtro no formato SQL, informado para determinada coluna da tela de pesquisa.

Sintaxe



_ADVPL_get_property( < creference >, "WHERE_CLAUSE_TABLE_COLUMN", <cTable>, <cColumn> ) => Char

Parâmetros



NomeTipoDescriçãoObrigatório?
cTableCHARNome da tabela da coluna.Sim
cColumnCHARNome da coluna.Sim


Retorno



TipoDescrição
CHAR

Filtro no formato SQL informado para a coluna.


Exemplo



LET l_where_clause = _ADVPL_get_property( <cReference>, "WHERE_CLAUSE_TABLE_COLUMN", <cTable>, <cColumn> )



Método GET: ORDER_BY

Retorna a ordenação informada na tela de pesquisa, no formato SQL.

Sintaxe



_ADVPL_get_property( < creference >, "ORDER_BY") => Char

Retorno



TipoDescrição
CHAR

Ordenação informada na tela de pesquisa, no formato SQL.


Exemplo



LET l_order_by = _ADVPL_get_property( <cReference>, "ORDER_BY" )



Método GET: CONSTRUCT_NAME

Retorna o nome identificador definido para o componente.

Sintaxe



_ADVPL_get_property( < creference >, "CONSTRUCT_NAME") => Char

Retorno



TipoDescrição
CHAR

Nome identificador definido para o componente.

Exemplo



LET l_construct_name = _ADVPL_get_property( <cReference>, "CONSTRUCT_NAME" )



Método GET: WHERE_CLAUSE_BY_TABLE

Retorna o filtro no formato SQL, informado para determinada tabela da tela de pesquisa.

Sintaxe



_ADVPL_get_property( < creference >, "WHERE_CLAUSE_BY_TABLE", <cTable>) => Char

 Parâmetros



NomeTipoDescriçãoObrigatório?
cTableCHARNome da tabela.Sim


Retorno



TipoDescrição
CHAR

Filtro no formato SQL, informado para a tabela.

Exemplo



LET l_where_clause = _ADVPL_get_property( <cReference>, "WHERE_CLAUSE_BY_TABLE", <cTable> )



Método GET: ORDER_BY_TABLE

Retorna a ordenação no formato SQL, informado para determinada tabela da tela de pesquisa.

Sintaxe



_ADVPL_get_property( < creference >, "ORDER_BY_TABLE", <cTable> ) => Char

Retorno



TipoDescrição
CHAR

Ordenação no formato SQL informado para a tabela.


Parâmetros



NomeTipoDescriçãoObrigatório?
cTableCHARNome da tabela.Sim

Exemplo



LET l_order_by = _ADVPL_get_property( <cReference>, "ORDER_BY", <cTable> )




Métodos SET


Métodos acessíveis utilizando a função _ADVPL_set_property que permite alterar e manipular os valores do componente.


Método SET: ADD_TABLE

Adiciona uma tabela, cadastrada no metadado, na tela de pesquisa.

Sintaxe



_ADVPL_set_property(< cReference >,"ADD_TABLE",< cTable >)

Parâmetros



NomeTipoDescriçãoObrigatório?
  cTable CHARNome da tabela.Sim

Exemplo



CALL _ADVPL_set_property( <cReference>, "ADD_TABLE", <cTable> )




Método SET: ADD_COLUMN

Valor quando a caixa de seleção estiver assinalada.

Sintaxe



_ADVPL_set_property(< cReference >,"ADD_COLUMN",, <cTable>, <cColumn>, [cParent], [cZoom])

Parâmetros



NomeTipoDescriçãoObrigatório?
cTableCHARNome da tabela da coluna.Sim
cColumnCHARNome da coluna.Sim
cParentCHARNome do objeto pai da coluna (para colunas virtuais).opcional, padrão: NULL
cZoomCHARNome do zoom da coluna.opcional, padrão: NULL


Exemplo



CALL _ADVPL_set_property( <cReference>, "ADD_COLUMN", <cTable>, <cColumn>, [cParent], [cZoom] )




Método SET: ADD_VIRTUAL_TABLE

Adiciona uma tabela na tela de pesquisa.

Sintaxe



_ADVPL_set_property( <cReference>, "ADD_VIRTUAL_TABLE", <cTable>, <cLabel> )

Parâmetros



NomeTipoDescriçãoObrigatório?
cTableCHARNome da tabela.Sim
cLabelCHARDescrição da tabela.Sim


Exemplo



     CALL _ADVPL_set_property( <cReference>, "ADD_VIRTUAL_TABLE", <cTable>, <cLabel> )     




Método SET: ADD_VIRTUAL_COLUMN

Adiciona uma coluna da tabela na tela de pesquisa.

Sintaxe



_ADVPL_set_property( <cReference>, "ADD_VIRTUAL_COLUMN", <cTable>, <cColumn>, <cLabel>, <nType>, <nSize>, [nPrecision], [cZoom], [cPicture] )

Parâmetros



NomeTipoDescriçãoObrigatório?
cTableCHARNome da tabela da coluna.Sim
cColumnCHARNome da coluna.
cLabelCHARDescrição da tabela.Sim
nTypeINTEGER

Tipo de dado da coluna, sendo:

1–CHAR,

2–SMALLINT,

3–INTEGER,

4–DECIMAL,

5–DATE,

6–DATETIME,

7–VARCHAR,

8–SERIAL e

9–IMAGE

Sim
nSizeINTEGERTamanho da coluna.Sim
nPrecisionINTEGERPrecisão da coluna.opcional, padrão: 0
cZoomCHARNome do zoom da coluna.opcional, padrão: NULL
cPictureCHAR
Máscara de edição da coluna
*** válido a partir do pacote Logix 12.1.15 ***
opcional, padrão: NULL


Exemplo



CALL _ADVPL_set_property( <cReference>, "ADD_VIRTUAL_COLUMN", <cTable>, <cColumn>, <cLabel>, <nType>, <nSize>, [nPrecision], [cZoom], [cPicture] )




Método SET: VISIBLE_ORDER_BY

Habilita/desabilita a aba de ordenação de registros.

Sintaxe



_ADVPL_set_property( <cReference>, "VISIBLE_ORDER_BY", <nVisible>)

Parâmetros



NomeTipoDescriçãoObrigatório?
nVisibleBOOLEANVerdadeiro para habilitar a aba de ordenação, falso para desabilitar.Sim


Exemplo



     CALL _ADVPL_set_property( <cReference>, "VISIBLE_ORDER_BY", <nVisible> )   




Método SET:

Adiciona uma tabela na tela de pesquisa.

Sintaxe



_ADVPL_set_property( <cReference>, "ADD_VIRTUAL_TABLE", <cTable>, <cLabel> )

Parâmetros



NomeTipoDescriçãoObrigatório?
cTableCHARNome da tabela.Sim
cLabelCHARDescrição da tabela.Sim


Exemplo



     CALL _ADVPL_set_property( <cReference>, "ADD_VIRTUAL_TABLE", <cTable>, <cLabel> )     




Método SET:

Adiciona uma tabela na tela de pesquisa.

Sintaxe



_ADVPL_set_property( <cReference>, "ADD_VIRTUAL_TABLE", <cTable>, <cLabel> )

Parâmetros



NomeTipoDescriçãoObrigatório?
cTableCHARNome da tabela.Sim
cLabelCHARDescrição da tabela.Sim


Exemplo



     CALL _ADVPL_set_property( <cReference>, "ADD_VIRTUAL_TABLE", <cTable>, <cLabel> )     




Método SET:

Adiciona uma tabela na tela de pesquisa.

Sintaxe



_ADVPL_set_property( <cReference>, "ADD_VIRTUAL_TABLE", <cTable>, <cLabel> )

Parâmetros



NomeTipoDescriçãoObrigatório?
cTableCHARNome da tabela.Sim
cLabelCHARDescrição da tabela.Sim


Exemplo



     CALL _ADVPL_set_property( <cReference>, "ADD_VIRTUAL_TABLE", <cTable>, <cLabel> )     




Método SET:

Adiciona uma tabela na tela de pesquisa.

Sintaxe



_ADVPL_set_property( <cReference>, "ADD_VIRTUAL_TABLE", <cTable>, <cLabel> )

Parâmetros



NomeTipoDescriçãoObrigatório?
cTableCHARNome da tabela.Sim
cLabelCHARDescrição da tabela.Sim


Exemplo



     CALL _ADVPL_set_property( <cReference>, "ADD_VIRTUAL_TABLE", <cTable>, <cLabel> )     




Método SET:

Adiciona uma tabela na tela de pesquisa.

Sintaxe



_ADVPL_set_property( <cReference>, "ADD_VIRTUAL_TABLE", <cTable>, <cLabel> )

Parâmetros



NomeTipoDescriçãoObrigatório?
cTableCHARNome da tabela.Sim
cLabelCHARDescrição da tabela.Sim


Exemplo



     CALL _ADVPL_set_property( <cReference>, "ADD_VIRTUAL_TABLE", <cTable>, <cLabel> )