Histórico da Página
...
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
DEFINE ma_record_return ARRAY[] OF RECORD
coluna1_zoom CHAR(10),
coluna2_zoom CHAR(50)
END RECORD
DEFINE m_count_return INTEGER
#----------------------------#
FUNCTION zoom_activate_test()
#----------------------------#
DEFINE l_zoom_reference VARCHAR(10)
# Instanciar o componente de zoom metadado
LET l_zoom_reference = _ADVPL_create_component(NULL,"LZOOMMETADATA")
#Indicar que o zoom será do tipo multi-seleção, caso o formulário do zoom no metadado não esteja registrado como multi-seleção
CALL _ADVPL_set_property(l_zoom_reference,"ZOOM_TYPE",1)
# Não apresentar o filtro de pesquisa na abertura inicial da tela de zoom
CALL _ADVPL_set_property(l_zoom_reference,'ALWAYS_SHOW_FILTER',FALSE)
IF NOT _ADVPL_get_property(l_zoom_reference,"ZOOM","<nome_do_zoom>") THEN
CALL LOG_message("Falha ao acionar o zoom."","ERROR",",l_type,"Ocorreu problema na leitura de informações do zoom metadado.","Verifique se o zoom está corretamente cadastrado.",0)
CALL _ADVPL_destroy_component(l_zoom_reference)
RETURN FALSE
END IF
CALL _ADVPL_set_property(l_zoom_reference,'ARRAY_RECORD_RETURN',ma_record_return)
#Indicar a quantidade de linhas já selecionadas em algum acionamento anterior do mesmo zoom de multi-seleção.
#Quando houver necessidade de sempre abrir o zoom com nenhum item marcado, a propriedade SELECTED não deve ser inicializada
CALL _ADVPL_set_property(l_zoom_reference,"SELECTED",m_count_return)
LET m_count_return = _ADVPL_get_property(l_zoom_reference,'ACTIVATE')
CALL _ADVPL_destroy_component(l_zoom_reference)
CALL conout("Número de itens selecionaos no zoom = "||m_count_return)
#Aqui neste ponto, a leitura dos itens selecionados estarão disponíveis na variável MA_RECORD_RETURN, da linha 1 até o total de itens selecionados indicados na variável M_COUNT_RETURN.
END FUNCTION |
O exemplo acima demostrou o uso da propriedade ARRAY_RECORD_RETURN para indicar a variável ARRAY OF RECORD que conterá a lista dos valores dos itens selecionados no array. Esta variável ARRAY OF RECORD deverá conter os elementos (campos) registrados no zoom (FRM1008) na aba 3 - Tabelas e Colunas onde a coluna Retorna Valor? estiver marcada, ou seja, as colunas do zoom marcadas para serem retornadas para a aplicação com os itens selecionados pelo usuário.
...
Visão Geral
Import HTML Content
Conteúdo das Ferramentas