1. O DataSet compreende a entidade responsável pelo processamento das informações. É a inteligência do Report sendo a entidade produtora de resultados capazes de serem processados pelos componentes do Layout para a posterior exibição.

Datasets são criados quando é necessário um processamento prévio das informações que serão populadas em uma WorkTable contendo os resultados para posterior pesquisa que será realizada pelo Layout em conjunto com o TOTVS | WebViewer.

O desenvolvimento de um Dataset é feito em ADVPL utilizando a metalinguagem para Datasets BIRT. Após o Dataset ser compilado em um repositório de objetos, estará disponível para ser adicionado a um Layout através do TOTVS | Developer Studio.

Estrutura de um Dataset

O Dataset é formado de diversos componentes utilizados para acesso a informações:

 

Criação de um Dataset

 

Exemplo de um Dataset

 

 

#Include 'Protheus.ch'
#Include 'birtdataset.ch'
 
DATASET TSTPROF01 TITLE "Teste de Profile."
DESCRIPTION "Relatório de testes de gravação de profile."
PERGUNTE "TSTPROF01"COLUMNS    
	define column FIELDG TYPE CHAR SIZE 1 LABEL "Get"    
	define column FIELDC TYPE CHAR SIZE 1 LABEL "Combo"    
	define column FIELDNG TYPE NUMERIC SIZE 1 LABEL "Get"    
	define column FIELDNC TYPE NUMERIC SIZE 1 LABEL "Combo"
 
DEFINE QUERY "SELECT * FROM %WTable:1%"
 
PROCESS DATASET 
 
Local cWTabAlias
 
Private cFieldG := self:execParamValue( "MV_PAR01" )
Private cFieldC := self:execParamValue( "MV_PAR02" )
Private cFieldNG:= self:execParamValue( "MV_PAR03" )
Private cFieldNC:= self:execParamValue( "MV_PAR04" ) 
 
cWTabAlias := self:createWorkTable()
 
RecLock(cWTabAlias,.T.) 
(cWTabAlias)->FIELDG := cFieldG
(cWTabAlias)->FIELDC := cFieldC
(cWTabAlias)->FIELDNG := cFieldNG
(cWTabAlias)->FIELDNC := cFieldNC 
(cWTabAlias)->(MsUnlock()) 
 
Return .T.