MailDB: NoticeType=C wird umgeschrieben "magic"

  • Hallo zusammen,


    wenn man aus einem externen LotusScript eine "notice" sendet mit dem item noticetype = c und auch die übrigen von IBM vorgeschrieben Parameter artig mitgibt, tut Notes etwas ganz tolles:


    die Mail wird in der Mailbox wie von Zauberhand umgeschrieben. Schaut man sie - ohne zu öffnen - in der Inbox an, so enthält sie den noticetype "E" und ein anderes Icon als das mitgegebene uvm.


    Ergebnis: der Teilnehmer des Appointment wird nicht informiert, dass das Ereignis gecancelt wurde, sondern, dass ein Update erfolgt ist. DAS IST FALSCH!


    $BusyName current user -- current user -- -- -- --
    $BusyPriority 2 -- 2 -- -- -- --
    $CSFlags -- w -- w w w w
    $REF -- yes -- yes -- yes yes
    _ViewIcon 84 84 84 84 133 81 10
    _ViewIcon2 11 11
    CopyTo yes yes yes yes yes yes yes
    Delegator -- -- -- -- yes -- --
    Delegee yes -- yes yes -- -- --
    Form notice notice notice notice notice (ReplyNotice) notice
    FormToUse -- -- -- -- -- notice notice
    NewEndDate yes -- yes -- -- -- --
    NewEndTime yes -- yes -- -- -- --
    NewStartDate yes -- yes -- -- -- --
    NewStartTime yes -- yes -- -- -- --
    NoticeType R R D D L C N
    Recipients -- -- -- -- -- -- --
    SEQUENCENUM 1 1 1 1 1 3 3
    StatusUpdate yes -- yes -- -- yes yes


    Was wisst Ihr dazu?

  • Wie genau erzeigst du denn die Mail ?
    Wie sieht das dazugehörige Script aus ?


    Und was genau deine Liste der felder aussagen soll verstehe ich nicht wirklich, weil da nichts davon drinsteht wie es in deinem Text beschrieben ist

  • zur feldliste: das sind die felder, die ibm als pflichtfelder beschreibt, wenn man einen teilnehmer über ein gecanceltes meeting informieren will:


    http://www-12.lotus.com/ldd/do…6559005ce7b3?OpenDocument


    nur kann man das noch so schön befolgen, die Mail wird mit dem Befehl .send() gesendet und hat in genau diesem Moment des sendens das Feld NoticeType = C stehen und sowie die Email im Posteingang eintrifft steht NoticeType = E drin! Die MailDB fuddelt das einfach um. Dazu muss die mail nicht mal geöffnet werden.


    Das Skript ist relativ simpel:
    ganz grob:


    doc = db.createdoc
    form = notice
    noticetype = C
    uvm.
    doc.send()


    alles so, wie bei IBM beschrieben

  • Also dein Scriptauszug ist wirklich nicht sehr aussagekräftig


    Denn erstens gibt es mehrere Pflichtfelder. Ob du diese füllst oder nicht ist nicht erkennbar


    Und zweitens weisst du den NoticeType und auch das Form ganz falsch zu, denn wenn du


    noticetype = C


    machst, dann wird in das Feld der Wert der Variablen C hineingeschrieben und eben nicht der Wert C.


    Das sollte aber mit Grundkenntnissen Programmierung eigentlich klar sein, daß eine Wertzuweisung von Texten unter Anführungszeichen zu stehen hat.


    D.h. also Notes verhält sich genauso wie du es ihm sagst

  • ok, das ist schon klar, ich hab ja geschrieben "grob"


    natürlich versorge ich alle Pflichtfelder und füge auch einen String ein und keine Variable


    bye the way: der Designer würde mich darauf auch hinweisen, wenn c nicht instanziiert wäre.


    Selbst wenn das eine Variable wäre - was nicht der Fall ist - und die Mail dann mit "" als noticetype gesendet würde, wieso steht dann ein "E" drin, wenn ich in der INbox die Eigenschaften prüfe?


    Das macht keinen Sinn!

  • Wie sollen wir dir helfen wenn du uns ein grobes Script gibst, das vorne und hinten nicht passt. Wie soll da irgendjemand sagen können wo da ein Fehler ist, wenn es mit dem von dir verwendeten so rein gar nichts zu tun hat.


    Zu dem Thema mit dem "E" als Wert. Schon mal was von Vorgabewerten gehört.


    Also wenn du nicht das korrekte Script posten kannst, dann wird dir auch keiner helfen können, denn grundsätzlich tun die Notices wenn man alle Felder richtig setzt, denn sonst würde keine Absage mehr gehen, da dort auch nur im Hintergrund per Script eine entsprechende Mail generiert wird

  • du es würde mir schon reichen, wenn mir jemand ein skript beispiel zeigt, welches funktioniert.


    ich kann hier nicht den kompletten code posten.


    hier das Dokument, wie es in dem Moment, wenn es gesendet wird, aussieht:


    Form:Notice
    OptionalAttendees:
    AltOptionalNames:
    INetOptionalNames:
    FYIAttendees:
    AltFYINames:
    INetFYINames:
    $PublicAccess:1
    StartDate:08.09.2010 07:00:00
    StartDateTime:08.09.2010 07:00:00
    StartTime:08.09.2010 07:00:00
    EndDate:08.09.2010 08:00:00
    EndDateTime:08.09.2010 08:00:00
    EndTime:08.09.2010 08:00:00
    Chair:CN=Rainer Zufall/O=domintern
    AltChair:CN=Rainer Zufall/O=domintern
    RequiredAttendees:Klara Himmel/domintern@domintern
    AltRequiredNames:CN=Klara Himmel/O=domintern
    INetRequiredNames:KLARAHIMMEL@DOM-INET.DE
    Topic:termin mit tn
    $CSWISL:$S:1
    $CSVersion:2
    $NoPurge:08.09.2010 08:00:00
    $SMTPKeepNotesItems:1
    AppointmentType:3
    SchedulerSwitcher:1
    OrgTable:CO
    Principal:CN=Rainer Zufall/O=domintern
    $AltPrincipal:CN=Rainer Zufall/O=domintern
    APPTUNID:90D1E9C005AD5099C125778C003F3A7B
    SequenceNum:1
    Subject:Cancelled: termin mit tn
    NoticeType:C
    _ViewIcon:81
    $CSFlags:w



    Wieso ändert er das in der Mail DB?

  • Also ein Script Beispiel findest du in jeder MailDatenbank, denn dort wird es ja auch nur per Script generiert und versendet.


    In der MailDB wird er es sicher nicht ändern, sondern der Router wird es ändern, weil irgendein Zusammenhang eben nicht stimmt.
    Kannst ja mal den Router anhalten und es vergleichen bevor die Mail zugestellt wird, also wenn sie noch in der mail.box ist und danach wenn sie zugestellt ist


    Warum du den Code nicht posten kannst der für die Erstellung notwendig ist verstehe ich nicht wirklich


    /EDIT


    Als Ergänzung: Wenn wir den Code hätten könnten wir es damit selbst mal ausprobieren und dir dann vermutlich auch besser helfen.

  • Ich hab es selbst mal getestet und bei mir wird das Feld nicht umgesetzt.


    Dabei habe ich mich was Datentypen und Inhalte angeht genau an das Calendering & Scheduling Schema der IBM gehalten.


    Liegt also an deiner Programmierung. Irgendwo hast du dich nicht an die Vorgaben gehalten

  • Du hast Recht ...


    in dem aktuellen Fall geht es darum eine Mail/Notice zu generieren, die dem Attendee ein Rescheduling mitteilt.


    Auch hier wurden die Felder beim Öffnen der Mail von Notes einfach umgeschrieben in eine NoticeType=E Änderungsmeldung.


    Allerdings nicht, wenn man die korrekte SeqNumber hochzählt und mitgibt. Hierzu muss im eigentlichen Termin die SeqNumber ausgelesen und um eins erhöht wieder mitgegeben werden.


    http://www-12.lotus.com/ldd/do…6559005ce7b3?OpenDocument


    vielleicht hilfts mal.