Guten Morgen zusammen.
Ich brauche mal einen kleinen Denkanstoss.
Ich habe in einem Formular ein Namensfeld, in dem man sich über den Adressdialog Namen aus dem Namens- und Adressbuch auswählen kann (Mehrfachauswahl möglich).
Bei dem Formulat handelt es sich um einen Auftrag, das Namensfeld soll die zuständigen Bearbeiter beinhalten. Ich habe mir überlegt das es ja schick wäre wenn Rechts neben den Namen noch die Rufnummer aus der "names.nsf" stehen würde.
Aussehen soll das in etwa so:
(http://www.anton-cramer.de/bearbeiter.jpg)
Dieses Ergebnis erziele ich wenn ich dem Berechneten Text folgende Formel zugrunde lege:
Name1:= @Word(@Implode(auf_bearbeiter); " "; 1) + " " + @Word(@Implode(auf_bearbeiter); " "; 2);
Name2:= @Word(@Implode(auf_bearbeiter); " "; 3) + " " + @Word(@Implode(auf_bearbeiter); " "; 4);
Name3:= @Word(@Implode(auf_bearbeiter); " "; 5) + " " + @Word(@Implode(auf_bearbeiter); " "; 6);
Name4:= @Word(@Implode(auf_bearbeiter); " "; 7) + " " + @Word(@Implode(auf_bearbeiter); " "; 8);
Name5:= @Word(@Implode(auf_bearbeiter); " "; 9) + " " + @Word(@Implode(auf_bearbeiter); " "; 10);
Bearbeiter1:= @If(@IsNull(Name1); ""; @DbLookup(""; "" : ""; "lookup_personen"; Name1; 2));
Bearbeiter2:= @If(@IsNull(Name2); ""; @DbLookup(""; "" : ""; "lookup_personen"; Name2; 2));
Bearbeiter3:= @If(@IsNull(Name3); ""; @DbLookup(""; "" : ""; "lookup_personen"; Name3; 2));
Bearbeiter4:= @If(@IsNull(Name4); ""; @DbLookup(""; "" : ""; "lookup_personen"; Name4; 2));
Bearbeiter5:= @If(@IsNull(Name5); ""; @DbLookup(""; "" : ""; "lookup_personen"; Name5; 2));
Bearbeiter1
Ich möchte die Rufnummern natürlich auch gerne untereinander aufgelistet haben. Hier liegt wohl
mein Problem. Es könnte ja auch sein das es nur Bearbeiter1 und Bearbeiter2 gibt.
Probiert habe ich beispielsweise das hier:
erg:= @If(Bearbeiter1 != ""; @Set(erg; Bearbeiter1); Bearbeiter2 != ""; @Set(erg; Bearbeiter1 + @NewLine + Bearbeiter2); Bearbeiter3 != ""; @Set(erg; Bearbeiter1 + @NewLine + Bearbeiter2 + @NewLine + Bearbeiter3); "");
erg
Dieses Beispiel berücksichtigt exemplarisch 3 Bearbeiter.
Der berechnete Text zeigt mir aber nur die Rufnummer des ersten Bearbeiters an.
Was mache ich falsch, bzw. wie könnte ich es besser machen?
Vielen Dank im Voraus!
Gruß René
Mahlzeit
Vielen Dank erstmal für Eure Hinweise!
Ich hatte schon befürchtet das sich niemand mehr meldet. ;-)
Ich habe das Problem jetzt gelöst, indem ich die berechneten Felder Bearbeiter 1-5 angelegt habe. Diese ermitteln jeweils wenn vorhanden die Rufnummer.
Der berechnete Text wird wie vorgeschlagen über
@Implode(Bearbeiter1:Bearbeiter2:Bearbeiter3:Bearbeiter4:Bearbeiter5; @NewLine)
ermittelt.
So klappt alles wie gewünscht. Wobei das sicherlich eleganter zu programmieren wäre.
Schande über mich.
Ich bedanke mich jedenfalls erstmal herzlich.
Bis dahin...
Gruß René