Anmelden

View Full Version : Anlage-User



iiSiggi
04-01-16, 07:25
Guten Morgen,
ich möchte in einem einem Datenpflegeprogramm den Nutzer der den Betreffenden Datensatz erstellt hat und denjenigen der ihn geändert hat festhalten, Die betreffenden Felder in der Maske sind auch schon angelegt, allerdings hapert es noch am Code.
361

BenderD
04-01-16, 07:44
Ei Siggi,

da gibt es doch im SQL das Special Register CURRENT_USER, bzw. im PSDS eine Feld mit dem User. Reinschreiben muss man das natürlich bei Anlage/Änderung in den Datensatz der Tabelle.

D*B

B.Hauser
04-01-16, 09:15
Ich würde das Ganze über einen Before Insert Trigger abhandeln.

Den aktuellen User würde ich dabei wie Dieter bereits gesagt hat entweder über ein SQL Special_Register oder in RPG über die Programm-Status-Datenstruktur - Position 358 - 367 ermitteln.
Mit dem special Register CURRENT_USER wäre ich allerdings vorsichtig, da u.U. nicht der tatsächliche Benutzer, sondern der Eigner des Programms (sofern dieses mit USER=*OWNER erstellt wurde) ausgegeben wird. Das Special Register SESSION_USER bringt den tatsächlichen Benutzer zurück.

Der Vorteil eines Trigger-Programms ist, dass im Programm selber kein entsprechender Source Code hinterlegt werden muss und unabhängig davon, wie der Datensatz geändert wurde (Programm, SQL, UPDDTA etc.) der Benutzer fortgeschrieben wird.

Birgitta

iiSiggi
05-01-16, 06:28
Guten Morgen,
danke für die schnellen antworten, ich habe es jetzt die Datenbankfelder (AnlageBenutzer und AenderungBenutzer) durch ''current_user'' ersetzt.