Hi Anup,
Below code worked for me, Only main change is use prepareStatement() in place of prepareCall().
try
{
var sqlstmt;
var method;
var conn;
var output = {};
output.msg = "";
$.response.contentType = "text/json";
$.response.status = $.net.http.OK;
method = parseInt($.request.parameters.get("method"),10);
var conn = $.db.getConnection();
sqlstmt = 'CREATE LOCAL TEMPORARY COLUMN TABLE #PAL_AD_CONTROL_TBL ("NAME" VARCHAR(50), "INTARGS" INTEGER, "DOUBLEARGS" DOUBLE, "STRINGARGS" VARCHAR(100))';
conn.prepareStatement(sqlstmt).execute();
sqlstmt = 'INSERT INTO #PAL_AD_CONTROL_TBL VALUES (\'THREAD_NUMBER\', 50, null, null)';
conn.prepareStatement(sqlstmt).execute();
sqlstmt = 'truncate table "PAL_00"."PAL_AD_RESULT_TBL"';
conn.prepareStatement(sqlstmt).execute();
sqlstmt = 'CALL "_SYS_AFL".PAL_ANOMALY_DETECTION("PAL_00"."pal_input",#PAL_AD_CONTROL_TBL, "PAL_00"."PAL_AD_RESULT_TBL") with overview';
conn.prepareStatement(sqlstmt).execute();
conn.commit();
output.msg = "Finished!";
if (conn) {conn.close();}
$.response.setBody(JSON.stringify(output));
}catch (e) {
$.response.setBody(e.message + "error is there");
}
And one suggestion is no need to drop and create output tables every time, Better use truncate command to just delete the DATA.
Hope this helps you,
Thanks You
Bhupender