In vielen meiner Projekte nutze ich Tabular Forms. Bei Standardspalten wie "geändert am" oder "geändert von" ist es leider nicht ohne weiteres möglich das SYSDATE und den APP_USER mitzugeben.
Der Grund liegt in den wenigen Einstellmöglichkeiten (bis mindestens APEX 4.1). Es gibt nur einen Default Wert den ich setzen kann. Dieser wird aber nicht bei einem Update Prozess gezogen und der alte Wert bleibt bestehen.
Eine Lösung stellt hier ein "before insert or update"-Trigger dar:
CREATE OR REPLACE TRIGGER "TRG_NACHRICHTEN" before
INSERT OR
UPDATE ON TBL_NACHRICHTEN FOR EACH row BEGIN
:NEW.geaendert_am := sysdate;
:NEW.geaendert_von := UPPER(NVL(v('APP_USER'),USER));
END;
Der Grund liegt in den wenigen Einstellmöglichkeiten (bis mindestens APEX 4.1). Es gibt nur einen Default Wert den ich setzen kann. Dieser wird aber nicht bei einem Update Prozess gezogen und der alte Wert bleibt bestehen.
Eine Lösung stellt hier ein "before insert or update"-Trigger dar:
CREATE OR REPLACE TRIGGER "TRG_NACHRICHTEN" before
INSERT OR
UPDATE ON TBL_NACHRICHTEN FOR EACH row BEGIN
:NEW.geaendert_am := sysdate;
:NEW.geaendert_von := UPPER(NVL(v('APP_USER'),USER));
END;