Hi Bhupender ,
Please find below syntax :
Executed from Studio successfully -
CREATE LOCAL TEMPORARY COLUMN TABLE #CONTROL ("NAME" VARCHAR(50), "INTARGS" INTEGER, "DOUBLEARGS" DOUBLE, "STRINGARGS" VARCHAR(100));
INSERT INTO #CONTROL VALUES ('THREAD_NUMBER', 50, null, null);
INSERT INTO #CONTROL VALUES ('MIN_SUPPORT', null, 0.001, null);
INSERT INTO #CONTROL VALUES ('MIN_CONFIDENCE', null, 0.001, null);
INSERT INTO #CONTROL VALUES ('MAX_ITEM_LENGTH', 100, null, null);
INSERT INTO #CONTROL VALUES ('MAX_CONSEQUENT', 100, null, null);
DROP TABLE "devUser"."CentralRepo.ABCRecommends1.Algorithms::Apriori.Apriori_aprioriRule_Result";
CREATE COLUMN TABLE "devUser"."CentralRepo.ABCRecommends1.Algorithms::Apriori.Apriori_aprioriRule_Result" ("PRERULE" VARCHAR(256), "POSTRULE" VARCHAR(256), "SUPPORT" DOUBLE, "CONFIDENCE" DOUBLE, "LIFT" DOUBLE);
DROP TABLE "devUser"."CentralRepo.ABCRecommends1.Algorithms::Apriori.Apriori_aprioriRule_PMMLResult";
CREATE COLUMN TABLE "devUser"."CentralRepo.ABCRecommends1.Algorithms::Apriori.Apriori_aprioriRule_PMMLResult" ("ID" INTEGER, "Descritption" VARCHAR(5000));
CALL "devUser"."CentralRepo.ABCRecommends1.Algorithms::Apriori.Apriori"("devUser"."CNMR_APRIORI_TRANS_TBL1", #CONTROL, "devUser"."CentralRepo.ABCRecommends1.Algorithms::Apriori.Apriori_aprioriRule_Result", "devUser"."CentralRepo.ABCRecommends1.Algorithms::Apriori.Apriori_aprioriRule_PMMLResult") with overview;
__________________________________________________________________
I get the error when executing the same from XSJS -
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);
if (method >= 1 && method <= 4) {
conn = $.db.getConnection("CentralRepo.ABCRecommends1::DevUser");
sqlstmt = 'CREATE LOCAL TEMPORARY COLUMN TABLE #CONTROL ("NAME" VARCHAR(50), "INTARGS" INTEGER, "DOUBLEARGS" DOUBLE, "STRINGARGS" VARCHAR(100))';
conn.prepareStatement(sqlstmt).execute();
sqlstmt = 'INSERT INTO #CONTROL VALUES (\'THREAD_NUMBER\', 50, null, null)';
conn.prepareStatement(sqlstmt).execute();
sqlstmt = 'INSERT INTO #CONTROL VALUES (\'MIN_SUPPORT\', null, 0.0001, null)';
conn.prepareStatement(sqlstmt).execute();
sqlstmt = 'INSERT INTO #CONTROL VALUES (\'MIN_CONFIDENCE\', null, 0.0001, null)';
conn.prepareStatement(sqlstmt).execute();
sqlstmt = 'INSERT INTO #CONTROL VALUES (\'LIFT\', null, 0.001, null)';
conn.prepareStatement(sqlstmt).execute();
sqlstmt = 'INSERT INTO #CONTROL VALUES (\'MAX_ITEM_LENGTH\', 100, null, null)';
conn.prepareStatement(sqlstmt).execute();
sqlstmt = 'INSERT INTO #CONTROL VALUES (\'MAX_CONSEQUENT\', ?, null, null)';
var pstmt = conn.prepareStatement(sqlstmt);
pstmt.setInt(1,method);
pstmt.execute();
sqlstmt = 'DROP TABLE "DevUser"."CentralRepo.ABCRecommends1.Algorithms::Apriori.Apriori_aprioriRule_Result"';
conn.prepareStatement(sqlstmt).execute();
sqlstmt = 'CREATE COLUMN TABLE "DevUser"."CentralRepo.ABCRecommends1.Algorithms::Apriori.Apriori_aprioriRule_Result" ("PRERULE" VARCHAR(256), "POSTRULE" VARCHAR(256), "SUPPORT" DOUBLE, "CONFIDENCE" DOUBLE, "LIFT" DOUBLE)';
conn.prepareStatement(sqlstmt).execute();
sqlstmt = 'DROP TABLE "DevUser"."CentralRepo.ABCRecommends1.Algorithms::Apriori.Apriori_aprioriRule_PMMLResult"';
conn.prepareStatement(sqlstmt).execute();
sqlstmt = 'CREATE COLUMN TABLE "DevUser"."CentralRepo.ABCRecommends1.Algorithms::Apriori.Apriori_aprioriRule_PMMLResult" ("ID" INTEGER, "Descritption" VARCHAR(5000))';
conn.prepareStatement(sqlstmt).execute();
sqlstmt = 'CALL "DevUser"."CentralRepo.ABCRecommends1.Algorithms::Apriori.Apriori"("DevUser"."CNMR_APRIORI_TRANS_TBL1", #CONTROL, "DevUser"."CentralRepo.ABCRecommends1.Algorithms::Apriori.Apriori_aprioriRule_Result", "DevUser"."CentralRepo.ABCRecommends1.Algorithms::Apriori.Apriori_aprioriRule_PMMLResult") with overview';
conn.prepareCall(sqlstmt).execute();
conn.commit();
output.msg = "Finished!";
} else {
output.msg = "Value for 'method' parameter is not between 1 and 4.";
}
if (conn) {conn.close();}
$.response.setBody(JSON.stringify(output));
Thanks & Regards,
Anup Singh