: 4557 | 108237 | 12276

Ability to call notesAgent.RunOnServer without waiting for the execution of agent 
Use this IdeaSpace to post ideas about Domino Designer.

: 14
: 17
: 3
: Domino Designer
: agent
: Alexey Katyushyn3027 29 May 2012
:
: / Email
It would be nice to be able to call notesAgent.RunOnServer without waiting for the execution of the agent. It would be possible to introduce an optional second parameter IsWaitExecution, the default value is True. Example:
Call notesAgent.RunOnServer( [ noteID$ ], [ IsWaitExecution ] )



1) Kenneth Axi1694 (30 May 2012)
Don't see the need for this; the obvious solution would be to run the agent with SendConsoleCommand - then You don't have to wait for the agent to finish before continuing execution of Your agent.
2) Alexey Katyushyn3027 (30 May 2012)
This is a workaround. In addition, there is a security restriction on the ability to run SendConsoleCommand.
Much easier to have a second option, as I described!
3) Mark Demicoli11692 (01 Jun 2012)
Interesting idea but I think complicated to implement because it introduces synchronisation problems. There would have to be a callback function within the code similar to NotesTimer, again issues arise since the calling code may terminate before the asynchronous call completes. Could you explain why you'd like this feature as there may be an existing way ot achieving same?
4) Alexey Katyushyn3027 (04 Jun 2012)
1. Need to modify the response documents without the author's access to them.
2. Because of the considerable time of document processing, so as not to wait for the end of execution.
5) Mark Demicoli11692 (04 Jun 2012)
I'm voting this idea up because I think it might be useful, but I suspect maybe your code or database structure could be more efficient if you're genuinely having application performance issues. How are you updating responses? How long does it typically take?
6) Alexey Katyushyn3027 (05 Jun 2012)
Thanks, Mark
In the example of the response document performance problems did not exist. But they may be, if the number of response documents is large.

From what I've come across recently. Developed a custom application for organizing mailings. The user clicks a button to perform list. Newsletter uses an image, the body in html-format, the stream to form a MIME-fields. All this is done on the server and takes time proportional to the number of mailing lists. After pressing the button, after Agent.RunOnServer the user waits for the execution list.
7) Mark Demicoli11692 (05 Jun 2012)
OK so for simple updates to Author fields it shouldn't take a huge amount of time even with a large number of documents - on the other hand what you're talking about now is complex processing and mass-mailing.

My suggestion is that you don't process such requests immediately - create a separate database to act as a queue for processing such mailouts, with scheduled agent that runs every 15-30 min. When such a 'publish' occurs a request 'stub' is created in the queue database and processed on schedule. When completed the user that submitted it is notified and stub set to 'completed'. This way you also have an audit of what happened and when, which can be useful.

8) Alexey Katyushyn3027 (05 Jun 2012)
Dear Mark,
Initially it was implemented on a schedule agent.
But I thought it could be done better. And tried to use Agent.RunOnServer :)
9) Peter Neidhart688 (07 Jun 2012)
How to you prevent multiple parallel execution of the server agent?
I implemented something similar to this by a small agent that was started by RunOnServer and did nothing else than a tell amgr run...
Based on experience the users will press the button over and over because
they don't get an immediate response.
10) Mark Demicoli11692 (07 Jun 2012)
Actually Peter is right Notes is not an assynchronous architecture except for the 'hopelessly fragile' NotesTimer. Voting this down.
11) Vlad Sh10379 (28 Jun 2012)
> 9) Peter Neidhart635 (07.06.2012)
> How to you prevent multiple parallel execution of the server agent?
It is perfectly solved by using the (hard-) locking mechanism.

> 10) Mark Demicoli8588 (07.06.2012)
> Actually Peter is right Notes is not an assynchronous architecture except for the 'hopelessly fragile' NotesTimer.
Run multiple background agents and you get all asinhnonnost "problems" described by Peter.

I vote for this idea, as there are many operations where the wait for a response from the server, the user does not need. For example export data in a relational database. The user performed some action, and some data must go immediately. He does not need to wait for the result.
12) Simon O'Doherty206 (28 Aug 2012)
The easiest option for this sort of thing is to create a document which goes to a view that is monitored by an agent. Then have that agent process outstanding requests and move them out of the view.

Easier to audit that way and recover if something went wrong during agent execution.











:
:

Welcome to IdeaJam™


You can run IdeaJam™ in your company. It's easy to install, setup and customize. Your employees, partners and customers will immediately see results.

Use IdeaJam to:

  • Collect ideas from employees
  • Solicit feedback and suggestions from employees and customers
  • Run innovation contests and competitions
  • Validate concepts
  • Use the power of "crowd-sourcing" to rank ideas and allow the best ideas to rise to the top

IdeaJam™ works with:

  • IBM Connections
  • IBM Lotus Quickr
  • Blogs and Wikis
  • Websphere Portal
  • Microsoft Sharepoint
  • and other applications.

IdeaJam has an extensive set of widgets and API's that allow you to extend and integrate IdeaJam™ with other applications.

Learn more about IdeaJam >>


6
Enable moving Notes workspace page
24
Getdocumentbykey should work using programmable sorted columns
21
Make task functionality with // TODO comments in Java available for LotusScript etc
10
Desktop Policy Settings Doc needs settings for full text index on local mail replicas
20
Add HTTP2 support to Domino
13
Publish a roadmap!
10
Provide a script to benchmark Notes Traveler servers
2
Client Version data is no longer collected after migrating to SmartCloud
3
Javascript editor that flags common errors between serverside & clientside
2
Need ability to import .ics files when using a browser in SmartCloud Notes
5
Add 'Group by Date' view option to iNotes as it is in Notes client
3
Need to be able to see which users do not have their ID file uploaded to the ID Vault in SmartCloud
2
Allow HideWhen on multiply selected outline entries
-1
make it easier to get from view or form to its related XPage
4
SmartCloud user accounts page: Change Jump to Page to Jump to User
25
Option ExtendedSyntax False (or NotesDocumentExtended False)
6
Better Administration Tools for IBM Connection
11
Add functionality in IdeaJam to Automatically create an SPR for the enhancement request with IBM
2
Extend existing webservices of IdeaJam
11
Give Administrators better control over Deletions
4
All-Day reservation in the ressource database
36
allow lists and arrays as return types from functions
20
Enable 'CAPTCHA' for a web form with the click of a button
6
Weekly/Monthly email of new Ideas and Comments from IdeaJam
25
circular use of script libs






IdeaJam developed by

Elguji Software Logo