Dynamische Auswahldfehld funfktioniert diese Formel nicht mehr
Liebes Forum ,
ich habe folgendes Problem. Ich habe das Auswahlfeld durch ein Dynamisches Feld ersetzt. Nur er zeigt mir in der Ansicht nichts mehr. Muss ich beim Dynamischen Auswahlfeld noch was beachten-
Hier ist die Formel.
let me := this;
select 'Arbeitszeit gearbeitet'
where text('Name Mitarbeiter') = text(me.'Auswahl (dynamisch)') and year(Datum) = text(me.Jahr) and if me.Monat then
month(Datum) = me.Monat
else
true
end
Dankeschön
7 Antworten
-
Hallo Thomas,
das dynamische Feld gibt eine record ID zurück, also wenn du den Text haben möchtest, sollte es in etwa so aussehen
record(TABELLENNAME,number(me.DynAUSWAHL)).TEXTFELD
Leo
-
Hallo Leo
nein, per text(...) kann man durchaus die Auswahl direkt bekommen (solange es kein dynamisches Mehrfachauswahlfeld ist).
Sollte eigentlich so funktionieren, aber der Vergleich zwischen year(Datum) (numerisch) und text(me.Jahr) (Text) dürfte ein Problem darstellen
-
Was mach ich falsch ? Mit der Formel Leo sagt er mir er kann die Tabelle nicht finden. Ich habe mal ein Bild angehängt .
-
Vorschlag like Leo. TABELLE=Tabellenname die die Mitarbeiternamen enthalten, FELD=Feldname für die Mitarbeiternamen
*
let ID := number('Auswahl (dynamisch)');
let name := record(TABELLE,ID).FELD;
let jahr := text(Jahr);
let monat := text(Monat);
(select 'Arbeitszeit gearbeitet')[year(Datum) = jahr and monthName(Datum) = monat and 'Name Mitarbeiter' = name]
*
-
Leider tut sich da nichts. Er zeigt nichts an. Das dynamische Feld wird als Text ausgeben.
Die Formel ist für eine Ansicht . Muss da noch was beachten ?
-
Noch zwei Tips. Wenn das dynamische Auswahlfeld auf die gleiche Tabelle verweist, dann so:
*
let ID := number('Auswahl (dynamisch)');
let name := record('Arbeitszeit gearbeitet',ID).Name;
let jahr := text(Jahr);
let monat := text(Monat);
(select 'Arbeitszeit gearbeitet')[year(Datum) = jahr and Name = name and monat = monthName(Datum)]
*
wenn es eine andere Tabelle ist, mußt Du die Einträge in der Zeile 2 ändern. Wenn es immer noch nicht klappt, dann schreibe mal, was Du in den Einstellungen des dynamischen Auswahlfelds eingetragen hast.
2. Prüfe, ob der Filter in Deiner Tabelle auch einen Wert hat (Thomas Förster, 2021, Juli) sonst bleibt die Ansicht natürlich leer. Die if-Konstruktion kannst Du Dir sparen, da du mit dem Vergleichsoperator "and" arbeitest. Wenn die Bedingung nicht erfüllt ist, bleibt ja die Ansicht ohnehin leer. Gruß Mirko
-
year(Datum) gibt eine Zahl zurück. Man muss beim let jahr entsprechend ändern
let jahr:=number(text(Jahr))
Leo
Content aside
- vor 3 JahrenZuletzt aktiv
- 7Antworten
- 313Ansichten