BigDecimal Problem

1
0
-1

Hi Community!

I'm trying to use some groovy code to do an update according to a list. Well, I'm having some bad time, probably because my code have something wrong.

import groovy.sql.Sql

def lista = []

Sql sql = BonitaSql.newInstance("jdbc:oracle:thin:@MYIPADRESS:orcl1", "NAME", "PASS",new oracle.jdbc.OracleDriver())
sql.eachRow "SELECT CD_USUARI FROM VULTIMOLOG WHERE DAT < (sysdate - 20)", {lista +=it.CD_USUARI}
sql.close()

def Integer n = lista.size();
for (int i=0; i {
Sql sql2 = BonitaSql.newInstance("jdbc:oracle:thin:@MYIPADRESS:orcl1", "NAME", "PASS",new oracle.jdbc.OracleDriver())
def Integer s1 = lista.getAt(i).get(1)
def query="UPDATE NAME.SIUSUARI SET CH_ATIVO = 'I' WHERE CH_ATIVO ='A' AND &${s1} "
sql2.execute(query);
}
return lista

I keep getting this error:

Exception was:org.bonitasoft.engine.expression.exception.SExpressionEvaluationException: groovy.lang.MissingMethodException: No signature of method: java.math.BigDecimal.get() is applicable for argument types: (java.lang.Integer) values: [1]
Possible solutions: grep(), next(), pow(int), grep(java.lang.Object), getAt(java.lang.String), wait()

Any clues?

TIA.

1 answer

1
0
-1
This one is the BEST answer!

Hi everyone!

Kinda solved my problem by removing the "get(1)" from my code, since my list have only 1 column.

Notifications