Frage zu Mehrtägigem Kalendereintrag per LotusSkript -> CalendarDateTime

  • Hallo zusammen,


    ich verzweifel gerade am Kalendereintrag. Dank der Suchfunktion hab ich einiges dazu gefunden und es klappt auch schon alles bis auf das Feld CalendarDateTime


    Also ich möchte automaitsch Urlaubseinträge im Kalender erstellen, die Teilfunktion dafür sieht bisher so aus (siehe unten)



    Mein Problem ist das ich nur die Felder "Von" und "Bis" habe (z.B.
    Von = "31.08.2006"
    Bis = "10.09.2006"


    und daraus ja das CalendarDateTime mit mehreren Werten füllen muss damit das Dokument in meinem Kallender auch richtig angezeigt wird.


    Wie kann ich aus meinem Von Bis denn so ein Feld bekommen???


    31.08.2006 04:00:00 CEDT
    01.09.2006 04:00:00 CEDT
    02.09.2006 04:00:00 CEDT
    03.09.2006 04:00:00 CEDT
    04.09.2006 04:00:00 CEDT
    05.09.2006 04:00:00 CEDT
    06.09.2006 04:00:00 CEDT
    07.09.2006 04:00:00 CEDT
    08.09.2006 04:00:00 CEDT
    09.09.2006 04:00:00 CEDT
    10.09.2006 04:00:00 CEDT





    Danke!

    • Offizieller Beitrag

    schreib doch die Datumswerte in ein Array und das Array wird dann ins Feld geschrieben.


    array(0) = ndt1.LSLocalTime
    array(1) = ndt2.LSLocalTime
    array(2) = ndt3.LSLocalTime
    ...
    array(X) = ndtX.LSLocalTime
    doc.CalendarDateTime = array



    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • danke jetzt weiß ich schonmal wie ich das ganze in das feld bekomme...


    kann ich das array aber irgendwie gernerieren von beginn datum bis ende datum?


    Dankeschön!

  • Hm, ich versuche mal...


  • erstmal n grosses danke an alle!


    Zitat

    Mit einem gleich kannst du DateTimes nicht vergleichen. Dafür brauchst du die Methode TimeDifference der NotesDateTime Klasse.


    Bis ist ein String
    Und NotesDateTime.DateOnly liefert doch auch einen String zurück.



    Zitat

    Und Du willst, wie bereits mehrfach in anderen Threads erwähnt, das IBM Lotus Notes Calendaring & Scheduling Schema lesen.


    Das hab ich gedruckt neben mir. Habs in nem älteren post von dir gefunden, danke ;o)
    Aber zu dem Thema werd ich darin auch nicht schlauer ;o(


    Mein Skript geht dennoch nicht er bringt
    "Variant does not contains an object" in der Zeile
    Temp(i) = Set temp(i) = ndttmp.LSLocalTime


  • Tja jetzt leuchtet wieder mein "LotusSkript Noob" Tatoo auf der Stirn: Wie deklariere ich ein Array? Nicht als Variant?



  • Das Array temp ist falsch definiert. entweder ein Variant...dann kannst Du ihm ein Array uebergeben...oder es ist ein Array, dann aber nicht als Variant definieren.

  • Doch kannst du machen aber dann brauchst du ein Redim mit dem du die Anzahl der Elemente in dem Array festlegst.


    Wenn du dir mal die Designerhilfe unter Arrays anschaust, dann findest du da alle Infos dazu.
    Auch wie Arrays deklariert und initialisiert werden

  • Ich wuerde mir ja in dem Dokument ein verstecktes, berechnetes Feld erstellen, dass mit @explode mir die einzelnen Tage von der Zeitspanne hinterlegen. Dann musst Du da nicht mit Script Verrenkungen anstellen.


  • Jetzt steht in dem Arrry in jedem feld immer der höchste wert.
    hm... probiers mal mit immer einem new notesdatetime...

  • Es geht!


    Vielen vielen Dank an euch alle!!!




    • Offizieller Beitrag

    du schreibst ja auch nur ein Verweis auf das Objekt rein.


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • coole sache, was passiert denn bei euch, wenn ihr einen termin der serie anfasst und im kalender auf einen anderen tag verschiebt. bei mir wird leider aus allen einträgen (z.b. 10) nur noch einer. Genau der, auf den ich den Termin verschoben habe, dabei will ich doch nur einen Termin innerhalb der Serie verschieben.