Autor Thema: Eintrag im Feld CalendarDateTime ändern  (Gelesen 1311 mal)

Offline Bille

  • Senior Mitglied
  • ****
  • Beiträge: 258
  • Geschlecht: Weiblich
  • Ich kam, sah und ... staunte!
Eintrag im Feld CalendarDateTime ändern
« am: 06.03.07 - 11:50:47 »
Hallo!

Ich hab gerade festgestellt, dass in unserem Kalender heuer "Fronleichnam" und "Christi Himmelfahrt" auf den gleichen Tag fallen.  :o
Den falschen Eintrag der Feiertage im Adressbuch habe ich bereits berichtigt.

Bei den Kollegen, die die Feiertage bereits importiert haben, muss ich diesen Fehler natürlich ebenfalls korrigieren.

Dazu möchte ich ein Mail mit einem Button verschicken:

Code
	Dim Selektion As String
	Selektion = {FIELD form="Appointment" & FIELD Subject = "Fronleichnam"}
	Set col = db.FTSearch (Selektion, 0)        
	
	Set Datum1 = New NotesDateTime( "07/06/2007 00:00:01 AM" )

	Set doc = col.GetFirstDocument 
	While Not doc Is Nothing
		Dim x As Integer
		For x = 0 To 5
			If doc.CalendarDateTime(x) = "17.05.2007 0:00:01" Then	
				doc.CalendarDateTime(x) = Datum1   ' hier hakt es
			End If		
				Next
		
		Set doc = col.GetNextDocument(doc)
	Wend
	

Bei dem Versuch das Feld "CalenderDateTime" zu ändern, kommt der Fehler "Illegal use of property". Im Debugger wird dieses Feld bzw. die Liste der Einträge als Variant anzeigt. Also habe ich versucht einfach einen String ( "07.06.2007 0:00:01") zu übergeben, das hat leider auch nicht funktioniert.

Wie muss ich vorgehen, damit der Eintrag berichtigt wird?

Bille

PS: Das C&S Schema hab ich mir angesehen, konnte mein Problem allerdings nicht lösen.
« Letzte Änderung: 06.03.07 - 14:34:48 von Bille »
Experience is the name
everyone gives to his mistakes.
                                             (Oscar Wilde)

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Eintrag im Feld CalendarDateTime ändern
« Antwort #1 am: 06.03.07 - 12:11:52 »
Du kannst Items zwar als Array auslesen, aber nicht wieder so setzen.

Hole Dir CalendarDateTime in ein Variant.
Die Werte dort sind Variants vom Typ Date / Time - keine Strings.
Bilde mit Cdat oder Datenumber ein DT-Variant Deines Vergleichswertes.
Vergleiche die ganzzahligen (!) Teile des Arrays mit dem Vergleichswert.
Schreibe ggf. den zu ändernden Wert wieder ins Array.
Weise CalendarDateTime abschliessend wieder das Array zu, falls erforderlich.

Bernhard

Glombi

  • Gast
Re: Eintrag im Feld CalendarDateTime ändern
« Antwort #2 am: 06.03.07 - 12:35:56 »
Mal eine andere Frage: Wird das denn nicht korrigiert, wenn die User die Feiertage ein weiteres Mal einlesen. Ich meine dass ein Abgleich stattfindet.

Wenn es so ist, kannst Du ja eine Mail mit der Bitte um erneutes Einlesen der Feiertage senden - oder Du tust den Code aus dem Agenten in einen Button.

Andreas

Offline Bille

  • Senior Mitglied
  • ****
  • Beiträge: 258
  • Geschlecht: Weiblich
  • Ich kam, sah und ... staunte!
Re: Eintrag im Feld CalendarDateTime ändern
« Antwort #3 am: 06.03.07 - 13:25:27 »
Auf die Idee, die Feiertage erneut einzulesen, bin ich gar nicht gekommen. Wobei das eigentlich doch sehr nahe liegt. Werde ich auf jeden Fall gleich mal testen.

Ansonsten werde ich mir Bernhard's Vorschlag ansehen.

Vielen Dank Euch beiden schon mal für die Tipps!
Bille
Experience is the name
everyone gives to his mistakes.
                                             (Oscar Wilde)

Offline Bille

  • Senior Mitglied
  • ****
  • Beiträge: 258
  • Geschlecht: Weiblich
  • Ich kam, sah und ... staunte!
Re: Eintrag im Feld CalendarDateTime ändern
« Antwort #4 am: 06.03.07 - 14:34:39 »
Andreas, Du hattest recht.
Das erneute Importieren der Feiertage hat die fehlerhaften Einträge berichtigt.

Bille
 :D
Experience is the name
everyone gives to his mistakes.
                                             (Oscar Wilde)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz