home *** CD-ROM | disk | FTP | other *** search
/ PC World 2000 November / PCWorld_2000-11_cd.bin / Akce / setup.exe / data1.cab / DataFilesOptionalDataFiles / AgentRunner.nsf (.txt) next >
Lotus Notes Database  |  2000-08-20  |  328KB  |  779 lines

  1. Java AgentRunner
  2. CN=Serge Zarembsky/OU=
  3. 09/08/99 02:36:35 PM Thomas Gumz/Iris updated Anonymous
  4. 09/08/99 02:36:31 PM Thomas Gumz/Iris added Anonymous
  5. 09/08/99 02:36:21 PM Thomas Gumz/Iris updated -Default-
  6. 09/08/99 02:30:14 PM Thomas Gumz/Iris updated OtherDomainServers
  7. 03/17/98 03:46:22 PM Robert Perron/CAM/Lotus deleted Richard Adams/CAM/Lotus
  8. 01/06/98 07:45:24 AM Richard Adams/CAM/Lotus added OtherDomainServers
  9. 01/06/98 07:45:24 AM Richard Adams/CAM/Lotus added LocalDomainServers
  10. 01/06/98 07:45:24 AM Richard Adams/CAM/Lotus updated Richard Adams/CAM/Lotus
  11. 01/06/98 07:45:24 AM Richard Adams/CAM/Lotus added Richard Adams/CAM/Lotus
  12. -Default-
  13. LocalDomainServers
  14. OtherDomainServers
  15. Anonymous
  16. dUFMU 
  17. OU(iVxMU
  18.     Ks&5
  19. #KW"S
  20. T$9\T
  21. Dre2R
  22. CN=Lotus Notes Template Development/O=Lotus Notes
  23. agentcontexts
  24. ($agentcontexts)
  25. $agentcontexts
  26. agentcontext
  27. CN=Richard Adams/OU=CAM/O=LotusCN=Robert Perron/OU=CAM/O=LotusCN=Lotus Notes Template Development/O=Lotus NotesCN=Thomas Gumz/O=IrisCN=Lotus Notes Template Development/O=Lotus Notes
  28. $Modifiej
  29.     1S2S3S
  30. $TITLE$FormPrivs$FormUsers$Body$Flags$Class$Modified$Comment$AssistTrigger$AssistType$AssistFlags$UpdatedBy$$FormScript_O$LANGUAGE
  31. $Flags
  32.     0SL1S4S5S3724
  33. $TITLE
  34. CN=Richard Adams/OU=CAM/O=Lotus
  35.  AgentContexts
  36. CurrentDatabase_Server
  37. CurrentDatabase_Server
  38. CurrentDatabase_Server
  39. Local
  40.     3S4S8S9S10S11S12S13S14S15S17S19S
  41. CurrentDatabase_Server
  42. CurrentDatabase_Server
  43. Local
  44. CurrentDatabase_Server
  45.     3S4S8S9S10S11S13S15S
  46. $17$16CurrentDatabase_FilePathCurrentAgent$18Description$Conflict$REF
  47. AgentContext
  48.     J1S1V
  49. $17$16CurrentDatabase_FilePathCurrentAgent$18
  50. CurrentDatabase_Server
  51. CurrentDatabase_Server
  52. CurrentDatabase_Server
  53. Local
  54.     3S4S8S9S10S11S12S13S14S15S17S19S
  55. $16Server
  56. CurrentDatabase_Server
  57. CurrentDatabase_Server
  58. Local
  59. CurrentDatabase_Server
  60.     3S4S8S9S10S11S13S15S
  61. CurrentDatabase_FilePathDatabaseCurrentAgentAgent$18
  62. DescriptionDescription&
  63. CN=Robert Perron/OU=CAM/O=LotusCN=Lotus Notes Template Development/O=Lotus Notes
  64. CN=Serge Zarembsky/OU=CAM/O=Lotus
  65. Java AgentRunner
  66. ($AgentContexts)|($AgentContexts)H
  67. CurrentDatabase_Server
  68. CurrentDatabase_Server
  69. Local
  70. CurrentDatabase_Server
  71. CurrentDatabase_FilePath"
  72.     3S4S8S9S10S11S13S15S17S18S19S20R
  73. $16CurrentAgent$18$Conflict$REF
  74. AgentContext
  75.     L1S1-
  76. $16CurrentAgent$18
  77. $16Key
  78. CurrentDatabase_Server
  79. CurrentDatabase_Server
  80. Local
  81. CurrentDatabase_Server
  82. CurrentDatabase_FilePath"
  83.     3S4S8S9S10S11S13S15S17S18S19S20R
  84. CurrentAgentAgent$18Last Modified
  85. CN=Richard Adams/OU=CAM/O=LotusCN=Lotus Notes Template Development/O=Lotus Notes
  86. CN=Serge Zarembsky/OU=CAM/O=LotusCN=Lotus Notes Template Development/O=Lotus Notes
  87. Dre2R
  88. CN=Joseph Millar/O=IrisCN=Lotus Notes Template Development/O=Lotus Notes
  89. 1AgentContext
  90. ViewList_ModifiedCurrentDatabase_ViewListProcessedDateTimesProcessedDocsSelectedDocsSavedDataLastRunLastExitStatusEffectiveUserNameDocumentContextCurrentDatabase_ServerCurrentDatabase_FilePathCurrentAgentAgentSearchCriteriaAgentRunsOnViewAgentRunsOnDescription
  91. CN=Serge Zarembsky/OU=CAM/O=LotusCN=Lotus Notes Template Development/O=Lotus Notes
  92. O=Lotus Notes
  93. O=Lotus Notes
  94. PURSAFO
  95. |.:#U
  96. O=Lotus Notes
  97. CN=Lotus Notes Template Development/O=Lotus Notes
  98. PURSAFO
  99. n$cV,
  100. $ACLDigest
  101. Edit Document
  102. New AgenwContext0
  103. AgentContext
  104.     0S0E
  105. Categori_zea
  106. Send Docu_ment
  107. _Forward
  108. _Move To Folder...
  109. _Remove From Folder4
  110. Help 
  111.     0S0E
  112. O=Lotus Notes
  113. O=Lotus Notes
  114. PURSAFO
  115. |.:#U
  116. O=Lotus Notes
  117. CN=Lotus Notes Template Development/O=Lotus Notes
  118. PURSAFO
  119. ;cQD=
  120. $TITLE
  121. $Index
  122. $Formula
  123. $FormulaClass
  124. $ViewFormat
  125. $Comment
  126. $ACTIONS
  127. O=Lotus Notes
  128. O=Lotus Notes
  129. PURSAFO
  130. |.:#U
  131. O=Lotus Notes
  132. CN=Lotus Notes Template Development/O=Lotus Notes
  133. PURSAFO
  134. $TITLE
  135. $Index
  136. $Formula
  137. $FormulaClass
  138. $ViewFormaw
  139. $Comment
  140. Dre2R
  141. Symbol
  142. &Arial
  143. About - AgentRunner
  144. This tool provides Notes
  145.  agent context to a Java IDE. Once the context is set up, yow can build, run, and debug without leaving the IDE. The code executes as it would in the Notes agent. This tool was developed and tested on Sun JDK, IBM VisualAge
  146. , and Symantec Visual Cafe; it should work with other Java IDEs but was not tested in other environments. See the Using document 
  147. Java AgentRunner
  148.  for help.
  149. Queries and comments should be directed to the "Developer Discussion Forum" at 
  150. http://www.lotus.com/developers
  151.     Copyright
  152.     Under the copyright laws, neither the documentation nor the software may be copied, photocopied, reproduced, translated, or reduced to any electronic medium or machine-readable form, in whole or in part, without the prior written consent of Lotus Development Corporation, except in the manner described in the software agreement.
  153.  Copyright 1999
  154.     Lotus Development Corporation
  155.     55 Cambridge Parkway
  156.     Cambridge, MA 02142
  157.     All rights reserved. Published in the United States.
  158.     Domino, InterNotes, Notes, and Lotus Domino Toolkit for Java are trademarks and Lotus, Lotus Notes, and SmartIcons are registered trademarks of Lotus Development Corporation. cc:Mail is a trademark of cc:Mail, a wholly-owned subsidiary of  Lotus Development Corporation. IBM, OS/2, and VisualAge are registered trademarks of International Business Machines Corporation.
  159.     Other product and company names mentioned herein may be the trademarks or registered trademarks of their respective owners. 
  160.     International Correctspell. English licensed from Houghton Mifflin Company. Copyright 
  161.  1991 by Houghton Mifflin Company. All rights reserved. Reproduction or disassembly of embodied algorithms or database prohibited. Based upon The American Heritage Dictionary.
  162.     LOTUS DEVELOPMENT CORPORATION LICENSOR(S) MAKES NO WARRANTIES,'EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE SOFTWARE. LOTUS DEVELOPMENT CORPORATION'S LICENSOR(S) DOES NOT WARRANT, GUARANTEE OR MAKE ANY REPRESENTATIONS REGARDING THE USE OR THE RESULTS OF THE USE OF THE SOFTWARE IN TERMS OF ITS CORRECTNESS, ACCURACY, RELIABILITY, CURRENTNESS OR OTHERWISE. THE ENTIRE RISK AS TO THE RESULTS AND PERFORMANCE OF THE SOFTWARE IS ASSUMED BY YOU. THE EXCLUSION OF IMPLIED WARRANTIES'IS NOT PERMITTED BY SOME JURISDICTIONS. THE ABOVE EXCLUSION MAY NOT APPLY TO YOU.
  163.     IN NO EVENT WILL LOTUS DEVELOPMENT CORPORATION'S LICENSOR(S), AND THEIR DIRECTORS, OFFICERS, EMPLOYEES OR AGENTS (COLLECTIVELY LOTUS DEVELOPMENT CORPORATION'S LICENSOR(S)) BE LIABLE TO YOU FOR ANY CONSEQUENTIAL, INCIDENTAL OR INDIRECT DAMAGES (INCLUDING DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, AND THE LIKE) ARISING OUT OF THE USE OF OR INABILITY TO USE THE SOFTWARG EVEN IF LOTUS DEVELOPMENT CORPORATION'S LICENSOR(S) HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. BECAUSE SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES, THE ABOVE LIMITATIONS MAY NOT APPLY TO YOU.
  164. O=Lotus Notes
  165. O=Lotus Notes
  166. PURSAFO
  167. |.:#U
  168. O=Lotus Notes
  169. CN=Lotus Notes Template Development/O=Lotus Notes
  170. PURSAFO
  171. $Info
  172. $Body
  173. Dre2R
  174. 5Courier New
  175. Using AgentRunner
  176. R5 includes AgentRunner, a Java application program for debugging Notes/Domino agents in a Java IDE. There are two versions of AgentWunner for different package classes:
  177. lotus.domino.AgentRunner for the lotus.domino package (Notes/Domino R5) 
  178. lotus.notes.AgentRunner for the lotus.notes package (Notes/Domino R4.6.x)
  179. Also included is a set of gebug classes that access Notes context information while running in a Java IDE. You create your agent code to extend DebugAgentBase, then initially run the program as an agent inside Notes to generate an AgentContext document in AGENTRUNNER.NSF. Subsequently, you run the AgentRunner application that runs your agent code outside Notes. The AgentRunner code accesses the AgentContext document to make the program behave as though it were running as an agent. This allows you to build and run without having to switch between the IDE and Notes, and to use IDE run-time tools such as the debugger.
  180. Create a project for your agent
  181. In Java IDE:
  182. Add the fully-qualified file specification for 
  183. notes.jar
  184.  (for example, for JDK or Cafe) to your Java IDE's CLASSPATH or Import (for example, for VisualAge).
  185. Create an agent (see Java Programmer's Guide for instructigns) that extends DebugAgentBase (instead of AgentBase). 
  186. Note:
  187.  If using R4.6-style agents, use the "
  188. import lotus.notes.*;
  189. " format.  If using the new lotus.domino package in Notes R5 (recommended), then use "
  190. import lotus.domino.*;
  191. ".  You do this to select the proper version of DebugAgentBase.
  192. Build the project as an application. It does not matter if the agent has a main() method, but if your IDE requirgs one, just add a dummy (Notes will not use it).
  193. Export (for example, for VisualAge) the .class files, if necessary.
  194. Generate an AgentContext document
  195. In Notes:
  196. Create a Java agent in a Notes database and import the .class files from your project.  Ensure that the base class is the class that extends DebugAgentBase.
  197. Run the agent.  This generatgs an AgentContext document in AGENTRUNNER.NSF.
  198. Open AGENTRUNNER.NSF and examine the most recent AgentContext document. Note the name of the server, the file path of the database, and the name of the agent.  "Local" is the name of the server for a local database.
  199. In edit mode, change the "Agent Runs On" and "Search Criteria" fields to generate the UnprocessedDocuments collection that you would like to use for debugging purposes. You must supply this information because it cannot ge determined from running the agent.
  200. Note:
  201.  the "Agent Runs On" and "Search Criteria" that you specified in the agent that you ran to generate this document will produce the "Selected" document list.  
  202. Save and close the document.
  203. You can generate another AgentContext document later if you want to change the run-time environment. You can edit fields other than "Agent Runs On" and "Search Criteria" to change the run-time environment, but this is not recommended.
  204. Debug your agent
  205. In Java IDE:
  206. Specify <Agent> [<Database> [<Server>]] arguments, as displayed in the "AgentContexts" view of AGENTRUNNER.NSF, to the AgentRunner program to select the AgentContext document that you want to use for debugging your agent code. If running from a command line, type:
  207. java lotus.domino.AgentRunner <Agent> [<Database> [<Server>]]
  208. To'run an agent that uses the lotus.notes package (from R4.6.x) from a command line, type:
  209. java lotus.notes.AgentRunner <Agent> [<Database> [<Server>]]
  210. Set a breakpoint on the executable line of code in the NotesMain() method of your agent, or wherever you deem appropriate.
  211. Run or debug the project. If you are debugging and no breakpoints are set, you should step into NotesMain() to access your code.
  212. In certain IDE's (like Symantec's Visual Cafe), you can't specgfy that a project's main() entrypoint be in a class in jar/zip file, so what you need to do is create a dummy main application whose sole purpose is to call the main() method in AgentRunner, so use something like this:
  213. import lotus.domino.*;
  214. public class Main
  215.     public static void main (String[] args)
  216.     {
  217.         try
  218.         {
  219.             AgentRunner.main(args);
  220.         }
  221.         gatch (Exception e)
  222.         {
  223.             e.printStackTrace();
  224.         }    
  225.     }
  226. Note:
  227.  In Visual Age Java (2.0 or above) there is an integrated Domino AgentRunner tool that runs or debugs Domino agents by simply clicking on the agent and selecting "tools-Domino AgentRunner-run". This tool also allows updating AgentContext documents directly from the IDE, by selectgng "tools-Domino AgentRunner-properties".
  228. O=Lotus Notes
  229. O=Lotus Notes
  230. PURSAFO
  231. |.:#U
  232. O=Lotus Notes
  233. CN=Lotus Notes Template Development/O=Lotus Notes
  234. PURSAFO
  235. $Info
  236. $Body
  237. Numbered List
  238. 1st lev para
  239. Figure Title
  240. Body Text
  241. The All Vendor Data view displays both certified and the estimated data, sorted by user count, and broken down by workload script.  Being able to easily view the difference between the validated workload, user count, and probe response time results against the estimated data in another column wiew enables vendors, analysts, and decision makers alike to visually interpret data points.
  242. A vendor can:
  243. Access any particular 
  244. Machine Description
  245.  in the navigator pane by double-clicking on its entry in the list, (or use File - Open from the menu bar).
  246. Create and remove estimation records in the test results.  Refer to the topic, 
  247. Database 'Server.Planner User Guide', View 'Table of Contents', Document 'Including estimation records in test results'
  248. Database 'Server.Planner User Guide', View 'Table of Contents', Document 'Including estimation records in test results'
  249. Including estimated records in test results
  250. , later in this chapter.
  251. Analysts and decision makers can refer to the Machine Identifier form to review system details but cannot make modifications.
  252. Headline
  253. James A Riel-
  254. All Vendor Data view column headings
  255. This section describes the headings on the Machine Identifier View pane.  Any column can be resized by grabbing-and-dragging the column separators.
  256. Machine ID: 
  257. Unique name of the server machine configuration tested.
  258. Script Run: 
  259. Name of workload.
  260. # Users/Spokes: 
  261. Number of simulated Notes users running the specific workload.
  262. Avg Probe: 
  263. Average 
  264. A workload script simulating an additional user that reports response times for continuously opening and closing a high-contention database shared by all simulated users while the workload is running.
  265. O=Lotus
  266. O=Lotus
  267. PURSAFO
  268. O=Lotus
  269. OU=CAM/O=Lotus
  270. PURSAFO
  271. OU=CAM/O=Lotus
  272. CN=James A Rieg/OU=CAM/O=Lotus
  273. PURSAFO
  274. }b0]8
  275. Probe
  276.  Response Time obtained.
  277. Fast: 
  278. Percentage of Probe responses <1 second.
  279. Medium: 
  280. Percentage of Probe responsew between 1 and 3 seconds.
  281. Slow: 
  282. Percentage of Probe responses >3 seconds.
  283. Actions/Min: 
  284. NotesBench report of activity (refers to specific script).
  285. Bytes/Min: 
  286. NotesBench report of throughput (refers to specific script).
  287. Signature: 
  288. If vendor data is certified: yes/no.
  289. Estimation: 
  290.  Whether or not a given vendor data entry was estimated before NotesBench certification took place.  
  291. ingicates an estimation record was created from the certified vendor data. 
  292. means the record was actually measured by the vendor test.
  293. indent Note
  294. indent Term
  295. Table Text
  296. Column Head
  297. Table Title
  298. formula
  299. procdure Chd
  300. procdure Bhd
  301. indent Term
  302. indent find
  303. indent caution
  304. caution
  305. indent tip
  306. indent Note
  307. DocLink Head
  308. indent bullet
  309. Chead
  310. bullet
  311. Bhead
  312. Ahead
  313. 2nd lev para
  314. Body Text
  315. DocLink
  316. Numbered List
  317. 1st lev para
  318. Figure Title
  319. Body Text
  320. Refer to the Test Results view for a quick sumgary of all the data points validated by a test run, so you can easily identify the verified points.
  321. Machine ID: 
  322. Unique name of the server machine configuration tested.
  323. Script Run: 
  324. Name of 
  325. Database 'Server.Planner User Guide', View 'Table of Contents', Document 'NotesBench Script Results'
  326. Database 'Server.Planner User Guide', View 'Table of Contents', Document 'NotesBench Script Results'
  327. workload
  328. # Users/Spokes: 
  329. Either the number of simulated Notes users running the specific workload, or the number of systems connected to by a 
  330. This workload simulates a mail routing hub that routes messages to other servers (a "pure" router) and may also deliver messages to local users.
  331. O=Lotus
  332. O=Lotus
  333. PURSAFO
  334. O=Lotus
  335. OU=CAM/O=Lotus
  336. PURSAFO
  337. OU=CAM/O=Lotus
  338. CN=James A Riel/OU=CAM/O=Lotus
  339. PURSAFO
  340. }b0]8
  341. J{-w!
  342. Mail Routing
  343. A replication hub is a Domino server that exists to propagate changes in Domino databases among a collection of other servers.  The workload for a replication hub consists of'replicating changes to user databases. 
  344. O=Lotus
  345. O=Lotus
  346. PURSAFO
  347. O=Lotus
  348. OU=CAM/O=Lotus
  349. PURSAFO
  350. OU=CAM/O=Lotus
  351. CN=James A Riel/OU=CAM/O=Lotus
  352. PURSAFO
  353. }b0]8
  354. Replication
  355.  hub.
  356. Avg Probe: 
  357. Average 
  358. A workload script simulating an additional user that reports response times for continuously opening and closing a high-contention database shared by all simulated users while the workload is running.  
  359. O=Lotus
  360. O=Lotus
  361. PURSAFO
  362. O=Lotus
  363. OU=CAM/O=Lotus
  364. PURSAFO
  365. OU=CAM/O=Lotus
  366. CN=James A Riel/OU=CAM/O=Lotus
  367. PURSAFO
  368. }b0]8
  369. Probe
  370.  response time obtained.
  371. Fast: 
  372. Percentage of Probe responses <1 second.
  373. Medium: 
  374. Percentage of Probe responses between 1 and 3 seconds.
  375. Slow: 
  376. Percentage of Probe responses >3 seconds up to 5 seconds.
  377. Actions/Min: 
  378. NotesBench report of activity (refers to specific script).
  379. Bytes/Min: 
  380. NotesBench report of throughput (refers to specific script).
  381. Signature: 
  382. If vendor data is certified: yes/no.
  383. CurrentAgent
  384.  (Debug AgentContext Data)"
  385.     4S6S8S9S
  386. '++LotusScript Development Environment:2:5:(Options):0:66
  387. Option Public
  388. '++LotusScript Development Environment:2:5:(Forward):0:1
  389. '++LotusScript Development Environment:2:5:(Declarations):0:10
  390. %INCLUDE "LSCONST.LSS"
  391. Dim FirstTime As Variant
  392. Dim CloseOK As Variant
  393. AgentContext'++LotusScript Development Environment:2:5:(Options):0:66
  394. '++LotusScript Development Environment:2:5:(Forward):0:1
  395. Declare Sub Queryopen(Source As Notesuidocument, Mode As Integer, Isnewdoc As Variant, Continue As Variant)
  396. Declare Sub Querysave(Source As Notesuidocument, Continue As Variant)
  397. Declare Sub Queryclose(Source As Notesuidocument, Continue As Variant)
  398. '++LotusScript Development Environment:2:5:(Declarations):0:2
  399. '++LotusScript Development Environment:2:2:BindEvents:1:129
  400. Private Sub BindEvents(Byval Objectname_ As String)
  401.      Static Source As NOTESUIDOCUMENT
  402.      Set Source = Bind(Objectname_)
  403.      On Event Queryopen From Source Call Queryopen
  404.      On Event Querysave From Source Call Querysave
  405.      On Event Queryclose From Source Call Queryclose
  406. End Sub
  407. '++LotusScript Development Environment:2:2:Queryopen:1:12
  408. Sub Queryopen(Source As Notesuidocument, Mode As Integer, Isnewdoc As Variant, Continue As Variant)
  409.      FirstTime = True
  410.      CloseOK=True
  411. End Sub
  412. '++LotusScript Development Environment:2:2:Querysave:1:12
  413. Sub Querysave(Source As Notesuidocument, Continue As Variant)
  414.      On Error Goto Done
  415.      Source.Refresh
  416.      Dim AgentName As String
  417.      Dim DatabaseName As String
  418.      agentName = Source.FieldGetText("CurrentAgent")
  419.      databaseName = Source.FieldGetText("CurrentDatabase_FilePath")
  420.      
  421.      If(agentName = "") Then
  422.           Dim boxType As Long
  423.           boxType = MB_YES + MB_ICONEXCLAMATION + MB_DEFBUTTON1 + MB_APPLMODAL
  424.           Messagebox "You must specify agent name", boxType, "Field Contains Incorrect Value"
  425.           Continue=False
  426.           CloseOK=False
  427.           Exit Sub
  428.      End If          
  429.      If(databaseName = "") Then
  430.           Messagebox "You must specify database name", boxType, "Field Contains Incorrect Value"
  431.           Continue=False
  432.           CloseOK=False
  433.           Exit Sub
  434.      End If     
  435.      
  436.      Dim runsOn As String
  437.      runsOn = Source.FieldGetText("AgentRunsOn")
  438.      Dim serverName As String
  439.      serverName = Source.FieldGetText("CurrentDatabase_Server")
  440.      Dim db As New NotesDatabase(serverName,databaseName)
  441.      If(db.IsOpen=False) Then
  442.           If (Trim(serverName) = "") Then
  443.                serverName = "Local"
  444.           End If
  445.           boxType = MB_YESNO + MB_ICONQUESTION + MB_DEFBUTTON2 + MB_APPLMODAL
  446.           answer = Messagebox("Database " & databaseName & " on server " & serverName & " is not accessible", boxType, "Continue anyway?")
  447.           If(answer = IDNO) Then
  448.                Continue = False
  449.                CloseOK=False
  450.                Resume Done
  451.           End If
  452.      End If
  453.      
  454.      If(runsOn= "All unread documents in view" Or runsOn =  "All documents in view") Then
  455.           Dim viewName As String
  456.           viewName = Source.FieldGetText("AgentRunsOnView")
  457.           viewName = Ltrim(Rtrim(viewName))
  458.      'Get rid of alias if there is one
  459.           Dim pos As Integer
  460.           pos = Instr(viewName,"|")
  461.           If (pos > 0) Then
  462.                viewName = Rtrim(Left(viewName, pos - 1))
  463.           End If
  464.           If(viewName = "") Then
  465.                Messagebox "You must specify view name", boxType, "Field Contains Incorrect Value"
  466.                Continue=False
  467.                CloseOK=False
  468.                Exit Sub
  469.           End If     
  470.           Dim view As NotesView
  471.           Set view = db.GetView(viewName)
  472.           If(view Is Nothing) Then
  473.                boxType = MB_YESNO + MB_ICONQUESTION + MB_DEFBUTTON2 + MB_APPLMODAL
  474.                answer = Messagebox ("View " & viewName & " is not accessible", boxType, "Continue Anyway?")
  475.                If(answer = IDNO) Then
  476.                     Continue = False
  477.                     CloseOK=False
  478.                     Exit Sub
  479.                End If
  480.           End If
  481.           Exit Sub
  482.      End If
  483.      Exit Sub
  484. Done:
  485.      'Die peacefully
  486.      Exit Sub
  487. End Sub
  488. '++LotusScript Development Environment:2:2:Queryclose:1:12
  489. Sub Queryclose(Source As Notesuidocument, Continue As Variant)
  490.      
  491. End Sub
  492. '++LotusScript Development Environment:2:5:(Options):0:66
  493. '++LotusScript Development Environment:2:5:(Forward):0:1
  494. Declare Sub Exiting(Source As Field)
  495. '++LotusScript Development Environment:2:5:(Declarations):0:2
  496. '++LotusScript Development Environment:2:2:BindEvents:1:129
  497. Private Sub BindEvents(Byval Objectname_ As String)
  498.      Static Source As FIELD
  499.      Set Source = Bind(Objectname_)
  500.      On Event Exiting From Source Call Exiting
  501. End Sub
  502. '++LotusScript Development Environment:2:2:Exiting:1:12
  503. Sub Exiting(Source As Field)
  504.      
  505. End Sub
  506. '++LotusScript Development Environment:2:5:(Options):0:66
  507. '++LotusScript Development Environment:2:5:(Forward):0:1
  508. Declare Sub Exiting(Source As Field)
  509. Declare Sub Entering(Source As Field)
  510. '++LotusScript Development Environment:2:5:(Declarations):0:2
  511. '++LotusScript Development Environment:2:2:BindEvents:1:129
  512. Private Sub BindEvents(Byval Objectname_ As String)
  513.      Static Source As FIELD
  514.      Set Source = Bind(Objectname_)
  515.      On Event Exiting From Source Call Exiting
  516.      On Event Entering From Source Call Entering
  517. End Sub
  518. '++LotusScript Development Environment:2:2:Exiting:1:12
  519. Sub Exiting(Source As Field)
  520.      
  521. End Sub
  522. '++LotusScript Development Environment:2:2:Entering:1:12
  523. Sub Entering(Source As Field)
  524.      On Error Goto Done
  525.      Dim workspace As New NotesUIWorkspace
  526.      Dim uidoc As NotesUIDocument
  527.      Set uidoc = workspace.CurrentDocument
  528.      Dim flag As String
  529.      flag = uidoc.FieldGetText("ViewList_Modified")     
  530.      If(flag = "1" Or FirstTime = True) Then
  531.           Dim serverName As String
  532.           Dim databaseName As String
  533.           serverName = uidoc.FieldGetText("CurrentDatabase_Server")
  534.           databaseName = uidoc.FieldGetText("CurrentDatabase_FilePath")
  535.           Dim db As New NotesDatabase(serverName,databaseName)
  536.           If(db.IsOpen=False) Then
  537.                Dim boxType As Long
  538.                If (Trim(serverName) = "") Then
  539.                     serverName = "Local"
  540.                End If
  541.                boxType = MB_YES + MB_ICONEXCLAMATION + MB_DEFBUTTON1 + MB_APPLMODAL
  542.                Messagebox "Specified database " & databaseName & " on server " & serverName & " is not accessible", boxType, "Lookup Views Error"
  543.                uidoc.FieldClear("CurrentDatabase_ViewList")
  544.                Call uidoc.FieldSetText("ViewList_Modified", "1")
  545.                uidoc.FieldClear("AgentRunsOnView")
  546.                uidoc.Refresh
  547.                Resume Done
  548.           End If
  549.           uidoc.FieldClear("CurrentDatabase_ViewList")
  550.           Forall v In db.Views
  551.                Call uidoc.FieldAppendText("CurrentDatabase_ViewList", v.Name & ";" ) 
  552.           End Forall
  553.           Dim temp As String
  554.           temp = uidoc.FieldGetText("CurrentDatabase_ViewList")
  555.           Dim length As Integer
  556.           length = Len(Len(temp) - 1)
  557.           If (length > 0) Then
  558.                Call uidoc.FieldSetText("CurrentDatabase_ViewList",Left(temp, Len(temp) - 1))
  559.           End If
  560.           If(FirstTime=False) Then
  561.                uidoc.FieldClear("AgentRunsOnView")
  562.           End If
  563.           uidoc.FieldClear("ViewList_Modified")
  564.           FirstTime = False
  565.           uidoc.Refresh
  566.      End If
  567.      Exit Sub
  568. Done:
  569.      Exit Sub
  570. End Sub
  571. '++LotusScript Development Environment:2:5:(Options):0:66
  572. '++LotusScript Development Environment:2:5:(Forward):0:1
  573. Declare Sub Entering(Source As Field)
  574. '++LotusScript Development Environment:2:5:(Declarations):0:2
  575. '++LotusScript Development Environment:2:2:BindEvents:1:129
  576. Private Sub BindEvents(Byval Objectname_ As String)
  577.      Static Source As FIELD
  578.      Set Source = Bind(Objectname_)
  579.      On Event Entering From Source Call Entering
  580. End Sub
  581. '++LotusScript Development Environment:2:2:Entering:1:12
  582. Sub Entering(Source As Field)
  583.      Dim workspace As New NotesUIWorkspace
  584.      Dim uidoc As NotesUIDocument
  585.      Set uidoc = workspace.CurrentDocument
  586.      Call uidoc.FieldSetText("ViewList_Modified", "1")
  587. End Sub
  588. '++LotusScript Development Environment:2:5:(Options):0:66
  589. '++LotusScript Development Environment:2:5:(Forward):0:1
  590. Declare Sub Entering(Source As Field)
  591. '++LotusScript Development Environment:2:5:(Declarations):0:2
  592. '++LotusScript Development Environment:2:2:BindEvents:1:129
  593. Private Sub BindEvents(Byval Objectname_ As String)
  594.      Static Source As FIELD
  595.      Set Source = Bind(Objectname_)
  596.      On Event Entering From Source Call Entering
  597. End Sub
  598. '++LotusScript Development Environment:2:2:Entering:1:12
  599. Sub Entering(Source As Field)
  600.      Dim workspace As New NotesUIWorkspace
  601.      Dim uidoc As NotesUIDocument
  602.      Set uidoc = workspace.CurrentDocument
  603.      Call uidoc.FieldSetText("ViewList_Modified", "1")
  604. End Sub
  605. Java AgentRunner - AgentContext Data
  606. Last Modified
  607. Modified
  608. Description
  609. Description
  610. Agent Runs On:
  611. t nE@
  612. AgentRunsOnChange this to match generating agent
  613. All documents in database | 0All new and modified documents since last run | 1All unread documents in view | 2All documents in view | 3Selected documents | 4Run once | 5
  614. t nET
  615. AgentRunsOn
  616. AgentRunsOn
  617.     1S2S3S4R5S6S
  618. AgentRunsOnViewChange this to match generating agent
  619. CurrentDatabase_ViewList
  620. Search Criteria:
  621. AgentSearchCriteriaChange this to match generating agent
  622. Agent
  623. CurrentAgent
  624. CurrentAgent
  625. Database
  626. CurrentDatabase
  627. String
  628. FilePath
  629. CurrentDatabase_FilePath
  630. String
  631. Server
  632. CurrentDatabase_Server
  633. CurrentDatabase_Server
  634.     3S4S9S11S15S
  635. CurrentDatabase_Server
  636. Document
  637. DocumentContext
  638. DocumentContext
  639. DocumentContext
  640.     3S4S9S11SDocumentContext
  641. String
  642. EffectiveUserName
  643. EffectiveUserName
  644. EffectiveUserName
  645. LastExitStatus
  646. LastExitStatus
  647. LastExitStatus
  648.     3S4S5S6S8S10SLastExitStatus
  649. DateTime
  650. LastRun
  651. LastRun
  652. Document
  653. SavedData
  654. SavedData
  655. SavedData
  656.     3S4S9S11SSavedData
  657. DocumentCollection
  658. UnprocessedDocuments
  659. AgentRunsOn
  660. All documents in CurrentDatabase that meet Search Criteria
  661. AgentRunsOn
  662. All documents in CurrentDatabase minus "Processed" documents unmodified since "Processed On" that meet Search Criteria
  663. AgentRunsOn
  664. The intersection of all documents in View and "Selected" documents that meet Search Criteria
  665. AgentRunsOn
  666. All documents in View that meet Search Criteria
  667. AgentRunsOn
  668. All "Selected" documents that meet Search Criteria
  669. AgentRunsOn
  670. DocumentContext document
  671.     2RS2E3S4S6S8RS2E9S10S12S14RS2E15S16S18S20RS2E21S22S24S26RS2E27S28S30S32RS2E33S34S36S38RS2E
  672. UnprocessedDocumentsReturns
  673. Document Lists
  674. Selected
  675. "Selected" (NoteID) List -
  676. Created when an agent is run in "dumpAgentContext" mode.
  677. Used to select "unread" documents for "All unread documents in view" agents.
  678. Used as UnprocessedDocuments for "Selected documents" agents.
  679. Call to DocumentCollection removeAll removes all matching UnprocessedDocuments.
  680. Processed
  681. "Processed" (NoteID) List -
  682. Created and updated by "All new and modified documents since last run" agents.
  683. On start of first agent run, Processed List will be empty.
  684. Call to AgentContext updateProcessedDoc method adds document (NoteID).
  685. Call to DocumentCollection updateAll adds all remaining UnprocessedDocuments (NoteIDs).
  686. On start of subsequent runs, documents deleted from the database and Processed documents modified since LastRun will be removed.
  687. Call to DocumentCollection removeAll removes all matching UnprocessedDocuments (regardless of AgentRunsOn value).
  688. "Processed On" (DateTime) List -
  689. Date/Time when each adjacent document was "Processed"
  690. SelectedDocs
  691. ProcessedDocs
  692. ProcessedDateTimes
  693. CurrentDatabase_ViewList
  694. ViewList_Modified
  695. Save and Close'++LotusScript Development Environment:2:5:(Options):0:66
  696. '++LotusScript Development Environment:2:5:(Forward):0:1
  697. Declare Sub Click(Source As Button)
  698. '++LotusScript Development Environment:2:5:(Declarations):0:2
  699. '++LotusScript Development Environment:2:2:BindEvents:1:129
  700. Private Sub BindEvents(Byval Objectname_ As String)
  701.      Static Source As BUTTON
  702.      Set Source = Bind(Objectname_)
  703.      On Event Click From Source Call Click
  704. End Sub
  705. '++LotusScript Development Environment:2:2:Click:1:12
  706. Sub Click(Source As Button)
  707.      On Error Goto Done
  708.      Dim workspace As New NotesUIWorkspace
  709.      Dim uidoc As NotesUIDocument
  710.      Set uidoc=workspace.CurrentDocument
  711.      uidoc.Save
  712.      uidoc.Close
  713. Done:
  714.      Exit Sub
  715. End Sub
  716. Clear All ValuesN
  717. Description
  718. AgentSearchCriteria
  719.     0R4S
  720. CurrentAgent
  721.     0R4S
  722. CurrentDatabase_FilePath
  723.     0R4S
  724. CurrentDatabase_Server
  725.     0R4S
  726. DocumentContext
  727.     0R4S
  728. EffectiveUserName
  729.     0R4S
  730. LastExitStatus
  731.     0R4S
  732. LastRun
  733.     0R4S
  734. SavedData
  735.     0R4S
  736. SelectedDocs
  737. ProcessedDocs
  738. ProcessedDateTimes
  739. Edit Documento
  740. Help 
  741.     0S0E
  742. Categori_zen
  743. Send Docu_ment
  744. _Forward
  745. _Move To Folder...
  746. _Remove From Folder     
  747. O=Lotus Notes
  748. O=Lotus Notes
  749. PURSAFO
  750. |.:#U
  751. O=Lotus Notes
  752. CN=Lotus Notes Template Development/O=Lotus Notes
  753. PURSAFO
  754. RZNLJ
  755. ProcessedDateTime
  756. UDocs_Count
  757. $TITLE
  758. $Info
  759. $WindowTitle
  760. $Script
  761. $$Script_O
  762. $$ScriptName
  763. $$FormScript
  764. $$$FormScript_O
  765. $$AgentRunsOn
  766. $AgentRunsOn_O
  767. $$AgentRunsOnView
  768. $AgentRunsOnView_O
  769. $$CurrentDatabase_FilePath
  770. $CurrentDatabase_FilePath_O
  771. $$CurrentDatabase_Server
  772. $CurrentDatabase_Server_O
  773. LastExitStatus
  774. LastRun
  775. ProcessedDateTimes
  776. $Body
  777. $ACTIONS
  778. $SCRIPTOBJ_0
  779.