Autor Thema: Serialisierte Liste nach Datum sortieren  (Gelesen 12392 mal)

Offline bikerboy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.155
  • Geschlecht: Männlich
Serialisierte Liste nach Datum sortieren
« am: 02.02.09 - 16:41:45 »
Hallo...

also wie oben schon beschrieben.... Ich habe eine Liste mit serialisierten Strings.

Diese muss ich nun nach dem Datum und der Uhrzeit sortieren, die in der Liste vorhanden sind.

Leider finde ich keinen richtigen Ansatz. Meiner sah erstmal so aus .

_sortedList := @Sort(@TextToTime(@Middle(_unsortedList )));

@Transform(_sortedList ; "_key";
 @Transform( _unsortedList ; "_pos"  ;
  @Do(
   @if(@Middle(_pos) = _key ; _newList := _pos ; "")
  )
 )
)


Wie würdet ihr an meiner Stelle vorgehen ?

Das Problem ist, dass die Dinger auch noch numeriert werden müssen. Aber wenn ich erstmal nen Ansatz habe sollte ich das gewuppt kriegen, wie immer werde ich es noch weiter versuchen und mich melden, falls mir was cooles eingefallen ist.
Robert Kreutzer

Anwendungsentwicklung

"Jeder Idiot kann was kompliziertes bauen, es Bedarf eines Genie für etwas einfaches"

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: Serialisierte Liste nach Datum sortieren
« Antwort #1 am: 02.02.09 - 16:56:59 »
Ich würde das in LotusScript schreiben,
da bekommt man ja Kopfweh  ::)
Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

Offline bikerboy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.155
  • Geschlecht: Männlich
Re: Serialisierte Liste nach Datum sortieren
« Antwort #2 am: 02.02.09 - 17:04:26 »
Skript is nicht.... gute alte (@Functions)Schule is erwünscht
Robert Kreutzer

Anwendungsentwicklung

"Jeder Idiot kann was kompliziertes bauen, es Bedarf eines Genie für etwas einfaches"

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: Serialisierte Liste nach Datum sortieren
« Antwort #3 am: 02.02.09 - 17:33:50 »
Zeig uns doch mal die Liste ....
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline bikerboy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.155
  • Geschlecht: Männlich
Re: Serialisierte Liste nach Datum sortieren
« Antwort #4 am: 02.02.09 - 17:50:03 »
Oder gleich die Lösung :

Code
_dLim1 := "|";
_dlim2 := "~"; 
_dlim5 := "|#|"; 
REM {Sortieren und neu numerieren};
_unsortedList := <FieldName>
_sortedList := @Sort(@TextToTime(@Left(@Right(_unsortedList;_dLim1 + "StartDate" + _dLim2);_dLim1) + " " + @Left(@Right(_unsortedList;_dLim1 + "StartTime" + _dLim2);_dLim1))); 

@Transform(_sortedList ; "_key" ; 
	@Transform(_unsortedList ; "_position"; 
		@Do(	_posKey := @TextToTime(@Left(@Right(_position;_dLim1 + "StartDate" + _dLim2);_dLim1) + " " + @Left(@Right(_position;_dLim1 + "StartTime" + _dLim2);_dLim1));
			@If( _posKey = _key ; 
				@Do(
					_newSortedList := _newSortedList : (@Text(@Elements(_newSortedList) + 1) + _dLim5 + @Right(_position ; _dLim5))
				)
				;""
			)
		)
	)
);

FIELD <FieldName> := @Trim(_newSortedList)

Schönen Abend noch.....

Bin auch für kompaktere Lösungen zu haben
Robert Kreutzer

Anwendungsentwicklung

"Jeder Idiot kann was kompliziertes bauen, es Bedarf eines Genie für etwas einfaches"

Offline guesswho

  • Senior Mitglied
  • ****
  • Beiträge: 291
Re: Serialisierte Liste nach Datum sortieren
« Antwort #5 am: 02.02.09 - 17:56:26 »
Zitat
Skript is nicht.... gute alte (@Functions)Schule is erwünscht

warum ?!  :o

ist ja ein Mega-Stunt...muss das möglichst kompliziert sein, oder warum  ???

wenn ich jetzt grad so an den anderen Fred denke, dann kommen wohl die 90er wieder...  ;D

Jo
5 Server 9.x auf W2K3/W2K8
ca. 550 Clients: 9.x auf Win7
Notes Traveler
iQ.Suite
BCC Charon 4
panagenda Marvel Client
BES 10/12 und viele Blackberrys
paar iPad und iPhones
Teamstudio

Offline bikerboy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.155
  • Geschlecht: Männlich
Re: Serialisierte Liste nach Datum sortieren
« Antwort #6 am: 02.02.09 - 18:22:07 »
Öhhh einfach weil ich es will,

und in skript is es bestimmt auch nicht einfacher.

Und so kompliziert ist es doch gar nicht.
Robert Kreutzer

Anwendungsentwicklung

"Jeder Idiot kann was kompliziertes bauen, es Bedarf eines Genie für etwas einfaches"

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: Serialisierte Liste nach Datum sortieren
« Antwort #7 am: 02.02.09 - 18:27:46 »
Kannst du trotzdem einfach mal deine Ausgangsliste und dein gewünschtes Ergebnis posten.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline guesswho

  • Senior Mitglied
  • ****
  • Beiträge: 291
Re: Serialisierte Liste nach Datum sortieren
« Antwort #8 am: 02.02.09 - 18:33:06 »
Zitat
Öhhh einfach weil ich es will
ok, akzeptiert

Zitat
und in skript is es bestimmt auch nicht einfacher
doch  ;D

Zitat
Und so kompliziert ist es doch gar nicht.
doch, wohl  >:(

ich sags so: für mich wär das nix  >:D

aber das will nix heissen
Jo


5 Server 9.x auf W2K3/W2K8
ca. 550 Clients: 9.x auf Win7
Notes Traveler
iQ.Suite
BCC Charon 4
panagenda Marvel Client
BES 10/12 und viele Blackberrys
paar iPad und iPhones
Teamstudio

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: Serialisierte Liste nach Datum sortieren
« Antwort #9 am: 02.02.09 - 18:33:24 »
... Und so kompliziert ist es doch gar nicht....
Warum dann die Fragen ...  ???
Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

Offline bikerboy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.155
  • Geschlecht: Männlich
Re: Serialisierte Liste nach Datum sortieren
« Antwort #10 am: 02.02.09 - 18:44:44 »
Liste poste ich morgen auf Arbeit
Robert Kreutzer

Anwendungsentwicklung

"Jeder Idiot kann was kompliziertes bauen, es Bedarf eines Genie für etwas einfaches"

Offline bikerboy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.155
  • Geschlecht: Männlich
Re: Serialisierte Liste nach Datum sortieren
« Antwort #11 am: 03.02.09 - 08:12:09 »
So hier nun die Liste :

"1|#||Route~Paderborn - Lippstadt Paderborn|StartDate~01.02.2006|StartTime~08:00:00|EndTime~15:00:00|
"2|#||Route~Paderborn - Hannover- Paderborn|StartDate~10.02.2006|StartTime~06:15:00|EndTime~00:00:00|
"3|#||Route~Paderborn - Hannover- Paderborn|StartDate~11.02.2006|StartTime~00:00:00|EndTime~21:00:00|
"4|#||Route~Paderborn - Hannover- Paderborn|StartDate~13.02.2006|StartTime~06:00:00|EndTime~00:00:00|
"5|#||Route~Paderborn - Hannover- Paderborn|StartDate~14.02.2006|StartTime~00:00:00|EndTime~21:00:00|
« Letzte Änderung: 03.02.09 - 12:33:37 von bikerboy »
Robert Kreutzer

Anwendungsentwicklung

"Jeder Idiot kann was kompliziertes bauen, es Bedarf eines Genie für etwas einfaches"

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: Serialisierte Liste nach Datum sortieren
« Antwort #12 am: 03.02.09 - 08:38:09 »
Ziehe Dir die Liste von Datum & Uhrzeit raus. Bastel dir daraus eine Liste von der Art JahrMonatTag-StundeMinute zusammen. Addiere die 2 Listen mit einem Trennzeichen, Sortiere die Liste, entferne wieder die Sortierhilfe.
Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

Offline bikerboy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.155
  • Geschlecht: Männlich
Re: Serialisierte Liste nach Datum sortieren
« Antwort #13 am: 03.02.09 - 09:06:09 »
So mache ich es doch. Nur dass ich die Beiden Listen nicht addiere, sondern ich eine Hilfsliste baue und dir mir als Vorgabe für die neue Liste gillt.
Robert Kreutzer

Anwendungsentwicklung

"Jeder Idiot kann was kompliziertes bauen, es Bedarf eines Genie für etwas einfaches"

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: Serialisierte Liste nach Datum sortieren
« Antwort #14 am: 03.02.09 - 09:11:29 »
Was war nochmal dein Problem?
Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: Serialisierte Liste nach Datum sortieren
« Antwort #15 am: 03.02.09 - 09:52:35 »
Die Liste ist dein Ergebnis. Oder? Die ursprüngliche Liste (dein Ausgangsmaterial) würde mich viel mehr interessieren.

Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline bikerboy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.155
  • Geschlecht: Männlich
Re: Serialisierte Liste nach Datum sortieren
« Antwort #16 am: 03.02.09 - 10:39:15 »
ja is in dem fall auch schon das ergebnis...

du kannst ja die daten einfach per hand ändern
Robert Kreutzer

Anwendungsentwicklung

"Jeder Idiot kann was kompliziertes bauen, es Bedarf eines Genie für etwas einfaches"

Offline bikerboy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.155
  • Geschlecht: Männlich
Re: Serialisierte Liste nach Datum sortieren
« Antwort #17 am: 03.02.09 - 12:34:35 »
hab die liste mal ein bisschen eingedampft....


andere Frage mit dem Code stosse ich doch auf nen Fehler, wenn ich 2 mal das selbe datum habe, oder ?
Robert Kreutzer

Anwendungsentwicklung

"Jeder Idiot kann was kompliziertes bauen, es Bedarf eines Genie für etwas einfaches"

Offline bikerboy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.155
  • Geschlecht: Männlich
Re: Serialisierte Liste nach Datum sortieren
« Antwort #18 am: 03.02.09 - 13:39:44 »
@jBubbleBoy

habe glaube erst jetzt verstanden , was du mir sagen wolltest.

Habe mal eine einfache list mit datum~wert genommen und durch @Sort() geschickt.

Das rennt ja einwandfrei.

Werde des gleich umbauen
Robert Kreutzer

Anwendungsentwicklung

"Jeder Idiot kann was kompliziertes bauen, es Bedarf eines Genie für etwas einfaches"

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: Serialisierte Liste nach Datum sortieren
« Antwort #19 am: 03.02.09 - 14:09:34 »
Also .....

Wenn ich deine Liste nehme (ich hab die Startdatum Werte etwas verändert) ...

|#||Route~Paderborn - Lippstadt Paderborn|StartDate~25.02.2006|StartTime~08:00:00|EndTime~15:00:00|

|#||Route~Paderborn - Hannover- Paderborn|StartDate~10.02.2006|StartTime~06:15:00|EndTime~00:00:00|

|#||Route~Paderborn - Hannover- Paderborn|StartDate~21.02.2006|StartTime~00:00:00|EndTime~21:00:00|

|#||Route~Paderborn - Hannover- Paderborn|StartDate~13.02.2006|StartTime~06:00:00|EndTime~00:00:00|

|#||Route~Paderborn - Hannover- Paderborn|StartDate~24.02.2006|StartTime~00:00:00|EndTime~21:00:00|

Und die durch deinen Code laufen lasse .....

Code
_dLim1 := "|";
_dlim2 := "~";
_dlim5 := "|#|";
REM {Sortieren und neu numerieren};
_unsortedList := SourceField;
_sortedList := @Sort(@TextToTime(@Left(@Right(_unsortedList;_dLim1 + "StartDate" + _dLim2);_dLim1) + " " + @Left(@Right(_unsortedList;_dLim1 + "StartTime" + _dLim2);_dLim1)));

@Transform(_sortedList ; "_key" ;
	@Transform(_unsortedList ; "_position";
		@Do(	_posKey := @TextToTime(@Left(@Right(_position;_dLim1 + "StartDate" + _dLim2);_dLim1) + " " + @Left(@Right(_position;_dLim1 + "StartTime" + _dLim2);_dLim1));
			@If( _posKey = _key ;
				@Do(
					_newSortedList := _newSortedList : (@Text(@Elements(_newSortedList) + 1) + _dLim5 + @Right(_position ; _dLim5))
				)
				;""
			)
		)
	)
);

FIELD SolutionBikerboy := @Trim(_newSortedList);


Dann kommt bei mir als Ergebnis diese Liste raus ....

1|#||Route~Paderborn - Hannover- Paderborn|StartDate~10.02.2006|StartTime~06:15:00|EndTime~00:00:00|

3|#||Route~Paderborn - Hannover- Paderborn|StartDate~13.02.2006|StartTime~06:00:00|EndTime~00:00:00|

4|#||Route~Paderborn - Hannover- Paderborn|StartDate~21.02.2006|StartTime~00:00:00|EndTime~21:00:00|

5|#||Route~Paderborn - Hannover- Paderborn|StartDate~24.02.2006|StartTime~00:00:00|EndTime~21:00:00|

6|#||Route~Paderborn - Lippstadt Paderborn|StartDate~25.02.2006|StartTime~08:00:00|EndTime~15:00:00|

Und ich denke mal das ist nicht das Ergebis das du da haben willst.

Das Problem das du da hast liegt hier ....
Code

@Do(
		@StatusBar(@Text(@Elements(_newSortedList) + 1));
		_newSortedList := _newSortedList : (@Text(@Elements(_newSortedList) + 1) + _dLim5 + @Right(_position ; _dLim5))
	)


Weil du beim ersten Durchlauf nämlich ZWEI Elemente von _newsortedlist erzeugst.

Außerdem hast du, zumindest mit der Liste die du uns da zur Verfügung gestellt hast noch ein anderes Problem ....

Schreib doch mal nach deinem Sort ein
Code
@StatusBar("SortedList");
@StatusBar(_sortedList);
Das gibt dir den Wert von _sortedList in die Statuszeile aus. Es würde mich sehr wundern, wenn du da etwas angezeigt bekommst.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz