Dokument über Aktion erstellen und Feldwerte mitgeben?

  • Mal angenommen ich habe eine Datenbank mit der Maske "test". Ich möchte jetzt über eine Aktionsleiste das das Anwender ein Dokument mit der maske Test gleich bestimmt Felder mit bestimmten werden gefüllt, welche er vorher über eine @PickList auswählt.

    Code
    @PostedCommand([Compose]; "Test");Feld1 := "wert1";


    funktioniert leider nicht, da Notes wie in der Hilfe beschrieben den @PostedCommand erst nach dem rest aussführt ;(


    Gibt es dennoch die möglichkeit das irgendwie zu realisieren?


    Ich möchte das der User ggf mehrerer Dokumente aus einer anderen Datenbank auswählen kann. Pro auswahl möchte ich ein Dokument erstellen:

    Code
    liste := @PickList(...)
    @For(n := 1;n <= @Elements(liste); n := n + 1;
      @PostedCommand([Compose]; "Test");
      Feld1 := liste[n];
      @Command([FileSave]);
      @Command([FileCloseWindow])
    );


    klappt nur leider nicht ... wie mach ichs besser?

  • Das letzte geht nur über Lotusscript und nicht in der formel sprache (in R5 wenigstens), und ist möglich.
    Das erste klappt NIE ohne das du FIELD feld := "test" verwenden würdest, aber auch dann klappt es nur dann wenn der FOKUS entsprechend ist.. welches ja in R5 nie der fall sein würde..
    Wenn das original dokument in bearbeitungsmodus wäre, dann hattest du mittels vererbung einen möglichkeit soetwas zu versuchen, sonnst ist da auch nichts möglich.

  • probiers einfach mal mit editgotofield und editinserttext. allerdings geht das glaube ich nur, wenn die felder auch wirklich bearbeitbar (also keine computed) sind.


    oder du nimmst halt lotus script ...

    bunt ist das dasein und granatenstark. volle kanne hoshi's!


    IBM Certified Advanced System Administrator (R5, D6, D7)
    IBM Certified Advanced Application Developer (R5, D6, D7, D8)

  • und bevor ich es vergesse:
    du kannst jedes command als postedcommand ausführen und so eine vorgegebene reihenfolge erzwingen!


    es gibt halt nur ein paar befehle die eben nur als postedcommand laufen ...

    bunt ist das dasein und granatenstark. volle kanne hoshi's!


    IBM Certified Advanced System Administrator (R5, D6, D7)
    IBM Certified Advanced Application Developer (R5, D6, D7, D8)

  • Lotus Skript:

    Code
    Sub Click(Source As Button) Dim workspace As New NotesUIWorkspace Dim picklist As Variant Dim session As New NotesSession Dim reg As New NotesRegistration Dim db As NotesDatabase Dim dbmail As NotesDatabase Dim doc As NotesDocument Dim docmail As NotesDocument	 reg.RegistrationServer = "Server" Call reg.GetUserInfo(session.UserName, , mailfile$) picklist = workspace.PickListStrings(PICKLIST_CUSTOM, True,"ottnotes1", mailfile$,"$all", mailfile$,	"Please select some documents.", 9) Set dbmail = session.Getdatabase("Server", mailfile$,False)  Forall plist In picklist  Set docmail = dbmail.GetDocumentByUNID(Cstr(plist))		  Set db = session.CurrentDatabase  Set doc = db.CreateDocument  doc.Body =  docmail.GetItemValue( "Body" )  doc.Subject = docmail.GetItemValue("Subject")  ...  doc.Form = "Memo"  Call doc.Save( True, True )		 End ForallEnd Sub


    Hier wird zwar ein neues Dokument erstellt, auch mit Body feld, allerdings nicht als Anwortdokument... ein Bezug aufs Hauptdokument fehlt völlig.



    Formel:


    Das Body Feld lässt sich leider nicht "übernehmen" ;( Ist natürlich n RichText feld... gibts da keine möglichkeit? jetzt bin ich so weit gekommen und scheitere am wichtigsten ;(



    Beide möglichkeiten helfen mir nicht (sind aber "fast" richtig) - jemand vorschläge? - siehe entsprechende Threads... dankeschön!!!

  • Ich habs hinbekommen! Danke für eure hilfe!!!
    Hier mein erstes lauffähiges Lotus Skrip: