Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: klaussal am 19.04.05 - 15:00:25

Titel: String nach Datum konvertieren
Beitrag von: klaussal am 19.04.05 - 15:00:25
Hi zusammen,

stehe heute etwas auf dem Schlauch.
Problem: bekomme beim Import drei String-Felder angeliefert, die das Datum (in der Form MM, TT, JJJJ) beinhalten. Daraus soll ein Feld vom Typ Datum/Zeit gebaut werden (ohne Zeitangabe).
Meine bisherigen Versuche mit Cdat, etc waren ein Satz mit x.
Wie geht's  ???

klaus
Titel: Re: String nach Datum konvertieren
Beitrag von: Axel am 19.04.05 - 15:03:28
Hi,

versuch's mal mit

datum = DateValue(DatumalsString)


Axel
Titel: Re: String nach Datum konvertieren
Beitrag von: Driri am 19.04.05 - 15:04:58
Oder Alternativ mit

DateNumber ( year , month , day )

Allerdings müssen year, month und day dann als Zahl übergeben werden.
Titel: Re: String nach Datum konvertieren
Beitrag von: klaussal am 19.04.05 - 15:05:48
@AXel,

gleiches Ergebnis, hinter dem Datum steht immer 00:00:00 CEDT  :'(
Titel: Re: String nach Datum konvertieren
Beitrag von: koehlerbv am 19.04.05 - 15:07:26
DateValue würde dann nur auf einem englischen Client funktionieren.

DateNumber wäre richtig - vorher ist der String entsprechend auseinanderzunehmen (Mit Instr Kommaposition ermitteln, bis dorthin Left$, dann mit Mid$ den verbleiben Teil ausschnippeln - bis man alle Werte hat).

Bernhard

PS: Den Zeitwert bekommst Du allerdings kostenlos mitgeliefert in LS.
Titel: Re: String nach Datum konvertieren
Beitrag von: klaussal am 19.04.05 - 15:15:40
@bernhard,

ich will aber keine Zeit, weil in einer Ansicht nur das Datum dargestellt werden soll...
Titel: Re: String nach Datum konvertieren
Beitrag von: Glombi am 19.04.05 - 15:15:47
Solche Zeitwerte haue ich mit Formelsprache weg, die manchmal gegenüber Script echt besser ist  ;)

In Script sähe der Aufruf dann so aus:
dim ret_eval as variant
... set doc ...
... set mit DateNumber oder sonstwie  den Wert...
ret_eval = Evaluate( |FIELD DeinFeld := @Date(DeinFeld);@True| ,doc)

Andreas
Titel: Re: String nach Datum konvertieren
Beitrag von: klaussal am 19.04.05 - 15:19:23
@Andreas,

und wie sieht der Inhalt von "DeinFeld" aus ?
Titel: Re: String nach Datum konvertieren
Beitrag von: koehlerbv am 19.04.05 - 15:22:51
Es ist DEIN Feld, Klaus - eines Deiner Wahl, das Du vorher mit DateNumber gefüllt hast.

Bernhard
Titel: Re: String nach Datum konvertieren
Beitrag von: Glombi am 19.04.05 - 15:24:53
@Andreas,

und wie sieht der Inhalt von "DeinFeld" aus ?
vorher so:
19.04.2005 00:00:00 CEDT 
und danach so:
19.04.2005
 ;D

Andreas
Titel: Re: String nach Datum konvertieren
Beitrag von: klaussal am 19.04.05 - 15:40:48
Code
Dim wrk00 As Variant
Dim wrk01 As Long
Dim wrk02 As Long
Dim wrk03 As Long
Dim ret_eval As Variant

wrk01 = Clng(temp5) <-- Tag / TT
wrk02 = Clng(temp6) <-- Monat /MM
wrk03 = Clng(temp7) <-- Jahr /JJJJ	
		
wrk00 = Datenumber(wrk03, wrk02, wrk01)
		
If wrk00 = 0 Then
	doc.geb_datum = ""
Else			
	ret_eval = Evaluate( |FIELD wrk00 := @Date(wrk00);@true |, doc)
		doc.geb_datum = wrk00
End If

wo steckt hier der doofe Fehler ?
Titel: Re: String nach Datum konvertieren
Beitrag von: Glombi am 19.04.05 - 15:45:04
Das Feld ist noch nicht gesetzt:

Dim wrk00 As Variant
Dim wrk01 As Long
Dim wrk02 As Long
Dim wrk03 As Long
Dim ret_eval As Variant

wrk01 = Clng(temp5) <-- Tag / TT
wrk02 = Clng(temp6) <-- Monat /MM
wrk03 = Clng(temp7) <-- Jahr /JJJJ

wrk00 = Datenumber(wrk03, wrk02, wrk01)

If wrk00 = 0 Then
doc.geb_datum = ""
Else
doc.geb_datum  = wrk00
ret_eval = Evaluate( |FIELD geb_datum := @Date(geb_datum );@true |, doc)
End If

Andreas
Titel: Re: String nach Datum konvertieren
Beitrag von: koehlerbv am 19.04.05 - 15:45:12
If wrk00 = 0 Then
doc.geb_datum = ""
Else
doc.Geb_datum = wrk00
ret_eval = Evaluate( |FIELD wrk00 := @Date(Geb_datum)|, doc)
End If

Bernhard
Titel: Re: String nach Datum konvertieren
Beitrag von: klaussal am 19.04.05 - 15:47:04
@Bernhard,

danke  ;)
Bin heute dermassen "zu" mit Anfragen, Ändg. etc, dass ich total vernagelt bin. Werde wohl gleich Feierabend machen..

klaus
Titel: Re: String nach Datum konvertieren
Beitrag von: koehlerbv am 19.04.05 - 15:49:43
He, Andreas war aber 8 Sekunden schneller  ;D

Bernhard