Autor Thema: Date/Time in Script  (Gelesen 1556 mal)

Offline eirinn

  • Frischling
  • *
  • Beiträge: 8
  • Geschlecht: Männlich
  • As I said before - I never repead myself!
Date/Time in Script
« am: 08.11.02 - 17:57:55 »
Hallo,

ich habe folgendes Problem in LS:

In einer Maske ist ein Feld "TimeRange"; Typ: Date/Time;
Mehrfachwerte erlaubt
Angezeigt werden sollen nur Zeiten ( 15:00 - 16:30 )

Jetzt muss ich das Feld per Script setzen, wenn ein Dokument importiert wird.
Habe das mal so probiert:
  Dim dateRange As NotesDateRange
  Dim dateTime1 As New NotesDateTime( "31.12.2002 "
  + Cstr( doc.Von(0) ) )
  Dim dateTime2 As New NotesDateTime( "31.12.2002 "
  + Cstr( doc.Bis(0) ) )
  Set dateRange = ses.CreateDateRange()
  Set dateRange.StartDateTime = dateTime1
  Set dateRange.EndDateTime = dateTime2
  docNew.TimeRange = dateRange.Text

doc.Von(0) bzw. doc.Bis(0) ist vom Typ Date/Time
(Auch wenn ich mit Texten arbeite ("15:00:00") funktioniert das nicht)

Das Feld ist jetzt zwar gefüllt mit z.B.: 15:00:00 - 16:30:00 aber leider als Text

Wie schaffe ich es, dass das Feld hinterher vom Typ Date/Time ist und mir die Werte im Dokument auch über den Datepicker richtig angezeigt werden???

Offline Performance

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.096
  • Geschlecht: Männlich
  • I love YaBB 1G - SP1!
Re:Date/Time in Script
« Antwort #1 am: 09.11.02 - 12:21:32 »
Das Textfeld ist ja ok, weil bei einer Hintergrundaktion die neu zugewiesenen Felder den Typ des Zuweisenden erhalten.

Der Datepicker erscheint wenn du in den properties Style=native OS style angibst.(bei allow multiple values)

Du hast das Objekt vom Typ DatumTimeRange schon erzeugt, also musst du es nur noch dem Feld TimeRange zuweisen.
Bei einem neuen dok das noch nicht gespeichert wurde ist grundsätzlich mit Items zu arbeiten.

also ganz einfach:

Dim item As NotesItem
Set item = New NotesItem( docNew, "TimeRange", dateRange)

docNew.save True, False

(item erhält den Typ des Objektes -- DateRange)

cu
Wir können alles außer hochdeutsch !

Alles ist möglich, es ist nur eine Frage der Zeit oder des Geldes!

Offline Performance

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.096
  • Geschlecht: Männlich
  • I love YaBB 1G - SP1!
Re:Date/Time in Script
« Antwort #2 am: 09.11.02 - 12:37:48 »
ein Nachtrag

wenn du in den properties nur "Dosplay Time"  anklickst dann soll auch nur der Zeitrange übergeben werden.

Dim dateTime1 As New NotesDateTime( Cstr( doc.Von(0) ) )

cu
Wir können alles außer hochdeutsch !

Alles ist möglich, es ist nur eine Frage der Zeit oder des Geldes!

Offline eirinn

  • Frischling
  • *
  • Beiträge: 8
  • Geschlecht: Männlich
  • As I said before - I never repead myself!
Re:Date/Time in Script
« Antwort #3 am: 11.11.02 - 10:28:10 »
Danke für den schnelle Tip!

Mein Code sieht jetzt so aus:
   Dim dateRange As NotesDateRange
   Dim dateTime1 As New NotesDateTime( Cstr( docNEW.Von(0) ) )
   Dim dateTime2 As New NotesDateTime( Cstr( docNEW.Bis(0) ) )
   Set dateRange = ses.CreateDateRange()
   Set dateRange.StartDateTime = dateTime1
   Set dateRange.EndDateTime = dateTime2
   Dim item As NotesItem
   Set item = New NotesItem( docNEW, "TimeRange", dateRange)

Die Properties des Feldes zeigen mir nach dem Import folgendes an:
Field Name: TimeRange
Data Type: Time/Date List or Range
Data Length: 20 bytes
Seq Num: 1
Dup Item ID: 0
Field Flags: SUMMARY

30.12.1899 15:30:00 CET
30.12.1899 18:05:00 CET

Darstellung in dem geöffneten Dokument:
15:30, 18:05 anstatt: 15:30 - 18:05
Feldeinstellungen sind auf Time only!

Hast Du da noch eine Idee?

Ciao

Offline eirinn

  • Frischling
  • *
  • Beiträge: 8
  • Geschlecht: Männlich
  • As I said before - I never repead myself!
Re:Date/Time in Script
« Antwort #4 am: 11.11.02 - 10:36:13 »
Nachtrag:

Dummer Fehler, ganz dummer Fehler!!!

Es funktioniert! Ich hatte noch ein Codefragment übersehen.

Vielen Dank für die Hilfe!!!

Ciao

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz