• Running from server

    By Enio Basso 2 decades ago

    Hi Everybody



    I changed the Form.QueryClose and Agent to work in the server. So i post my code here to help





    Sub Queryclose(Source As Notesuidocument, Continue As Variant)

    REM @If(rwfHasChanged = &quot;new status&quot;:&quot;remove status&quot;;<br/>
        REM @Command([ToolsRunMacro];&quot;(RWF DOC QUERYCLOSE)&quot;);&quot;&quot;)<br/>
    Dim s As New NotesSession<br/>
    Dim db As NotesDatabase<br/>
    Dim doc As NotesDocument<br/>
    Dim agent As NotesAgent<br/>
    Dim hasChanged As String<br/>
    <br/>
    Set db = s.CurrentDatabase<br/>
    Set doc = Source.Document<br/>
    hasChanged =  Lcase$(Trim(doc.rwfHasChanged(0)))<br/>
    If  (( hasChanged = &quot;new status&quot; ) Or (hasChanged = &quot;remove status&quot;) )Then<br/>
        Set agent = db.GetAgent(&quot;(RWF DOC QUERYCLOSE SERVER)&quot;)<br/>
        Print &quot;Form.QueryClose&quot; + doc.NoteID<br/>
        If agent.RunOnServer(doc.NoteID) = 0 Then<br/>
            Messagebox &quot;Agent ran&quot;,, &quot;Success&quot;<br/>
        Else<br/>
            Messagebox &quot;Agent not run&quot;,, &quot;Failure&quot;<br/>
        End If<br/>
    End If  <br/>
    

    End Sub





    ==========================================================================

    (RWF DOC QUERYCLOSE SERVER)



    import lotus.domino.;

    import java.util.
    ;

    public class JavaAgent extends AgentBase {


    public void NotesMain() {<br/>
        <br/>
        try {<br/>
            Session session = getSession();<br/>
            AgentContext agentContext = session.getAgentContext();<br/>
            <br/>
            Agent agent = agentContext.getCurrentAgent();<br/>
             Database db = agentContext.getCurrentDatabase();<br/>
            Document doc = db.getDocumentByID(agent.getParameterDocID());<br/>
           //System.out.println(&quot;NoteID:&quot; + agent.getParameterDocID());<br/>
            WorkflowDocument.processContextDoc(doc);<br/>
        } catch(Exception e) {<br/>
        e.printStackTrace();<br/>
        }<br/>
    }<br/>
    

    }