OK, der Titel klingt nicht sonderlich prickelnd. ABär. Die Felder enthalten die Namen im Format
Jupp Schlabodnik/Schlacke/GE
Franz Hermann auf und davon Bloedhorst/Dummdorfhausen/de
Herauskommen soll eine kategorisierte Ansicht nach Nachnamen.
Bloedhorst, Franz Hermann auf und davon
Schlabodnik, Jupp
Den Code für das Umbasteln im Format Nachname Komma Vorname habe ich hier irgendwo schon einmal gepostet.
Hier jetzt der Code, um durch die 13 Felder zu laufen und die Konvbertierung vorzunehmen.
_MA:="";
@For( n := 1; n <= 13; n := n + 1;
_name:=
@Name([CN];@Select( n ;
mTeam_1;mTeam_2;mTeam_3;mTeam_4;mTeam_5;mTeam_6;mTeam_7;
mTeam_8;mTeam_9;mTeam_10;mTeam_11;mTeam_12;mTeam_13));
_lastName:=@RightBack(_name;" ");
_lenLastName:=@Length(_lastName);
_LenAll:=@Length(_name);
_diff:=_LenAll - _lenLastName;
_firstName:=@Trim(@Left(_name;_diff));
_MA:=_MA + _lastName + @If(_lastname !="" & _firstname != ""; ", ";"") + _firstName + "~"
);
_MA
Interessant finde ich das Konstrukt mit @Select, um abhängig von einem numerischen Wert einen feldinhalt an die Formel zu übergeben.
@Select mag manchmal schon sinnvoll sein, wäre hier aber ein @GetField einfacher? Also
_name:= @Name([CN];@GetField("mTeam_" + @Text(n)));
Schöne Grüße
-Werner
Habe ich das Thema verpasst? Ich mache sowas simpler:
persons := Person1 : Person2 : Person3 : .........;
tmp := @Name ([CN]; Persons);
tmpLastName := @RightBack (tmp; " ");
tmpName := tmpLastName + ", " + @Left (tmp; @Length (tmp) - @Length (tmpLastName) - 1);
tmpName
Auf Kosten der Leserlichkeit kann man da auch noch Zeilen sparen.
Wenn Thema verfehlt: Es ist unangenehm schwül-heiss hier ;D Gewitterstimmung, aber kein Gewitter in Sicht ...
Bernhard