Home

TOTVS | Plataformas e tecnologias

Árvore de páginas

Índice

 

Plataforma

Produto:  ECM

Versão: 3.00

 

Ocorrência

Como faço para criar um Dataset Customizado a partir de um Data Source configurado no TOTVS | ECM?

 

Solução

Segue abaixo um exemplo de desenvolvimento sobre a plataforma:

 

function createDataset(fields, constraints, sortFields) {    
	/* SQL para consulta no banco de dados	*/
	var query = "SELECT * FROM FDN_USERTENANT";
	
	var dataSource = "jdbc/webdeskDS";
 
	var newDataset = DatasetBuilder.newDataset();
	var ic = new javax.naming.InitialContext();
	var ds = ic.lookup(dataSource);
	var created = false;
	
	try {
		var conn = ds.getConnection();
		var stmt = conn.createStatement();
		var rs = stmt.executeQuery(query);
		var columnCount = rs.getMetaData().getColumnCount();
		while(rs.next()) {
			if(!created) {
				for(var i=1;i<=columnCount; i++) {
					var column = rs.getMetaData().getColumnName(i);
					newDataset.addColumn(column);
				}
				created = true;
			}
			var Arr = new Array();
			for(var i=1;i<=columnCount; i++) {
				var obj = rs.getObject(rs.getMetaData().getColumnName(i));
				if(null!=obj){
					Arr[i-1] = rs.getObject(rs.getMetaData().getColumnName(i)).toString();
				}
				else {
					Arr[i-1] = "null";
				}
			}
			newDataset.addRow(Arr);
		}
	} catch(e) {
		var menssagemErro = "Ocorreu um erro na consulta: " + query + " - " + e.message;
		newDataset.addColumn("erro");
		newDataset.addRow([menssagemErro]);
		log.error(menssagemErro);
	} finally {
		if(stmt != null) stmt.close();
		if(conn != null) conn.close();		
	}
	return newDataset;
}
function geraMessagem(mensagem) {
	var dataset = DatasetBuilder.newDataset();
	log.error(mensagem);
	dataset.addColumn("erro");
	dataset.addRow(new Array(mensagem));
	return dataset;
}

Observação

Pré-requisito para a utilização desta documentação:

É necessário conhecimento avançado do TOTVS | ECM e conhecimento em Java. O procedimento de configuração é de responsabilidade do cliente.