Aus der Tabelle Error-Log wollen wir einen oder mehrere Datensätze löschen.
Beispiel:
Der erste von acht Datensätzen wird gelöscht:
Das Löschen hat funktioniert und wird auch bestätigt. Es werden noch sieben Datensätze angezeigt.
Beim Refresh [F5] erscheint die Erfolgsmeldung aber wieder. Warum?
Schauen wir uns die URL etwas genauer an:
URL vor dem Löschen:
https://localhost:8443/ords/mqs_ltm/r/mqsc-db-control/applikationslog?session=1254743865074
URL nach dem Löschen:
https://localhost:8443/ords/mqs_ltm/r/mqsc-db-control/applikationslog?session=1254743865074&success_msg=PHNwYW4gc3R5bGU9ImNvbG9yOndoaXRlIj5FcyB3dXJkZSAxIFplaWxlIGdlbMO2.,c2NodDwvc3Bhbj4~%2FBc478pLiEH9QRrnlXd4HLazL8mNHJk_BA05oFstnWHmFafvagdnJvkGL251JHllCCG96nNCznYlgD-I4u-HUsw
URL nach dem Refresh [F5]:
https://localhost:8443/ords/mqs_ltm/r/mqsc-db-control/applikationslog?session=1254743865074&success_msg=PHNwYW4gc3R5bGU9ImNvbG9yOndoaXRlIj5FcyB3dXJkZSAxIFplaWxlIGdlbMO2.,c2NodDwvc3Bhbj4~%2FBc478pLiEH9QRrnlXd4HLazL8mNHJk_BA05oFstnWHmFafvagdnJvkGL251JHllCCG96nNCznYlgD-I4u-HUsw
Die success_msg ist immer noch vorhanden.
Die Success-Message wird über den Parameter success_msg in der URL angetriggert. Damit die Erfolgsmeldung beim Page Reload nicht mehr erscheint, müssen wir den Parameter loswerden. Das erfolgt mit ein paar Zeilen Java Script:
Auf der Page, unter Function and Global Variable Declaration wird die Java Script Funktion removeParam hinzugefügt:
Code:
function removeParam(key, sourceURL) {
var rtn = sourceURL.split("?")[0],
param,
params_arr = [],
queryString = (sourceURL.indexOf("?") !== -1) ? sourceURL.split("?")[1] : "";
if (queryString !== "") {
params_arr = queryString.split("&");
for (var i = params_arr.length - 1; i >= 0; i -= 1) {
param = params_arr[i].split("=")[0];
if (param === key) {
params_arr.splice(i, 1);
}
}
rtn = rtn + "?" + params_arr.join("&");
}
return rtn;
}
On Page Load erstellen wir eine dynamic Action, mit dem Namen removeParam_success_msg:
Code:
window.history.pushState("object or string", "Title", removeParam("success_msg", window.location.href));
Die URL schaut nun wie folgt aus:
https://localhost:8443/ords/mqs_ltm/r/mqsc-db-control/applikationslog?session=1254743865074
Die Erfolgsmeldung wird nur noch einmal angezeigt und erscheint beim Refresh nicht mehr. :)
Sie planen eine APEX-Anwendung und benötigen Unterstützung?
Unsere APEX-Spezialisten helfen gerne bei der Konzeption und Umsetzung, kontaktieren Sie uns einfach.
In unserer Know-How Datenbank finden Sie mehr als 300 ausführliche Beiträge zu den
Oracle-Themen wie DBA, SQL, PL/SQL, APEX und vielem mehr.
Hier erhalten Sie Antworten auf Ihre Fragen.