dynamisches Auswahlfeld per Modularisierung füllen?
Hallo zusammen,
ich habe eine Stammdatentabelle mit gepflegten Mitarbeitern, diese Mitarbeiter sind mit verschiedenen Datensätzen aus der Untertabelle Kostenstellen verknüpft.
In der Zeiterfassungstabelle möchte ich nur für den Benutzer zugewiesene Kostenstellen in einem dynamischen Auswahlfeld anzeigen lassen.
in "dynamic values" schreibe ich:
let ma := first(select Mitarbeiter where Mitarbeiter.'zugewiesener Ninox-Benutzer'=user())
ma.Mitarbeiter.Kostenstellen
Im Ergebnis werden die dynamischen Werte aber nicht gefüllt.
Wo ist mein Denkfehler?
19 Antworten
-
"ma" enthält ja schon einen Record aus der Tabelle Mitarbeiter!? Dann sollte es also so sein:
let ma := first(select Mitarbeiter where 'zugewiesener Ninox-Benutzer' = user()) ma.Kostenstellen
oder alternativ:
select Kostenstellen where Mitarbeiter.'zugewiesener Ninox-Benutzer' = user()
-
Mein Fehler, ich habe mich komplett falsch ausgedrückt.
Die "Stammdatentabelle"ist in Wirklichkeit eine Stammdaten-Datenbank und die "Zeiterfassungstabelle" ist eine Zeiterfassungs-Datenbank.Die Mitarbeiter sind per Modularisierung miteinander Verknüpft. Ungefähr so:
Stammdaten-Datenbank
Mitarbeiter
-> Untertabelle KostenstellenZeiterfassungs-Datenbank
Mitarbeiter
-> Mitarbeiter (verknüpfung zum Mitarbeiter aus Stammdaten-Datenbank)
ma enthält also nun einen Eintrag aus der Mitarbeitertabelle der Zeiterfassungsdatenbank. Ich möchte die Kostenstellen aus der Verknüpfung zur Stammdatentabelle in ein dynmaisches Auswahlfeld schreiben.
-
Wenn es eine Untertabelle von Mitarbeiter ist und die Untertabelle im DAF angezeigt werden soll, dann muss der zu vergleichende Wert eine Zahl sein.
ma := number(?) [? = ID des Records in Tabelle Mitarbeiter, dessen Untertabelleneinträge angezeigt werden sollen als reine Zahl]
do as database Stammdaten
select Kostenstelle where Mitarbeiter = ma
end -
Es sieht so aus, als ob der numerische Wert nicht akzeptiert wird in 'do as database'.
let ma := 1; do as database Stammdaten select Kostenstellen where Mitarbeiter = ma end
funktioniert, wenn die ID vorhanden ist.
-
Kannst du bitte den Bug ins Partnerforum einstellen.
Content aside
- vor 11 MonatenZuletzt aktiv
- 19Antworten
- 152Ansichten
-
3
Folge bereits