Autor Thema: Stringarray in ein Datumsfeld einfügen und konvertieren  (Gelesen 2992 mal)

Offline Legolas

  • Senior Mitglied
  • ****
  • Beiträge: 446
  • Geschlecht: Männlich
Hallo Forum,

kann mir jemand sagen, wie man am einfachsten ein String-Array mit Datumswerten in ein Doc-Feld einfügt und dieses dann den Datentyp "Datetime" erhält?
Das Doc-Feld ist bereits vorhanden und hat schon diesen Datentyp.

Grüße
Bernd
 
Arbeite klug, nicht hart.

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: Stringarray in ein Datumsfeld einfügen und konvertieren
« Antwort #1 am: 18.02.11 - 12:45:00 »
Hallo,

Wie kommen denn die Werte in den "String-Array"?


Andreas

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: Stringarray in ein Datumsfeld einfügen und konvertieren
« Antwort #2 am: 18.02.11 - 12:46:00 »
Zitat
ein String-Array mit Datumswerten
Widerspricht sich das nicht? Ich denke du meinst sowas
Code
Dim arr(1) as NotesDateTime
set arr(0) = new NotesDateTime(...)
set arr(1) = new NotesDateTime(...)
call doc.replaceItemValue("Feld", arr)

Evtl geht auch ein
Code
Dim arr(1) as variant
arr(0) = dateNumber(...)
arr(1) = Today
call doc.replaceItemValue("Feld", arr)

Gruß
Roland
Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: Stringarray in ein Datumsfeld einfügen und konvertieren
« Antwort #3 am: 18.02.11 - 12:51:19 »
Zitat
ein String-Array mit Datumswerten
Widerspricht sich das nicht? Ich denke du meinst sowas
Code
Dim arr(1) as NotesDateTime
set arr(0) = new NotesDateTime(...)
set arr(1) = new NotesDateTime(...)
call doc.replaceItemValue("Feld", arr)

Gruß
Roland

Ich kann mir ehrlich gesagt nicht vorstellen, dass das funktionieren wird.

Du hast hier ja in jeden Array-Element ein Objekt der Klasse NotesDateTime.

Und das willst Du in ein Item schreiben.  ???


Andreas

Offline Legolas

  • Senior Mitglied
  • ****
  • Beiträge: 446
  • Geschlecht: Männlich
Re: Stringarray in ein Datumsfeld einfügen und konvertieren
« Antwort #4 am: 18.02.11 - 13:21:24 »
Hallo Andreas,

zeurstmal danke für die prompte Rückmeldung.

Zur Situation:
Es handelt sich hierbei um eine alte NotesDB die ein Textfeld beinhaltet.
In diesem Feld setehen die Datumswerte als Text natürlich.

Ich möchte nun eine Funktion schreiben, die diese Testdatumswerte in eine korrektes Feld vom Typ datetime verschiebt.

Das Array sieht z.b. wie folgt aus:

"12.01.1970"
"23.06.2001"
"11.02.2003"
usw.





Arbeite klug, nicht hart.

Offline marschul

  • Senior Mitglied
  • ****
  • Beiträge: 280
  • Geschlecht: Männlich
Re: Stringarray in ein Datumsfeld einfügen und konvertieren
« Antwort #5 am: 18.02.11 - 13:22:56 »
Meines Wissens gehen Datumslisten für eine Zuweisung an ein Feld nur über den Variablentyp Variant.
Sollten die Daten wirklich als Strings vorliegen, müsste die Variant-Variable (Array bei mehreren Werten) über die CDat-Funktion mittels Schleife aufgebaut und anschließend dem Feld zugewiesen werden.
Alternative: Wenn sich das Thema im Frontenddokument (Bearbeitungszustand) abspielt, geht auch ein FieldSetText mit vorigem Join auf das Array und als Trennzeichen das, was im Feld für Mehrfachwerte definiert ist.

Gruß
Marco
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 koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Stringarray in ein Datumsfeld einfügen und konvertieren
« Antwort #6 am: 18.02.11 - 13:33:39 »
Möglich ware auch ein Evaluate ("@TextToTime ...).

Um die Schleife kommt man aber trotzdem nicht herum, da man vorher (mit Isdate) prüfen muss, ob die einzelnen Stringwerte auch wirklich Datums-/Zeitwerte darstellen.

HTH,
Bernhard

Offline Legolas

  • Senior Mitglied
  • ****
  • Beiträge: 446
  • Geschlecht: Männlich
Re: Stringarray in ein Datumsfeld einfügen und konvertieren
« Antwort #7 am: 18.02.11 - 14:18:27 »
Hallo Zusammen,

habe eine Schleife über das Array mit der CDAT() Funktion gemacht und dem Feld dann zugewiesen.
Das tut was es soll!

Danke für die Hilfe
Bernd
Arbeite klug, nicht hart.

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: Stringarray in ein Datumsfeld einfügen und konvertieren
« Antwort #8 am: 18.02.11 - 17:22:00 »

Ich kann mir ehrlich gesagt nicht vorstellen, dass das funktionieren wird.

Du hast hier ja in jeden Array-Element ein Objekt der Klasse NotesDateTime.

Und das willst Du in ein Item schreiben.  ???


Andreas

Ja das funktioniert, steht auch genau so in der Designerhilfe:
Zitat
Array of Variant of type DATE, array of NotesDateTime, or array of NotesDateRange

Gruß
Roland
Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: Stringarray in ein Datumsfeld einfügen und konvertieren
« Antwort #9 am: 21.02.11 - 07:35:33 »
Wo?


Andreas

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz