0

Feldnamen auslesen?

Hallo Forum, nochmal habe die Hälfte vergessen! ich habe eine Tabelle (Standorte Berlin) mit mehreren Text- und Bildfeldern, bei der haubtsächlich über Android Bilder von mehreren Benutzern eingefügt werden. Nun habe ich eine zusätzliche Tabelle (Dokumentierer) wo Änderungen ausgewählter Felder dokumentiert werden sollen. Nach Änderungen wird folgendes Skript ausgeführt:

let me := this;
let myDok := (create Dokumentierer);
myDok.(Tabelle := "Standorte Berlin");
myDok.(User := user());
myDok.(Wert := text(me.'Standortübersicht (größtmöglichst)'));
myDok.(Wert := text(me.'Schlüsseltresor (größtmöglichste Übersicht)'));
myDok.(Wert := text(me.'Schlüsseltresor (Detailfoto)'));
myDok.(Wert := text(me.'Zähler (größtmöglichste Übersicht)'));
myDok.(Wert := text(me.'Zähler (Detailfoto)'));
myDok.('Site ID' := me.'Site ID');
myDok.('Standorte Berlin' := me)

Soweit funktioniert das ganze auch, nur was mir noch fehlt ist die Ausgabe des Feldnamens des Feldes bei dem etwas geändert wurde.

Vielen Dank im Voraus

2 Antworten

null
    • Ninox-Professional
    • planoxpro
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Ronny, ich würde so eine Protokollfunktion nicht auf Tabellen-, sondern auf Feldebene durchführen. Man müsste dann nicht bei jeder Feldänderung sämtliche Feldinhalte übernehmen, sondern nur den geänderten. Und dabei könnte man auch das betreffende Feld angeben. Also bei jedem betreffenden Datenfeld als Trigger "Nach Änderungen folgendes Script ausführen", am Beispiel des Feldes 'Standortübersicht (größtmöglichst)':

    let me := this;
    let myWert := text('Standortübersicht (größtmöglichst)');
    let myDok := (create Dokumentierer);
    myDok.(
        Tabelle := "Standorte Berlin";
        Feld := "Standortübersicht (größtmöglichst)"
        Zeitpunkt := now();
        User := user();
        Wert := myWert;
        'Standorte Berlin' := me
    )

    Bei den anderen Datenfeldern müsste halt je zwei mal die Feldbezeichnung ausgetauscht werden. Und natürlich hätte die Tabelle 'Dokumentierer' andere Datenfelder.

     

    Ist aber natürlich nur ein Vorschlag.

    • Ronny_R
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Copytexter,

    vielen Dank für die schnelle Antwort. Ich habe dieses Skript in der Tabellenebene, da ich insgesamt 5 Tabellen nach Regionen benannt mit je ca. 3000 Datensätzen habe. in den Tabellen befinden sich 23 Datenfelder siehe Bild. Die Felder mit der roten Umrandung sind gesperrt und können von unseren Benutzern nicht verändert werden. In allen anderen Feldern können Änderungen vorgenommen werden. Es wäre natürlich schön, wenn von allen Feldern die Änderungen in die Tabelle Dokumentierer protokolliert werden. Hintergrund ist der, das wir ca. 18 Teams haben, die über Android auf die Datenbank zugreifen und die Daten vervollständigen sollen (Text, Bilder). Ninox hat ja eine eigene Änderungshistorie die glaube ich nur 1-2 Tage protokolliert bzw. müsste ich jeden einzelnen Datensatz anschauen um mir Änderungen anzusehen. Das ist natürlich zu umständlich und aufwändig und daher die eigene Protokolltabelle (siehe Bild).                                                                                                   Im Datenfeld Wert sollen alle Änderungen protokoilliert werden um besser nachvollziehen zu können, wer was wann geändert hat. Und jetzt steht bei Einfügen eines Bildes nur der Bildname zB. 009.jpg und ich hätte gerne, das auch der Feldname mit eingetragen wird zB. Schlüsseltressor (Detailfoto) 009.jpg. So weiß ich dann auch in welchem Feld geändert wurde. Danke im Voraus.

Content aside

  • vor 4 JahrenZuletzt aktiv
  • 2Antworten
  • 1351Ansichten