Dynamisches Mehrfachauswahlfeld auslesen
Hallo liebe Ninox-Community,
ich habe ein kleines Problem, an dem ich mir schon ein paar Stunden den Kopf zerbreche:
Ich möchte ausgewählte Ergebnisse eines dyn. MFA auslesen und in einem PDF-Drucklayout ausgeben. Ich bekomme leider nur gefühlte 100 Nullen dabei raus. Es wird auch keine Datensatznummer angezeigt. Ich bekomme es hin, bei einem einfachen dyn. Auswahlfeld das Ergebnis (Name des Raumes) korrekt als Text auszugeben (z.B. mit record('Räume', number(Raumauswahl)).'Name des Raumes'
).
Wie bekomme ich es nun hin, bei einem dynamischen Mehrfahauswahlfeld die Ergebnisse als Text anzeigen zu lassen? Kann mir jemand eine Hilfestellung geben?
Herzlichen Dank und viele Grüße, Niels
6 Antworten
-
Hallo Niels,
---
join(for i in numbers(Raumauswahl) do
record('Räume', i).'Name des Raumes' )
end,"
")
---
Leo
-
Klammer zu viel
---
join(for i in numbers(Raumauswahl) do
record('Räume', i).'Name des Raumes'
end,"
")
---
-
Hi Nils, soweit ich weiß, bekommst Du die ID mit numbers(dmulti) und den Text durch Iteration über
*
for i in numbers(dmulti) do
record(TABELLE,i).FELD end
*
Gruß Mirko
-
Ups. Zu langsam ;-)
-
Hallo Leo, hallo Mirko,
ich danke Euch sehr für Euren Support. Ich habe auch schon vermutet, dass es in diese Richtung geht. Nun habe ich es ausprobiert und leider muss ich schreiben, dass es - in meinem Fall - nicht funktioniert hat. Ich weiss auch warum und ich ahne, dass das Verhalten hier von Ninox nicht richtig ist. Warum:
Ich habe das dyn. MFA über eine verknüpfte Tabelle zu einer weiteren Tabelle erzeugt. Dadruch erhalte ich eine korrekt angepasste Auswahl im dyn. MFA. Das habe ich so gemacht:
'-Auftrag aus Function-'.'-Räume im Auftrag-'
Ich erhalte so also nur die Räume
'-Räume im Auftrag-'
(aus meiner "Räume" Tabelle), die auch mit dem Auftrag verknüft sind.In diesem Fall funktionniert die for Schleife nicht.
Wenn ich hingegen das dyn. MFA per select direkt mit meiner "Räume" Tabelle verbinde, funktioniert der Code, den Ihr geschrieben habt. Nur dann habe ich statt der gewünschten Vorausauswahl eine Auswahl mit allen Räumen.
Wenn ich nur einen einzelenen Raum auswähle und diesen dann per
record('Räume',number(Raumauswahl)).'Name des Raumes'
in einem Berechnungsfeld ausgeben möchte, wird mir "ein" Raum angezeigt, jedoch ein falscher.
Habt Ihr dazu vielleicht eine Idee?
Lieben Dank nochmal und viele Grüße,
Niels
-
Und plötzlich habe ich die Lösung gefunden:
Ich habe deswegen kein Ergebnis bekommen, weil ich die Datensatz ID der Zwischentabelle mit der for-Schleife erhalten habe. Diese hatte ich fälschlicherweise versucht auf die eine andere Tabelle ('Räume') anzuwenden. Logischweise ohne Ergbnisse. Ich musste also eine zweite for-Schleife einbauen, um auf die IDs der richtigen Tabelle ('Räume') zu erhlaten. Damit kann ich mir nun die richtigen Namen der Räume anzeigen lassen.
Danke erneut für Eure Hilfe, es hat geholfen ;-)
Viele Grüße,
Niels
Content aside
- vor 3 JahrenZuletzt aktiv
- 6Antworten
- 631Ansichten