R5 - View - Action - Lotus Script - Dokumente deselektieren

  • Hallo,


    ich ab mich im Netz dusslig gesucht, konnte aber nix finden...


    Also meine Frage: Ist es moeglich und wenn, dann wie man in einer View ueber einen mit LotusScript geladenen Actionbutton alle Dokumente zu deselektieren kann? (alles in R5)


    Hintergrund:


    Ich will ein Dokumentenmapping machen. Sprich, man selektiert die gemuenschten Dokumente, klickt auf den Actionbutton. Dann spring ne picklist auf, wo man Adressen auswaehlen kann, die dann in ein Feld aller ausgewaehlter Dokumente geschrieben werden. Das funktioniert alles, nur will ich, dass danach die Dokumente nicht mehr selektiert sind. Quasi ein:


    NotesUIView.DeselectAll oder
    Evalute(@Command([EditDeselectAll]))


    nur das gibt"s nicht, oder ist wegen restriktionen gesperrt....


    Also Vielen Dank


    Stephan

    • Offizieller Beitrag

    ein NotesUIView.DeselectAll gibt es ab Release 6.


    Welche Restriktionen gibt es bei "Evalute(@PostedCommand([EditDeselectAll]))"? Es dürfte eigentlich nur im WEB nicht funkionieren.


    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

  • Hallo, tja R6 ist bei unserer Firma leider noch nicht........


    @Functions that affect the user interface do not work in evaluate. These include: @Command, @DbManager, @DbName, @DbTitle, @DDEExecute, @DDEInitiate, @DDEPoke, @DDETerminate, @DialogBox, @PickList, @PostedCommand, @Prompt, and @ViewTitle.


    Deswegen geht das leider nicht....


    Also, wenn irgendwer nen workaround hat....


    Danke


    Stephan

  • Wie verarbeitest du die dokumente, weil in mein verständnig geht den gewählte dokumente nach verarbeitung in Script auch mit den ablauf des agenten verloren.


    Es gibt aber trotzdem mögliche workrounds.
    Programmier dein aktion um, in einen zweiteiliger agent.
    Erstes teil fragt ab und es dann irgendwo schreibt (profil/notes.ini), zweitest teil bearbeitet die gewählte dokumente im formel sprache.


    Wenn die verarbeitung unbedingt script sein sollte (verstehe ich zwar nicht aber egal), dann ebenso zwei agenten, erste (formel sprache) die dann die gewählte dokumente in einen temp ordner stellt, zweite die den user info abfragt und den den dort drin befindliche dokumente diesen werten schreibt.

  • Hallo


    also ich benutze bis jetzt noch keine Agenten da ich ja die Abfrage nicht fuer jedes Dokument machen wollte. deswegen hab ich das alles in ne Aktion reingepackt.
    Ich hab mit dem profil noch nicht gearbeitet, aber werd mir das nochmal anguggen.


    ich werd wahrscheinlich wenn es klappt auf die aktion die Abfrage machen, den wert ins profil schreiben, dann den agenten starten, der aus dem profil den wert ausliest und in das jeweilige dokument einschreibt.


    wollte das eigentlich in einer aktion haben, damit das sich nicht auf verschiedene elemente verteilt.....


    ich meld mich wieder und sag ob's geklappt hat oder nicht


    erstmal Danke


    Stephan

  • Also,wenn du sicherstellen kannst, das alle Deine Clients die gleiche Sprachversion hat, dann kannst Du mit der Simulaitons von Tastaturanschlägen arbeiten. Folgender Code, hebt die Markierungen auf und aktualisiert gleich noch die Ansicht:


    ---------------


    Declare Sub keybd_event Lib "user32.dll" (Byval bVk As Integer, Byval bScan As Integer, Byval dwFlags As Long, Byval dwExtraInfo As Long)


    Function DeselectAll

    Call keybd_event (&H12, 0, 0, 0) ' press Alt
    Call keybd_event (&H42, 0, 0, 0 ) ' press B
    Call keybd_event (&H42, 0, &H2, 0) ' release B

    Call keybd_event (&H48, 0, 0, 0 ) ' press H
    Call keybd_event (&H48, 0, &H2, 0) ' release H

    Call keybd_event (&H12, 0, &H2, 0 ) ' release Alt

    Call keybd_event (&H78, 0, 0, 0 ) ' press F9
    Call keybd_event (&H78, 0, &H2, 0) ' release F9

    End Function


    ---------------


    Es ist zwar nicht der Profi-Stil, ich mache es auch nur in absoluten Notfällen.


    Gruß von Ekki.

  • Also zur klarheit..
    Wenn du einen aktion oder agent machst, dann hast du db.unprocessed documents als document collection der selektierte dokumente. Die werden NACH der verarbeitung dann auch deselektiert.
    Dann kannst du in eine aktion oder agent also erst allgemeines abfragen und dann mit while not doc is nothing durch deine collection gehen.