Efetuei um cadastro de usuário errado e preciso remover a matricula, pois como estamos fazendo pelo CPF, preciso colocar o mesmo CPF em um cadastro correto.
Como posso fazer?
Lembrando que não tenho acesso ao banco de Dados. Fluig está no Cloud da totvs.
1 curtida
@Karina,
Crie um dataset com esse exemplo abaixo, dai você muda a query:
function createDataset(fields, constraints, sortFields) {
log.info("#### DS TESTE ####");
var newDataset = DatasetBuilder.newDataset();
var ic = new javax.naming.InitialContext();
var created = false;
var query = '';
var filtro = '';
var banco = '';
var zoom = 0;
var dataSource = "jdbc/FluigDS";
if(constraints != null) {
if(constraints.length > 0) {
for (var i = 0; i < constraints.length; i++) {
}
}
}
query = "UPDATE fdn_usertenant SET USER_COD = 'nova_matricula' WHERE USER_COD = 'matricula'";
log.info("#### QUERY ####");
log.info(query);
var ds = ic.lookup(dataSource);
try {
var conn = ds.getConnection();
var stmt = conn.createStatement();
var rs = stmt.executeUpdate(query); // função que executa o update no banco
var columnCount = rs.getMetaData().getColumnCount();
while(rs.next()) {
if(!created) {
for(var i = 1; i <= columnCount; i++) {
newDataset.addColumn(rs.getMetaData().getColumnName(i));
}
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) {
log.info("ERRO ==============> " + e.message);
newDataset.addColumn("ERRO");
newDataset.addRow(new Array(e.message));
} finally {
if(stmt != null) stmt.close();
if(conn != null) conn.close();
}
return newDataset;
}
Obrigada, Gabriel! eu acabei encontrando uma solução parecida aqui. Nao sei se é a melhor forma, mas funcionou. rs
1 curtida
como vc fez essa alteração, estou precisando alterar um usuário tbm, deu algum erro ?
Encontrei uma solução através de Dataset;
function createDataset(fields, constraints, sortFields) {
var newDataset = DatasetBuilder.newDataset();
// Cria as colunas
newDataset.addColumn("COLUNA1");
newDataset.addColumn("COLUNA2");
//SELECT BUSCANDO NO BD TABELA DE USUÁRIOS
var select = "select * from fdn_usertoken";
//UPDATE ALTERANDO MATRICULA COM BASE NA EMAIL
var update = "UPDATE FDN_USERTENANT SET user_code = '0202020202' WHERE email = 'email@email.com.br';";
try {
var ic = new javax.naming.InitialContext();
var ctx = ic.lookup("jdbc");
var ds = ctx.lookup("FluigDS");
var con = ds.getConnection();
var stmt = con.createStatement();
var rs = stmt.execute(update);
while(rs.next()){
newDataset.addRow(new Array(rs.getString(1),rs.getString(2)));
}
con.close();
}
catch (e) {
newDataset.addRow(new Array(e.message));
}
return newDataset;
}
1 curtida
Bom dia,
Só lembrando que essa alteração em base é uma prática não homologada pela equipe de produto fluig por trazer uma série de riscos, esse é um caso que fica por conta e risco do usuário.
1 curtida