home *** CD-ROM | disk | FTP | other *** search
/ Computerworld: Vánoce 97 / Computerworld_1997-12_cd.bin / rocenka / notes4wm / data / doclibl4.ntf (.txt) < prev    next >
Encoding:
Lotus Notes Storage Facility  |  1996-04-05  |  426.0 KB  |  3,402 lines

  1. Lotus SmartSuite 96 Library (R4)
  2. #1StdR4DocLibLS
  3. Lotus SmartSuite LibStdR4DocLibLS
  4. dR4DocLibLS
  5. FOLDER_DIRECTORY_OBJECT
  6. My Favorite Documents
  7. *Nb:O
  8. +"Dyv
  9. Lotus Notes
  10. CN=Catherine Duffy/OU=NAHQ/O=LotusCN=Catherine Duffy/O=IrisLotus NotesCN=Catherine Duffy/O=IrisLotus Notes
  11. ##########################
  12. $Modified
  13.     1S2S3S
  14. $TITLE$FormPrivs$FormUsers$Body$Flags$Class$Modified$Comment$AssistTrigger$AssistType$AssistFlags$UpdatedBy$$FormScript_O
  15.     0SL1S3724
  16. $TITLE
  17. CN=Catherine Duffy/O=Iris
  18. ##########################
  19. CN=Catherine Duffy/OU=NAHQ/O=LotusCN=Catherine Duffy/O=Iris
  20. CN=Catherine Duffy/O=Irisc:\notes4\data\doclib4.ntf
  21. ##########################################################
  22. ##########################################################
  23. ##########################################################
  24. ##########################################################
  25. ##########################################################
  26. ##########################################################
  27. ##########################################################
  28. ##########################################################
  29. ##########################################################
  30. ##########################################################
  31. ##########################################################
  32. ##########################################################
  33. ResponseResponse
  34. Debbie Branco
  35. OriginalSubjectBodyTimeCreatedDateFromSubjectStdR4DocLib#####
  36. *Nb:O
  37. Response to ResponseResponse to Response
  38. Debbie Branco
  39. ImmediateParentSubjectOriginalSubjectBodyTimeCreatedDateFromSubjectStdR4DocLib#############
  40. $SUBVIEW
  41. ($All)|($All)
  42. Lotus NotesP
  43. Scope
  44. Private
  45. ExpireDate
  46. _ViewIcon
  47.     2S3S4S6S8S9S12S14S
  48. DocumentG
  49. $VersionOpt
  50. Original by 
  51. From"
  52. ReviewStyle
  53. Review by 
  54. LastEditor"
  55. Subject
  56. Subject
  57. From"
  58.     6S9RS4E16RS9E20RS4E26RS9E27S28S2E30RS4E34R37S38S40RS5E42R43S44S46S47S48S49S50S51S
  59. Categories$51$48Subject$25From$Conflict$REF
  60. Categories$25
  61. Subject
  62. $25From
  63. From$25StdR4DocLibTYd##################
  64. Lotus Notes
  65. LV<A-
  66. PURSAF
  67. Lotus Notes
  68. LV<A-
  69. PURSAF
  70. Notes Product Development
  71. )I^-.
  72. PURSAF
  73. Qr8@=x
  74. $ACLDigest
  75. Locked
  76.     1S2S3S
  77. DocumentAuthors
  78. CurrentReviewers
  79.     0R1S2S3S8S9S11S13S
  80.     0S0E
  81. CN=Ann Innis/O=Iris
  82. New Document
  83. Subject
  84.     4S6S
  85. "MS Sans Serif
  86. Times New Roman
  87. Helvetica
  88. '++LotusScript Development Environment:2:5:(Options):0:66
  89. Option Public
  90. '++LotusScript Development Environment:2:5:(Forward):0:1
  91. '++LotusScript Development Environment:2:5:(Declarations):0:10
  92. Dim FormW As NotesUIWorkspace
  93. Dim FormDoc As NotesUIDocument
  94.  Document'++LotusScript Development Environment:2:5:(Options):0:66
  95. '++LotusScript Development Environment:2:5:(Forward):0:1
  96. Declare Sub Exiting(Source As Field)
  97. '++LotusScript Development Environment:2:5:(Declarations):0:2
  98. '++LotusScript Development Environment:2:2:BindEvents:1:129
  99. Private Sub BindEvents(Byval Objectname_ As String)
  100.      Static Source As FIELD
  101.      Set Source = Bind(Objectname_)
  102.      On Event Exiting From Source Call Exiting
  103. End Sub
  104. '++LotusScript Development Environment:2:2:Exiting:1:12
  105. Sub Exiting(Source As Field)
  106.      Set FormW = New NotesUIWorkspace
  107.      Set FormDoc = FormW.CurrentDocument
  108.      FormDoc.refresh
  109.      
  110. End Sub
  111. DocumentWorkflow
  112.     DocumentWorkflow Subform
  113.     :  This Subform includes the LotusScript, Actions, and hidden fields which are used in all versions of the Document form.
  114.     Hidden Fields:-------------------------------------------------------------------
  115. DocumentAuthors
  116.     4S6S
  117. DocumentAuthors
  118. Scope
  119. Private
  120. Reviewers
  121.     3S4S6S7S8S10SDocumentReaders
  122. LastEditor
  123. Scope
  124. Private
  125.     1S2S
  126. Scope
  127. Public
  128. Scope
  129.     1S2S3S4S
  130. %12-/H
  131. !G,$W,#I4)X6(H,4W,4G98X<6h*#x+$g9)w8(h.6u-2g<5w<4>B=YA
  132. WC9iB.xC-iF8wH8jT>zR<rd?
  133. 2L3;FK=D
  134. j=C:FQ8Qp<b
  135. GEHXHGLQLZSKEKUVKSGRYYWWgJEvIEiTHyWFfLRwKSgYWwZV[cXtfYPZjl\dWfphhhvigkqlysjhktvlsjtxyww
  136. Subject
  137.     0S0E
  138. SubjectRequired: description of this document 
  139.     Created By:    
  140. FromDocument author name
  141.      on 
  142. DateThe date/time when the document was composed
  143.      at 
  144. TimeCreated
  145.     Category
  146. Miscellaneous
  147. CategoriesPress ENTER for list of keywords or to add a new keyword
  148. ($All)
  149.     4S6S
  150. Status
  151. StatusListv
  152.     4S6S7S8S9S10S11S
  153. Review Cycle Information
  154. Status
  155. StatusListv
  156.     4S6S7S8S9S
  157. Paintbrush cann
  158. this file becaus
  159.  created using a
  160.  of Windows earl
  161.  3.0.
  162. Save As
  163.  From
  164. Copy To
  165. Save Colors As
  166. Printing '%s' on
  167. on %s
  168. Page %d of
  169. % donelNot enoug
  170.  to print.
  171. more application
  172. rease available 
  173.     Originator
  174.     Previous reviewers
  175.     Current Reviewers
  176.     Future reviewers
  177. tmpOriginator
  178. PreviousReviewers
  179. PreviousReviewers
  180. CurrentReviewers
  181. CurrentReviewers
  182. FutureReviewers
  183. FutureReviewers
  184. Status
  185. StatusListv
  186.     4S6S7S8S9S
  187. Paintbrush cann
  188. this file becaus
  189.  created using a
  190.  of Windows earl
  191.  3.0.
  192. Save As
  193.  From
  194. Copy To
  195. Save Colors As
  196. Printing '%s' on
  197. on %s
  198. Page %d of
  199. % donelNot enoug
  200.  to print.
  201. more application
  202. rease available 
  203.     Originator
  204.     Reviewers
  205.     Review Options
  206. tmpOriginator_1
  207. Reviewers
  208. Reviewers
  209. ReviewersEnter the reviewers' names (do not use Group names)
  210. ReviewStyle
  211. ReviewStyle
  212. Serial review | Serial.NoVersionsSerial (keep all revisions) | Serial.VersionsDocument reservations | Parallel.NoVersionsResponse review | Parallel.Versions
  213. ReviewWindow
  214. ReviewWindow
  215. No time limit for each review | NoLimitMove to next reviewer after: | MoveOnKeep sending reminders after: | Reminder
  216. ReviewTime
  217. ReviewTime
  218. ReviewWindow
  219. NoLimit
  220. day(s)
  221.     3S4S6S8S
  222. tmpReviewUnits
  223. NotifyAfter
  224. NotifyAfter
  225. Notify originator after each reviewer | EachNotify originator after final reviewer | Final
  226. BodyEnter the text (or a description) of the document.
  227.     ...........................
  228. ReviewerLog
  229.     1S2S3S4S
  230. Reviewer Log
  231. ReviewerLog
  232.     1S2S
  233. ReviewerLog
  234. ReviewerLog
  235. Closea 
  236.     0S0E
  237. _Edit Document
  238. DocumentAuthors
  239.     9S15S
  240. Categori_ze
  241. _Forward
  242. _Move to Folder...
  243. _Remove from Folder
  244. Send Docu_ment
  245. OriginalSubject
  246. OriginalSubject
  247. OriginalSubject
  248. Subject
  249.     1S2S3S10S12S
  250. NewRespTitle
  251. New Response to "
  252. OriginalSubject
  253.     0R1S2S3S4S5S6S
  254. StandardTitle
  255. Response 
  256.  of "
  257.  to "
  258. OriginalSubject
  259.     0R1S2S3S4S8S9S10S11S12S13S14S15S16S17S
  260. NewRespTitle
  261. StandardTitle
  262.     0R4S6S
  263. "MS Sans Serif
  264. Times New Roman
  265.  Response
  266. @___@
  267. <a>7`^
  268. `!bb!R
  269. SubjectKey thought of this response
  270.     Created by
  271. FromThe name of the person who composed the response
  272. DateThe date/time when the document was composed
  273. TimeCreated
  274. @___@
  275. <a>7`^
  276. `!bb!R
  277. BodyEnter the text of your response
  278.     -------------------------------------------------------------------------------------------------------------------------------------------------
  279.     Hidden Fields:    
  280. OriginalSubject
  281. OriginalSubject
  282. Subject
  283.     7S9S
  284. OriginalSubjectHidden field to store topic of Main Document
  285. Closej 
  286.     0S0E
  287. _Edit Document
  288. Categori_ze
  289. Send Docu_ment
  290. _Forward
  291. _Move to Folder...
  292. _Remove from Folder
  293. NewDocTitle
  294. New Response to "
  295. Subject
  296.     1S2S3S4S5S6S
  297. StandardTitle
  298. Response to "
  299. ImmediateParentSubject"
  300.     0R1S2S3S4S5S6S
  301. NewDocTitle
  302. StandardTitle
  303.     0R4S6S
  304. "MS Sans Serif
  305. Times New Roman
  306.  Response to Response
  307. @___@
  308. <a>7`^
  309. `!bb!R
  310. SubjectKey thought of this response
  311.     Created by:
  312. FromThe name of the person who composed the response
  313. DateThe date/time when the document was composed
  314. TimeCreated
  315. @___@
  316. <a>7`^
  317. `!bb!R
  318. BodyEnter the text of your response
  319.     -------------------------------------------------------------------------------------------------------------------------------------------------
  320.     Hidden Fields:    
  321. OriginalSubject
  322. OriginalSubject
  323. Subject
  324.     7S9S
  325. OriginalSubjectHidden field to store topic of Main Document
  326. Subject
  327. Subject
  328. OriginalSubject
  329.     7S9S
  330. ImmediateParentSubject
  331. Closed 
  332.     0S0E
  333. _Edit Document
  334. Categori_zeu
  335. Send Docu_ment
  336. _Forward
  337. _Move to Folder...
  338. _Remove from Folder
  339. $SUBVIEW
  340. By _Author|By Author
  341. CN=Catherine Duffy/O=Iris
  342. Scope
  343. Private
  344. ExpireDate
  345. _ViewIcon
  346.     2S3S4S6S8S9S12S14S
  347. DocumentG
  348. Status
  349. StatusY
  350. Subject
  351. $VersionOpt
  352. Subject
  353.   (Original document in review cycle)
  354. ReviewStyle
  355. ParallelG
  356. Subject
  357.   (Reviewed by 
  358. LastEditor"
  359. Subject
  360.   (Reviewed by 
  361. PreviousReviewers
  362. Archive
  363. Subject
  364. Subject
  365. (Response to 
  366. OriginalSubject
  367. Subject
  368.  (Response to "
  369. OriginalSubject
  370.     6S9RS4E12S13S14S15S20RS8E22RS4E27RS8E28S29S31RS4E35S38RS9E39S40S41S42S2E43S44S46RS4E47S48S49S50S56S57S60R64S67RS4E69R70S71S73RS5E74S75S76S79R80S81S82S83S84S85S
  371. From$42$36$43$Conflict
  372.     L1S2E1
  373. From$36
  374. $36$43
  375. $43StdR4DocLibY###################
  376. Review Status|Review Status
  377. CN=Catherine Duffy/O=Iris
  378. Scope
  379. Private
  380. ExpireDate
  381. _ViewIcon
  382.     2S3S4S6S8S9S12S14S
  383. DocumentG
  384. $VersionOpt
  385. Original by 
  386. From"
  387. ReviewStyle
  388. Review by 
  389. LastEditor"
  390. Subject
  391. Subject
  392. From"
  393.     6S9RS4E16RS9E20RS4E26RS9E27S28S2E30RS4E34R37S38S40RS5E42R43S44S46S47S48S49S50S51S
  394. CurrentReviewers
  395. FutureReviewers
  396.     5S6S8S10S
  397. Status$40$39SubjectFrom$26DueDateTime$Conflict$REF
  398. Statush
  399. Status
  400.     L1S5S6S7S8S1%
  401. StatusDueDateTime
  402. Subject$26
  403. DueDateTime$26StdR4DocLibY###################################
  404. My Favorite DocumentsMy Favorite Documents/L
  405. Debbie Branco
  406. Scope
  407. Private
  408. ExpireDate
  409. _ViewIcon
  410.     2S3S4S6S8S9S12S14S
  411. DocumentG
  412. Status
  413. StatusY
  414. Subject
  415. $VersionOpt
  416. Subject
  417.   (Original document in review cycle)
  418. ReviewStyle
  419. ParallelG
  420. Subject
  421.   (Reviewed by 
  422. LastEditor"
  423. Subject
  424.   (Reviewed by 
  425. PreviousReviewers
  426. Archive
  427. Subject
  428. Subject
  429. (Response to 
  430. OriginalSubject
  431. Subject
  432.  (Response to "
  433. OriginalSubject
  434.     6S9RS4E12S13S14S15S20RS8E22RS4E27RS8E28S29S31RS4E35S38RS9E39S40S41S42S2E43S44S46RS4E47S48S49S50S56S57S60R64S67RS4E69R70S71S73RS5E74S75S76S79R80S81S82S83S84S85S
  435. $29$30$27From$Conflict
  436. From$27StdR4DocLibFYpd
  437. Main Navigator
  438. Debbie BrancoStdR4DocLibG3############################
  439. Debbie Branco#
  440.  From$42
  441. Scope
  442. Private
  443. ExpireDate
  444. _ViewIcon
  445.     2S3S4S6S8S9S12S14S
  446. $36Modified
  447. $43Title
  448. DocumentG
  449. Status
  450. StatusY
  451. Subject
  452. $VersionOpt
  453. Subject
  454.   (Original document in review cycle)
  455. ReviewStyle
  456. ParallelG
  457. Subject
  458.   (Reviewed by 
  459. LastEditor"
  460. Subject
  461.   (Reviewed by 
  462. PreviousReviewers
  463. Archive
  464. Subject
  465. Subject
  466. (Response to 
  467. OriginalSubject
  468. Subject
  469.  (Response to "
  470. OriginalSubject
  471.     6S9RS4E12S13S14S15S20RS8E22RS4E27RS8E28S29S31RS4E35S38RS9E39S40S41S42S2E43S44S46RS4E47S48S49S50S56S57S60R64S67RS4E69R70S71S73RS5E74S75S76S79R80S81S82S83S84S85S&
  472. Categori_zei
  473. _Edit Document
  474. Send Docu_ment
  475. _Forward
  476. NavigatorIH
  477. EnvName
  478. NavigatorState"
  479.     1S2S
  480. EnvName
  481. EnvName
  482. Main Navigator
  483. EnvName
  484.     0R11RS8E13RS20E14S20RS20E30RS8E32RS20E33S39RS20E44RS9E
  485. New Document,
  486. Document
  487.     0S0E
  488. Response,
  489. Response
  490.     0S0E
  491. Response to Response8
  492. Response to Response
  493.     0S0E
  494. _Move to Folder...    
  495. _Remove from Folder...
  496.  Status  $40
  497. Scope
  498. Private
  499. ExpireDate
  500. _ViewIcon
  501.     2S3S4S6S8S9S12S14S
  502. DocumentG
  503. $VersionOpt
  504. Original by 
  505. From"
  506. ReviewStyle
  507. Review by 
  508. LastEditor"
  509. Subject
  510. Subject
  511. From"
  512.     6S9RS4E16RS9E20RS4E26RS9E27S28S2E30RS4E34R37S38S40RS5E42R43S44S46S47S48S49S50S51SSubjectTitleFromCreated By$26ReviewersX
  513. CurrentReviewers
  514. FutureReviewers
  515.     5S6S8S10SDueDateTimeDue&
  516. Categori_ze
  517. _Edit Document
  518. Send Docu_ment
  519. _Forward
  520. NavigatorDH
  521. EnvName
  522. NavigatorState"
  523.     1S2S
  524. EnvName
  525. EnvName
  526. Main Navigator
  527. EnvName
  528.     0R11RS8E13RS20E14S20RS20E30RS8E32RS20E33S39RS20E44RS9E
  529. New Document,
  530. Document
  531.     0S0E
  532. Response,
  533. Response
  534.     0S0E
  535. Response to Response8
  536. Response to Response
  537.     0S0E
  538. _Move to Folder...    
  539. _Remove from Folder...
  540. Unlock Document
  541. (Unlock Document)
  542. Server
  543.     1S2S6S
  544.     0R1S2S6S
  545. Server
  546.     0R7S8S11S13S14S15S16S
  547.  Categories$51
  548. Scope
  549. Private
  550. ExpireDate
  551. _ViewIcon
  552.     2S3S4S6S8S9S12S14S
  553. DocumentG
  554. $VersionOpt
  555. Original by 
  556. From"
  557. ReviewStyle
  558. Review by 
  559. LastEditor"
  560. Subject
  561. Subject
  562. From"
  563.     6S9RS4E16RS9E20RS4E26RS9E27S28S2E30RS4E34R37S38S40RS5E42R43S44S46S47S48S49S50S51SSubjectTitle$25Modified
  564. FromAuthor&
  565. Categori_zex
  566. _Edit Document
  567. Send Docu_ment
  568. _Forward
  569. Navigator
  570. EnvName
  571. NavigatorState"
  572.     1S2S
  573. EnvName
  574. EnvName
  575. Main Navigator
  576. EnvName
  577.     0R11RS8E13RS20E14S20RS20E30RS8E32RS20E33S39RS20E44RS9E
  578. New Document,
  579. Document
  580.     0S0E
  581. Response,
  582. Response
  583.     0S0E
  584. Response to Response8
  585. Response to Response
  586.     0S0E
  587. _Move to Folder...    
  588. _Remove from Folder...
  589. My Favorite Documents
  590. Scope
  591. Private
  592. ExpireDate
  593. _ViewIcon
  594.     2S3S4S6S8S9S12S14S
  595. $30Title
  596. DocumentG
  597. Status
  598. StatusY
  599. Subject
  600. $VersionOpt
  601. Subject
  602.   (Original document in review cycle)
  603. ReviewStyle
  604. ParallelG
  605. Subject
  606.   (Reviewed by 
  607. LastEditor"
  608. Subject
  609.   (Reviewed by 
  610. PreviousReviewers
  611. Archive
  612. Subject
  613. Subject
  614. (Response to 
  615. OriginalSubject
  616. Subject
  617.  (Response to "
  618. OriginalSubject
  619.     6S9RS4E12S13S14S15S20RS8E22RS4E27RS8E28S29S31RS4E35S38RS9E39S40S41S42S2E43S44S46RS4E47S48S49S50S56S57S60R64S67RS4E69R70S71S73RS5E74S75S76S79R80S81S82S83S84S85S$27Date
  620. FromAuthor&
  621. Categori_ze
  622. _Edit Document
  623. Send Docu_ment
  624. _Forward
  625. Navigator
  626. EnvName
  627. NavigatorState"
  628.     1S2S
  629. EnvName
  630. EnvName
  631. Main Navigator
  632. EnvName
  633.     0R11RS8E13RS20E14S20RS20E30RS8E32RS20E33S39RS20E44RS9E
  634. New Document,
  635. Document
  636.     0S0E
  637. Response,
  638. Response
  639.     0S0E
  640. Response to Response8
  641. Response to Response
  642.     0S0E
  643. _Move to Folder...    
  644. _Remove from Folder...
  645. ($All)
  646. TextBox1All Documents
  647. TextBox2By Author
  648. TextBox3My Favorite Documents
  649. TextBox4By Review Status
  650. TitleDocuments:
  651. AllDocs
  652. ($All)
  653. ByAuthor
  654. By Author
  655. ByStatus
  656. Review Status
  657. MyFavDocs
  658. My Favorite Documents
  659. Times New Roman
  660. Using SmartSuite Library
  661. This database allows you to capture and track information about documents.
  662. Functions of the Database:
  663. To add a document to this database
  664. Select Create, Document.
  665. You can enter document information in several ways: by typing it using the Notes editor, by scanning in hard copy, or by importing or attaching an electronic file. 
  666. To respond to a document
  667. Highlight that document in a view, then select Create, Response.
  668. To respond to a response
  669. Highlight the response you wish to respond to, then select Create, Response to Response.
  670.     To flag a document as Private:
  671.     You can use the "Mark Private" and
  672.     "Mark Public" actions in the template to control whether anyone other than yourself can read a specific document.  For example, if you have not completed the writing of a particular document, you can click the "Mark Private" action and others will not be able to see the document.  When you complete the document, you can click the
  673.     "Mark Public"T
  674.     action to make it available for others to read.  
  675.     If a document is marked private after it has been submitted for review, the document author and the reviewers will be able to read the document.
  676. Features
  677.     Document Review Cycle:
  678.     The author of a document has the option of setting up a document review cycle for that document. To do so simply click on the Setup Review Cycle action button and fill in the necessary information. 
  679.     Note:  
  680.     Do not use n
  681.     @Domains
  682.      when entering approver names.  Any domain added will be stripped off and may cause complications when attempting to route a request.  Also, only enter Person-names as approvers.  Group names are not supported.
  683.     Clearing a Review Cycle:
  684.     Document Library, SmartSuite 96 Library, and MS Office Library provides an action button to "Clear Review Cycle".  This is accessible only by the document's originator.  You can either use the action prior to submitting a document for review, or after submittal.  Below are the guidelines:e
  685.     o    Clearing a review cycle prior to submitting for review:  Select this if you, as originator, wish to change the review cycle settings before your reviewers receive notification.
  686.     o    Clearing a review cycle after submittal:  If reviewers have already begun or completed their document review, their work will be preserved.  If reviewers were notified to review a document and they have not yet begun the review, they will receive a courtesy notice that they are no longer required to conduct a review.
  687.     Lotus SmartSuite Library Review Styles:
  688.     Serial Review:
  689.       Documents are routed for review one at a time, in sequence to the reviewers chosen by the author.:
  690.     o    All edits are made within the same document, but an unedited copy of the original document is also saved.    
  691.     Serial Review (keep all revisions):t
  692.       Documents are routed for review one at a time, in sequence to the reviewers chosen by the author.t
  693.     o    Edits are made within a copy of the original, which also includes all comments from previous reviewers
  694.     o    All old versions become response documents (as well as a copy of the original)
  695.     Document Reservations:
  696.       Requests for document review are routed in parallel (that is, all at the same time).  When one reviewer opens the document, a "file locking" occurs at the server which warns any other user who happens to edit the document that a review is in progress.   
  697.     o    Review comments or edits are made into a copy of the original document
  698.     o    As with the others, a clean copy of the original is always kepta
  699.     Response Review:
  700.       Same as Document Reservations (but with no file locking).l
  701.     o    Review comments or edits are saved as response documents to the original document.  
  702.     o    As with the others, a clean copy of the original is always kepts
  703.     Document Archiving:w
  704.     This is a process by which certain documents are removed from the current database and stored in a different database.  This keeps the library up-to-date with only the latest topics.  Most of the Archiving activities take place from the "Archiving" view.  You must switch to this view in order to initiate archiving on a library database.
  705.     To set up archiving on any library database, switch to the Archiving view and click the action called "Setup Archive".  The Archive Profile appears.  This document contains criteria that the user specifies for archiving topics in a library (e.g., inactive after 'x' days, or expired after 'x' days).  The archive database is automatically created when the Profile is saved.  The archival database filename is also specified in the Archive Profile; the title of the archive will be the title of the Lotus SmartSuite Library database followed by "(Archived)".  After the archive criteria have been specified in the Archive Profile, other agents run on the database to move the document(s).  e
  706.     Mark/Unmark Document as Expired:
  707.       Marks a topic as "expired".  If the Archive Profile specifies that a
  708.     expired 
  709.     topics should be archived, the document(s) marked with this agent would fall into that criterion.  If a document is already marked as expired, this agent tells the user what the expire date was, and will ask if the user wants to un-expire it.
  710.     Periodic Archive:x
  711.       Reviews the Archive Profile and moves documents which meet the archive criteria into the archive database.  This agent is run automatically on the server; the schedule is set by the database manager/designer.
  712.     Troubleshooting:
  713.     User receives the following error: "Cannot launch OLE object: Form inconsistency or Application not installed.  Contact Database Administrator."
  714.     Because this template is designed to work with SmartSuite 96 and Windows 95, users may receive this error when creating documents from a Windows 3.1 client or when using a previous release of SmartSuite.  The database designer should modify the SmartSuite forms and change the Auto Launch setting in the Form properties InfoBox to reflect the Win 16 version of the SmartSuite software.n
  715. Debbie Branco#
  716. ReviewOptionsReviewOptions
  717. CN=Catherine Duffy/O=Iris
  718. SaveChoicesReviewTimeNotifyAfterReviewWindowReviewStyleStdR4DocLibCD#############################
  719. DocumentWorkflow
  720. Lotus Notes
  721. LastEditorDocumentReadersDocumentAuthorsStdR4DocLibCUA3##########################
  722. SmartSuite\123 Worksheet123Worksheet Document
  723. Lotus NotesDocumentWorkflow
  724. BodyReviewerLogNotifyAfterReviewTimeReviewWindowReviewStyleFutureReviewersCurrentReviewersPreviousReviewersReviewersCategoriesTimeCreatedDateFromSubject_ViewIconLastEditorDocumentReadersDocumentAuthors#######################
  725. SmartSuite\Freelance PresentationFreelance Document
  726. Lotus NotesDocumentWorkflow
  727. BodyReviewerLogNotifyAfterReviewTimeReviewWindowReviewStyleFutureReviewersCurrentReviewersPreviousReviewersReviewersCategoriesTimeCreatedDateFromSubject_ViewIconLastEditorDocumentReadersDocumentAuthors#################
  728. SmartSuite\WordPro DocumentWordPro Document
  729. Lotus NotesDocumentWorkflow
  730. BodyReviewerLogNotifyAfterReviewTimeReviewWindowReviewStyleFutureReviewersCurrentReviewersPreviousReviewersReviewersCategoriesTimeCreatedDateFromSubject_ViewIconLastEditorDocumentReadersDocumentAuthors#########################
  731. Process Late Reviews
  732. Selects those documents which are in review and have due dates which have passed.  Based upon the review style of the document, it then either moves it along to the next reviewer, marks it as complete, or simply notifies the current reviewer(s) that their review is overdue.1
  733. Lotus Notes
  734. StdR4DocLibSfL3###
  735. Lotus Notes
  736. Mark/Unmark Document As Expired003
  737. StdR4DocLib####################
  738. ##########################################################
  739. ##########################################################
  740. ##########################################################
  741. ##########################################################
  742. Times New Roman
  743. Task List
  744. &Switch To
  745. About SmartSuite Library
  746.     What does this database do?
  747.     A Document Library application is an electronic filing cabinet that stores reference documents for access by a workgroup.  The database might contain anything from environmental impact statements for a group of engineers to financial statements for a group of loan officers. This Document Library template  is designed to work with Lotus SmartSuite '96  applications.  (It is not backward comaptible with previous versions of the Lotus SmartSuite).
  748.     Who will use this database?
  749.     Anyone who wishes to create a record of a document or review available documents may use this database.
  750.     Important Features
  751.     Review Cycle:
  752.      Used to route a document to a series of recipients.
  753.     Document Archiving:
  754.      Used to move expired documents to an archive database.
  755.     Suggestions for Modifications
  756.     Full text search: 
  757.     If you wish to use Notes' full text search capabilities for a database created with this template, select menu File, Database, Properties, go to the Full Text panel and then select Create Index... to create the full text index.
  758.     Where to find more information?
  759.     -  More information can be found by selecting Help, Using Database
  760.     Access Control
  761.     Very Important:  
  762.     Access level should be 
  763.     Author
  764.      for all users of this database.  This will prevent unauthorized editing of documents within the database.  The Author fields within the forms govern who will be able to edit/review particular documents.   Errors will occur if someone with Editor access attempts to review a document when they are not an authorized reviewer of that document.
  765. Times New Roman
  766.  ReviewOptions
  767. Review style:
  768. ReviewStyle
  769. ReviewStyle
  770. Serial review | Serial.NoVersionsSerial (keep all revisions) | Serial.VersionsDocument reservations | Parallel.NoVersionsResponse review | Parallel.Versions
  771. ReviewWindow
  772. ReviewWindow
  773. No time limit on review | NoLimitMove to next reviewer after | MoveOnKeep sending reminders after | Reminder
  774. Allotted time:
  775. Notification:
  776. NofityAfter
  777. NotifyAfter
  778. Notify me after each reviewer | EachNotify me after final reviewer | Final
  779. ReviewWindow
  780. NoLimit
  781.     1S2S
  782. ReviewTime
  783. ReviewWindow
  784. NoLimit
  785. ReviewTime
  786. ReviewTime
  787.     3S4S6S8S14S
  788. ReviewWindow
  789. NoLimit
  790. ReviewTimeX
  791. Please enter a number.{
  792. ReviewTimeX
  793. Please enter a whole number which is greater than zero.
  794.     3S4S6S8S16S21S25S26S28S33S
  795. ReviewTime
  796. day(s)
  797. SaveChoices
  798. SaveChoices
  799. Save choices for next time. | 1
  800. Categori_ze
  801. _Edit Document
  802. Send Docu_ment
  803. _Forward
  804. _Move to Folder...
  805. _Remove from Folder$
  806. '++LotusScript Development Environment:2:5:(Options):0:74
  807. Option Public
  808. '++LotusScript Development Environment:2:5:(Forward):0:1
  809. Declare Sub InitializeDocument(source)
  810. Declare Sub InitializeStatusList
  811. Declare Sub RebuildList(InputList As Variant)
  812. Declare Sub SetReviewerLists
  813. Declare Sub SendNotification
  814. Declare Sub InitiateReview(source)
  815. Declare Sub GetReviewSequence
  816. Declare Sub ResetAuthorNames
  817. '++LotusScript Development Environment:2:5:(Declarations):0:10
  818. '***** OBJECT VARIABLES *****
  819. Dim s As NotesSession
  820. Dim w As NotesUIWorkspace
  821. Dim doc As NotesUIDocument
  822. Dim db As NotesDatabase
  823. Dim note As NotesDocument
  824. Dim tempnote As NotesDocument
  825. Dim maildoc As NotesDocument
  826. Dim parent As NotesDocument
  827. Dim child As NotesDocument
  828. Dim children As NotesDocumentCollection
  829. Dim item As NotesItem
  830. Dim rtitem As NotesRichTextItem
  831. Dim dt As NotesDateTime
  832. '***** DATA VARIABLES - FIELDS DEFINED ON FORM*****
  833. Dim ReviewStyle As Variant
  834. Dim ReviewSeq As Variant
  835. Dim Reviewers As Variant
  836. Dim PreviousReviewers As Variant
  837. Dim FutureReviewers As Variant
  838. Dim CurrentReviewers As Variant
  839. Dim DocumentAuthors As Variant
  840. Dim Originator As Variant
  841. Dim Versioning As Variant
  842. '***** DATA VARIABLE - FIELDS DEFINED IN SCRIPT, NOT DEFINED ON FORM
  843. Dim Status As Variant
  844. Dim Locked As Variant
  845. Dim InProcess As Variant
  846. '***** SCRIPT PROCESSING VARIABLES *****
  847. Dim ReviewerList() As Variant
  848. Dim OldList() As Variant
  849. Dim InputList As Variant
  850. Dim NewList() As Variant
  851. Dim ListMax As Integer
  852. Dim tmpList As Variant
  853. Dim CompareValue As Variant
  854. Dim Elements As Integer
  855. Dim DocWasSaved As Integer
  856. Dim ParentIsLocked As Integer
  857. Dim DocIsLocked As Integer
  858. Dim LockedBy As Variant
  859. Dim InitiatingReview As Integer
  860. Dim CompareValueFound As Integer
  861. Dim FinalSave As Variant
  862. '***** TEMP PROCESSING FIELDS - ADDED TO DOC ON OPEN, DELETED ON CLOSE*****
  863. Dim CurrentUser As String
  864. Dim Action As Variant
  865. Dim StatusList(1 To 4) As Variant
  866. '++LotusScript Development Environment:2:2:InitializeDocument:1:8
  867. Sub InitializeDocument(source)
  868.      
  869. 'This routine initializes object variables, global variables and some field values     
  870.      
  871. 'Turn off Autoreload to speed up response time (this means we need to do manual reloads and refreshes)
  872.      source.AutoReload = False
  873.      
  874.      Set w = New NotesUIWorkspace
  875.      Set s = New NotesSession
  876.      Set db = s.CurrentDatabase
  877.      Set note = source.Document
  878.      
  879.      CurrentUser = s.CommonUserName
  880.      note.tmpCurrentUser = CurrentUser
  881.      Originator = note.From
  882.      
  883.      InitializeStatusList
  884.      If source.IsNewDoc Then
  885.           note.Status = StatusList(1)
  886.           note.Scope = "Public"
  887.      Else
  888.           If note.Locked(0) <> "" Then
  889.                DocIsLocked = True
  890.                LockedBy = note.Locked
  891.           End If
  892.      End If
  893.      
  894. 'Initialize V3 documents
  895.      If Not(note.HasItem("Status")) Then
  896.           note.Status = StatusList(1)
  897.           note.Scope = "Public"
  898.           note.DocumentAuthors = s.CommonUserName
  899.           note.From = Evaluate("@Name([CN]; From)", note)
  900.      End If
  901.      
  902. 'Clear the status bar     
  903.      Print
  904.      
  905. End Sub
  906. '++LotusScript Development Environment:2:2:InitializeStatusList:1:8
  907. Sub InitializeStatusList
  908.      
  909. 'Statuses are referred to positionally.  If you want the works to display differently in the view (like if you want the first
  910. 'status to be None instead of New) you would change them here.     
  911.      StatusList(1) = "New"
  912.      StatusList(2) = "Ready for Review"
  913.      StatusList(3) = "In Review"
  914.      StatusList(4) = "Review Complete"
  915.      
  916.      note.StatusList = StatusList
  917.      
  918. End Sub
  919. '++LotusScript Development Environment:2:2:RebuildList:1:8
  920. Sub RebuildList(InputList As Variant)
  921.      
  922. 'This routine removes a value from a list (passed by reference)
  923.      
  924.      ListMax = Ubound(InputList)
  925.      
  926. 'Save original capitalization in OldList then lowercase both InputList and CompareValue     
  927.      Redim OldList (ListMax)
  928.      For i = 0 To ListMax
  929.           OldList(i) = InputList(i)
  930.           InputList(i) = Lcase(InputList(i))
  931.      Next
  932.      CompareValue = Lcase(CompareValue)
  933.      
  934.      Redim NewList (ListMax)
  935.      x = 0 
  936.      For y = 0 To ListMax
  937.           If InputList(y) <> CompareValue Then
  938.                NewList(x) = OldList(y)
  939.                x = x + 1
  940.           End If
  941.      Next
  942.      
  943.      If x > 0 Then
  944.           Redim Preserve NewList(x-1)
  945.           tmpList = NewList
  946.      Else
  947.           tmpList = "None"
  948.      End If
  949.      
  950.      If x = ListMax Then
  951.           CompareValueFound = True
  952.      Else
  953.           CompareValueFound = False
  954.      End If
  955.      
  956. End Sub
  957. '++LotusScript Development Environment:2:2:SetReviewerLists:1:8
  958. Sub SetReviewerLists
  959.      
  960.      Print "Updating Reviewer Lists"
  961.      
  962.    For a Parallel submit, set CurrentReviewers to the Reviewers field (there are no
  963.       FutureReviewers - all reviewers are current) and set FutureReviewers to "None".
  964.    For a Parallel review, remove CurrentUser from CurrentReviewers and add it to
  965.       PreviousReviewers.
  966.    For a Serial submit, set CurrentReviewers to the first Reviewer and set FutureReviewers
  967.       to the Reviewers field minus the first Reviewer
  968.    For a Serial review remove CurrentUser from FutureReviewers and add it to
  969.       PreviousReviewers.
  970. %ENDREM
  971.      
  972.      ListMax = 0
  973.      Set dt = New NotesDateTime("Today")
  974.      dt.SetNow
  975.      If Action(0) = "Complete" Then ReviewerLogEntry = CurrentUser & " on " & Format(dt.LSLocalTime, "Short Date")
  976.      
  977.      Select Case ReviewSeq
  978.      Case "Parallel"
  979. 'On submit Set future reviewers to None since all reviewers are current          
  980.           If Action(0) = "Submit" Then
  981.                Reviewers = note.Reviewers            
  982.                tmpList = Reviewers
  983.                note.FutureReviewers = "None"
  984.           Else
  985. '(this is for action = Complete)               
  986. 'For Response Reviews, we maintain the status in the parent               
  987.                If note.IsResponse Then
  988.                     CurrentReviewers = parent.CurrentReviewers
  989.                     Set item = parent.GetFirstItem("ReviewerLog")
  990.                Else
  991.                     CurrentReviewers = note.CurrentReviewers
  992.                     Set item = note.GetFirstItem("ReviewerLog")
  993.                End If
  994.                item.AppendToTextList(ReviewerLogEntry)              
  995.                CompareValue = CurrentUser
  996. 'Remove the CurrentUser from the CurrentReviewers list               
  997.                Call RebuildList(CurrentReviewers)
  998.           End If
  999.           FieldName = "CurrentReviewers"
  1000.      Case "Serial"
  1001. 'On submit, put all reviewers in the future reviewers list          
  1002.           If Action(0) = "Submit" Then
  1003.                Reviewers = note.Reviewers
  1004.                tmpList = Reviewers
  1005.                Call note.ReplaceItemValue("FutureReviewers", tmpList)
  1006.           Else
  1007.                Set item = note.GetFirstItem("ReviewerLog")
  1008.                item.AppendToTextList(ReviewerLogEntry)
  1009.           End If
  1010.           FutureReviewers = note.FutureReviewers
  1011. 'Put the first person in the future reviewers list in current reviewer
  1012. 'On submit this makes the first one current, on Complet it makes the next one current          
  1013.           note.CurrentReviewers = FutureReviewers(0)
  1014.           CompareValue = FutureReviewers(0)
  1015.           FieldName = "FutureReviewers"
  1016. 'Remove the first element from the FutureReviewers list
  1017.           Call RebuildList(FutureReviewers)
  1018.      End Select
  1019.      
  1020. 'Calculate when the review is due, based upon ReviewTime     
  1021.      ReviewTime = note.ReviewTime
  1022.      temp = ReviewTime(0)
  1023.      Set dt = New NotesDateTime("Today")
  1024.      If Isnumeric(ReviewTime(0)) Then dt.AdjustDay(temp)
  1025.      
  1026. 'Update DueDate - If there is a Review time then reset, otherwise delete
  1027. 'Update PreviousReviewers to None if this is a submit, otherwise add CurrentUser to existing list
  1028.      If note.IsResponse And ReviewSeq = "Parallel" Then
  1029.           If Isnumeric(ReviewTime(0)) Then
  1030.                parent.DueDateTime = dt.LSLocalTime
  1031.           Else
  1032.                parent.RemoveItem("DueDateTime")
  1033.           End If
  1034.           Call parent.ReplaceItemValue(FieldName, tmpList)
  1035.           PreviousReviewers = parent.PreviousReviewers
  1036.           If PreviousReviewers(0) = "None" Then
  1037.                parent.PreviousReviewers = CurrentUser
  1038.           Else
  1039.                Set item = parent.GetFirstItem("PreviousReviewers")
  1040.                item.AppendToTextList (CurrentUser)
  1041.           End If
  1042. 'In a response review, we remove these because they are stored in the main doc          
  1043.           note.RemoveItem("PreviousReviewers")
  1044.           note.RemoveItem("CurrentReviewers")
  1045.           note.RemoveItem("FutureReviewers")
  1046.           If Action(0) = "Complete" Then
  1047.                note.RemoveItem("DueDateTime")
  1048.                note.Status = StatusList(4)
  1049.           End If
  1050.      Else
  1051.           If Isnumeric(ReviewTime(0)) Then 
  1052.                note.DueDateTime = dt.LSLocalTime
  1053.           Else
  1054.                note.RemoveItem("DueDateTime")
  1055.           End If
  1056.           Call note.ReplaceItemValue(FieldName, tmpList)
  1057.           If Action(0) = "Submit" Then
  1058.                note.PreviousReviewers = "None"
  1059.           Else
  1060.                PreviousReviewers = note.PreviousReviewers
  1061.                If PreviousReviewers(0) = "None" Then
  1062.                     note.PreviousReviewers = CurrentUser
  1063.                Else              
  1064.                     Set item = note.GetFirstItem("PreviousReviewers")
  1065.                     item.AppendToTextList (CurrentUser)
  1066.                End If
  1067.           End If
  1068.      End If
  1069.      
  1070. End Sub 
  1071. '++LotusScript Development Environment:2:2:SendNotification:1:8
  1072. Sub SendNotification
  1073.      
  1074. 'This routine sets the content of the notification email, based upon values set in SetReviewerLists.     
  1075.      
  1076.      If note.IsResponse Then
  1077.           CurrentReviewers = parent.CurrentReviewers
  1078.      Else
  1079.           CurrentReviewers = note.CurrentReviewers
  1080.      End If
  1081.      DbTitle = db.Title
  1082.      DueDateTime = note.DueDateTime
  1083.      Subject = note.Subject
  1084.      Recipient = Empty
  1085.      NotifyAfter = note.NotifyAfter
  1086.      
  1087. 'If it is a parallel review with only final notification to the originator, 
  1088. 'there is not need to send mail on a normal completion     
  1089.      If (ReviewSeq = "Parallel") And (CurrentReviewers(0) <> "None") _
  1090.      And (NotifyAfter(0) = "Final") And (Action(0) <> "Submit") Then
  1091.           Exit Sub
  1092.      Else
  1093.           Print "Sending Notification"
  1094.      End If
  1095.      
  1096.      Set maildoc = New NotesDocument(db)
  1097.      Set rtitem = New NotesRichTextItem(maildoc, "Body")
  1098.      
  1099.      Select Case Action(0)
  1100.      Case "Submit"
  1101.           tmpList = CurrentReviewers
  1102.           tmpSubject = "Document Requires Review:  " & Subject(0)
  1103.           If note.HasItem("DueDateTime") Then
  1104.                tmpFlowStatus = "Please take the time to review this document before the due date shown below."              
  1105.           Else
  1106.                tmpFlowStatus = "Please take the time to review this document."
  1107.           End If
  1108.           tmpMessagebox = "Request for review has been sent to "
  1109.           If ReviewSeq = "Parallel" Then
  1110.                tmpRecipient = "All Reviewers"
  1111.           Else
  1112.                tmpRecipient = CurrentReviewers(0)         
  1113.           End If
  1114.      Case "Complete"
  1115.           If CurrentReviewers(0) = "None" Then
  1116.                tmpList = Originator(0)
  1117.                tmpSubject = "Review is complete for:  " & Subject(0)
  1118.                tmpFlowStatus = "All reviewers have completed their work on this document."
  1119.                tmpMessagebox = "Notification that you have completed your review has been sent to the originator: "               
  1120.           Else
  1121.                Select Case ReviewSeq
  1122.                Case "Parallel"     
  1123.                     tmpList = Originator(0)              
  1124.                     tmpFlowStatus = CurrentUser & " is finished reviewing this document."              
  1125.                     tmpSubject = CurrentUser & " has completed review of:  " & Subject(0)
  1126.                     tmpMessagebox = "Notification that you have completed your review has been sent to the originator, "
  1127.                Case "Serial"
  1128.                     tmpList = CurrentReviewers(0)
  1129.                     tmpSubject = "Document Requires Review:  " & Subject(0)
  1130.                     If note.HasItem("DueDateTime") Then
  1131.                          tmpFlowStatus = Originator(0) & " requests that you review this document before the due date shown below."            
  1132.                     Else
  1133.                          tmpFlowStatus = Originator(0) & " requests that you review this document."              
  1134.                     End If
  1135.                     tmpMessagebox = "Notification that you have completed your review has been sent to "               
  1136.                     If NotifyAfter(0) = "Each" Then 
  1137.                          maildoc.CopyTo = Originator(0)
  1138.                          tmpRecipient = tmpList & " and " & Originator(0)
  1139.                     End If
  1140.                End Select
  1141.           End If
  1142.           If tmpRecipient = "" Then tmpRecipient = tmpList
  1143.      End Select
  1144.      
  1145.      Call maildoc.AppendItemValue("SendTo", tmpList)
  1146.      
  1147.      maildoc.Subject = tmpSubject
  1148.      maildoc.InheritedSubject = Subject(0)
  1149.      maildoc.InheritedDbTitle = DbTitle
  1150.      maildoc.FlowStatus = tmpFlowStatus
  1151.      If note.HasItem("DueDateTime") Then maildoc.DueDateTime = Format(DueDateTime(0), "Short Date")
  1152.      
  1153.      If note.IsResponse Then
  1154.           Call rtitem.AppendDocLink(parent, "DocLink to " & Subject(0))
  1155.      Else
  1156.           Call rtitem.AppendDocLink(note, "DocLink to " & Subject(0))
  1157.      End If
  1158.      
  1159.      maildoc.Form = "Bookmark"
  1160.      
  1161.      On Error Goto SendError
  1162.      Call maildoc.Send (False)
  1163.      
  1164.      Messagebox tmpMessagebox & tmpRecipient & ".", 0 + 64, "Document Library"
  1165.      
  1166.      Exit Sub
  1167.      
  1168. SendError:
  1169.      Messagebox "FYI:  " & tmpRecipient & " could not be notified via email at this time.", 0 + 64, "Document Library"
  1170.      Exit Sub
  1171.      
  1172. End Sub
  1173. '++LotusScript Development Environment:2:2:InitiateReview:1:8
  1174. Sub InitiateReview(source)
  1175.      
  1176. 'This routine does the versioning that occurs when a review in initiated (as opposed to on every save)     
  1177.      InProcess = note.InProcess
  1178.      Reviewers = note.Reviewers
  1179.      PreviousReviewers = note.PreviousReviewers
  1180.      
  1181. 'Check to see if CurrentUser is in the InProcess list.  If they are (or if this is the originator) then do not do versioning     
  1182.      Redim ReviewerList(0) 
  1183.      Forall n In InProcess
  1184.           If CurrentUser = n Then ReviewerList(0) = CurrentUser
  1185.      End Forall
  1186.      
  1187. 'Find out what kind of review we are processing     
  1188.      GetReviewSequence
  1189.      
  1190.      If ReviewerList(0) = CurrentUser Or CurrentUser = Originator(0) Then Exit Sub
  1191.      Print "Initiating Review"
  1192.      
  1193. 'Set the $VersionOpt appropriately
  1194.      If (Versioning = "Versions") Then
  1195.           If ReviewSeq = "Parallel" Then
  1196. 'This doc becomes a response (we are subsequently editting the response doc)
  1197.                VersionOpt = "1"
  1198.           Else
  1199. 'Previous versions become response (we are still editing the main doc)               
  1200.                VersionOpt = "3"
  1201.           End If
  1202.      Else
  1203. 'The original doc is saved as a response (for safe keeping)          
  1204.           If PreviousReviewers(0) = "None" And Not(note.HasItem("$VersionOpt")) Then VersionOpt = "3"
  1205.      End If
  1206.      
  1207. 'Reset the field
  1208.      If (Versioning = "Versions") Or (PreviousReviewers(0) = "None") Then Call note.ReplaceItemValue("$VersionOpt", VersionOpt)
  1209.      
  1210. 'CurrentUser is now on the InProcess list because they are actively reviewing the doc     
  1211.      Set item = note.GetFirstItem("InProcess")
  1212.      If item Is Nothing Then
  1213.           Call note.AppendItemValue("InProcess", CurrentUser)
  1214.      Else
  1215.           item.AppendToTextList(CurrentUser)
  1216.      End If
  1217.      
  1218. 'InitiatingReview flag tells the Querysave event how to process, reload from the backend, 
  1219. 'and save from the front end to create the appropriate version     
  1220.      InitiatingReview = True
  1221.      source.Reload
  1222.      If VersionOpt = 1 Or VersionOpt = 3 Then
  1223.           source.Refresh
  1224.           source.SaveNewVersion
  1225.      End If
  1226.      source.RefreshHideFormulas
  1227.      InitiatingReview = False
  1228.      
  1229.      Print
  1230.      
  1231. End Sub
  1232. '++LotusScript Development Environment:2:2:GetReviewSequence:1:8
  1233. Sub GetReviewSequence
  1234.      
  1235. 'ReviewSequence is stored in a manner that makes sense to users.  Here it is dealt with as serial or parallel,
  1236. 'with or without versioning.
  1237.      
  1238.      ReviewStyle = note.ReviewStyle
  1239.      
  1240.      position = Instr(ReviewStyle(0), ".")
  1241.      ReviewSeq = Left(ReviewStyle(0), position - 1)
  1242.      Versioning = Mid(ReviewStyle(0), position + 1)    
  1243.      
  1244. End Sub
  1245. '++LotusScript Development Environment:2:2:ResetAuthorNames:1:8
  1246. Sub ResetAuthorNames
  1247.      
  1248.      Select Case ReviewSeq
  1249.      Case "Serial"
  1250. 'Reset author names to CurrentReviewers + Originator (unless CurrentReviewers = "None")
  1251.           If CurrentReviewers(0) = "None" Then
  1252.                note.DocumentAuthors = Originator(0)
  1253.           Else
  1254.                CompareValue = Empty
  1255.                Call RebuildList(CurrentReviewers)
  1256.                Redim Preserve NewList(ListMax+1)
  1257.                NewList(ListMax+1) = Originator(0)
  1258.                tmpList = NewList
  1259.                note.DocumentAuthors = tmpList
  1260.           End If
  1261. 'If there are versions, remove it from them as well          
  1262.           If note.HasItem("$VersionOpt") Then
  1263.                Set children = note.Responses
  1264.                For c = 1 To children.Count
  1265.                     Set child = children.GetNthDocument(c)
  1266.                     child.DocumentAuthors = Originator(0)
  1267.                     If child.DocumentReaders(0) = "" Then child.RemoveItem("DocumentReaders")
  1268. 'It does not matter if it can not be saved because CurrentUser may not be in the AuthorNames field in all responses
  1269.                     On Error Resume Next
  1270.                     child.Save True, True
  1271.                     Err = 0
  1272.                Next
  1273.           End If
  1274.      Case "Parallel"
  1275.           If note.IsResponse Then
  1276. 'If all done we are updating the parent and the originator is the only editor
  1277. 'otherwise CurrentUser and originator are the editors of this doc
  1278.                If Action(0) = "Complete" Then
  1279.                     note.DocumentAuthors = Originator(0)
  1280.                     parentid = note.ParentDocumentUNID
  1281.                     Set parent = db.GetDocumentByUNID(parentid)
  1282.                     DocumentAuthors = parent.DocumentAuthors
  1283.                     CompareValue = CurrentUser
  1284.                     Call RebuildList(DocumentAuthors)
  1285.                     parent.DocumentAuthors = tmpList
  1286.                     If parent.DocumentReaders(0) = "" Then parent.RemoveItem("DocumentReaders")
  1287.                     parent.Save True, True
  1288.                Else
  1289.                     Redim NewList(1)
  1290.                     NewList(0) = CurrentUser
  1291.                     NewList(1) = Originator(0)
  1292.                     tmpList = NewList
  1293.                     note.DocumentAuthors = tmpList
  1294.                End If
  1295.           Else
  1296. 'If we are not versioning - then all current reviewers and the originator are editors (unless CurrentReviewer = "None")
  1297.                If CurrentReviewers(0) = "None" Then
  1298.                     note.DocumentAuthors = Originator(0)
  1299.                Else
  1300.                     CompareValue = Empty
  1301.                     Call RebuildList(CurrentReviewers)
  1302.                     Redim Preserve NewList(ListMax+1)
  1303.                     NewList(ListMax+1) = Originator(0)
  1304.                     tmpList = NewList
  1305.                     note.DocumentAuthors = tmpList
  1306.                End If
  1307. 'If there are versions, remove it from them as well          
  1308.                If note.HasItem("$VersionOpt") Then
  1309.                     Set children = note.Responses
  1310.                     For c = 1 To children.Count
  1311.                          Set child = children.GetNthDocument(c)
  1312.                          child.DocumentAuthors = Originator(0)
  1313.                          If child.DocumentReaders(0) = "" Then child.RemoveItem("DocumentReaders")
  1314.                          child.RemoveItem("Locked")
  1315. 'It does not matter if it can not be saved because CurrentUser may not be in the AuthorNames field in all responses
  1316.                          On Error Resume Next
  1317.                          child.Save True, True
  1318.                          Err = 0
  1319.                     Next
  1320.                End If
  1321.           End If
  1322.      End Select
  1323.      
  1324. End Sub
  1325. K$    Qh
  1326. K$    Qh
  1327. DocumentWorkflow'++LotusScript Development Environment:2:5:(Options):0:66
  1328. '++LotusScript Development Environment:2:5:(Forward):0:1
  1329. Declare Sub Queryopen(Source As Notesuidocument, Mode As Integer, Isnewdoc As Variant, Continue As Variant)
  1330. Declare Sub Postopen(Source As Notesuidocument)
  1331. Declare Sub Querymodechange(Source As Notesuidocument, Continue As Variant)
  1332. Declare Sub Postmodechange(Source As Notesuidocument)
  1333. Declare Sub Querysave(Source As Notesuidocument, Continue As Variant)
  1334. Declare Sub Queryclose(Source As Notesuidocument, Continue As Variant)
  1335. '++LotusScript Development Environment:2:5:(Declarations):0:2
  1336. '++LotusScript Development Environment:2:2:BindEvents:1:129
  1337. Private Sub BindEvents(Byval Objectname_ As String)
  1338.      Static Source As NOTESUIDOCUMENT
  1339.      Set Source = Bind(Objectname_)
  1340.      On Event Queryopen From Source Call Queryopen
  1341.      On Event Postopen From Source Call Postopen
  1342.      On Event Querymodechange From Source Call Querymodechange
  1343.      On Event Postmodechange From Source Call Postmodechange
  1344.      On Event Querysave From Source Call Querysave
  1345.      On Event Queryclose From Source Call Queryclose
  1346. End Sub
  1347. '++LotusScript Development Environment:2:2:Queryopen:1:12
  1348. Sub Queryopen(Source As Notesuidocument, Mode As Integer, Isnewdoc As Variant, Continue As Variant)
  1349.      
  1350. 'If it is a new doc, there is no note yet, so we cannot initialize it from here
  1351.      If IsNewDoc Then Exit Sub
  1352.      
  1353.      Call InitializeDocument(source)    
  1354.      
  1355.      If Mode = 1 Then
  1356.           If DocIsLocked Then
  1357.                Messagebox "This document is being edited by " & LockedBy(0) & ".  Please try later.",_
  1358.                0 + 48, "Document Library"
  1359.                Continue = False
  1360.           Else
  1361. 'If this is a Document Reservations review, then lock this doc     
  1362.                If note.ReviewStyle(0) = "Parallel.NoVersions" Then
  1363.                     note.Locked = CurrentUser
  1364.                     note.DocumentAuthors = CurrentUser
  1365.                     If note.DocumentReaders(0) = "" Then note.RemoveItem("DocumentReaders")
  1366.                     On Error Goto SaveError
  1367.                     note.save True, True
  1368.                End If
  1369.           End If
  1370.      End If
  1371.      
  1372.      Exit Sub
  1373.      
  1374. SaveError:
  1375.      
  1376.      Messagebox "This document is currently in use.  Please try later.",_
  1377.      0 + 48, "Document Library"
  1378.      Continue = False
  1379.      Exit Sub
  1380.      
  1381. End Sub
  1382. '++LotusScript Development Environment:2:2:Postopen:1:12
  1383. Sub Postopen(Source As Notesuidocument)
  1384.      
  1385. 'This allows us to reference the UI Document in areas where source represents a different object     
  1386.      Set doc = source
  1387.      
  1388. 'If it is a new doc, we initialize it here.  Existing docs are initialized in Queryopen because it is faster (one less refresh is required)    
  1389.      If source.IsNewDoc Then
  1390.           Call InitializeDocument(source)
  1391.           source.Reload
  1392.           source.RefreshHideFormulas
  1393.      Else
  1394. 'If the doc was opened in edit mode, it may be a review initiation (this routine is also executed on mode change)         
  1395.           If source.EditMode = True Then
  1396.                Status = note.Status
  1397.                If Status(0) = StatusList(3) Then Call InitiateReview(source)
  1398.           End If         
  1399.      End If
  1400.      
  1401. End Sub
  1402. '++LotusScript Development Environment:2:2:Querymodechange:1:12
  1403. Sub Querymodechange(Source As Notesuidocument, Continue As Variant)
  1404.      
  1405. 'If the doc is locked, do not allow them to put in in edit mode     
  1406.      If source.EditMode = False And note.ReviewStyle(0) = "Parallel.NoVersions" Then
  1407.           If Not DocIsLocked Then
  1408.                SavedUNID = note.UniversalId
  1409.                Delete note
  1410.                Set tempnote = db.GetDocumentByUNID(SavedUNID)
  1411.                If tempnote.HasItem("Locked") Then 
  1412.                     DocIsLocked = True
  1413.                     LockedBy = tempnote.Locked
  1414.                End If                   
  1415.                Delete tempnote
  1416.                Set note = source.Document
  1417.           End If
  1418.           If DocIsLocked Then
  1419.                Messagebox "This document is being edited by " & LockedBy(0) & ".  Please try later.",_
  1420.                0 + 48, "Document Library"
  1421.                Continue = False
  1422.           Else
  1423.                note.Locked = CurrentUser
  1424.                note.DocumentAuthors = CurrentUser
  1425.                If note.DocumentReaders(0) = "" Then note.RemoveItem("DocumentReaders")
  1426.                On Error Goto SaveError
  1427.                note.save True, True
  1428.           End If
  1429.      End If
  1430.      
  1431.      Exit Sub
  1432.      
  1433. SaveError:
  1434.      
  1435.      Messagebox "This document is currently in use.  Please try later.",_
  1436.      0 + 48, "Document Library"
  1437.      Continue = False
  1438.      Exit Sub
  1439.      
  1440. End Sub
  1441. '++LotusScript Development Environment:2:2:Postmodechange:1:12
  1442. Sub Postmodechange(Source As Notesuidocument)
  1443.      
  1444. 'Putting the doc in edit mode might be a review initiation (this routine is also executed if the doc is opend in edit mode)
  1445.      If Source.EditMode = True Then
  1446.           Status = note.Status
  1447.           If Status(0) = StatusList(3) Then Call InitiateReview(source)
  1448.      End If
  1449.      
  1450. End Sub
  1451. '++LotusScript Development Environment:2:2:Querysave:1:12
  1452. Sub Querysave(Source As Notesuidocument, Continue As Variant)
  1453.      
  1454.      If FinalSave Then Exit Sub
  1455.      
  1456.      On Error Resume Next
  1457.      
  1458. 'All routing logic is driven from here.  The Action buttons set the tmpAction value which drives processing.
  1459.      Status = note.Status
  1460.      
  1461. 'If Subject is blank, be sure they enter it here     
  1462.      Subject = note.Subject
  1463.      If Subject(0) = "" Then
  1464.           Subject(0) = Inputbox("Please enter a Title for this document.", "Document Library", "(Untitled)")
  1465.           If Subject(0) = "" Then
  1466.                Continue = False
  1467.                Exit Sub
  1468.           End If
  1469.      End If
  1470.      note.Subject = Subject(0)
  1471.      
  1472. 'Be sure that versions do not get $Ref stripped off
  1473.      If note.IsResponse Then Call note.ReplaceItemValue("$RefOptions", "1")
  1474.      
  1475. 'InitiatingReview means that they are saving in order to generate a new version
  1476. 'Status 1 means there is no review cycle.  In both cases we don't need to execute the rest of the logic here.     
  1477.      If InitiatingReview Or Status(0) = StatusList(1) Then
  1478.           source.Reload
  1479.           Exit Sub
  1480.      Else
  1481.           Print "Saving Document"
  1482.      End If      
  1483.      
  1484. 'Find out which kind of a review we are doing     
  1485.      GetReviewSequence
  1486.      
  1487. 'Get the Action type and the Reviewer list     
  1488.      Action = note.tmpAction
  1489.      Reviewers = note.Reviewers
  1490.      
  1491. 'Decide how to process based on which Action button was pressed
  1492.      Select Case Action(0)
  1493. 'On Submit - build the current and future reviewer lists and send notification to the appropriate person(s)          
  1494.      Case "Submit"
  1495.           note.Status = StatusList(3)
  1496.           SetReviewerLists        
  1497.           SendNotification
  1498. 'On Completion of a review - if it is a response, lock the parent because we are going to update it
  1499.      Case "Complete"
  1500.           If note.IsResponse Then
  1501.                parentid = note.ParentDocumentUNID
  1502.                Set parent = db.GetDocumentByUNID(parentid)
  1503.                parent.Locked = CurrentUser
  1504.                ParentIsLocked = True
  1505.                parent.save True, True
  1506.           End If
  1507. 'Rebuild the previous, current, and future reviewer lists and send notificationto the appropriate person(s)
  1508.           SetReviewerLists
  1509.           SendNotification
  1510. 'Get the name of the person(s) currently reviewing this document (actively reviewing it means they have started
  1511. 'reviewing it, rather than just being on the CurrentReviewer list)          
  1512.           InProcess = note.InProcess
  1513.           CompareValue = CurrentUser
  1514. 'Pull CurrentUser out of the InProcess list          
  1515.           Call RebuildList(InProcess)
  1516.           Call note.ReplaceItemValue("InProcess", tmpList)
  1517.           CurrentReviewers = note.CurrentReviewers
  1518. 'If CurrentReviewers = None (already set in the SetReviewerLists routine) then all reviews are complete so reset status
  1519.           If CurrentReviewers(0) = "None" Then note.Status = StatusList(4)
  1520. 'If the parent is locked then unlock it          
  1521.           If ParentIsLocked Then
  1522.                CurrentReviewers = parent.CurrentReviewers
  1523.                If CurrentReviewers(0) = "None" Then
  1524.                     parent.Status = StatusList(4)
  1525.                     parent.RemoveItem("DueDate")
  1526.                End If
  1527.                parent.RemoveItem("Locked")
  1528.                ParentIsLocked = False
  1529.                parent.Save True, True
  1530.           End If
  1531.      End Select
  1532.      
  1533. 'Reset $VersionOpt to 0 to prevent further versioning
  1534.      If note.HasItem("$VersionOpt") Then Call note.ReplaceItemValue("$VersionOpt", "0")
  1535.      
  1536. 'Set the DocWasSaved flag so the Queryclose event knows about it     
  1537.      DocWasSaved = True
  1538.      
  1539.      source.Reload
  1540.      
  1541.      Print
  1542.      
  1543. End Sub
  1544. '++LotusScript Development Environment:2:2:Queryclose:1:12
  1545. Sub Queryclose(Source As Notesuidocument, Continue As Variant)
  1546.      
  1547.      On Error Goto ErrorRoutine
  1548.      
  1549. 'If the doc wasn't saved, we do not need to execute the rest of the logic in this event     
  1550.      If DocWasSaved Or note.Locked(0) <> "" Then    
  1551.           Print "Closing Document"
  1552.      Else
  1553.           Exit Sub
  1554.      End If
  1555.      
  1556.      Action = note.tmpAction
  1557.      
  1558. 'A backend save (note.save) saves every field that it knows about, which is every field on the form.  It does not
  1559. 'distinguish between ComputedForDisplay and data fields (the backend classes have no such UI constraints).
  1560. 'Consequently, we delete all ComputedForDisplay and other temporary fields     
  1561.      itemlist = note.Items
  1562.      Forall n In itemlist
  1563.           If Lcase(Left(n.Name, 3)) = "tmp" Then n.Remove
  1564.      End Forall
  1565.      Scope = note.Scope
  1566.      CurrentReviewers = note.CurrentReviewers
  1567.      Status = note.Status
  1568.      
  1569. 'We reset the author names here because the UI save has already occurred (so we can).
  1570. 'The new authornames will take effect the next time the doc is accessed.     
  1571.      If Scope(0) = "Public" Then note.RemoveItem("DocumentReaders")
  1572.      If Status(0) = StatusList(1) Or Status(0) = StatusList(2) Then
  1573.           note.DocumentAuthors = Originator(0)
  1574.      Else
  1575.           ResetAuthorNames
  1576.      End If
  1577.      
  1578.      If note.HasItem("SaveOptions") Then note.RemoveItem("SaveOptions")
  1579.      If note.Locked(0) = CurrentUser Then 
  1580.           note.RemoveItem("Locked")
  1581.      Else
  1582.           If DocIsLocked Then Exit Sub         
  1583.      End If
  1584.      
  1585.      FinalSave = True
  1586.      source.Reload
  1587.      source.Refresh
  1588.      source.Save
  1589.      
  1590.      w.ViewRefresh
  1591.      Print
  1592.      
  1593. ErrorRoutine:
  1594.      Exit Sub
  1595.      
  1596. End Sub
  1597. ,    ,    ,
  1598. `    `    p
  1599. [,    I$
  1600. -<    #8$
  1601.     DocumentWorkflow Subform
  1602.     :  This Subform includes the LotusScript, Actions, and hidden fields which are used in all versions of the Document form.
  1603.     Hidden Fields:-------------------------------------------------------------------
  1604. DocumentAuthors
  1605.     4S6S
  1606. DocumentAuthors
  1607. Scope
  1608. Private
  1609. Reviewers
  1610.     3S4S6S7S8S10SDocumentReaders
  1611. LastEditor
  1612. Mark PrivateF
  1613. Scope
  1614. Private
  1615.     1S2S3S
  1616. Scope
  1617. Private
  1618.     1S2S
  1619. Mark Public
  1620. Scope
  1621. Public
  1622.     1S2S3S
  1623. Scope
  1624. Public
  1625. Scope
  1626.     1S2S3S4S
  1627. Submit for Review
  1628. Reviewers
  1629. Reviewers
  1630.     1S2S3S
  1631. Reviewers
  1632. Document Library
  1633. Please indicate who should review this document.
  1634.     0RR6S7S9S15S17S21S
  1635. Reviewers
  1636. Froma
  1637. Document Library
  1638. The Originator cannot be on the reviewer list.
  1639.     0RR9S15S21S23S27S
  1640. tmpAction
  1641. Submit
  1642.     0RR1S2S3S
  1643. SaveOptions
  1644.     0R1S2S3S
  1645. GoToField causes any active embedded objects to de-activate
  1646.     0R1S
  1647.     0R4S
  1648.     0R7S12S>
  1649. Status
  1650. StatusListv
  1651.     5S7S8S
  1652. Setup Review Cycle
  1653. GetReviewCycle
  1654. Status
  1655. StatusList
  1656. ReviewCycle
  1657. ReviewStyle
  1658. ReviewWindow
  1659. ReviewTime
  1660. NotifyAfter
  1661. SaveChoices
  1662.     1S2S5S6S10S13S18S21S22S23S24S25S26S27S28S30S
  1663. ReviewCycle
  1664. GetReviewCycle
  1665. GetReviewCycle
  1666.     0RR1S2S5S6S8S10S14S
  1667. ReviewStyle
  1668. ReviewCycle
  1669. Serial.NoVersions
  1670. ReviewCycle
  1671.     0RR1S2S3S9S10S12S14S18S
  1672. ReviewWindow
  1673. ReviewCycle
  1674. NoLimit
  1675. ReviewCycle
  1676.     0R1S2S3S9S10S12S14S20S23S
  1677. ReviewTime
  1678. ReviewCycle
  1679. ReviewCycle
  1680.     0R1S2S3S9S10S12S14S20S23S
  1681. NotifyAfter
  1682. ReviewCycle
  1683. Final
  1684. ReviewCycle
  1685.     0R1S2S3S9S10S12S14S20S23S
  1686. SaveChoices
  1687. ReviewCycle
  1688. ReviewCycle
  1689.     0R1S2S3S9S10S12S14S18S
  1690. ReviewOptions
  1691. Review Cycle
  1692.     0RR10S12S13S15S20S
  1693. Status
  1694. StatusList
  1695.     0RR1S2S3S9S12S
  1696. ReviewCycle
  1697. SaveChoices
  1698. ReviewStyle
  1699. ReviewWindow
  1700. ReviewTime
  1701. NotifyAfter
  1702. SaveChoices
  1703.     0R1S2S3S6S7S9S11S14S15S16S17S18S19S20S21S23S
  1704. ReviewTime
  1705. ReviewWindow
  1706. NoLimit
  1707. ReviewTimeX
  1708.     0RR1S2S3S6S7S9S11S
  1709. tmpReviewUnits
  1710. ReviewWindow
  1711. NoLimit
  1712. day(s)
  1713.     0R1S2S3S6S7S9S11S
  1714. these are posted commands so that they do not execute until after the section is fully expanded (because the field it is going to is inside the section)
  1715.     0RR1S
  1716. Reviewers
  1717.     0R4S
  1718. tmpCurrentUser
  1719. Status
  1720. StatusListv
  1721.     1S2S6S8S9S13S15S16S
  1722. Clear Review Cycle
  1723. InReview
  1724. Status
  1725. StatusListv
  1726.     1S2S8S10S11S13S15S
  1727. ReviewerList
  1728. InReview
  1729. CurrentReviewers
  1730.     0R1S2S6S8S
  1731. Status
  1732. StatusList
  1733.     0RR1S2S3S7S
  1734. ReviewSequence
  1735. All Reviewers simultaneously
  1736.     0R1S2S3S
  1737. Versioning
  1738. Edit Original Document
  1739.     0R1S2S3S
  1740. NotifyAfter
  1741. Notify Originator after each Reviewer
  1742.     0R1S2S3S
  1743. Reviewers
  1744.     0R1S2S3S
  1745. PreviousReviewers
  1746.     0R1S2S3S
  1747. CurrentReviewers
  1748.     0R1S2S3S
  1749. FutureReviewers
  1750.     0R1S2S3S
  1751. $VersionOpt
  1752.     0R1S2S3S
  1753. InReview
  1754. ReviewerList
  1755. Review of document:  
  1756. Subject
  1757. I no longer require you to review this document.  Thank you for your efforts.
  1758. tmpCurrentUser"
  1759. Subject
  1760.     0RR4S8S10S12S13S14S16S18S19S20S24S26S27S28S29S33S35S36S37S38S40S41S42S45S
  1761. Document Library
  1762. The Review Cycle has been cleared.
  1763.     0RR4S6S
  1764. tmpCurrentUser
  1765. Status
  1766. StatusListv
  1767.     1S2S6S8S9S13S15S16S17S18S19S20S
  1768. My Review is Complete
  1769. tmpAction
  1770. Complete
  1771.     1S2S3S
  1772. SaveOptions
  1773.     0R1S2S3S
  1774. GoToField causes any active embedded objects to de-activate
  1775.     0RR1S
  1776.     0R4S
  1777.     0R7S12S4
  1778. tmpCurrentUser
  1779. InProcess
  1780. FBody
  1781. New 123 Worksheet
  1782. Subject
  1783.     4S6S
  1784. '++LotusScript Development Environment:2:5:(Options):0:66
  1785. Option Public
  1786. '++LotusScript Development Environment:2:5:(Forward):0:1
  1787. '++LotusScript Development Environment:2:5:(Declarations):0:10
  1788. Dim formdoc As NotesUIDocument
  1789.  123Worksheet Document'++LotusScript Development Environment:2:5:(Options):0:66
  1790. '++LotusScript Development Environment:2:5:(Forward):0:1
  1791. Declare Sub Postopen(Source As Notesuidocument)
  1792. '++LotusScript Development Environment:2:5:(Declarations):0:2
  1793. '++LotusScript Development Environment:2:2:BindEvents:1:129
  1794. Private Sub BindEvents(Byval Objectname_ As String)
  1795.      Static Source As NOTESUIDOCUMENT
  1796.      Set Source = Bind(Objectname_)
  1797.      On Event Postopen From Source Call Postopen
  1798. End Sub
  1799. '++LotusScript Development Environment:2:2:Postopen:1:12
  1800. Sub Postopen(Source As Notesuidocument)
  1801.      Set formdoc = source
  1802. End Sub
  1803. '++LotusScript Development Environment:2:5:(Options):0:66
  1804. '++LotusScript Development Environment:2:5:(Forward):0:1
  1805. Declare Sub Exiting(Source As Field)
  1806. '++LotusScript Development Environment:2:5:(Declarations):0:2
  1807. '++LotusScript Development Environment:2:2:BindEvents:1:129
  1808. Private Sub BindEvents(Byval Objectname_ As String)
  1809.      Static Source As FIELD
  1810.      Set Source = Bind(Objectname_)
  1811.      On Event Exiting From Source Call Exiting
  1812. End Sub
  1813. '++LotusScript Development Environment:2:2:Exiting:1:12
  1814. Sub Exiting(Source As Field)
  1815.      formdoc.refresh
  1816. End Sub
  1817. DocumentWorkflow
  1818.     DocumentWorkflow Subform
  1819.     :  This Subform includes the LotusScript, Actions, and hidden fields which are used in all versions of the Document form.
  1820.     Hidden Fields:-------------------------------------------------------------------
  1821. DocumentAuthors
  1822.     4S6S
  1823. DocumentAuthors
  1824. Scope
  1825. Private
  1826. Reviewers
  1827.     3S4S6S7S8S10SDocumentReaders
  1828. LastEditor
  1829. _ViewIcon
  1830. Scope
  1831. Public
  1832.     1S2S
  1833. <a>7`^
  1834. `!bb!R
  1835. Title:
  1836. Subject
  1837.     0S0E
  1838. SubjectRequired: description of this document 
  1839.     Created by:    
  1840. FromDocument author name
  1841.      on 
  1842. DateThe date/time when the document was composed
  1843.      at 
  1844. TimeCreated
  1845.     Category
  1846. Miscellaneous
  1847. Categories
  1848. You must enter a category for your document
  1849.     3S4S6S11SCategoriesPress ENTER for list of keywords or to add a new keyword
  1850. ($All)
  1851.     4S6S
  1852. Status
  1853. StatusListv
  1854.     4S6S7S8S9S
  1855.     Reviewers:    
  1856. Reviewers
  1857. Reviewers
  1858. Reviewers
  1859. Status
  1860. StatusListv
  1861. PreviousReviewers
  1862.     4S6S7S8S9S10S11S12S13S
  1863.     Previous reviewers:
  1864. PreviousReviewers
  1865. PreviousReviewers
  1866. Status
  1867. StatusListv
  1868.     4S6S7S8S9S
  1869.     Current reviewer:    
  1870. CurrentReviewers
  1871. CurrentReviewers
  1872. Status
  1873. StatusListv
  1874. FutureReviewers
  1875.     4S6S7S8S9S10S11S12S13S
  1876.     Future reviewers:
  1877. FutureReviewers
  1878. FutureReviewers
  1879. Status
  1880. StatusListv
  1881. Status
  1882. StatusListv
  1883.     4S6S7S8S9S13S15S16S17S18S
  1884.     Review type:
  1885. ReviewStyle
  1886. ReviewStyle
  1887. Serial review | Serial.NoVersionsSerial (keep all revisions) | Serial.VersionsDocument reservations | Parallel.NoVersionsResponse review | Parallel.Versions
  1888.     Deadline:
  1889. ReviewWindow
  1890. ReviewWindow
  1891. No time limit for each review | NoLimitMove to next reviewer after: | MoveOnKeep sending reminders after: | Reminder
  1892. ReviewTime
  1893. ReviewTime
  1894. ReviewWindow
  1895. NoLimit
  1896. day(s)
  1897.     3S4S6S8S
  1898. tmpReviewUnits
  1899.     Notification:
  1900. NotifyAfter
  1901. NotifyAfter
  1902. Notify originator after each reviewer | EachNotify originator after final reviewer | Final
  1903.     ....................
  1904. ReviewerLog
  1905.     1S2S3S4S
  1906. Reviewer Log
  1907. ReviewerLog
  1908.     1S2S
  1909. ReviewerLog
  1910. ReviewerLog
  1911. BodyEnter the text (or a description) of the document.
  1912. Closea 
  1913.     0S0E
  1914. _Edit Document
  1915. DocumentAuthors
  1916.     9S15S
  1917. Categori_ze8
  1918. _Forward
  1919. _Move to Folder...
  1920. _Remove from Folder
  1921. Send Docu_ment
  1922. New Freelance Presentation
  1923. Subject
  1924.     4S6S
  1925. '++LotusScript Development Environment:2:5:(Options):0:66
  1926. Option Public
  1927. '++LotusScript Development Environment:2:5:(Forward):0:1
  1928. '++LotusScript Development Environment:2:5:(Declarations):0:10
  1929. Dim formdoc As NotesUIDocument
  1930.  Freelance Document'++LotusScript Development Environment:2:5:(Options):0:66
  1931. '++LotusScript Development Environment:2:5:(Forward):0:1
  1932. Declare Sub Postopen(Source As Notesuidocument)
  1933. '++LotusScript Development Environment:2:5:(Declarations):0:2
  1934. '++LotusScript Development Environment:2:2:BindEvents:1:129
  1935. Private Sub BindEvents(Byval Objectname_ As String)
  1936.      Static Source As NOTESUIDOCUMENT
  1937.      Set Source = Bind(Objectname_)
  1938.      On Event Postopen From Source Call Postopen
  1939. End Sub
  1940. '++LotusScript Development Environment:2:2:Postopen:1:12
  1941. Sub Postopen(Source As Notesuidocument)
  1942.      Set formdoc = source
  1943. End Sub
  1944. '++LotusScript Development Environment:2:5:(Options):0:66
  1945. '++LotusScript Development Environment:2:5:(Forward):0:1
  1946. Declare Sub Exiting(Source As Field)
  1947. '++LotusScript Development Environment:2:5:(Declarations):0:2
  1948. '++LotusScript Development Environment:2:2:BindEvents:1:129
  1949. Private Sub BindEvents(Byval Objectname_ As String)
  1950.      Static Source As FIELD
  1951.      Set Source = Bind(Objectname_)
  1952.      On Event Exiting From Source Call Exiting
  1953. End Sub
  1954. '++LotusScript Development Environment:2:2:Exiting:1:12
  1955. Sub Exiting(Source As Field)
  1956.      formdoc.refresh
  1957. End Sub
  1958. DocumentWorkflow
  1959.     DocumentWorkflow Subform
  1960.     :  This Subform includes the LotusScript, Actions, and hidden fields which are used in all versions of the Document form.
  1961.     Hidden Fields:-------------------------------------------------------------------
  1962. DocumentAuthors
  1963.     4S6S
  1964. DocumentAuthors
  1965. Scope
  1966. Private
  1967. Reviewers
  1968.     3S4S6S7S8S10SDocumentReaders
  1969. LastEditor
  1970. _ViewIcon
  1971. Scope
  1972. Public
  1973.     1S2S
  1974. <a>7`^
  1975. `!bb!R
  1976. Title:
  1977. Subject
  1978.     0S0E
  1979. SubjectRequired: description of this document 
  1980.     Created by:    
  1981. FromDocument author name
  1982.      on 
  1983. DateThe date/time when the document was composed
  1984.      at 
  1985. TimeCreated
  1986.     Category
  1987. Miscellaneous
  1988. Categories
  1989. You must enter a category for your document
  1990.     3S4S6S11SCategoriesPress ENTER for list of keywords or to add a new keyword
  1991. ($All)
  1992.     4S6S
  1993. Status
  1994. StatusListv
  1995.     4S6S7S8S9S
  1996.     Reviewers:    
  1997. Reviewers
  1998. Reviewers
  1999. Reviewers
  2000. Status
  2001. StatusListv
  2002. PreviousReviewers
  2003.     4S6S7S8S9S10S11S12S13S
  2004.     Previous reviewers:
  2005. PreviousReviewers
  2006. PreviousReviewers
  2007. Status
  2008. StatusListv
  2009.     4S6S7S8S9S
  2010.     Current reviewer:    
  2011. CurrentReviewers
  2012. CurrentReviewers
  2013. Status
  2014. StatusListv
  2015. FutureReviewers
  2016.     4S6S7S8S9S10S11S12S13S
  2017.     Future reviewers:
  2018. FutureReviewers
  2019. FutureReviewers
  2020. Status
  2021. StatusListv
  2022. Status
  2023. StatusListv
  2024.     4S6S7S8S9S13S15S16S17S18S
  2025.     Review type:
  2026. ReviewStyle
  2027. ReviewStyle
  2028. Serial review | Serial.NoVersionsSerial (keep all revisions) | Serial.VersionsDocument reservations | Parallel.NoVersionsResponse review | Parallel.Versions
  2029.     Deadline:
  2030. ReviewWindow
  2031. ReviewWindow
  2032. No time limit for each review | NoLimitMove to next reviewer after: | MoveOnKeep sending reminders after: | Reminder
  2033. ReviewTime
  2034. ReviewTime
  2035. ReviewWindow
  2036. NoLimit
  2037. day(s)
  2038.     3S4S6S8S
  2039. tmpReviewUnits
  2040.     Notification:
  2041. NotifyAfter
  2042. NotifyAfter
  2043. Notify originator after each reviewer | EachNotify originator after final reviewer | Final
  2044.     ....................
  2045. ReviewerLog
  2046.     1S2S3S4S
  2047. Reviewer Log
  2048. ReviewerLog
  2049.     1S2S
  2050. ReviewerLog
  2051. ReviewerLog
  2052. BodyEnter the text (or a description) of the document.
  2053. Close
  2054.     0S0E
  2055. _Edit Document
  2056. DocumentAuthors
  2057.     9S15S
  2058. Categori_ze
  2059. _Forward
  2060. _Move to Folder...
  2061. _Remove from Folder
  2062. Send Docu_ment
  2063. New WordPro Document
  2064. Subject
  2065.     4S6S
  2066. '++LotusScript Development Environment:2:5:(Options):0:66
  2067. Option Public
  2068. '++LotusScript Development Environment:2:5:(Forward):0:1
  2069. '++LotusScript Development Environment:2:5:(Declarations):0:10
  2070. Dim formdoc As NotesUIDocument
  2071.  WordPro Document'++LotusScript Development Environment:2:5:(Options):0:66
  2072. '++LotusScript Development Environment:2:5:(Forward):0:1
  2073. Declare Sub Postopen(Source As Notesuidocument)
  2074. '++LotusScript Development Environment:2:5:(Declarations):0:2
  2075. '++LotusScript Development Environment:2:2:BindEvents:1:129
  2076. Private Sub BindEvents(Byval Objectname_ As String)
  2077.      Static Source As NOTESUIDOCUMENT
  2078.      Set Source = Bind(Objectname_)
  2079.      On Event Postopen From Source Call Postopen
  2080. End Sub
  2081. '++LotusScript Development Environment:2:2:Postopen:1:12
  2082. Sub Postopen(Source As Notesuidocument)
  2083.      Set formdoc = source
  2084. End Sub
  2085. '++LotusScript Development Environment:2:5:(Options):0:66
  2086. '++LotusScript Development Environment:2:5:(Forward):0:1
  2087. Declare Sub Exiting(Source As Field)
  2088. '++LotusScript Development Environment:2:5:(Declarations):0:2
  2089. '++LotusScript Development Environment:2:2:BindEvents:1:129
  2090. Private Sub BindEvents(Byval Objectname_ As String)
  2091.      Static Source As FIELD
  2092.      Set Source = Bind(Objectname_)
  2093.      On Event Exiting From Source Call Exiting
  2094. End Sub
  2095. '++LotusScript Development Environment:2:2:Exiting:1:12
  2096. Sub Exiting(Source As Field)
  2097.      formdoc.refresh
  2098. End Sub
  2099. DocumentWorkflow
  2100.     DocumentWorkflow Subform
  2101.     :  This Subform includes the LotusScript, Actions, and hidden fields which are used in all versions of the Document form.
  2102.     Hidden Fields:-------------------------------------------------------------------
  2103. DocumentAuthors
  2104.     4S6S
  2105. DocumentAuthors
  2106. Scope
  2107. Private
  2108. Reviewers
  2109.     3S4S6S7S8S10SDocumentReaders
  2110. LastEditor
  2111. _ViewIcon
  2112. Scope
  2113. Public
  2114.     1S2S
  2115. <a>7`^
  2116. `!bb!R
  2117. Title:
  2118. Subject
  2119.     0S0E
  2120. SubjectRequired: description of this document 
  2121.     Created by:    
  2122. FromDocument author name
  2123.      on 
  2124. DateThe date/time when the document was composed
  2125.      at 
  2126. TimeCreated
  2127.     Category
  2128. Miscellaneous
  2129. Categories
  2130. You must enter a category for your document
  2131.     3S4S6S11SCategoriesPress ENTER for list of keywords or to add a new keyword
  2132. ($All)
  2133.     4S6S
  2134. Status
  2135. StatusListv
  2136.     4S6S7S8S9S
  2137.     Reviewers:    
  2138. Reviewers
  2139. Reviewers
  2140. Reviewers
  2141. Status
  2142. StatusListv
  2143. PreviousReviewers
  2144.     4S6S7S8S9S10S11S12S13S
  2145.     Previous reviewers:
  2146. PreviousReviewers
  2147. PreviousReviewers
  2148. Status
  2149. StatusListv
  2150.     4S6S7S8S9S
  2151.     Current reviewer:    
  2152. CurrentReviewers
  2153. CurrentReviewers
  2154. Status
  2155. StatusListv
  2156. FutureReviewers
  2157.     4S6S7S8S9S10S11S12S13S
  2158.     Future reviewers:
  2159. FutureReviewers
  2160. FutureReviewers
  2161. Status
  2162. StatusListv
  2163. Status
  2164. StatusListv
  2165.     4S6S7S8S9S13S15S16S17S18S
  2166.     Review type:
  2167. ReviewStyle
  2168. ReviewStyle
  2169. Serial review | Serial.NoVersionsSerial (keep all revisions) | Serial.VersionsDocument reservations | Parallel.NoVersionsResponse review | Parallel.Versions
  2170.     Deadline:
  2171. ReviewWindow
  2172. ReviewWindow
  2173. No time limit for each review | NoLimitMove to next reviewer after: | MoveOnKeep sending reminders after: | Reminder
  2174. ReviewTime
  2175. ReviewTime
  2176. ReviewWindow
  2177. NoLimit
  2178. day(s)
  2179.     3S4S6S8S
  2180. tmpReviewUnits
  2181.     Notification:
  2182. NotifyAfter
  2183. NotifyAfter
  2184. Notify originator after each reviewer | EachNotify originator after final reviewer | Final
  2185. Status
  2186. tmpStatusList
  2187. Status
  2188. tmpStatusList
  2189.     4S6S7S8S9S13S15S16S17S18S
  2190.     ....................
  2191. ReviewerLog
  2192.     1S2S3S4S
  2193. Reviewer Log
  2194. ReviewerLog
  2195.     1S2S
  2196. ReviewerLog
  2197. ReviewerLog
  2198. BodyEnter the text (or a description) of the document.
  2199. Closet 
  2200.     0S0E
  2201. _Edit Document
  2202. DocumentAuthors
  2203.     9S15S
  2204. Categori_ze$
  2205. _Forward
  2206. _Move to Folder...
  2207. _Remove from Folder@
  2208. Send Docu_ment
  2209. 12/07/95 10:31:18 AM Lotus Notes updated [-Default-]
  2210. rchiveManager
  2211. 09/29/95 12:09:14 PM Catherine Duffy/Iris updated LocalDomainServers
  2212. 09/29/95 12:09:10 PM Catherine Duffy/Iris updated -Default-
  2213. 09/28/95 08:36:04 PM Catherine Duffy/Iris deleted role ArchiveManager
  2214. 09/01/95 04:09:45 PM Lotus Notes updated [LocalDomainServers]
  2215. 09/01/95 04:09:38 PM Lotus Notes updated [OtherDomainServers]
  2216. 09/01/95 04:09:30 PM Lotus Notes updated LocalDomainServers
  2217. 09/01/95 04:09:23 PM Lotus Notes added LocalDomainServers
  2218. 09/01/95 04:09:23 PM Lotus Notes added [OtherDomainServers]
  2219. 09/01/95 04:09:23 PM Lotus Notes added [LocalDomainServers]
  2220. 09/01/95 04:09:23 PM Lotus Notes added [-Default-]
  2221. 09/01/95 04:08:35 PM Lotus Notes deleted [OtherDomainServers]
  2222. 09/01/95 04:08:32 PM Lotus Notes deleted [LocalDomainServers]
  2223. 09/01/95 04:08:30 PM Lotus Notes deleted LocalDomainServers
  2224. 09/01/95 04:08:29 PM Lotus Notes updated [LocalDomainServers]
  2225. 09/01/95 04:08:24 PM Lotus Notes updated LocalDomainServers
  2226. 09/01/95 04:08:19 PM Lotus Notes updated [OtherDomainServers]
  2227. 09/01/95 04:06:51 PM Lotus Notes deleted [-Default-]
  2228. 09/01/95 04:06:46 PM Lotus Notes updated [-Default-]
  2229. 09/01/95 04:06:38 PM Lotus Notes added [-Default-]
  2230. 09/01/95 04:06:25 PM Lotus Notes deleted [-Default-]
  2231. -Default-
  2232. [-Default-]
  2233. [LocalDomainServers]
  2234. [OtherDomainServers]
  2235. LocalDomainServers
  2236. '++LotusScript Development Environment:2:5:(Options):0:66
  2237. Option Public
  2238. '++LotusScript Development Environment:2:5:(Forward):0:1
  2239. Declare Sub Initialize
  2240. Declare Sub SendReminder(EmailType)
  2241. Declare Sub MoveToNextReviewer
  2242. '++LotusScript Development Environment:2:5:(Declarations):0:10
  2243. Dim s As NotesSession
  2244. Dim db As NotesDatabase
  2245. Dim view As NotesView
  2246. Dim documents As NotesDocumentCollection
  2247. Dim note As NotesDocument
  2248. Dim parent As NotesDocument
  2249. Dim emaildoc As NotesDocument
  2250. Dim dt As NotesDateTime
  2251. Dim item As NotesItem
  2252. Dim rtitem As NotesRichTextItem
  2253. Dim CurrentReviewers As Variant
  2254. Dim FutureReviewers As Variant
  2255. Dim ReviewSeq As Variant
  2256. Dim ReviewWindow As Variant
  2257. Dim NewList() As Variant
  2258. Dim ListMax As Integer
  2259. Dim NextReviewer As Variant
  2260. Dim OldDueDate As Variant
  2261. '++LotusScript Development Environment:2:2:Initialize:1:10
  2262. Sub Initialize
  2263.      
  2264.      Set s = New NotesSession    
  2265.      Set db = s.CurrentDatabase
  2266.      Set dt = New NotesDateTime("Today")    
  2267.      Set documents = db.Search("@Today => @Date(DueDateTime) & Status = ""In Review""", Nothing, 0)
  2268.      If documents.Count = 0 Then Exit Sub
  2269.      
  2270.      For d = 1 To documents.Count
  2271.           Set note = documents.GetNthDocument(d)
  2272.           ReviewWindow = note.ReviewWindow      
  2273.           Select Case ReviewWindow(0)
  2274.           Case "MoveOn"
  2275.                MoveToNextReviewer
  2276.                SendReminder("WindowExpired")
  2277.                If ReviewSeq = "Serial" Then
  2278.                     If FutureReviewers(0) <> "None" Then SendReminder("NotifyNextReviewer")
  2279.                End If
  2280.           Case "Reminder"
  2281.                CurrentReviewers = note.CurrentReviewers
  2282.                SendReminder("Reminder")
  2283.           End Select
  2284.           If note.IsResponse Then
  2285.                note.RemoveItem("DueDateTime")
  2286.                note.Save True, True
  2287.           End If
  2288.      Next
  2289.      
  2290. End Sub
  2291. '++LotusScript Development Environment:2:2:SendReminder:1:8
  2292. Sub SendReminder(EmailType)
  2293.      
  2294.      If note.IsResponse Then Exit Sub
  2295.      
  2296.      Set maildoc = New NotesDocument(db)
  2297.      Set rtitem = New NotesRichTextItem(maildoc, "Body")
  2298.      maildoc.InheritedSubject = note.Subject
  2299.      maildoc.InheritedDbTitle = db.Title
  2300.      
  2301.      Select Case EmailType
  2302.      Case "Reminder"
  2303.           maildoc.SendTo = CurrentReviewers
  2304.           maildoc.Subject = "Overdue Document Review"
  2305.           maildoc.FlowStatus = "Please complete your review of this document.  You will continue to recieve these notifications until it is complete."
  2306.           Call rtitem.AppendDocLink(note, "DocLink to Overdue Document")
  2307.           maildoc.DueDateTime = OldDueDate
  2308.      Case "WindowExpired"
  2309.           maildoc.SendTo = CurrentReviewers
  2310.           maildoc.Subject = "Document Review Period has Expired"
  2311.           maildoc.FlowStatus = "The time limit for your review of this document has expired."
  2312.           Call rtitem.AppendDocLink(note, "DocLink to Overdue Document")
  2313.           maildoc.DueDateTime = OldDueDate
  2314.      Case "NotifyNextReviewer"
  2315.           maildoc.SendTo = note.CurrentReviewers
  2316.           maildoc.Subject = "Document Requires Review"
  2317.           maildoc.FlowStatus = "Please take the time to review this document before the date shown below."
  2318.           Call rtitem.AppendDocLink(note, "DocLink to Document requiring review")
  2319.           maildoc.DueDateTime = note.DueDateTime
  2320.      End Select
  2321.      
  2322.      maildoc.Form = "Bookmark"
  2323.      On Error Resume Next
  2324.      Call maildoc.Send (False)
  2325.      
  2326. End Sub
  2327. '++LotusScript Development Environment:2:2:MoveToNextReviewer:1:8
  2328. Sub MoveToNextReviewer
  2329.      
  2330.      ListMax = 0
  2331.      Set dt = New NotesDateTime("Today")
  2332.      ReviewStyle = note.ReviewStyle
  2333.      position = Instr(ReviewStyle(0), ".")
  2334.      ReviewSeq = Left(ReviewStyle(0), position - 1)
  2335.      Versioning = Mid(ReviewStyle(0), position + 1)
  2336.      OldDueDate = Datevalue(note.DueDateTime(0))
  2337.      dt.LSLocalTime = OldDueDate
  2338.      ReviewerLogEntry = "Review period ended on " & Format(dt.LSLocalTime, "Short Date") & " without a completed review by "
  2339.      dt.SetNow
  2340.      
  2341.      Select Case ReviewSeq
  2342.      Case "Parallel"
  2343. 'For Response Reviews, we maintain the status in the parent so remove these
  2344.           If note.IsResponse Then 
  2345.                note.RemoveItem("PreviousReviewers")
  2346.                note.RemoveItem("CurrentReviewers")
  2347.                note.RemoveItem("FutureReviewers")
  2348.           Else
  2349. 'If it is a parent, move CurrentReviewers to PreviousReviewers and set CurrentReviewers to "None"               
  2350.                CurrentReviewers = note.CurrentReviewers
  2351.                LateReviewers = Evaluate("@Implode(CurrentReviewers; "", "")", note)
  2352.                Set item = note.GetFirstItem("ReviewerLog")
  2353.                item.AppendToTextList(ReviewerLogEntry & LateReviewers(0))
  2354.                PreviousReviewers = note.PreviousReviewers
  2355.                If PreviousReviewers(0) = "None" Then
  2356.                     note.PreviousReviewers = CurrentReviewers
  2357.                Else
  2358.                     Set item = note.GetFirstItem("PreviousReviewers")
  2359.                     item.AppendToTextList(CurrentReviewers)
  2360.                End If
  2361.                note.CurrentReviewers = "None"    
  2362.           End If
  2363.           note.InProcess = "None"
  2364.           note.Status = "Review Complete"
  2365.           note.RemoveItem("DueDateTime")
  2366.           note.DocumentAuthors = note.From
  2367.      Case "Serial"
  2368.           CurrentReviewers = note.CurrentReviewers         
  2369.           Set item = note.GetFirstItem("ReviewerLog")
  2370.           item.AppendToTextList(ReviewerLogEntry & CurrentReviewers(0))
  2371.           PreviousReviewers = note.PreviousReviewers
  2372.           If PreviousReviewers(0) = "None" Then
  2373.                note.PreviousReviewers = CurrentReviewers(0)
  2374.           Else              
  2375.                Set item = note.GetFirstItem("PreviousReviewers")
  2376.                item.AppendToTextList(CurrentReviewers(0))
  2377.           End If
  2378.           FutureReviewers = note.FutureReviewers
  2379. 'Put the first person in the future reviewers list in current reviewer and remove that person from future reviewers list
  2380.           note.CurrentReviewers = FutureReviewers(0)
  2381.           If Ubound(FutureReviewers) = 0 Then
  2382.                note.FutureReviewers = "None"
  2383.           Else
  2384.                ListMax = Ubound(FutureReviewers) - 1
  2385.                Redim NewList (ListMax)
  2386.                x = 0 
  2387.                For y = 1 To ListMax
  2388.                     NewList(x) = FutureReviewers(y)
  2389.                     x = x + 1
  2390.                Next
  2391.                note.FutureReviewers = NewList
  2392.           End If
  2393. 'Calculate when the review is due, based upon ReviewTime     
  2394.           If FutureReviewers(0) = "None" Then
  2395.                note.RemoveItem("DueDateTime")
  2396.                note.Status = "Review Complete"
  2397.                note.DocumentAuthors = note.From
  2398.           Else
  2399.                ReviewTime = note.ReviewTime
  2400.                dt.SetNow
  2401.                If Isnumeric(ReviewTime(0)) Then
  2402.                     dt.AdjustDay(ReviewTime(0))
  2403.                     note.DueDateTime = dt.LSLocalTime
  2404.                Else
  2405.                     note.RemoveItem("DueDateTime")
  2406.                End If
  2407.                Redim NewList(1)
  2408.                Originator = note.From
  2409.                NextReviewer = note.CurrentReviewers
  2410.                NewList(0) = Originator(0)
  2411.                NewList(1) = NextReviewer(0)
  2412.                note.DocumentAuthors = NewList
  2413.           End If
  2414.      End Select
  2415.      
  2416.      note.Save True, True
  2417.      
  2418. End Sub
  2419. ,d    JT    
  2420. CurrentReviewers
  2421. Lotus Notes
  2422. PURSAF
  2423. Debbie2 Branco
  2424. F)`b"
  2425. 0|wm-
  2426. PURSAF
  2427. TS3+v
  2428. $TITLE
  2429. $AssistType
  2430. $AssistLastRun
  2431. $AssistDocCount
  2432. $Comment
  2433. $AssistFlags
  2434. $AssistInfo
  2435. $AssistQuery
  2436. $AssistAction
  2437. $AssistAction_Ex
  2438. $UpdatedBy
  2439. $Flags
  2440. Notes Product Development
  2441. )I^-.
  2442. PURSAF
  2443. Notes Domain Certificate
  2444. PURSAF
  2445. vDhFV
  2446. S_)tW'
  2447. aY*]c
  2448. PURSAF
  2449. San9e
  2450. Lotus Development Inc
  2451. 0wmS(
  2452. PURSAF
  2453. C$)NqF
  2454. ISd93
  2455. O=Iris
  2456. O=Iris
  2457. x>_/^
  2458. PURSAFO
  2459. .?    Kz"
  2460. O=Iris
  2461. CN=Catherine Duffy/O=Iris
  2462. PURSAFO
  2463. FDR.I
  2464. $TITLE
  2465. ExpireError
  2466. This 
  2467. form"
  2468.  cannot be marked as expired.
  2469.     1S2S3S4S5S6S
  2470. ExpireDate
  2471. PROTECTFROMARCHIVEh
  2472. Protected Form
  2473. ExpireError
  2474. ExpireDate
  2475. Expire Date
  2476. This document was marked expired on 
  2477. ExpireDateV
  2478. .  Would you like to unmark it?
  2479. ExpireDate
  2480.     0R1S2S3S5R10S22R23S24S26S28S34S36S37S38S42S43S46S48S
  2481.     0S0E
  2482. Periodic Archive
  2483. Lotus Notes
  2484. StdR4DocLibSfL3#################################
  2485. 255D2116B7BDFECF1769F57E5917AA29Lotus Notes
  2486. Archive ProfileArchiveProfileArchive Profile
  2487. Lotus Notes
  2488. ProfileEditorsArchivePathArchiveServerArchiveLocationIncludeDoclinksArchiveLogDocumentLifeArchiveInactiveExpiredLifeArchiveExpiredStdR4DocLibCD###############################################
  2489. 255D2116B7BDFECF1769F57E5917AA29Lotus Notes
  2490. (Archive Log)Archive LogArchiveLog
  2491. Debbie Branco
  2492. CategoriesSubjectArchiveTrailerBodyArchiveDate$MessageTypeStdR4DocLibCD#######
  2493. _Archiving|Archiving
  2494. Lotus Notes
  2495. Archive Logs
  2496. Archive Profile
  2497.     6S9S11S
  2498. $75$74Subject$Conflict
  2499. Archive
  2500.     L1S5S1(
  2501. $75$74Subject
  2502. Archive Logs
  2503. Archive Profile
  2504.     6S9S11S$74
  2505. SubjectDescription&
  2506. StdR4DocLibY##########################
  2507. +"Dyv
  2508. Lotus Notes
  2509. (Unlock Document)Use if a doc is accidentally left in a locked state.  Can be accessed by designers and managers from the Review Status view.003
  2510. StdR4DocLib######################################
  2511. DocumentDocumentDocumentWorkflow
  2512. LastEditorDocumentReadersDocumentAuthorsReviewerLogBodyNotifyAfterReviewTimeReviewWindowReviewStyleReviewersFutureReviewersCurrentReviewersPreviousReviewersCategoriesTimeCreatedDateFromSubjectStdR4DocLib5A3894B18B086231F1FE112ED006D979Lotus Notes
  2513. CN=Catherine Duffy/O=IrisLotus Notes############################################
  2514. ##########################################################
  2515. ##########################################################
  2516. ##########################################################
  2517. ##########################################################
  2518. ##########################################################
  2519. ##########################################################
  2520. ##########################################################
  2521. ##########################################################
  2522. ##########################################################
  2523. '++LotusScript Development Environment:2:5:(Options):0:74
  2524. Option Public
  2525. '++LotusScript Development Environment:2:5:(Forward):0:1
  2526. Declare Sub Initialize
  2527. Declare Sub EvaluateDocument(ArchiveType)
  2528. Declare Sub ArchiveDocument
  2529. Declare Sub Terminate
  2530. Declare Sub ProcessDocuments
  2531. Declare Sub FixReaderNames
  2532. '++LotusScript Development Environment:2:5:(Declarations):0:10
  2533. %INCLUDE "lserr.lss"
  2534. %INCLUDE "lsxbeerr.lss"
  2535. Dim s As NotesSession
  2536. Dim sourcedb As NotesDatabase
  2537. Dim archivedb As NotesDatabase
  2538. Dim note As NotesDocument
  2539. Dim newnote As NotesDocument
  2540. Dim lognote As NotesDocument
  2541. Dim profile As NotesDocument
  2542. Dim documents As NotesDocumentCollection
  2543. Dim responses As NotesDocumentCollection
  2544. Dim view As NotesView
  2545. Dim dtNow As NotesDateTime
  2546. Dim dtExpired As NotesDateTime
  2547. Dim dtDocument As NotesDateTime
  2548. Dim dtCompare As NotesDateTime
  2549. Dim item As NotesItem
  2550. Dim rtitem As NotesRichTextItem
  2551. Dim CurrentServer As String
  2552. Dim ArchiveExpired As Variant
  2553. Dim ExpiredLife As Variant
  2554. Dim ArchiveInactive As Variant
  2555. Dim DocumentLife As Variant
  2556. Dim ArchiveServer As Variant
  2557. Dim ArchivePath As Variant
  2558. Dim ArchiveLog As Variant
  2559. Dim IncludeDocLinks As Variant
  2560. Dim Archive As Variant
  2561. Dim goAgain As Variant
  2562. Dim DoNotRun As Variant
  2563. Dim DbNotOpen As Variant
  2564. '++LotusScript Development Environment:2:2:Initialize:1:10
  2565. Sub Initialize
  2566.      
  2567.      On Error Goto ErrorRoutine
  2568.      On Error ErrObjectVariableNotSet Resume Next 
  2569.      
  2570.      Set s = New NotesSession
  2571.      Set sourcedb = s.CurrentDatabase
  2572.      Set view = sourcedb.GetView("Archiving")
  2573.      
  2574.      Set profile = view.GetDocumentByKey("Archive Profile")
  2575.      If profile Is Nothing Then
  2576.           Messagebox "There is no archive profile for this database.  " &_
  2577.           "Please contact the database manager for further information.", 0 + 64, "Archive"
  2578.           DoNotRun = True
  2579.           Exit Sub       
  2580.      End If
  2581.      
  2582.      ArchiveExpired = profile.ArchiveExpired
  2583.      ArchiveInactive = profile.ArchiveInactive 
  2584.      If (ArchiveExpired(0) = "") And (ArchiveInactive(0) = "") Then
  2585.           DoNotRun = True
  2586.           Exit Sub       
  2587.      End If
  2588.      
  2589.      ExpiredLife = profile.ExpiredLife
  2590.      DocumentLife = profile.DocumentLife
  2591.      ArchivePath = profile.ArchivePath
  2592.      ArchiveServer = Evaluate("@Name([Abbreviate]; ArchiveServer)", profile)
  2593.      ArchiveLog = profile.ArchiveLog
  2594.      IncludeDocLinks = profile.IncludeDocLinks
  2595.      
  2596.      Set dtNow = New NotesDateTime("Today")
  2597.      Set dtExpired = New NotesDateTime("Today")
  2598.      Set dtDocument = New NotesDateTime("Today")
  2599.      Set dtCompare = New NotesDateTime("Today")
  2600.      dtNow.SetNow
  2601.      If ArchiveExpired(0) = "Yes" Then dtExpired.AdjustDay(Int(ExpiredLife(0)) * -1)
  2602.      If ArchiveInactive(0) = "Yes" Then dtDocument.AdjustDay(Int(DocumentLife(0)) * -1)
  2603.      
  2604.      If ArchiveLog(0) = "Yes" Then
  2605.           Set lognote = New NotesDocument(sourcedb)
  2606.           Set rtitem = New NotesRichTextItem(lognote, "Body")
  2607.           lognote.Form = "Archive Log"
  2608.           lognote.ArchiveDate = dtNow.LSLocalTime
  2609.           lognote.ProtectFromArchive = 1
  2610.           lognote.ExcludeFromView = "D"
  2611.           lognote.From = "Archiving"
  2612.           lognote.Categories = "(Archive)"
  2613.           Call lognote.ReplaceItemValue("_ViewIcon", 22)
  2614.      End If
  2615.      
  2616.      On Error lsERR_NOTES_DBOPEN_FAILED Resume Next
  2617.      Set archivedb = New NotesDatabase(ArchiveServer(0), ArchivePath(0))
  2618.      If archivedb.IsOpen = False Then
  2619.           DbNotOpen = True
  2620.           Err = 0
  2621.           Exit Sub
  2622.      End If        
  2623.      
  2624.      ProcessDocuments
  2625.      
  2626.      Exit Sub
  2627.      
  2628. ErrorRoutine:
  2629.      Print "Unexpected condition: " & Err & " - " & Error
  2630.      Err = 0
  2631.      Exit Sub
  2632.      
  2633. End Sub
  2634. '++LotusScript Development Environment:2:2:EvaluateDocument:1:8
  2635. Sub EvaluateDocument(ArchiveType)
  2636.      
  2637.      On Error Goto ErrorRoutine
  2638.      On Error ErrObjectVariableNotSet Resume Next 
  2639.      
  2640.      Archive = False
  2641.      
  2642. 'If this type of form does not get archived then exit
  2643.      If note.HasItem("ProtectFromArchive") Then
  2644.           ProtectFromArchive = note.ProtectFromArchive
  2645.           If ProtectFromArchive(0) = 1 Then Exit Sub
  2646.      End If
  2647.      
  2648.      Select Case ArchiveType
  2649.      Case "Expired"
  2650.           If ArchiveExpired(0) = "Yes" And note.HasItem("ExpireDate") Then
  2651.                Set item = note.GetFirstItem("ExpireDate")
  2652.                Set dtCompare = item.DateTimeValue
  2653.                If dtCompare Is Nothing Then
  2654.                     Set dtCompare = New NotesDateTime("Today")
  2655.                Else
  2656.                     If dtExpired.TimeDifference(dtCompare) >= 0 Then
  2657.                          Archive = True
  2658.                          Exit Sub
  2659.                     End If
  2660.                End If
  2661.           End If
  2662.      Case "Inactive"
  2663.           If ArchiveInactive(0) = "Yes" Then
  2664.                AccessDate = note.LastAccessed
  2665.                dtCompare.LSLocalTime = AccessDate
  2666.                If dtDocument.TimeDifference(dtCompare) >= 0 Then Archive = True
  2667.           End If
  2668.      End Select
  2669.      
  2670.      Exit Sub
  2671.      
  2672. ErrorRoutine:
  2673.      Print "Unexpected condition: " & Err & " - " & Error
  2674.      Err = 0
  2675.      Exit Sub     
  2676.      
  2677. End Sub
  2678. '++LotusScript Development Environment:2:2:ArchiveDocument:1:8
  2679. Sub ArchiveDocument
  2680.      
  2681.      On Error Goto ErrorRoutine
  2682.      On Error ErrObjectVariableNotSet Resume Next 
  2683.      
  2684. $Archived and DateArchived might already be present, if this agent failed the last
  2685. time it was run.  None of these fields should be on the archived copy, because we 
  2686. don't want the archive database to inadvertantly archive these documents (it can
  2687. archive, but it needs to use its own criteria)
  2688. %END REM
  2689.      
  2690.      If note.HasItem("$Archived") Then note.RemoveItem("$Archived")
  2691.      If note.HasItem("DateArchived") Then note.RemoveItem("DateArchived")
  2692.      If note.HasItem("ExpireDate") Then note.RemoveItem("ExpireDate")
  2693.      FixReaderNames
  2694.      note.Save True, True
  2695.      Set newnote = note.CopyToDatabase(archivedb)
  2696.      note.DateArchived = dtNow.LSLocalTime    
  2697.      Call note.AppendItemValue("$Archived", True)
  2698.      note.Save True, True
  2699.      
  2700.      Subject = note.Subject
  2701.      CreatedBy = Evaluate("@Name([Abbreviate]; From)", note)
  2702.      CreatedDate = note.Created
  2703.      
  2704.      If ArchiveLog(0) = "Yes" Then
  2705.           If IncludeDocLinks(0) = "Yes" Then
  2706.                Call rtitem.AppendDocLink(newnote, "DocLink to " & Subject(0))
  2707.                Call rtitem.AddTab(1)
  2708.           End If
  2709.           Call rtitem.AppendText(Subject(0) & " (created by " & CreatedBy(0) & " on " &_
  2710.           Format(CreatedDate, "Short Date") & ")")
  2711.           Call rtitem.AddNewLine(2)
  2712.           lognote.Save True, True
  2713.      End If
  2714.      
  2715.      Exit Sub
  2716.      
  2717. ErrorRoutine:
  2718.      Print "Unexpected condition: " & Err & " - " & Error
  2719.      Err = 0
  2720.      Exit Sub
  2721.      
  2722. End Sub 
  2723. '++LotusScript Development Environment:2:2:Terminate:1:10
  2724. Sub Terminate
  2725.      
  2726.      If DoNotRun Then Exit Sub
  2727.      
  2728.      On Error Goto ErrorRoutine
  2729.      On Error ErrObjectVariableNotSet Resume Next 
  2730.      
  2731.      Set documents = sourcedb.Search("@IsAvailable(DateArchived)", Nothing, 0)
  2732.      ArchiveCount = documents.Count
  2733.      For n = 1 To ArchiveCount
  2734.           Set note = documents.GetNthDocument(n)         
  2735.           note.Remove(True)
  2736.      Next
  2737.      
  2738.      If ArchiveLog(0) = "" Then Exit Sub
  2739.      
  2740.      ArchiveTitle = archivedb.Title
  2741.      dtNow.SetNow
  2742.      If ArchiveServer(0) = "" Then ArchiveServer(0) = "Local"
  2743.      lognote.Subject = "Archive Log for " & Format(dtNow.LSLocalTime, "General Date")
  2744.      
  2745.      If DbNotOpen Then
  2746.           If ArchiveServer(0) = "" Then
  2747.                ArchiveFile = ArchivePath(0)
  2748.           Else
  2749.                ArchiveFile = ArchiveServer(0) & "!!" & ArchivePath(0)
  2750.           End If
  2751.           lognote.Body = "The Archive agent was unable to open your archive file - " & ArchiveFile &_
  2752.           ".  Please verify that the file exists."
  2753.      End If
  2754.      
  2755.      lognote.ArchiveTrailer = "Archive of " & ArchiveCount & " documents on server " & _
  2756.      ArchiveServer(0) & " from " & sourcedb.Title & " (" & sourcedb.FilePath & ") to " & ArchiveTitle & _
  2757.      " (" & ArchivePath(0) & ") completed sucessfully on " & _
  2758.      Format(dtNow.LSLocalTime, "Short Date") & " at " & _
  2759.      Format(dtNow.LSLocalTime, "Long Time") & _
  2760.      ".  Expired documents are archived after " & ExpiredLife(0) & _
  2761.      " days.  All other documents are archived after " & DocumentLife(0) & " days of inactivity."
  2762.      lognote.Save True, True
  2763.      Call lognote.CopyToDatabase(archivedb)
  2764.      
  2765.      Print
  2766.      
  2767.      Exit Sub
  2768.      
  2769. ErrorRoutine:
  2770.      If Not(DbNotOpen) Then Print "Unexpected condition: " & Err & " - " & Error
  2771.      Err = 0
  2772.      Exit Sub
  2773.      
  2774. End Sub
  2775. '++LotusScript Development Environment:2:2:ProcessDocuments:1:8
  2776. Sub ProcessDocuments
  2777.      
  2778.      On Error Resume Next
  2779.      
  2780.      Print "Archiving documents..."
  2781.      
  2782. 'First check for Expired documents
  2783.      If ArchiveExpired(0) = "Yes" Then
  2784.           Set documents = sourcedb.Search("@IsAvailable(ExpireDate)", Nothing, 0) 
  2785.           If documents.Count > 0 Then
  2786.                For n = 1 To documents.Count
  2787.                     Set note = documents.GetNthDocument(n)
  2788.                     EvaluateDocument("Expired")
  2789.                     If Archive = True Then ArchiveDocument
  2790.                Next
  2791.           End If
  2792.      End If
  2793.      
  2794. 'Now check the rest of the documents     
  2795.      If ArchiveInactive(0) = "Yes" Then
  2796.           Set documents = sourcedb.AllDocuments
  2797.           If documents.Count > 0 Then
  2798.                For n = 1 To documents.Count
  2799.                     Set note = documents.GetNthDocument(n)
  2800.                     EvaluateDocument("Inactive")
  2801.                     If Archive = True Then ArchiveDocument
  2802.                Next
  2803.           End If
  2804.      End If
  2805.      
  2806. 'Loop through all the documents that we archived and archive their reponses
  2807.      Do
  2808.           Set documents = sourcedb.Search("@IsAvailable($Archived)", Nothing, 0)
  2809.           goAgain = False
  2810.           For n = 1 To documents.count
  2811.                Set note = documents.GetNthDocument(n)
  2812.                Call note.RemoveItem("$Archived")              
  2813.                If Err = 0 Then
  2814.                     note.Save True, True
  2815.                     Set responses = note.Responses
  2816.                     If responses.Count > 0 Then
  2817.                          For i = 1 To responses.Count
  2818.                               Set note = responses.GetNthDocument(i)
  2819.                               If Not note.HasItem("$Archived") Then ArchiveDocument
  2820. 'Since we just archived a response, we have to loop back through in order to archive all of its reponses
  2821.                               goAgain = True
  2822.                          Next
  2823.                     End If
  2824.                Else
  2825.                     Err = 0
  2826.                End If
  2827.           Next
  2828.      Loop While goAgain
  2829.      
  2830. End Sub
  2831. '++LotusScript Development Environment:2:2:FixReaderNames:1:8
  2832. Sub FixReaderNames
  2833.      
  2834.      If note.HasItem("Readers") Then
  2835.           If note.Readers(0) = "" Then note.RemoveItem("Readers")
  2836.      End If
  2837.      If note.HasItem("DocumentReaders") Then
  2838.           If note.DocumentReaders(0) = "" Then note.RemoveItem("DocumentReaders")
  2839.      End If
  2840.      
  2841. End Sub
  2842. ;tAH=tA
  2843. lIlI8I8I
  2844. (    H    D
  2845. ("(" +
  2846. "H#L,
  2847. H#($4-
  2848. h#(%t-
  2849. h$(*H/
  2850. %H%T0
  2851. %H&D1
  2852. &H'@3
  2853. 'H)85
  2854. H(H( 6
  2855. h(h(T6
  2856. (h),7
  2857. )H+l8
  2858. +h,4<
  2859. ,h. >
  2860. h-h-8?
  2861. 0(1PE
  2862. h1H3xF
  2863. 1H2lG
  2864. 2H4@I
  2865. 3(8xI
  2866. 3(4|J
  2867. (4h4pK
  2868. 4h5LL
  2869. 5H6(N
  2870. h6h7xO
  2871. 8\@xS
  2872. 9XB8T
  2873. (9(:lT
  2874. 9H:XU
  2875. H:h;|V
  2876. H;H;PX
  2877. ELHLH
  2878. 8=,><Y    
  2879. H@F@FXGXG
  2880. ?dADZ    
  2881. \@HB\Z    
  2882. E4D4D
  2883. HBxB([    
  2884. lJ\c=
  2885. [(=KT<-(C#
  2886. ?K(=,LC}4]#
  2887. ?,|C}t]#
  2888. [XBK<>P
  2889. [xBK<>P
  2890. [hBK<>P
  2891. BK<>P
  2892. BK<>P
  2893. BK<>P
  2894. BK<>P
  2895. Kl@,4D
  2896. K|@,4D
  2897. [,>+H=[(=$
  2898. [8B+tAG,>}
  2899. K,>QdD}(`
  2900. K,>QpDK\@-|D#
  2901. [8=+d<
  2902. >,8E}
  2903. >,8E}
  2904. >,xE}
  2905. @KdA-
  2906. @.|DJ
  2907. >,8E}
  2908. >,@F}
  2909. >,8E}
  2910. >,@F}
  2911. >,8E}
  2912. >,@F}
  2913. F[8=#
  2914. FK\@-|D#
  2915. >-XG#
  2916. K8B,|G[
  2917. K,>,pF
  2918. >K(=,LH}$e
  2919. ^(I4(
  2920. ^8IK8=-HI#
  2921. K,>Q$G}
  2922. fK\@-|D#}8f
  2923. K,>Q|I}
  2924. K(=-HI#
  2925. K\@-|D#}
  2926. K\@-|D#}`h
  2927. K,>,pF
  2928. F[8=#1
  2929. >K(=,LH}
  2930. >K(=-
  2931. >K(=,LH}
  2932. >,@F}
  2933. ^@J48
  2934. >,8E}
  2935. ^PJ6G
  2936. >,8E},j#8
  2937. >,@F},j#
  2938. >,8E}Tj#8
  2939. >,@F}Tj#
  2940. ArchiveServer
  2941. Lotus Notes
  2942. PURSAF
  2943. Debbie2 Branco
  2944. F)`b"
  2945. 0|wm-
  2946. PURSAF
  2947. TS3+v
  2948. $TITLE
  2949. $AssistType
  2950. $AssistLastRun
  2951. $AssistDocCount
  2952. $AssistFlags
  2953. $AssistInfo
  2954. $AssistQuery
  2955. $AssistAction
  2956. $AssistAction_Ex
  2957. $UpdatedBy
  2958. $Flags
  2959. ed$UpdatedBy$ACLDigest$Signature$DesignVersion$Version$Formula$FormulaClass$CollationIconBitmap$TemplateModTime$TemplateServerName$TemplateFileName$Flags$FlagsNoRefresh$TITLE$Info$SubForms$WindowTitle$Fonts$Script$$Script_O$$ScriptName$$Reviewers$Reviewers_OSubjectFromDateTimeCreatedCategoriesPreviousReviewersCURRENTREVIEWERSFutureReviewersReviewersReviewStyleReviewWindowReviewTimeNotifyAfterBodyReviewerLogDocumentAuthorsDocumentReadersLastEditor$Fields$Body$ACTIONS$ClassOriginalSubjectImmediateParentSubject$TYPE$Index$Collation1$Collation2$VIEWFORMAT$Comment$Collation3$Collation4$Name$FolderIDTable$FolderObject$ViewMapDataset$ViewMapLayoutReviewTime_1SaveChoices$$FormScript$$$FormScript_O$AUTOLAUNCH_ViewIcon$AssistVersion$AssistType$AssistLastRun$AssistDocCount$AssistFlags$AssistTrigger$AssistInfo$AssistQuery$AssistAction$AssistAction_Ex$AssistRunInfo$Operation$Scan$LeftToDo$$XMB$LicenseeDocLifeArchiveDateObsoleteLife$ManualArchivers_OArchiveExpiredExpiredLifeArchiveInactiveDocumentLifeArchiveLogIncludeDoclinksArchiveLocationArchiveServerArchivePathProfileEditors$MessageTypeArchiveTrailer$SCRIPTOBJ_10$Collection$ViewContainer
  2960. Archive Profile
  2961. Times New Roman
  2962. '++LotusScript Development Environment:2:5:(Options):0:66
  2963. Option Public
  2964. '++LotusScript Development Environment:2:5:(Forward):0:1
  2965. '++LotusScript Development Environment:2:5:(Declarations):0:10
  2966. %INCLUDE "lsconst.lss"
  2967. Dim s As NotesSession
  2968. Dim w As NotesUIWorkspace
  2969. Dim db As NotesDatabase
  2970. Dim archivedb As NotesDatabase
  2971. Dim view As NotesView
  2972. Dim note As NotesDocument
  2973. Dim profile As NotesDocument
  2974. Dim doc As NotesUIDocument
  2975. Dim DocWasSaved As Integer
  2976. Dim DoNotClose As Variant
  2977.  Archive Profile'++LotusScript Development Environment:2:5:(Options):0:66
  2978. '++LotusScript Development Environment:2:5:(Forward):0:1
  2979. Declare Sub Queryclose(Source As Notesuidocument, Continue As Variant)
  2980. Declare Sub Querysave(Source As Notesuidocument, Continue As Variant)
  2981. Declare Sub Postopen(Source As Notesuidocument)
  2982. '++LotusScript Development Environment:2:5:(Declarations):0:2
  2983. '++LotusScript Development Environment:2:2:BindEvents:1:129
  2984. Private Sub BindEvents(Byval Objectname_ As String)
  2985.      Static Source As NOTESUIDOCUMENT
  2986.      Set Source = Bind(Objectname_)
  2987.      On Event Queryclose From Source Call Queryclose
  2988.      On Event Querysave From Source Call Querysave
  2989.      On Event Postopen From Source Call Postopen
  2990. End Sub
  2991. '++LotusScript Development Environment:2:2:Queryclose:1:12
  2992. Sub Queryclose(Source As Notesuidocument, Continue As Variant)
  2993.      
  2994.      If (DocWasSaved = False) Or (profile Is Nothing) Or DoNotClose Then Exit Sub
  2995.      
  2996.      ItemList = profile.Items
  2997.      Forall n In ItemList
  2998.           profile.RemoveItem(n.Name)    
  2999.      End Forall
  3000.      note.CopyAllItems profile
  3001.      profile.SaveOptions = "1"
  3002.      profile.save True, True
  3003.      
  3004. End Sub
  3005. '++LotusScript Development Environment:2:2:Querysave:1:12
  3006. Sub Querysave(Source As Notesuidocument, Continue As Variant)
  3007.      
  3008.      ArchiveServer = Evaluate("@Name([Abbreviate]; ArchiveServer)", note)
  3009.      If note.ArchiveLocation(0) = "Local" Then ArchiveServer(0) = ""
  3010.      ArchivePath = note.ArchivePath
  3011.      
  3012.      On Error Resume Next
  3013.      Set archivedb = New NotesDatabase(ArchiveServer(0), ArchivePath(0))
  3014.      If note.HasItem("ArchiveDbCreated") Then
  3015.           If Not(archivedb.IsOpen) Then Messagebox "Unable to access the archive database.", MB_OK, "Archive Setup"
  3016.      Else
  3017.           Do Until archivedb.IsOpen
  3018.                If ArchiveServer(0) = "" Then
  3019.                     ArchiveFile = ArchivePath(0)
  3020.                Else
  3021.                     ArchiveFile = ArchiveServer(0) & "!!" & ArchivePath(0) 
  3022.                End If
  3023.                Print "Creating Archive database - " & ArchiveFile
  3024.                Set archivedb = db.CreateCopy(ArchiveServer(0), ArchivePath(0))
  3025.                If Not(archivedb.IsOpen) Then Call archivedb.Open("", "")
  3026.                If Err = 0 Then
  3027.                     archivedb.Title = db.Title & " (Archived)"
  3028.                     views = archivedb.Views
  3029.                     Forall i In views
  3030.                          If i.IsFolder Then
  3031. 'Don't remove default view from database
  3032.                               If Not i.IsDefaultView Then i.Remove
  3033.                          End If
  3034.                     End Forall
  3035.                     Messagebox "Archive database - " & ArchiveFile & " has been created.",_
  3036.                     MB_OK, "Archive Setup"
  3037.                     note.ArchiveDbCreated = 1
  3038.                     w.ViewRefresh
  3039.                     Call s.SetEnvironmentVar("MailArcSet", "1")
  3040.                Else
  3041.                     Err = 0
  3042.                     If ArchiveServer(0) = "" Then
  3043.                          Messagebox "Unable to automatically create local archive database - " & ArchivePath(0) & ".",_
  3044.                          MB_OK, "Archive Setup"
  3045.                          Exit Do
  3046.                     Else
  3047.                          Select Case Messagebox("Unable to automatically create server archive database - " & _
  3048.                          ArchiveServer(0) & "!!" & ArchivePath(0) & ".  Would you like to archive locally?",_
  3049.                          MB_YesNoCancel, "Archive Setup")
  3050.                          Case IDYES
  3051.                               note.ArchiveLocation = "Local"
  3052.                               source.reload
  3053.                               source.refresh
  3054.                               Delete archivedb
  3055.                               ArchiveServer = note.ArchiveServer
  3056.                               ArchivePath = note.ArchivePath
  3057.                          Case IDNO
  3058.                               Messagebox "Please contact your server administrator about adding " & ArchivePath(0) &_
  3059.                               " to server " & ArchiveServer(0) & ".", MB_OK, "Archive Setup"
  3060.                               Exit Do
  3061.                          Case Else
  3062.                               DoNotClose = True
  3063.                               Continue = False
  3064.                               Exit Sub
  3065.                          End Select
  3066.                     End If
  3067.                End If        
  3068.           Loop
  3069.      End If
  3070.      
  3071.      DocWasSaved = True
  3072.      DoNotClose = False
  3073.      
  3074.      If Not(profile Is Nothing) Then note.SaveOptions = "0"
  3075.      
  3076.      source.Reload
  3077.      source.RefreshHideFormulas  
  3078.      
  3079.      Print
  3080.      
  3081. End Sub
  3082. '++LotusScript Development Environment:2:2:Postopen:1:12
  3083. Sub Postopen(Source As Notesuidocument)
  3084.      
  3085.      Set note = source.Document
  3086.      Set w = New NotesUIWorkspace
  3087.      Set s = New NotesSession
  3088.      Set db = s.CurrentDatabase
  3089.      Set view = db.GetView("Archiving")
  3090.      
  3091.      source.AutoReload = False
  3092.      
  3093.      If source.IsNewDoc = False Then Exit Sub
  3094.      
  3095.      Set profile = view.GetDocumentByKey("Archive Profile")
  3096.      If profile Is Nothing Then
  3097.           note.ProtectFromArchive = 1
  3098.           note.ExcludeFromView = "D"
  3099.           note.From = "Archiving"
  3100.           note.Subject = "Archive Profile"
  3101.           note.Categories = "(Archive)"
  3102.           Call note.ReplaceItemValue("_ViewIcon", 11)
  3103.           source.reload
  3104.      Else
  3105.           ItemList = note.Items
  3106.           Forall n In ItemList
  3107.                note.RemoveItem(n.Name)    
  3108.           End Forall
  3109.           profile.CopyAllItems note
  3110.           source.Reload
  3111.           If source.EditMode Then source.Refresh
  3112.      End If
  3113.      
  3114.      DocWasSaved = False
  3115.      
  3116. End Sub
  3117. ArchiveServer
  3118. Archive Profile 
  3119. ArchiveExpired
  3120. Archive Expired documents | Yes
  3121.     after
  3122. ExpiredLife
  3123. Number cannot be negative.{
  3124.     3S4S6S11SExpiredLife
  3125.     days
  3126. ArchiveInactive
  3127. Archive documents which have no activity | Yes
  3128.     after
  3129. DocumentLife
  3130. Number cannot be negative.{
  3131.     3S4S6S11SDocumentLife
  3132.     days
  3133. ArchiveLog
  3134. Generate an Archive Log each time an archive occurs | Yes
  3135. IncludeDoclinks
  3136. Include document links | Yes
  3137.     0S0E
  3138.     Documents are archived:
  3139. Local
  3140. ArchiveLocation
  3141. Locally | LocalOn Server | Server
  3142. ArchiveLocation
  3143. Local
  3144.     1S2S3S4S
  3145.     Archive database is on server:
  3146.     0S0E
  3147. ArchiveServer
  3148. ArchiveLocation
  3149. Local
  3150. ArchiveServer
  3151. ArchiveServer
  3152.     4RS4E6R7S8S10RS4E12R13S14S16RS4E20S23R
  3153. ArchiveServer
  3154.     Archive file:
  3155. CurrentPath
  3156.     1S2S6S
  3157. CurrentFile
  3158. CurrentPath
  3159.     0R1S2S6S
  3160. FileOnly
  3161. CurrentPath
  3162. CurrentFile
  3163. CurrentFile
  3164.     0R1S2S8S11S15S18S
  3165. DirOnly
  3166. CurrentPath
  3167. CurrentFile
  3168.     0R1S2S8S11S15S17S18S20S
  3169. DirOnly
  3170. FileOnly"
  3171. CurrentPath
  3172.     0RR1S2S5S6S8S10S11S15S
  3173. ArchivePath
  3174. Please specify the filename of the archive database
  3175.     3S4S6S11SArchivePath
  3176.     Archive server:
  3177.     Archive database:
  3178. ArchiveServer
  3179. Local
  3180. ArchiveServer
  3181.     3S4S6S8S
  3182. tmpArchiveServer
  3183. ArchivePath
  3184. tmpArchivePath
  3185.     Archive Profile editors:
  3186. ProfileEditors
  3187. Closer 
  3188.     0S0E
  3189. Categori_ze
  3190. _Edit Document
  3191. Send Docu_ment
  3192. _Forward
  3193. Save Profile 
  3194.     0S0E
  3195. _Move to Folder...
  3196. _Remove from Foldery
  3197. Archive Log
  3198. Times New Roman
  3199.  ArchiveLog
  3200. $MessageType
  3201. %12-/H
  3202. !G,$W,#I4)X6(H,4W,4G98X<6h*#x+$g9)w8(h.6u-2g<5w<4>B=YA
  3203. WC9iB.xC-iF8wH8jT>zR<rd?
  3204. 2L3;FK=Dj=C:FQ8Qp<b
  3205. GEHXHGLQLZSKEKUVKSGRYYWWgJEvIEiTHyWFfLRwKSgYWwZV[cXtfYPZjl\dWfphhhvigkqlysjhktvlsjtxyww
  3206. Archive Log for 
  3207. ArchiveDate
  3208. ArchiveTrailer
  3209. ArchiveTrailer
  3210.     Hidden:  
  3211. Archive Log for 
  3212. ArchiveDate
  3213.     1S2S
  3214. Subject
  3215. (Archive)
  3216. Categories
  3217. Closee 
  3218.     0S0E
  3219. Categori_ze
  3220. _Edit Document
  3221. Send Docu_ment
  3222. _Forward
  3223. _Move to Folder...
  3224. _Remove from Folder
  3225. _Forward
  3226. Categori_ze
  3227. Edit Document
  3228. _Move to Folder...
  3229. _Remove from Folder...
  3230. Setup Archive...L
  3231. ArchiveProfile
  3232. Server
  3233.     1S2S6S
  3234.     0R1S2S6S
  3235. Server
  3236.     0R7S8S11S13S14S15S16S
  3237. Archive Now
  3238. AllDocs
  3239. Archiving
  3240. Archive Profile
  3241. Archive Now
  3242. Before you can began archiving documents you need to fill out an Archive Profile.  Please press "Setup Archive...".
  3243.     1S2S10S12S14S16S20S26S28S32S
  3244. Archiving
  3245. Are you sure you want to move documents to the archive database now?
  3246.     0RR6S8S11S13S
  3247. AlreadyArchived
  3248. MailArchived|
  3249. Archiving
  3250. Since this is the first time you have requested an archive, it may take several minutes.  Do you want to proceed?
  3251. Archiving
  3252. No documents were archived
  3253.     0RR1S2S8S9S11S13S19S21S24S26S32S34S
  3254. MailArchived
  3255.     0RR1S2S3S
  3256. Periodic Archive
  3257.     0R4S
  3258. Server
  3259.     1S2S6S
  3260.     0R1S2S6S
  3261. Server
  3262.     0R7S8S11S13S14S15S16S
  3263. Enable Scheduled Archivingf
  3264. AllDocs
  3265. Archiving
  3266. Archive Profile
  3267. Archive Now
  3268. Before you can began archiving documents you need to fill out an Archive Profile.  Please press "Setup Archive...".
  3269.     1S2S10S12S14S16S20S26S28S32S
  3270. Periodic Archive
  3271.     0RR4S
  3272. Server
  3273.     1S2S6S
  3274.     0R1S2S6S
  3275. Periodic Archive
  3276. Server
  3277.     0R4S5R12S13S16S18S19S20S21S
  3278. Disable Scheduled Archiving
  3279. AllDocs
  3280. Archiving
  3281. Archive Profile
  3282. Archive Now
  3283. Before you can began archiving documents you need to fill out an Archive Profile.  Please press "Setup Archive...".
  3284.     1S2S10S12S14S16S20S26S28S32S
  3285. Periodic Archive
  3286.     0RR4S
  3287. Server
  3288.     1S2S6S
  3289.     0R1S2S6S
  3290. Periodic Archive
  3291. Server
  3292.     0R7S8R15S16S19S21S22S23S24S
  3293. Open Archive Db...'++LotusScript Development Environment:2:5:(Options):0:66
  3294. '++LotusScript Development Environment:2:5:(Forward):0:1
  3295. Declare Sub Click(Source As Button)
  3296. '++LotusScript Development Environment:2:5:(Declarations):0:10
  3297. Dim s As NotesSession
  3298. Dim w As NotesUIWorkspace
  3299. Dim sourcedb As NotesDatabase
  3300. Dim view As NotesView
  3301. Dim profile As NotesDocument
  3302. Dim server As String
  3303. '++LotusScript Development Environment:2:2:BindEvents:1:129
  3304. Private Sub BindEvents(Byval Objectname_ As String)
  3305.      Static Source As BUTTON
  3306.      Set Source = Bind(Objectname_)
  3307.      On Event Click From Source Call Click
  3308. End Sub
  3309. '++LotusScript Development Environment:2:2:Click:1:12
  3310. Sub Click(Source As Button)
  3311.      
  3312.      On Error Goto ErrorRoutine
  3313. '91 is Object Variable Not Set     
  3314.      On Error 91 Resume Next 
  3315.      
  3316.      Set s = New NotesSession
  3317.      Set sourcedb = s.CurrentDatabase
  3318.      Set view = sourcedb.GetView("Archiving")
  3319.      Set profile = view.GetDocumentByKey("Archive Profile")
  3320.      
  3321.      If profile Is Nothing Then
  3322.           Messagebox "There is no Archive Db for this database.", 0 + 64, "Archive"
  3323.           Exit Sub
  3324.      End If
  3325.      
  3326.      ArchivePath = profile.ArchivePath
  3327.      ArchiveServer = profile.ArchiveServer
  3328.      
  3329.      Set w = New NotesUIWorkspace
  3330.      
  3331.      On Error Resume Next
  3332.      Call w.OpenDatabase(ArchiveServer(0), ArchivePath(0), "", "", "1")
  3333.      
  3334.      Exit Sub
  3335.      
  3336. ErrorRoutine:
  3337.      Messagebox "Unexpected condition: " & Err & " - " & Error
  3338.      Exit Sub
  3339.      
  3340. End Sub
  3341. ResponseResponse.
  3342. Response to ResponseResponse to Response.
  3343. *Nb:O
  3344. ReviewOptionsReviewOptions.
  3345. SmartSuite\123 Worksheet123Worksheet Document
  3346. SmartSuite\Freelance PresentationFreelance Document
  3347. SmartSuite\WordPro DocumentWordPro Document
  3348. Selects those documents which are in review and have due dates which have passed.  Based upon the review style of the document, it then either moves it along to the next reviewer, marks it as complete, or simply notifies the current reviewer(s) that their review is overdue.
  3349. Archive ProfileArchiveProfileArchive Profile.
  3350. (Archive Log)Archive LogArchiveLog.
  3351. Use if a doc is accidentally left in a locked state.  Can be accessed by designers and managers from the Review Status view.
  3352. +"Dyv
  3353. DocumentDocumentZ
  3354. CN=Catherine Duffy/O=IrisLotus Notes
  3355. ResponseResponse
  3356. Response to ResponseResponse to Response
  3357. ReviewOptionsReviewOptions
  3358. SmartSuite\123 Worksheet123Worksheet Document
  3359. SmartSuite\Freelance PresentationFreelance Document
  3360. SmartSuite\WordPro DocumentWordPro Document
  3361. Archive ProfileArchiveProfileArchive Profile
  3362. (Archive Log)Archive LogArchiveLog
  3363. DocumentDocument
  3364. ResponseResponse
  3365. Response to ResponseResponse to Response
  3366. ReviewOptionsReviewOptions
  3367. SmartSuite\123 Worksheet123Worksheet Document
  3368. SmartSuite\Freelance PresentationFreelance Document
  3369. SmartSuite\WordPro DocumentWordPro Document
  3370. Archive ProfileArchiveProfileArchive Profile
  3371. (Archive Log)Archive LogArchiveLog
  3372. DocumentDocument
  3373. SmartSuite\Freelance PresentationFreelance Document
  3374. SmartSuite\WordPro DocumentWordPro Document
  3375. Selects those documents which are in review and have due dates which have passed.  Based upon the review style of the document, it then either moves it along to the next reviewer, marks it as complete, or simply notifies the current reviewer(s) that their review is overdue.
  3376. Archive ProfileArchiveProfileArchive Profile.
  3377. (Archive Log)Archive LogArchiveLog.
  3378. Use if a doc is accidentally left in a locked state.  Can be accessed by designers and managers from the Review Status view.
  3379. +"Dyv
  3380. DocumentDocumentZ
  3381. CN=Catherine Duffy/O=IrisLotus Notes
  3382. $Modified
  3383.     1S2S3S
  3384. $TITLE$FormPrivs$FormUsers$Body$Flags$Class$Modified$Comment$AssistTrigger$AssistType$AssistFlags$UpdatedBy$$FormScript_O$C1$
  3385.     0SL1S
  3386. $TITLE
  3387. StdR4DocLib
  3388. CN=Catherine Duffy/O=Iris
  3389. Debbie Branco
  3390. ($All)|($All)
  3391. Lotus Notes
  3392. By _Author|By Author
  3393. Review Status|Review Status
  3394. My Favorite Documents
  3395. Main Navigator
  3396. DocumentWorkflow
  3397. Process Late Reviews
  3398. Mark/Unmark Document As Expired
  3399. Periodic Archive
  3400. _Archiving|Archiving
  3401. (Unlock Document)ed
  3402.