Kalendereinträge

  • Das geht zwar ohne Fehlermeldung, aber es wird wieder nur der erste Tag eingetragen.
    Ich hätte nicht gedacht, daß das so schwierig ist. Vielleicht muß ich doch für jeden Tag ein neues Document anlegen....
    Aber vielen Dank für Eure Bemühungen!

  • Hab mir grad mal den Wert von ndt_datum_von.TimeDifference(ndt_datum_bis) anzeigen lassen. Der steht auf -244799. Also wird gar nicht in die Schleife reingegangen.

  • Ups, das muss natürlich gerade umgekehrt abgeprüft werden.
    War ein Schreibfehler meinerseits


    dt1.TimeDifference(dt2) gibt den Unterschied in Sekunden der beiden Zeiten zurück und zwar dt1-dt2.
    Liegt dt2 nach dt1 ist dieses größer und der Wert natürlich negativ

  • Hab es jetzt umgedreht:


    While ndt_datum_bis.TimeDifference(ndt_datum_von) > 0


    jetzt wird in die Schleife zwar reingegangen, aber sobald i = 1 ist kommt die Fehlermeldung: "Subsript out of Range".
    Es ist zum Verzweifeln.

    • Offizieller Beitrag

    so bin jetzt wieder da ...
    da fehlt noch ein

    Code
    Redim preserve ndt_datum_bis(Ubound(ndt_datum_bis) + 1)
    • Offizieller Beitrag

    ersetze mal die While Schleife durch

    Code
    While ndt_datum_von < ndt_datum_bis
    Redim preserve ndt_CalendarDateTime(Ubound(ndt_CalendarDateTime) + 1)
    ndt_CalendarDateTime(Ubound(ndt_CalendarDateTime)) = ndt_datum_von.LSLocalTime
    Call ndt_datum_von.AdjustDay(1)
    Wend


    Gruß
    Dirk

    • Offizieller Beitrag

    Sorry hatte ich beim kopieren vergessen einzufügen.

    Code
    While ndt_datum_von.LSLocalTime < ndt_datum_bis.LSLocalTime
  • Hallo Leute!
    Im Team funktionierts!!!!!
    Ich hab jetzt mal Eure Tipps kombiniert:


    i = 0
    While ndt_datum_bis.TimeDifference(ndt_datum_von) > 0
    Redim Preserve
    ndt_CalendarDateTime(Ubound(ndt_CalendarDateTime) + 1)
    ndt_CalendarDateTime(Ubound(ndt_CalendarDateTime)) =
    ndt_datum_von.LSLocalTime
    Call ndt_datum_von.AdjustDay(1)
    Wend


    Das geht !!!!!
    Vielen tausend DANK!!! :)

  • das war ja spannend :)


    kewy1



    hab alles mal nachgespielt und hatte dann das Startdatum doppelt in "CalendarDateTime" - Du auch?
    Hab dann einfach "Call ndt_datum_von.AdjustDay(1)" gleich nach dem "Redim ...." eingesetzt...


    MfG
    Sven

    • Offizieller Beitrag

    taurec


    Probleme mit den LSLocalTime hatten wir auch mal. Es lag an falschen Zeiteinstellungen auf den Clients.
    Der Fehler trat nur auf, wenn die Zeitfelder auf verschiedenen Clients mit unterschiedlichen GMT verändert wurden oder wenn eine Zeit per Agent gesetzt wurde. Ist dies der Fall, dann geht LSLocalTime, LSGMTTime und auch TimeDifference in die Hose.


    Gruß
    Dirk

  • Dann ist es klar dass bei allen Varianten Probleme auftauchen.
    Ich hatte mich aber darauf bezogen wenn die Daten alle korrekt eingetragen wurden.
    Da haben wir es schon erlebt dass bei LSLocalTime,... sehr seltsame Effekte aufgetreten sind. Haben wir dagegen TimeDifference verwendet gab es diese Probleme nicht mehr

  • Hallo!
    Da bin ich wieder. Hab nämlich jetzt ein anderes Problemchen mit meinen Kalendereinträgen.
    Ich hab das (jetzt funktionierende) Script in einen Agenten gepackt, der aufgerufen wird, sobald der Urlaubs-/ Reiseantrag genehmigt wird. Das Problem ist jetzt, daß der Urlaub ja vom Vorgesetzten genehmigt wird und nun werden die Termine in der MailDb des Vorgesetzten eingetragen. :(
    Das Script, das ich jetzt habe, hat folgende Mail-DB Zuweisung:


    rc = Evaluate (|@MailDbName|)
    Set db = session.GetDatabase(rc(0), rc(1))


    Wie kann ich denn die Mail-DB des Authors des Urlaubsantrags zuweisen ????
    Habt ihr ´nen Tipp?

    • Offizieller Beitrag

    Du kannst im öffentlichen Adressbuch nach der MailDb suchen.
    Einfacher ist es im Script ein Feld mit dem Server und eins mit der Mail-DB des Users zu hinterlegen. Beachte, dass der Vorgesetzte dann aber Rechte zum Erstellen eines Kalendereintrages in der DB des Antragstellers benötigt.


    Gruß
    Dirk

  • Im Script? Das wird ja erst ausgeführt, wenn der Vorgesetzte das Dokument im Zugriff hat.
    Oder meinst Du ein verstecktes Feld im Dokument, wo ich den Mail-Db-Namen des Erstellers speichere und hinterher im Script wieder auslese?
    Das mit den Rechten ist auch ein guter Hinweis. Das muß ich mal klären.
    Danke!

    • Offizieller Beitrag

    ja genau so habe ich es gemeint. Beim Stellen des Antrages werden gleich der Servername und der Mail-DbName hinterlegt.


    Noch ein Tipp zu den Rechten auf Mail-DBs. Lass Dir sowas schriftlich von den Datenschützern geben und lass die User und die Vorgesetzten unterschreiben - nur zur Absicherung Deines Jobs.


    Gruß
    Dirk

  • Ja, danke! Das mach ich. Obwohl ich die Rechte sowieso nicht selber einrichten kann. Da muß ich mal den Administrator fragen.


    Ich probier das mit dem versteckten Feld mal.
    Vielen dank!