We have a system built in Java and we can create custom javascript "macros" in it. It uses Java entities but I have zero exposure to Java. I'm trying to debug the following because the sql doesn't seem to work. In PHP I would use something like var_dump to see what the sql statement actually looks like.
Is there a way to see what " getEntityManager().createNativeQuery(sqlStr)" is actually sending?
function insertTempHeaderRecord(filereadid, lineArray){
try{
var sqlStr="INSERT INTO vl_edisalesorder (filereadid, edifilename, customerid, deladdressid, contactid, "
"pricelistid, customerref, orderdate, delivercontact, delivertelephone, taillift, bookdelivery, deliveryins, orderid "+
" VALUES (:param0, :param1, :param2, :param3, :param4, :param5, :param6, :param7, :param8, :param9, :param10, :param11, :param12, :param13) ";
getEntityManager().createNativeQuery(sqlStr)
.setParameter("param0", filereadid)
.setParameter("param1", filereadid)
.setParameter("param2", trimTo(lineArray[3],10)) //traderid
.setParameter("param3", trimTo(lineArray[4], 10)) //deladd
.setParameter("param4", trimTo(lineArray[5],10)) //contactid
.setParameter("param5", "0536")
.setParameter("param6", trimTo(lineArray[2],25)) //custref
.setParameter("param7", Packages.java.sql.Date(orderdate.getTime()))
.setParameter("param8", trimTo(lineArray[8],25)) //delcontact
.setParameter("param9", trimTo(lineArray[6],20)) //deltel
.setParameter("param10", importer.Boolean.valueOf(lineArray[9])) //tlrq
.setParameter("param11", importer.Boolean.valueOf(lineArray[10])) //delbook
.setParameter("param12", trimTo(lineArray[7],30)) //delinstr
.setParameter("param13", importer.Boolean.valueOf(lineArray[10])) //delivery book in
.executeUpdate();
}catch(err){
return false;
}
return true;
logger.info("Petestestworkflow.xml - this worked ok");
}