Produto: ECM
Versão: 3.00
Como faço para criar um Dataset Customizado a partir de um Data Source configurado no TOTVS | ECM?
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.