Feldauswahl über ´FeldID

11. Juli 2017 14:03

Hallo zusammen,

und schon steht das nächste Problem an:

Ich habe in einer Einrichtungstabelle die Feld-ID als Wert in einem Feld in einem Datensatz.

Feld ID Beschreibung
50000 Debitor - Ändern
50001 Debitor - Löschen
....

Aufgrund dieser Info möchte ich nun die Tabelle "Usersetup" auslese und mir genau den Inhalt des Feldes mit der ID 50000 usw. zu einem bestimmten Benutzer in eine weitere Tabelle eintrage.
Wie kann mit der Feld-ID als Wert auf das tatsächliche Feld zugreifen?

Re: Feldauswahl über ´FeldID

11. Juli 2017 14:19

Frage: Warum benutzt du nicht die NAV- Rechteverwaltung?

Re: Feldauswahl über ´FeldID

11. Juli 2017 20:34

Weil hier eine extra programmierte Berechtigungsverwaltung vorhanden ist.

Ist sehr komplex und an die Anforderungen des Unternehmens angepasst bzw. programmiert.

Ich muss von einer Feld-ID, die als Wert vorliegt direkt das Feld ansprechen um den Wert auslesen zu können.
Ist das überhaupt möglich?

Re: Feldauswahl über ´FeldID

11. Juli 2017 21:55

Das geht mit Recordref/Fieldref.

Re: Feldauswahl über ´FeldID

11. Juli 2017 22:55

Und wie muss ich die Befehle anwenden? Gibt's eine verständliche Erklärung dafür?

Re: Feldauswahl über ´FeldID

12. Juli 2017 09:01

Du musst den RecRef mit deiner Tabelle füllen. Das kannst du via GETTABLE machen.
Dann die FieldRef zuweisen. In Fieldref.Value steht dann dein Wert und du kannst damit arbeiten. Ist aber Datentyp Variant. Kann sein, dass du den Wert vorher noch via EVALUATE in den richtigen Datentyp konvertieren musst.

Beispiel:
Code:
UserSetup.GET(USERID);
RecRef.GETTABLE(UserSetup);
FieldRef := RecRef.FIELD(deineFeldID);
MESSAGE(FORMAT(FieldRef.Value));