Autor Thema: Sortierung nach Datum - Teilstring in Mehrfachfeld  (Gelesen 4220 mal)

Offline cebolina

  • Senior Mitglied
  • ****
  • Beiträge: 386
  • Geschlecht: Männlich
Hallo zusammen,
ich habe auch mal wieder ein Problem, wofür ich eine Lösung suche:

Ich habe aus einem automatischen Import in meinem Dokument die Felder "Personalnummer" (Text), "Datum" (Datum/Zeit) und "Art" (Text) mit diesem Werten:
Personalnummer(0) = "004711"
Personalnummer(1) = "004711"
Personalnummer(2) = "004711"
Personalnummer(3) = "004711"
Personalnummer(4) = "004711"
Personalnummer(5) = "004711"
Datum(0) = 01.03.2011
Datum(1) = 02.03.2011
Datum(2) = 10.04.2011
Datum(3) = 11.04.2011
Datum(4) = 20.03.2011
Datum(5) = 21.03.2011
Art(0) = "Urlaub"
Art(1) = "Urlaub"
Art(2) = "Krank"
Art(3) = "Krank"
Art(4) = "Freizeit"
Art(5) = "Freizeit"

In einem Text-Feld "MeinFeld" (Mehrfachwerte zulassen) berechne ich mir eine Liste in diesem Format:
Personalnummer~Datum1~Abwesenheit1
Personalnummer~Datum2~Abwesenheit2
...

MeinFeld:
004711~01.03.2011~Urlaub
004711~02.03.2011~Urlaub
004711~10.04.2011~Krank
004711~11.04.2011~Krank
004711~20.03.2011~Freizeit
004711~21.03.2011~Freizeit

Jetzt möchte ich mir diese Rohdaten nach Datum sortiert in einem weiteren berechneten Feld anzeigen lassen.

Frage:
Wie kann ich diese Mehrfachwerte sortieren, dass dieses Ergebnis (nach Datum sortiert) herauskommt?
004711~01.03.2011~Urlaub
004711~02.03.2011~Urlaub
004711~20.03.2011~Freizeit
004711~21.03.2011~Freizeit
004711~10.04.2011~Krank
004711~11.04.2011~Krank

Ich hoffe, jemand kann mir dir Richtung angeben, in die ich laufen muss.

Danke und Gruß
Stefan
« Letzte Änderung: 06.05.11 - 11:36:15 von cebolina »
Server: Lotus Domino 9.0.1FP4 HF70
Client: Release 9.0.1FP6

Offline eknori

  • @Notes Preisträger
  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re: Sortierung nach Datum - Teilstring in Mehrfachfeld
« Antwort #1 am: 06.05.11 - 11:18:17 »
 @Sort(list; [CustomSort]) ist dein Freund

Beispiel

list :=
"Ulrich Krause - 10" :
"Werner Motzet - 37" :
"Tim Pistor - 9" :
"Thomas Schulte - 9" :
"Thomas Bahn - 13" :
"Julian Buss - 6" :
"Andreas Schulte (IBM) - 27";

list := @Sort(list; [CustomSort];
@ToNumber(@Trim(@RightBack($A;" - ")))
<= @ToNumber(@Trim(@RightBack($B; " - "))));

@Prompt([Ok]; ""; @Implode(list; @Char(10)))

Sortiert die Liste nach der Zahl.
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Bastel123

  • Senior Mitglied
  • ****
  • Beiträge: 355
  • Geschlecht: Männlich
Re: Sortierung nach Datum - Teilstring in Mehrfachfeld
« Antwort #2 am: 06.05.11 - 11:23:29 »
Ich würde das Feld so berechnen:
Als erstes das Datum (umgewandelt in das Format "JJJJ-MM-TT"), dahinter Personalnummer und Art. Darum noch ein @Sort.

Sollte funktionieren.

Sebastian  
Gruß Sebastian
-----------------------------------------------------
Kaum macht man's richtig, schon funktioniert's.

Offline marschul

  • Senior Mitglied
  • ****
  • Beiträge: 280
  • Geschlecht: Männlich
Re: Sortierung nach Datum - Teilstring in Mehrfachfeld
« Antwort #3 am: 06.05.11 - 11:26:28 »
Folgende Formel auf die Schnelle gebaut (noch nicht optimiert, da div. Berechnungen mehrfach, aber dürfte funzen):

Code
_tmpWert := @Sort(@Right(@Word(Eingabe; "~"; 2); 4) + @Middle(@Word(Eingabe; "~"; 2); 3;2) + @Left(@Word(Eingabe; "~"; 2); 2) + "~" + @Word(Eingabe; "~"; 1) + "~" + @Word(Eingabe; "~"; 3));

@Word(_tmpWert; "~"; 2) + "~" + @Right(@Word(_tmpWert; "~"; 1); 2) + "." + @Middle(@Word(_tmpWert; "~"; 1); 4; 2) + "." + @Left(@Word(_tmpWert; "~"; 1); 4) + "~" + @Word(_tmpWert; "~"; 3)

EDIT: Der Name "Eingabe" im Beispiel repräsentiert den Inhalt in "MeinFeld" aus dem Ursprungs-Post.
« Letzte Änderung: 06.05.11 - 11:30:26 von marschul »
Gruß
Marco

Ich, der ich weiß, mir einzubilden, dass ich weiß, nichts zu wissen, weiß, dass ich nichts weiß. (Sokrates)
Keiner ist unnütz, er kann immer noch als schlechtes Beispiel dienen. (unbekannt)

Offline cebolina

  • Senior Mitglied
  • ****
  • Beiträge: 386
  • Geschlecht: Männlich
Re: Sortierung nach Datum - Teilstring in Mehrfachfeld
« Antwort #4 am: 06.05.11 - 11:35:37 »
Danke für die Rückmeldungen (wußte doch, dass man sich auf Euch verlassen kann;-))

@eknori
Mit @Sort habe ich experimentiert, aber nicht zum fliegen bekommen.

@Babstel123
Gute Idee, so werde ich es machen.

Danke
Stefan
Server: Lotus Domino 9.0.1FP4 HF70
Client: Release 9.0.1FP6

Offline eknori

  • @Notes Preisträger
  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re: Sortierung nach Datum - Teilstring in Mehrfachfeld
« Antwort #5 am: 06.05.11 - 11:44:45 »
list :=
"004711~01.03.2011~Urlaub":
"004711~02.03.2011~Urlaub":
"004711~10.04.2011~Krank":
"004711~11.04.2011~Krank":
"004711~20.03.2011~Freizeit":
"004711~21.03.2011~Freizeit";
list := @Sort(list; [CustomSort];
@ToTime(@Word($A;"~";2))
=> @ToTime(@Word($B; "~";2)));

@Prompt([Ok]; ""; @Implode(list; @Char(10)))
« Letzte Änderung: 06.05.11 - 11:49:26 von eknori »
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline marschul

  • Senior Mitglied
  • ****
  • Beiträge: 280
  • Geschlecht: Männlich
Re: Sortierung nach Datum - Teilstring in Mehrfachfeld
« Antwort #6 am: 06.05.11 - 11:55:09 »
@Ulrich: Wow - das habe ich gleich mal ausprobiert und es klappt sogar (absteigend sortiert) ;)

Das mit $A & $B kannte ich noch nicht und ehrlich geschrieben: ich kapiers auch nicht und in der Hilfe hab ich nix dazu gefunden  ??? Wo gibt's denn Infos dazu?


EDIT: Frage zurückgezogen, hab's in der Hilfe zu @Sort gefunden  :D
Gruß
Marco

Ich, der ich weiß, mir einzubilden, dass ich weiß, nichts zu wissen, weiß, dass ich nichts weiß. (Sokrates)
Keiner ist unnütz, er kann immer noch als schlechtes Beispiel dienen. (unbekannt)

Offline cebolina

  • Senior Mitglied
  • ****
  • Beiträge: 386
  • Geschlecht: Männlich
Re: Sortierung nach Datum - Teilstring in Mehrfachfeld
« Antwort #7 am: 06.05.11 - 12:57:14 »
@eknori
Danke. Jetzt kann ich die Formel auch nachvollziehen.

Stefan
Server: Lotus Domino 9.0.1FP4 HF70
Client: Release 9.0.1FP6

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.885
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Sortierung nach Datum - Teilstring in Mehrfachfeld
« Antwort #8 am: 06.05.11 - 14:47:30 »
Auszug aus den Examples zum Befehl @Sort aus der Designerhilfe...

@Sort(pswd1:pswd2:pswd3;[CUSTOMSORT];@If(@PasswordQuality($A) < @PasswordQuality($B);@True;@PasswordQuality($A) > @PasswordQuality($B);@False;@False))

Auszug aus der Hilfe zu @Sort:

customSortExpression
Formula. Required when the [CUSTOMSORT] keyword is specified. A formula that uses the temporary variables $A and $B to compare the values of elements in the list two at a time. Return @True or a number greater than 0 to specify that $A is greater than $B. Return @False or a number less than or equal to 0 to specify that $B is greater than $A.
An error is produced if the return value is a data type other than a number.
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline cebolina

  • Senior Mitglied
  • ****
  • Beiträge: 386
  • Geschlecht: Männlich
Re: Sortierung nach Datum - Teilstring in Mehrfachfeld
« Antwort #9 am: 06.05.11 - 15:48:16 »
@Tode
Die Hilfe zu @Sort habe ich sehr wohl gelesen - aber halt nicht verstanden ;-)
Server: Lotus Domino 9.0.1FP4 HF70
Client: Release 9.0.1FP6

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.885
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Sortierung nach Datum - Teilstring in Mehrfachfeld
« Antwort #10 am: 06.05.11 - 17:59:02 »
die Antwort war auch für marschul...
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz