Code: Select all
var v_amount = [];
var grid = apex.region("118_ig").widget();
var gridView = grid.interactiveGrid("getViews", "grid");
var model = gridView.model;
var p118_id = apex.item("P118_ID").getValue();
model.forEach(function (record) {
console.log("Record structure:", record);
if (record[1] !== undefined) {
let value= String(record[1]).replace(/,/g, '.');
if (!isNaN(value)) {
v_amount.push(value);
}
}
});
apex.server.process('split_the_bill_btn_ig_proc', {
f01: p118_id,
f02: v_amount
},
{
success: function (data) {
console.log("Process succeeded:", data);
},
error: function (jqXHR, textStatus, errorThrown) {
console.error("Process failed:", textStatus, errorThrown);
}
}
);
Wo die Zeichenfolge von Arrays in CSV formatiert wird
Code: Select all
DECLARE
l_csv VARCHAR2(32767);
BEGIN
l_csv := '';
FOR i IN 1 .. apex_application.g_f02.COUNT LOOP
IF i > 1 THEN
l_csv := l_csv || ',';
END IF;
l_csv := l_csv || apex_application.g_f02(i);
END LOOP;
DBMS_OUTPUT.PUT_LINE('CSV Result: ' || l_csv);
SPLIT_BILL_PKG.split_the_amount(apex_application.g_f01(1), SPLIT_BILL_PKG.amounts_type(l_csv));
END;
Ich habe alles versucht, gegoogelt und mir die Skripte meines Kollegen angesehen, der schwört, dass das so ist es sollte getan werden. Ich kann anscheinend nicht herausfinden, ob ich f01 oder x01 verwenden soll. Mein Kollege sagt, es gäbe Regeln, aber ich kann sie nicht finden.
Manuell kann ich das Paket mit PL/SQL in SQL-Befehlen aufrufen und es funktioniert wie vorgesehen. aber wenn man es so nennt, ist das nicht der Fall.