Histórico da Página
...
| Bloco de código | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
#----------------------------#
FUNCTION zoom_data_load_test()
#----------------------------#
#Considerando neste caso que o zoom do metadado possui 2 colunas nomeadas como 'coluna1_zoom' e 'coluna2_zoom'
DEFINE la_record_data ARRAY[] OF RECORD
coluna1_zoom CHAR(10),
coluna2_zoom CHAR(50)
END RECORD
DEFINE l_idx INTEGER
#Eliminar todas linhas do array of record
CALL arrayDeleteItem(la_record_data)
#Adicionar a 1a linha do array para receber dados
LET l_idx = 1
CALL arrayAddItem(la_record_data,1)
WHENEVER ERROR CONTINUE
DECLARE cq_zoom_data_test CURSOR FOR
SELECT <column1>, <column2> FROM <table1> WHERE <where_condition_table1>
UNION ALL
SELECT <column1>, <column2> FROM <table2> WHERE <where_condition_table2>
ORDER BY 2 DESC
LET l_idx = 1
CALL arrayAddItem(la_record_data,1)
FOREACH cq_zoom_data_test INTO la_record_data[l_idx].*
IF sqlca.sqlcode < 0 THEN
EXIT FOREACH
END IF
LET l_idx = l_idx + 1
CALL arrayAddItem(la_record_data,1)
END FOREACH
FREE cq_zoom_data_test
LETWHENEVER ERROR STOP
#Eliminar a última linha do array que estará vazia
LET l_idx = l_idx - 1
CALL arrayDeleteItem(la_record_data,1)
#Aqui é o momento onde é feito o registro dos dados do array de record como o array de dados do zoom
CALL _ADVPL_set_metadata_zoom_array_record(la_record_data)
RETURN l_idx #quantidade total de registros carregados no array
END FUNCTION
|
...
Import HTML Content
Visão Geral
Conteúdo das Ferramentas