Webdocs for IBM i

General email performance note: SMTPBUFFER data area can be set from the default value of 512 to some value such as 4096 or 10000 to improve SMTP throughput.

December 2023

Version: 4.02

December 15, 2023

  • Added error handling to DOCMOVLOC

  • Added new database index to improve search performance.

  • Optimized search queries to no longer include all fields when values are blank in UI.

  • Added progress indicator to searching

  • Improved upgrade program that no longer requires copying all items.

  • Updated license schema to use newer Fortra standard licensing module, which provides trial keys, subscriptions, portability, and active user-based license keys."

  • Added iForms as an option for merging PDF files as a replacement for the depreciated PDFtoTIF library.

  • Fixed issue with DOCSEND2 command that would cause an error due to DOCIDTMP being blank.

  • Fixed issue where additional white space was appearing between search column headers and data.

  • Fixed issue where next/previous page buttons were not visible on search results page.

  • Updated copyright information.

March 2019

Version 4.01.3
  • Added iasp group name to command DOCIFS1 (menu opt 20).
  • Added iasp group name to command CRTAPACHEI (menu opt 22).

July 2018

Version 4.01.2

Requires i5/OS 7.2 or higher.

  • New RENAME parameter added to the DOCCHKIN command.
  • New RENAME parameter added to the DOCCHKI command.
  • Fixed page scrolling issue in the look-up window from the browser.

March 2018

Version 4.01.0
  • Fix for excessive number objects potentially getting created in QRPLOBJ.
  • Security update for Apache. A new setting was added for security reasons. Any newly created instances will have this automatically. Any existing instances will need to have this line added manually to their configuration file.
    • Header always set x-frame-options "SAMEORIGIN"
  • Security fixes for browser interface. For this to work the following is needed:
    • Data area DOCSCRUB needs to be set to *YES
    • For IBM i 7.1, TR9 must be installed
    • For IBM i 7.2, TR1 must be installed.
    • For IBM I 7.3 has no requirement
    • Licensed product #39 5770-SS1 International Components for Unicode to be installed on both IBM i 7.1 and 7.2. (This product is free with IBM i.)
  • New commands for clearing work files
    • DOCSYSPRG - Runs all 3 of the system purge commands:
      • DOCPRGSES - Purge any sessions older than XXX minutes.
      • DOCTMPPRG - Clear out any orphaned files in library RJSTEMP older than XXX days old.
      • DOCIFSPRG - Clear out any file from folder /rjstemp older than XXX days old.
    • Parameters:
      • Minutes not used - for clearing sessions
      • Number of days back to check - for clearing both library and IFS files
      • IFS folder to check

June 2017

Version 4.0
  • Using LDAP authentication from Webdocs now uses secure LDAP.
  • Fixed problem where alert message pop ups were not working on required fields

  • Fixed problem of not being able to click on columns to sort if coming from a search URL.

May 2016

Version 3.25.1
  • Updated browser links to WebForms so that forms open in new tabs.

December 2015

Version 3.25.0
  • The minimum OS/400 compatibility is now V6R1

June 2014

Version 3.24.01
  • Fixed security issue.
  • Fixed position to issue in Opt 10 - Work with Users and Groups.

March 2014

Version 3.24.00
  • Fixed issue in DOCEXP.
  • Addressed where DOCEXP would generate folders larger than size given.
  • Fixed issue where the address book objects were not sent out with version 3.22.00.
  • Fixed incorrect icons for DOCX, XLSX, and HTML documents. Correct icons now display in browser interface.
  • Created program to purge log file. Two commands were added:
    • DOCLOGPRG: This is the entry program for the parameters for the actual purge program. The program will show statistical information about the DOCLOG00 file (Size, oldest record, newest record, etc). You can select to clear the entire log file, a range of dates, status equal to, or status not equal to. These values are stored.
    • DOCLOGPRG3: This will do the actual purge based on what was entered in DOCLOGPRG. This program can than be scheduled or included in any user written program. This will help in keeping the DOCLOG00 file from getting overly large.
  • Created program to purge RJSTEMP library. One command was added:
    • DOCTMPPRG: This command has 1 parameter, number of days. This is the number of days back you want to keep files in RJSTEMP. The default is 30. This program will remove any temporary files created by WebDocs i.
  • Created SQL script for recreating the stored procedures in case they get damaged or deleted.
    • To recreate the stored procedures run the following command: RUNSQLSTM SRCFILE(RJSIMAGE/SOURCE) SRCMBR(DOCCRTSQL) COMMIT(*NONE) NAMING(*SYS) ERRLVL(30) DFTRDBCOL(RJSIMAGE)

November 2013

Version 3.23.00
  • Security changes with DOCLINK search
  • Changes for DOCFAX command
  • Changed DOCFAX command email address format to allow formatting using the following format: 9999999999@faxdomain.com where fax domain comes from DOCFAXDOM data area. Did this because Faxback 8.7 now uses the MS SMTP Service which needs a normalized email address format. New address format is enabled if the DOCFAXAFMT data are is set to: *FORMAT2 DOCFAXAFMT value is blank by default which will use existing fax format.

September 2013

Version 3.22.00
  • Security Updates

November 2012

Version 3.21.00

Exit programs

  • Added pre-routing exit DOCFLOWPXC to SOURCE file. DOCFLOWPXC will be called before any routing action takes place.
    • DOCFLOWPXC has several parameters that the post-routing exit, DOCFLOWEXC, does not have. These include parameters for all the routing commands, to simplify validation and modification, as needed. This allows behavior similar to that of the pre-checkin and pre-update exit programs.
    • Added display of message from pre-routing exit in browser interface. The pages where and the actions for which this was added include –
      • Document details
        • Quick-approve
        • Quick-reject
      • Document Upload Check-In
        • Create route
      • Route List
        • Create route
      • Routing Slip
        • Approve
        • Reject
        • Insert inbox
    • Added creation of data areas for parameter values that are not passed to DOCFLOWEXC and cannot be retrieved from the routing files.
    • The additional parameters include the following, with related commands & data areas:
Parameter Description Command Data area
&SEQ Insert-after sequence 1 DOCFLOWINS INSSEQTMP
&SEQ2 Insert-after sequence 2 DOCFLOWINS INSSEQ2TMP
&ERRRTN Error return code All commands NA
&ERRRTNMSG Error return message blank NA
  • If the pre-routing exit detects an error or invalid operation, do the following –
    • Set &ERRRTN to '1' to block the routing operation
    • Put a message into &ERRRTNMSG to have it displayed in the browser or other client
  • Operations you might want to block include rejecting from the first inbox or rejecting “forward”, or adding inboxes when you want the routing slip to remain unchanged.
  • Added compiled post-routing exit program DOCFLOWEXC. This will prevent unnecessary messages in the job log.
  • Added RTVDTAARA commands to exit programs for data areas created by the DOCCHKIN, DOCINFOUPD, and DOCFLOW* commands. This will make easier the complete use of the exits, because of this self- documentation.

Miscellaneous changes and additions

  • Added temporary data area, DOCFILETMP, to DOCCHKIN for path name of file being checked in. This will let developers do things like checking for viruses in the pre-checkin exit program.
  • Changed CRTAPACHEI command so that the full range of ports is allowed on PORT and REDIRPORT parameters.
    • Added AUTOSTART parameter to CRTAPACHEI. complete use of the exits.


  • Fixed problem with exit programs set to *NONE in DOCCHKIN and DOCINFOUPD - now it is not being checked for existence.
  • Fixed problem with DOCSQL that a commitment definition was created that interfered with commitment control done later by customer's program.
  • Cleaned up code generally in common objects.
  • Fixed problem when displaying folder lists in IE8 or before. Long descriptions were not completely visible. This was done in one of the IFS files used by the Apache server, so it will be necessary for customers to restore those files again from the WebDocs main menu.
  • Fixed problem when using LDAP authentication, which failed when user or password contained an apostrophe (single-quote). This occurred when the following commands were called in the browser interface –

March 2012

Version 3.20.00

New commands

  • Added DOCGETENV command that returns the value of an environment variable.
  • Added DOCIMGINFO command that displays the IFS path and version for a document. The parameters are document ID and version. There are 2 special values for version:
    • *FIRST
    • *LAST (default)
  • For the special values, the actual version number is also displayed. 2 message IDs in MSGF DOCMSGF are used to display the information and are sent as completion messages:
    • DOC0420 - File not found
    • DOC0421 - File found

Miscellaneous fixes

  • Fixed problem with multiple print/email, that if multiple print was done first, the NEP, DOCMLTNEP, would not start. If multiple email was done first, the NEP started OK.
  • Fixed problem with multiple print/email, that if there are leftover records in the trigger file (DOCTRGM00) and no matching records in the header file (DOCEMLHM00 or DOCPRTM00), there would be an error.
  • Changed multiple print to check for presence of RJSPDFTIFF library and skip printing if is not there.
  • Fixed problem that when user clicks on value in custom lookup that has an apostrophe, that value is not selected.
  • Fixed problem that DOCLOGCRT truncates log text from up to 5000 to 1024 characters.
  • Fixed problem that library QRPLOBJ is being flooded with user spaces. Changed DOCSQL so that it no longer replaces the user spaces it uses in QTEMP.
  • Fixed problem that display of folder contents can take minutes when documents are stored on a DR550 storage system.
  • Fixed invalid text in audit log entry, DELETEDOC - first "word" was 'Delect' and should be 'Delete'. The QMQRY DOCFXLGDLQ has also been added to DOCUPG but can also be run on its own to make the change, as:


For safety, make a copy of file DOCLOG00 first.

  • Fixed problem that full quotes in a title or index key do not show up in document details.
    The fix includes HTML-encoding 5 reserved HTML characters. These characters are replaced where appropriate with their HTML entities.
&	& 
"	 " 
'	 ' 
<	 &lt; 
>	 &gt;

Spaces added between the ampersand and other characters in order to avoid autoreplacemetn

  • Fixed problem with DOCMOVLOC, that if there is a trailing slash in the IFSDIR parameter, the path to the new location adds another slash before the file name, thus doubling it up. The image file does get moved to the correct folder, however.

June 2011

Version 3.19.00
  • Added the ability to specify the title of the document search results window. Data area DOCSRCHTTL is used to specify the title. If this is filled in and you do a search via the URL, so that the results come up in another window, the title will be whatever was filled in the data area. If the data area is blank, a default title will be used.
  • Added the ability to use 7-Zip to compress email attachments and allow passwords to be used. This is similar to the commercial ASI PKZIP product support. Compression of attachments is NOT available from the browser, only if using the DOCSEND & DOCSEND2 commands directly.

The RJS7ZIP library is required.

This is enabled by using the data area SMTP7ZIP. The values of this data area and the SMTPPASIZIP data area are used to determine how files are zipped:



*NO        *NO     Uses lzip default compression, no passwords
*YES       *NO     Uses PKZIP for compression, passwords available
*NO        *YES    Uses 7-Zip for compression, passwords available
*YES       *YES    Will NOT compress file, cannot determine which to use
  • Changed the multiple print/email processes, so that they will run in a separate process instead of running in the HTTP server job. The user will see a message in the browser that the process has been submitted. The user will receive emails for completion of the process and for notification of any problems. The user's email address must be set in their WebDocs user entry. The user's primary group entry will be used if the user does not have an email address, and if neither the user nor the user's primary group have an email address, the value in data area FROMADDR will be used.

Multiple emails

The new way to send emails will spin that process off to a job running in the background. Several objects were created to do this:

  1. The DMULTEMAIL data area has a new value. Currently it can be *YES or *NO to enable/disable the email button on the select screen. The new value is *SBM. This will send the selected documents to the background job instead of running in the HTTP server job.
  2. DOCNEPMC - This is the never-ending program (NEP) that runs from *JOBQ QSYSNOMAX. The name of the job is DOCMLTNEP. The user name will be the same as the user that is running the CGI function of the web browser. This is normally QTMHHTP1.
  3. DOCMAXATSZ - This new data area holds the maximun attachment size in millions of bytes (not MB). The default is 10. This is a total of the attachment sizes. It will actually use a size that is 85% of what is entered. This will allow for any email overhead. If a single file is too big, the user will get an email saying "Attempted to send document greater than max allowed size..".
  4. DOCTRGM00, DOCLSTM00, DOCEMLM00, DOCEMLHM00, DOCPRTM00 - Data files used for passing information to DOCNEPMC.

The process will send 1 email per 30 email addresses per type (To:/CC:/BCC:). In other words, up to 90 email addresses could be on 1 email, 30 for each To:/CC:/BCC:. If more than that are entered, multiple emails will be sent out. So if 40 To: email addresses are filled in, 2 emails will be generated. One for the first 30 and one for the remainder. If 10 To: and 40 BCC: then again, 2 emails. The first for the 10 To: plus the first 30 BCC:. The second would have the remaining BCC: addresses.

Each selected document is a separate attachment. Attachments will be added until the DOCMAXATSZ limit is reached or there are 30 attachments. If there are more documents these will be sent as additional emails.

The NEP job DOCMLTNEP, which DOC100R starts if needed, can be ended 2 ways. The usual ENDJOB works, but to end it gracefully, write a record to DOCTRGM00 with an ID **QUIT** (case sensitive), and the job will end when it reads that record. That way if there are any outstanding jobs, those are taken care of before ending the job.

Printing multiple documents

To enable the background printing function:

  1. The Printer Path: field in the WebDocs user or group user entry can contain a path to a printer on the iSeries. This needs to be an ASCII printer capable of printing PCL. The syntax is *PRINT:[path to defined printer outq]. Example Printer Path: *PRINT:*LIBL/TIFFPRT. The *PRINT: is what WebDocs looks for to do the background printing. Any other values will be handled as they currently are. Again, the key part WebDocs is looking for is *PRINT: followed by an output queue.
  2. Use a *LAN printer device to print to. This device needs to be configured to use Host Print Transform for printing to each kind of ASCII printer. See ASCII printers for information on setting up these devices.

Miscellaneous fixes

  • Fixed a problem with listing email addresses in the browser interface. Before, multiple email addressees had to be delimited by a comma. They can now be delimited by space, comma, semicolon, or CRLF, and they will be handled correctly.
  • Fixed a problem, that the To: address in the browser interface was required. Now there just needs to be an address in at least one of the To:/CC:/BCC: areas.
  • Fixed problem with inserting more than 1 inbox after the same inbox - the inserted inboxes were assigned the same sequence numbers, so the displayed order could be incorrect, since it was sorted by inbox name after the sequence-number sort.
  • Changed command DOCFLOWINS, so that more than 1 inbox can be inserted after another inbox. Before it looked like you could add up to 10, but only 1 would be inserted.
  • Fixed prompt for commands DOCFLOWCRT and DOCFLOWINS, so that required parameters were indicated properly. Before, it was not obvious that some parameters were required.

May 2011

Version 3.18.04
  • Fixed custom lookup problem when a user program was specified. Two rows appeared for each row in the results. The first row had only the first column, the second row had both columns.
  • Fixed problem with DOCSEND and DOCSEND2, that the commands failed when there was an apostrophe in any of the email addresses.
  • Fixed problem with DOCSEND2, that the To: address did not appear in the message when viewed by the recipient.
  • Fixed problem with Quick-Approve and Quick- Reject, that the options did not appear when the document was in the user's own inbox.
    • Added inbox name and notes to the list of pending items in document details. This will help identify what action to take. The notes will be the last one entered when action was taken from the routing slip detail, or it will be the notes from the route itself.
  • Changed the DOCLDAPCHK command to be able to authenticate LDAP users against up to 6 domains/hosts in addition to the parameter values passed in. If the parameter values fail, then the values from data areas DOCLDAP and DOCDOMAINW are used. If those fail, then data area pairs of DOCLDHOST1 - DOCLDHOST5 and DOCLDDOM1 - DOCLDDOM5 are used in sequence.
    • Made changes to minimize the number of authentication attempts when using *LDAP authentication. Added special value, *NONE, to the LDAPHOST parameter of the DOCLDAPCHK command. Changed DOC100R and DOCSESRTVC to build the DOCLDAPCHK commands so that the LDAPHOST and LDAPDOMAIN parameters are set to *NONE, instead of the values from the data areas, DOCLDAP and DOCDOMAINW.
    • Current setups should not be affected by these changes. This was done primarily to support multiple domains. In the case of multiple domains, if you are set up to disable domain users after a certain number of failed attempts, consider changing that to accommodate the number of domains defined to WebDocs.

January 2011

Version 3.18.03
  • Fixed problem with extensions not getting retrieved for IFS document, so XML forms not correctly identified for redirect to WebForms.
  • Fixed problem with retrieving incorrect version of document.
  • Added DOCRTVFSTP command to retrieve type of file system for an IFS object. It returns *LOCAL, *NFS, *QTNC, or *UNKNOWN.
  • Fixed issues when trying to use CHGAUT where it is not supported, such as NFS and QNTC shares. Now whenever an IFS file is being copied, the type of file system will be determined before using CHGAUT on both the from file and the to file. This affects commands DOCCHKIN, DOCCHKI, DOCEXP, and DOCMOVLOC.

October 2010

Version 3.18.02
  • Fixed problem when updating a document from the browser, that doc type and title were blank in exit program parameters. This would happen when the user did not have Move privilege to the folder where the document resided. Doc type was always blank in this case. The title was blank when it used a lookup list.

August 2010

Version 3.18.01
  • Fixed problem when uploading a document and selecting a doc type, that it gets checked in as blank.
  • Fixed problem when uploading or updating a document and selecting No doc type, that it gets checked in/updated with ***** as doc type.
  • Fixed problem that documents with invalid document types were not displayed when DOCTYPELMT was set to *YES, even when DOCTYPESEC was set to *NONE. DOCTYPELMT will be checked only when DOCTYPESEC is set to *USER.

August 2010

Version 3.18

Text Search Issues

  • Enhanced text search results when DEBUGSQL is on to show both the query over DOCTXT00 and the query over the temporary result file, as it does now. The former show which text values were specified, the latter shows which document types were specified.
  • Fixed problem that if there were leading blanks in stored text, the document pointed to would not be found.
    • Changed *CMD DOCTX02 so that it trims leading blanks.
    • Changed *CMD DOCUPG so that it trims leading blanks if the old release is earlier than 3.18
    • Customers should be strongly encouraged to be sure they trim leading blanks when adding entries to DOCTXT00 themselves.
  • Fixed problem that full-text data was not being deleted when running DOCINFODEL.

Link Issues

  • Fixed problem that a link could not be deleted in the browser.
  • Creating Links
    • Added data area DOCPRSLDFT to control whether to create a “default” link in the routine that parses delimited key values into separate links. This is most helpful in an environment where the customer is using delimited keys to generate links, but they are not doing that for all documents. They may not want to see a link that contains the delimited value, such as “123;456;789”. In that case they would set DOCLINKDFT to *NO and DOCPRSLDFT to *YES. Documents with delimited key values would not get a link that includes the delimited value. But those that are not delimited would have what amounts to a “default” link created in the parsing program.
    • Changed parsing program not to use the delimited key value when there is not a value after parsing. This occurs when one key has a different number of delimited values from another key. If one key has 3 values and another has 2, the latter will a blank value to go with the 3rd value of the former. This used to get the incoming key value, which had delimiters in it.
    • Fixed problem that the links parsing program was using document key values instead of link key values to see if the link already exists.
  • Link Searches
    • MINIMIZE Search Style
    • Fixed problem that the notes button was missing in the “Document Information” type of result list (Hide Dup).
    • Fixed problem that “Hide Dup” and “Show Dup” gave no results after the initial search results were displayed.
    • Fixed several incorrect-results issues when using *MINIMIZE search style (data area DOCSRCHSTY). The SELECT statements did not correctly correspond to those used when search style was *STANDARD.
  • Both Search Styles
    • Fixed problem with duplicate rows displayed in search results. There were cases of entire sets of key values being duplicated in the results. Now the results will show case-insensitive unique results – if a key has “Y” in one link and “y” in another, there will be only one instance in the results. To see all the links, you have to go into the Links button in document details.

Miscellaneous Items

  • Added *CMD DOCVARLEN that lets a CL program retrieve the right-trimmed length of a variable or literal value.
  • Enhanced *CMD DOCINFOUPD to put the document ID into a data area, QTEMP/DOCIDTMP. This gives the pre-update exit program a place to find the document ID that is being updated.
  • Enhanced *CMD CRTAPACHEI to tighten security in the IFS tree for the instance created.
  • Changed *CMD DOCINFOUPD to populate the folder parameters in pre-update exit.
  • Changed display of dates in search results and other document lists so that they match the format used when entering those dates. They used to have 2-digit years, while entry requires 4-digit years. Data area DOCDATFMT controls the format of dates for entry, and now for display, as well.
  • Changed options 20, 26, and 27 of the RJSIMAGE menu to default to WEBDOCS instead of APACHEDFT – this corresponds to the default in the CRTAPACHEI *CMD.
  • Fixed problem that DOC100R and DOCSRCHR sometimes were not able to get the session ID of a session they had just created.
  • Fixed problem that the user filter was not being used along with folder and type access to determine whether a document should be listed in search results.
  • Fixed problem that the routing slip display was empty when clicking on the “envelope” in the contents list of an inbox. If you went into routing in document details and clicked on a routing slip entery there, it showed the contents.
  • Fixed log text for *CMD DOCFLOWMRT.
  • Fixed problem with *CMD DOCSESRTV when the WebDocs user was the same as the iSeries user but all lowercase. If *CURRENT, the default, was used on DOCSESRTV, an existing session would not be found, and a new session would not be created, since an uppercase version of the user name was used and did not exist in WebDocs.
  • Fixed problem that *CMD DOCSESCRT could generate a duplicate key in a session file.
  • Restored action SEARCH4.

February 2010

Version 3.17


  • Fixed possible hang when checking for an existing link in DOCCHKIN and DOCLINKCRT.
  • Fixed problem that DOCCLRDEL and DOCCLRFLR were not removing everything connected with the contents of the folder.
  • Fixed problem that DOCINFODEL was not removing everything related to a document.
  • Fixed problem when the BLANKUPD parameter is changed to *YES and caller had been using *BLANKS. In that case, *BLANKS was put into the search key or other attribute.
    • BLANK or *BLANKS (upper or lower case) can be used to blank out a search key or other attribute. It used to be only *BLANKS.

New Items

  • Added command CRTAPACHEI (Create Apache Server Instance). This makes creating an instance of the Apache HTTP server much easier. The command creates all the objects for an HTTP server instance and lets you specify the port on which the instance listens.
    • Replaced menu option 22 (Add WebServer Directives to HTTP Configuration) with option 22 (Create Apache Server Instance - CRTAPACHEI). Command DOCHTTP1 can still be used for those on the Original HTTP Server (pre-V5R3).
    • Removed menu option 23 (Work with HTTP configuration - WRKHTTPCFG). System command WRKHTTPCFG can still be used for those on the Original HTTP Server (pre-V5R3).
  • Added data area DOCALWVERX to allow using different file extensions in versions. Default is *YES, which means leave the file extension alone. *NO means use the original behavior, where the file extension is replaced by that of the original document. This all assumes that the file extension is set up in Windows file associations.
  • Enabled initial RJS WebForms capability. Added XMLFORMURL data area which will point to the selected WebForms Server. If XMLFORMURL data area is blanks, then the Web Forms link will not show up in the main WebDocs tree. When enabled, any document with the XML extension will be pointed to the RJS WebForms server URL for viewing.
  • Added DOCQQINI command, which can help with SQL performance on searches. It creates the QAQQINI options file in the specified library, normally RJSIMAGE. It does not replace QAQQINI if it already exists. It then sets OPTIMIZATION_GOAL to *FIRSTIO and IGNORE_DERIVED_INDEX to *YES. The former influences the SQL optimizer away from doing a table scan and toward using an index. The latter says to ignore select/omit files, therefore allowing the statement to be processed in the new query engine. If data area DOCSRCHSTY is set to *MINIMIZE, the various search processes change the job query attributes to use the QAQQINI file in RJSIMAGE.
  • Customers can use this command to create QAQQINI files for their own purposes. They would modify member DOCQQINI in source file RJSIMAGE/QDDSSRC if they want to change other optimization settings and specify a library other than RJSIMAGE in the OPTLIB parameter.


  • Changed behavior when DEBUGSQL is set to *YES, so that only administrators can see the SELECT statement; this is intended to minimize confusion for regular users.
  • Changed DOCUPG to submit the session-clearing job to QUSRNOMAX – now it will not block QBATCH processing.

Enhanced Logging

  • Logging is now done by commands, not just browser.
  • Logging information has been enhanced for several commands, notably updates, moves, emails, and faxes.
  • Added data area DOCDELLOG to control whether to remove log entries when deleting document with DOCINFODEL.
  • DOCLOGCRT is used universally to add audit log entries.
  • Added data area DOCLOGLOG to control whether to put a message in the job log when an entry is made in the audit log. Default is *YES, which causes the original behavior, where a message is put in the job log. *NO means do not put a message in the job log.
  • DOCRMVSESU only logs when removing sessions for *ALL users.
  • Changes to DOCLOGCRT
    • Required parameters have changed – USERID, DOCID, DOCREV, LOGACTION, and LOGCURRIP were required, now only LOGACTION is required.
    • USERID has 2 special values.
      • DTAARA, the default, means to look for the logging user in data area SCANUSER.
      • If found, use it.
      • Otherwise, use the job user and use this syntax - 400USER:JOBUSER.
      • Create the data area with command: CRTDTAARA QTEMP/SCANUSER *CHAR 20.
      • NONE means that the logging user will be blank.
    • DOCID has 2 special values.
      • DTAARA, the default, means to look for the document ID in data area DOCIDTMP.
      • If not found, use *NONE.
      • Create the data area with command: CRTDTAARA QTEMP/DOCIDTMP *CHAR 100.
      • NONE means that the document ID will be blank; this allows logging when no document ID is required.
    • If the document ID is not valid, the "bad data" field, LBADDTA, is set to 'Y'. The job log from the job listed in the entry will contain a message that indicates the bad data.
    • DOCREV has 1 special value.
      • DTAARA, the default, means to look for the revision in data area DOCVERTMP when there is a valid DOCID.
      • If not found, set DOCREV to 0.
      • Create the data area with command: CRTDTAARA QTEMP/DOCVERTMP *DEC (9 0).
    • If the revision is not valid, the "bad data" field, LBADDTA, is set to 'Y'. The job log from the job listed in the entry will contain a message that indicates the bad data.
    • LOGCURRIP has 2 special values.
      • DTAARA, the default, means to look for the IP address in data area DOCIPTMP.
      • NONE means that the IP address will be blank.
      • Create the data area with command: CRTDTAARA QTEMP/DOCIPTMP *CHAR 30.
    • LOGTEXT has 1 special value.
      • BLANK, the default, means that log text will be blank.
    • DOCLOGCRT checks data area DOCAUDIT to see if it should write to the log - this used to be done by each application or program.
    • A message goes into the job log whenever a log entry is created, including the document ID, if specified. The job log can get cluttered from these messages. This can be controlled with the new data area, DOCLOGLOG. *YES, the default, means to send the message, which is the original behavior. *NO means not to send the message.
    • CRTAUDIT parameter on DOCCHKIN, DOCINFODEL, DOCINFOMOV, and DOCINFOUPD is now ignored - data area DOCAUDIT is now checked in DOCLOGCRT.
    • Changed DOCCHKI to put the revision in the audit log.
    • Changes to DOCSEND
      • Callers of DOCSEND can control whether DOCSEND does the logging.
        • Set data area DOCIDTMP in QTEMP to *NOLOGDOCSEND to keep DOCSEND from adding to the log.
          • If DOCSEND is told not to add to the log, the caller should be sure to do so, if desired - DOCSENDLNK is a WebDocs command that does this now.
      • All email addresses are listed in the log text.
        • FROM address looks like FROM: [aaa@bbb.com].
        • TO addresses look like TO: [ccc@ddd.com] [eee@fff.com], etc.
        • Attachments look like ATTACH: [ggg.pdf] [/hhh/iii.doc], etc.
        • Additional log entries are used if there is not enough room in the first entry.
    • Changes to DOCSEND2
      • Callers of DOCSEND2 can control whether DOCSEND2 does the logging.
        • Set data area DOCIDTMP in QTEMP to *NOLOGDOCSEND to keep DOCSEND2 from adding to the log.
        • If DOCSEND2 is told not to add to the log, the caller should be sure to do so, if desired.
      • All email addresses are listed in the log text.
        • FROM address looks like FROM: [aaa@bbb.com].
        • TO addresses look like TO: [ccc@ddd.com] [eee@fff.com], etc.
        • CC addresses look like CC: [ggg@hhh.com] [iii@jjj.com], etc.
        • BCC addresses look like BCC: [kkk@lll.com] [mmm@nnn.com], etc.
        • Attachments look like ATTACH: [ooo.pdf] [/ppp/qqq.doc], etc.
        • Additional log entries are used if there is not enough room in the first entry.
    • Changes to DOCSNDFFX
      • Callers of DOCSNDFFX can control whether DOCSNDFFX does the logging.
        • Set data area DOCIDTMP in QTEMP to *NOLOGDOCSEND to keep DOCSNDFFX from adding to the log.
          • If DOCSNDFFX is told not to add to the log, the caller should be sure to do so, if desired.
      • Recipient name, fax number, and company are listed in the log text.

This revision is a full base release

October 2009

Version 3.16-3.14 interim fix
  • Fixed full-text search problem introduced in version 3.14.

Download WebDocs - iSeries Edition 3.16/3.15/3.14 interim fix

  • To install the 3.16/3.15/3.14 interim fix:
  1. Run the FTP Uploader as usual - go through all 7 steps
  2. When finished, go to the iSeries
  3. On a command line, execute the following command (prompt the command if WebDocs is not in library RJSIMAGE):

This program renames *SRVPGM DOCSQLSELR in RJSIMAGE to DOCSQLSELX, copies that *SRVPGM from RJSIMFTXFX to RJSIMAGE, and updates *PGM DOC100R with the *SRVPGM.

September 2009


WebDocs IBM i is ready for V6R1/V7R1 of i5/OS, starting with version 3.16. Minimum OS/400 level is V6R1.

Version 3.16
  • Added ability to specify query options file (QAQQINI) library.
  • Added ability to use query options file (QAQQINI) library with *STANDARD search style.
  • Improved performance when deleting users, folders, document types, and index keys in maintenance screens.

This revision is a full base release

August 2009

Version 3.15
  • Fixed problem creating links with delimited keys. All links were getting the same link date.

This revision is a full base release

August 2009

Version 3.14
  • Added additional logging of routing events (DOCLOGCRT command), and all routing commands now also call DOCFLOWEX after processing.
  • Added new search methodolgy for document, link, and full-text searches. It is also available for the DOCSRCH command. There are 2 primary changes to the SELECT statements:
  • Remove DISTINCT processing
  • Minimize use of the LIKE predicate
  • Added a new data area, DOCSRCHSTY, to control which search method to use: *STANDARD (default) or *MINIMIZE. If the cusomer is having performance issues, they should try the *MINIMIZE setting for a while.

The *MINIMIZE setting will also cause DOC100R and DOCSRCHR to change the query options (QAQQINI) library to RJSIMAGE. The user must have *JOBCTL special authority, also, for this to occur. The parameters that are changed are IGNORE_DERIVED_INDEX = *YES and OPTIMIZATION_GOAL = *FIRSTIO

  • Added indexes to folder and type access tables in RJSTEMP, for case-insensitive search support.
  • It is recommended that customers change data area DOCSRCHSUF from a '%' to a blank ' '. This allows for exact searches, as it always has. Users will need to be trained to use the '*' wildcard at the end, in order to use a "starts with" search. This will be like searches on other web pages.
  • Changed DOCSQL to function in the same way as DBSQL in the Data Export product. It can now have statements up to 5000 characters long in the statement parameter and up to 32,767 long in a source member. It also has parameters for naming (*SYS or *SQL), sort sequence, and language ID.
  • Changed all physical files to REUSEDLT(*YES).
  • Added DOCEXPPRG command to purge expired docs from the system. DOCEXPPRG defaults to a WebDocs folder named 'EXPIRED' This folder name can be overridden. The folder has to already exist in WebDocs. Before the process runs it,creates a report of all expired docs based on our existing expired documents report. Then it updates the folder name in DOCS00 to the expired folder. If the user enables permanent delete, then DOCCLRFLR gets called right after the documents are moved to the specified expired folder.
  • Added DOCSESPRG command to purge unused sessions periodically. By default, the process wakes up every 60 minutes and removes sessions that have not been used in 120 minutes. The user can specify a time when the job should end, in the format HHMMSS (where HH = hours, MM = minutes and SS = seconds). If that parameter is left blank, the process will run indefinitely. If the end time is greater than the start of the process, it will end on the same day. If the end time is less than the start of the process, it will end on the next day.

This revision is a full base release

July 2009

Version 3.13
  • Updated DOCUSRCHK to support long user passwords. Updated DOC100R to support up to 50 character passwords when using *AS400 to authenticate against iSeries user/password.
  • Modified DOCWEB, DOCSESCRT, DOCSESRTV to support the new long 50 character passwords.
  • Updated DOC100R to have OPENFIRST=Y flag available when running a URL search with the Action=Search directive. If set, the first document found in a result set will auto launch for viewing.
  • Modified DOCWEB to add OPENFIRST flag.
  • Modified DOCFLOWREJ to close out a routing item if it at the first step and is rejected. Previously an item would stay open at the first step if rejected from that step.
  • Removed DISTINCT from most SELECT statements for searches. This is a first step toward improving performance on searches, aimed at reducing the use of full table scans. When a session is created, now a blank doc type record is added to the type access file.
  • Fixed problem of update in browser blanking out folder levels when CkO = 'Y'and CkI = ' '. Folder for current document was not added to folder list. Also, the MOVE part of browser update occurs only when user has move privilege to the destination folder.

This revision is a full base release

February 2009

Version 3.12
  • Added ability to search for and display document checkin and spool dates in either MDY, YMD or DMY formats. This is controlled by setting data area DOCDATFMT to either MDY, YMD or DMY. Default: MDY
  • Added SMTPMAIL9C/SMTPMAIL9D programs to the build. These programs handle authenticated SMTP emailing.
  • Added DR550/TSM support for using UNC gateway instead of the RJSTSM API for archiving docs to a DR550 storage device. This option requires a license for the RJS Samba APIs. RJSSAMBA library name: RJSSAMBA. The RJSSAMBA API's must be configured so that a valid domain, share name, user/pass have been entered in the SMBDOMAIN, SMBSHARE, SMBUSER and SMBPASS data areas. User ID and password are stored encrypted. Within the UNC share a subdirectory named /webdocs must also be created.

Example path:

// points to /webdocshare on a DR550 server. A directory named /webdocs must be created under /webdocshare making the physical storage path actually: /webdocshare/webdocs


DOCTSMSMBC does not clean up temp objects from /RJSTEMP, so /RJSTEMP should be cleared regularly.

  • Added document faxing capability if DOCFAX data area enabled. New CL command: DOCFAX.
  • DOCFAX command is now being built. Fax server must be SMTP-enabled so WebDocs can forward outbound fax as an email.
  • DOCFAX/DOCFAXC source is now included so the faxing commands can be customized for different fax servers.
  • New faxing data areas:

DOCFAX: *NO=Fax button disabled; *YES=Fax button enabled; Default: *NO.


WebDocs user email addresses must be set if correct outbound from user needs to be set. Otherwise DOCFAXFROM value will be used to set from address.

DOCFAXTYP: CASTELLE=astelle FaxPress; RIGHTFAX=RightFax Server; Default: CASTELLE.

DOCFAXHOST: Default SMTP fax server host name. Default: RJS_FAXPRESS.


Must create host entry name for RJS_FAXPRESS. GO CFGTCP, Option 10

DOCFAXFROM: Default fax from email address if no from address or *DEFAULT is passed to DOCFAX command.

DOCFAXDOM: Fax Server Domain Name, used by RightFax faxing; Default: yourcompany.com

This revision is a full base release

November 2008

Version 3.11

Note: You must be at 3.09 or 3.10 to install this interim fix

  • Fixed incorrect size for DOCBLKENTR data area - should have been 4.
  • Added Print option to document lists. This option allows users to select up to 100 PDF files for merging via multi-select. After selecting one or more PDF files and clicking print, the DOCPRTMLT command is called in the background to merge all selected PDF files into a single PDF document that is then returned to the user for viewing/printing. *PDFMULT must be specified in a WebDocs user profile for the printer path or the Print option will not show up. Note: Requires license for RJS PDF and TIFF utilities.
  • Added data area DMULTEMAIL. If set to *YES, the multi-email button is available in the document lists. Dft: *NO
  • Added data area DOCMAXSEL. This setting determines the max number of entries selected from the multi-select buttom. Multi select will round-robin through a list of selections. Ex: Click first time, select xxx number of entires. Click again and all entries are unchecked and the next xxx number of entries are selected. Dft: 100
  • Added data area DOCPDFEXT. This data area controls the file extension sent back when viewing PDF documents. This is a good way to assign a PDF viewer other than Adobe Acrobat for viewing PDF files while preserving the PDF extension for Adobe Acrobat. Any 1-4 digit file extension can be used. Dft: PDF.
  • Added capability for DOC100R to redirect directly to the search page or any other specified URL after login. This page will show in the right frame. The DOCRIGHTUR data area contains the URL VALUE. Blank=use default right page. Default: /RJSIMAGE/RIGHTFRAME.HTM Note: If the user has a default folder, this setting is ignored and that folder is opened in the right frame. Example: To redirect the user to the search page, use this URL: /IMAGESERVER/DOC100R?ACTION=SRCHFORM
  • Added data area for enabling adding a document to workflow during upload. DOCWFLOWUP data area must be enabled to allow this setting to work. If enabled, the workflow settings will show up on the document upload page. Default: *YES
  • Changed DOCSEND2 so that the command makes sure that at least 1 of TO:, CC:, or BCC: are entered.
  • Changed DOCSEND2C so that it no longer requires that CC: is non-blank.
  • Added search enhancements from v2.20.
  • Made all actions case-insensitive.
  • Resolved problem introduced with V3.09 when the optional tape archive features were added. When user clicks to view a document, they were getting an Internet Explorer security error. The error message was: "To help protect you security, Internet Explorer blocked this site from downloading files to your computer. Click here for options." As far as we can tell this problem is generated because we use AJAX to check a document status before downloading. Now we only use AJAX when a user clicks View if the RJSARCTAP license is enabled.

An alternative workaround for this seems to be adding the WebDocs URL to the users trusted sites in Internet Explorer and then setting the security level to Medium-Low, but updating to the latest version of DOC100R is the best way to solve the issue.

Download WebDocs - iSeries Edition 3.11/3.09 interim fix from RJS

To install the 3.11/3.09 interim fix:


If you are at 3.09, install the 3.10 interim fix first, then the 3.11 interim fix.

  1. Run the FTP Uploader as usual - go through all 7 steps
  2. When finished, go to the iSeries
  3. Type ADDLIBLE RJSIMGU311 and press Enter
  4. Type DOCUPG311 and press Enter

When the command is done, you should be at version 3.11 - check the library description and the VERSION data area in RJSIMAGE.

September 2008

Version 3.10

Note: You must be at 3.09 to install this interim fix

  • Changed DOCUPG
    • to use STRQMQRY instead of DOCSQL, so license is not required.
    • to submit session cleanup to batch, because it could take a long time.
  • Fixed problem that document list in Image Viewer showed only one document.

Download WebDocs - iSeries Edition 3.10/3.09 interim fix

To install the 3.10/3.09 interim fix:

  1. Run the FTP Uploader as usual - go through all 7 steps
  2. When finished, go to the iSeries
  3. Type WRKOBJPDM RJSIMGU310 and press Enter
  4. Put a 3 option on all objects and press Enter
  5. Put RJSIMAGE in the To library: and press Enter
  6. Type CHGLIB LIB(RJSIMAGE) TEXT('WebDocs iSeries Edition Library V3.10') and press Enter

September 2008

Version 3.09
  • Added automatic session purge to upgrade
  • Fixed issues with custom lookup.
  • Fixed problem that folder list was not complete when user in a group.
  • Added AJAX processing for checking status of archived images (browser).
  • Fixed problem that DOCRMVSESU would stop at the first error in ending a session. Now it keeps on going without comment.
  • Added ability to block Enter key in document information page - prevents mistakes when users thinks they are searching. Data area DOCBLKENTR controls this behavior. *YES means block the enter key, *NO (default) means do not block the enter key. In this case, Enter causes the Update button to be clicked.
  • Fixed problem with DOCEXP - file sizes incorrectly handled. Related to extending file size length from 9 to 15.

This revision is a full base release

July 2008

Version 3.08
  • Enhanced session management
    • Added DLTNEWSESS parameter to DOCSRCH command. The DOCSRCH command now checks for the most recent session for the user. If found, it uses it. If not, it creates a new session. If the DLTNEWSESS parameter is *YES (the default), then the new session is ended. If *NO,the session remains and is available for the next time DOCSRCH is run.
    • Added CHECKSESS parameter to DOCSESRTV command. If *YES, the DOCSESRTV command checks for the most recent session for the user. If found, it returns it. If not, it creates a new session and returns that new session.
    • Added DOCPRGSES command that ends all sessions that have not been used for a specified number of minutes. This can be run from the job scheduler every so many minutes.
    • Added DOCRMVSESU command that ends all sessions for a user or group. If a group is specified, the command will also end sessions for all members of the group. The single value *ALL will end all sessions. This command can be run nightly from the job scheduler, using the *ALL value.
    • Added option 6 to Work with Users and Groups to end sessions for selected user.
    • Added DOCENDSESB data area, which controls whether the browser should end a session when the user logs out. *NO (the default) means that the browser will check for the most recent session for the user. It will also leave the session when the user logs out. *YES means that the browser will always create a new session when the user logs in, and when the user refreshes the browser. It will then end the session when the user logs out.
  • Fixed LOGIN2 and LOGIN3 actions that allow logging in to browser with a URL.
  • Fixed problem with browser upload and long path names.
  • Fixed problem with files that do not have an extension - if content type contains the word 'TEXT', then use 'txt', otherwise use 'bin'.
  • Fixed problem with "Next" button on document list for a folder. If several checkin dates are the same and cross a page break, the next page showed no documents in the list.
  • Changed 'Work with Routing Definition Steps' screen to suppress leading zeroes in the 'Step' column.
  • Added new commands to enable re-routing to new routes along with pulling routes from a single inbox to a new route. This will allow inboxes to function similar to work queues where work drops into a queue and is pulled out for processing in a single threaded fashion. These changes were mainly done for use with the Windows based routing client.
    • Added DOCFLOWRRT command that routes the selected item to a new route and marks the current route as re-routed.
    • Added DOCFLOWMRT command that marks the route as re-routed.
    • Added DOCFLOWQRD command that reads the next item in an inbox, marks the current route as re-routed and adds the item to the newly selected route. This command enforces single threaded reading via a data area lock.
    • Added DOCNOTECRT command that creates a new note for the selected document ID.

This revision is a full base release

April 2008

Version 3.07
  • Fixed custom lookup search for column 2
  • Fixed full text search
  • Changed bin number parameter of DOCIMGPRT to PAPERTRAY - caption changed to 'Paper tray'
  • Added "use lookup" field on lookup list screen

March 2008

Version 3.06
  • Expand email text in browser
  • Allowed all 30 attachments in email commands
  • Added DOCSEND2 command - supports To, CC and BCC email addresses
  • Added bin number to DOCIMGPRT
  • Enhanced full-text search performance
  • Increased size of IFS file size throughout - up to 999 trillion
  • Changed user filter maintenance so that it is not editable if too long for the screen
  • Removed need to pass all return parameters in DOCIFSSIZ command
  • Removed folder type processing

This revision is a full base release

February 2008

Version 3.05
  • Fixed problem that some HTM/HTML documents could not be viewed or saved. This enhances the fix in 1.12/1.13.
  • Minimize messages coming from user-defined function and stored procedures.
  • Added service program DOCUTILR for various utility functions.

January 2008

Version 3.04
  • Removed trailing blanks in folder list options
  • Fixed problem that folder access was granted from group, even when user set to 'N'
  • Fixed DOCCHKIN so that checkin user is saved before pre-checkin exit is called
  • Fixed problem that logging an event when the document does not exist causes an 'out of range' error.
  • Added option to suppress URL in status bar - DTAARA DOCHIDEURL controls this - *YES means hide the URL, *NO means do not hide the URL. Default is *NO, to preserve current behavior.

December 2007

Version 3.03
  • Fixed problem that sorting doc or link search results for a specified folder returns documents from all folders.

December 2007

Version 3.02
  • Fixed problem with Next button in document list for a folder.

November 2007

Version 3.01
  • GA release of version 3. Significant security & management changes, improved navigation.

Minimum OS/400 release is V5R1.

February 2007

Version 2.17
  • Added DOCGETLST command and DOCGETLSTC program to support dotNet downloading of folder, type, key, route, and lookup lists to Scan Workstation.

September 2006

Version 2.14
  • Added Use ActiveX Download setting to the user table. Now ActiveX usage is set as follows: If DOCACTIVEX data area = *YES, all users use ActiveX download. If DOCACTIVEX data area = *NO, then the Y/N flag at the user level controls the usage of the ActiveX download. This option makes the usage of ActiveX download much more granular. Updated RJSIETFR.OCX/RJSIETFR.CAB files to contain a digital signature. This will allow users to install the RJS Internet Transfer OCX without first setting Internet Explorer trust settings for the WebDocs web site URL. Note: HTML files must be restored in order to install the new RJSIETFR.CAB Added AP002C sample code to library.
  • Updated DOCLDAPCHK to call RPG version of the LDAP authentication code. Was causing java toolbox remote command call jobs to fail when authenticating from the WebDocs DotNet API and using LDAP authentication. After updating code to call RPG version instead of C version of LDAP check, all seems to work fine. Added DOCIMGEXP command for exporting an image from the green screen via the RJS Office Integrator. This command can also be used to add annotation text to the exported image copy.

Requires RJS Doc Image Viewer V1.0.61 & RJS Office Integrator PC V1.1.60

August 2006

Version 2.13
  • Fixed problem when using *AS400 for password on an OS level earlier than V5R1. Fixed problem that link search returned no documents when document type was specified.
  • Changed link search to handle duplicate documents. These duplicates are most likely to occur when using automatic link creation using the link delimiter. - Added DOCLNKLSTP data area that has the default list type for link searches.
    • DOCS = show document information (no duplicates)
    • LINKS = show link information (with duplicates)
  • Added a button on the link search results to toggle showing and hiding duplicates.
  • Added "Select all" and email support to link search and full text search result pages.
  • Changed DOC100R, DOC102R, & DOC106R not to require that /RJSIMAGE directory exist when using Apache web server. Changed default in option 20 to point to APACHEDFT web server.

Rename the /RJSIMAGE directory and run option 20 after update.

August 2006

Version 2.12
  • Fixed problem with column sort when search criteria includes document dates.

August 2006

Version 2.11
  • Fixed link search problem introduced when 5 folder levels support was added (2.09 & 2.10 are affected). Users get message ?User has no document access permissions. See the WebDocs Administrator for assistance.

August 2006

Version 2.10
  • Fixed custom filter problem in user maintenance. Fixed integration problem with Image Viewer.

July 2006

Version 2.09
  • Fixed problem with DOCIMGPRT command. It was causing an Error 13 - Type Mismatch when run because the command line buffer was being chopped at 240 characters. Added support for 5 folder levels. This includes parameters in commands and programs, as well as options 11 & 12 of the WebDocs menu. - Improved validation of folder levels
  • Lists that involve folders now presented in tree-like form - When new folder is created, user will be prompted for descriptions of missing parent folders, which will be created - When a folder is deleted, user will be warned that child folders will also be deleted; documents will not be deleted but will be unavailable until moved - When access is granted to a folder, view access will be granted to parent folders that are not already accessible - When access is removed from a folder, it will also be removed from child folders - In folder lists, folders with gaps in levels or that are missing a parent will be shown in red Added option 9 to user and folder maintenance for maintaining user access to folders - no longer need to bounce to menu. Changes can be made directly in the list of privileges that appears when taking option 9. Modified interface of all maintenance screens: - F12 added to all screens
  • Position to results are 2-way scrollable
  • Enter leaves when no option or positioning
  • Add screens are exception to this
  • F22 added to show in a window the full value of screen data for which there is not enough room - F3 removed from windows- Cursor stays in body of list, not up on the position to field - In work with screens, when multiple items are selected, the list will be positioned so that the last item is at the top of the list - Several screens reorganized
  • Edit User ID (opt 10) - Edit User Folder Access (opt 12)
  • Edit Document Type (opt 13)
  • Intent is for keys to be listed here - Work with Document Keys (opt 14)
  • Rows are single, not double, with user key showing only the number - Display attribute now shown in list Added DOCTX03 command which allows full text search keywords to be added for a WebDocs document from an IFS ASCII text file.

May 2006

Version 2.08
  • DOCDATINFO data area now controls display of spool date as well as checkin date.
  • Fix problem when creating folders that have a space. Folder (and document type) names are now restricted to capital letters, digits, #, -. Existing names still usable. In folder tree, "Doc Upload" and "Log out" now appear below searches and above folders.
  • In addition, searches and these 2 items are not a part of the folder tree. Custom lookups now use the DISTINCT modifier in the SELECT statement, to eliminate duplicates. In addition, the actual items are clickable, in addition to the button. The separator between the folder tree and the right-hand frame is now visible. It was always possible to resize the folder tree, just not obvious.
  • Fixed problem that the image files still had to be located in /RJSIMAGE, even when using the Apache web server.

April 2006

Version 2.07
  • Fixed problem that custom lookups would fail if an index key was an option list and was set to '*'.
  • Emailing a document would fail when sending a document that had been moved to a secondary storage location. Fixed program to look for document in primary disk location and then in the secondary disk location to determine where it will be emailed from.

April 2006

Version 2.06
  • Added abililty to add a document into workflow during HTTP upload/checkin process.
  • Added data area DOCDATINFO to determine if document date info is shown in document lists. Set to *YES to show date info on doc list. Default = *YES.
  • Added data area DOCTYPINFO to determine if document type is shown in document lists. Default = *NO From web browser, an Admin user can undo document checkouts. Fixed problem with rjsietfr.cab file not downloading correctly.
  • Fixed relative path so it is found in /RJSIMAGE as expected. Added DOCACTIVEX view capability to rest of document list screens. 2.05 note. DOCACTIVEX also auto launches a document when user clicks checkout if the setting is enabled.
  • Only program updated during 2.05/2.06 was DOC100R.
  • Fixed DOC100R so that it will only output the ActiveX object tag in the browser if DOCACTIVEX is enabled.
  • Fixed Select All and Email button spacing on the document list screens.

April 2006

Version 2.05
  • Added abililty to view docs via ActiveX. Data area DOCACTIVEX must be changed to *YES in order for this to work. This is a global system setting. Only works with IE browsers. When DOCACTIVEX is enabled, users must allow unsigned ActiveX downloads in their browser for the iSeries system host or IP address. This can be accessed in Internet Explorer via menu: Tools/Internet Options/Security Tab. Select Trusted Zones and then click the sites button and add your iSeries server IP to the trusted sites. Then select the Custom Level button and set the Download unsigned activex controls option to "Prompt". Next time a user searchs or views a document list, the document icon will auto-launch the selected document. The Open/Seve option is still enabled and available on the View button under Document Details.

March 2006

Version 2.04
  • Added "Select All" button wherever multiple selection is allowed.

March 2006

Version 2.03
  • Changed DOCSESRTV and DOCSESCRT commands to recognize *AS400 and *LDAP users. This will now allow users using these two API's to utilize AS/400 user and Active Directory authentication. Added clear existing sessions parm to DOCSESCRT. The defaqult value is *NO, so sessions no longer get cleared by default when the DOCSESCRT API is used. This API was originally added for use with the MS Office Add-Ins and the JSP interface, but will be used by more applications when doing WebDocs user authentications.

March 2006

Version 2.02
  • Added subject/desc parm to DOCSNDFFX so users can set subject when faxing with Quadrant. Added address selection to address book program DOC501R. Addresses can now be selected during address book lookup.

February 2006

Version 2.01
  • Fixed problem with custom lookups when replacement variable has nothing after it in LSSQLSTM. Remove single instance of newline instead of EOR (CR/LF) and made the line have a CR/LF. Now it appears we can send to QMail servers without issues.

February 2006

Version 2.00
  • Enhanced custom lookups, so that the lookups can be based on the index key values. - To use index key values for selection, put replacement variables into the LSSQLSTM field of DOCLS00. These variables are @@01 - @@10 (leading zeroes are required). Any instance of @@xx in LSSQLSTM will be replaced by the value of the corresponding index key (USERKEY1 - USERKEY10). - To use index key values in the lookup values, put the replacement variables into the LSLOOKUP1 & LSLOOKUP2 fields of DOCLS00. - The index key values will be passed to the program specified in fields LSPGM and LSPGMLIB of DOCLS00.

Added parameters to sample source DOCLOOKR for the index key values.

February 2006

Version 1.99
  • Added HTTP_COOKIE retrieval to DOC100R. This can be used when debugging cookies. Changed service program function #GetCookie to have an internal 8192 byte work buffer so we can handle long cookies generated by RPGSP program or other programs.

February 2006

Version 1.98
  • Added WebDocs Document Browser (DOC502) which can be hooked up to a JSP page to allow users to search for a document, select it and return the view document URL to the user. This can be used in programs such as Enterprise Workflow to allow users to quickly look up and select doc URL's to assign to a workflow.

February 2006

Version 1.97
  • Added multiple selection checkboxes to Document Search result and Folder TOC panels with a button so that all the documents with a check in the checkbox can be sent as attachements on a single email Also retrofitted the column header sort functions from 1.93 to Folder TOC List reorganizing code fpr the next button

February 2006

Version 1.96
  • Added email address book and web maintenance. This can be accessed from the email screen when sending a document. There is a button next to the to email address to launch the address maintenance program. Users can now send a document to up to 30 email addresses when mailing. Addresses must be separated by commas. Exit program DOCEMEXITC is called after each email so users can do custom notifications to users after email has been sent. The source code for DOCEMEXITC is in file SOURCE in library RJSIMAGE. Re-ordered folder selection and doc type on search screens. Doc type now comes first on document search and link search screens.

January 2006

Version 1.95
  • Added SKIPCOPY to DOCCHKIN command to allow user to bypass file copy during checkin process. Dft - *NO - File will always be copied during checkin. If set to *YES, only the file pointer will be checked in. If *YES specified, user is most likely using a NAS or Windows server to manage files and they will be copying the files to the NAS server themselves. In this scenario the customer should run the DOCVFY command regularly to insure no files are missing because WebDocs does not manage the actual file transfer when *YES is selected to bypass file copying.
  • Added UNC path to DOCFLR00. This field can be used by user appplications where docs will be stored on a NAS server yet accessed by WebDocs via Windows Services for Unix. User apps can check in a document with DOCCHKIN SKIPCOPY(*YES) and then the user app can bypass the IFS file copy and can copy the appropriate file directly to the Windows server via a Windows UNC path.

January 2006

Version 1.94
  • Allow quotes in update values

January 2006

Version 1.93

Added code to sort doc search results by clicking on column headings.

  • January 2006
Version 1.92
  • If user login fails because of bad user, bad password, etc, we now give them a link to redirect to the login page without using the back button in hte browser. This solves a problem for uses that are launching users into the browser via the iSeries Office Integrator or 5250 Integrator. They don't have to manually type the URL to redirect to the login page if no session is active.

January 2006

Version 1.91
  • DOCCHKIN command can now check folder security against the DOCFLRTS00 table which is using folder type security instead of using the regular folder security in DOCSEC00. Created DOCCHKINSC data area to accomodate user checkin authorization checking against DOCFLRTS00. If the data area is *NO (Default) then DOCSEC00 is used as normal for folder security checks. If set to *YES, the DOCFLRTS00 table is used to check folder security by folder type.

December 2005

Version 1.90
  • We now return an HTML frameset that is compatible with Mozilla Firefox and other browsers that support Javscript. Previously the Javascript tree only worked with Internet Explorer.

December 2005

Version 1.89

Document type description required and unique.

December 2005

Version 1.88
  • Fixed 'invalid document' false error when checking out a document. Fixed problem with upload when user has blocked cookies. Minor interface changes:
    • Doc Date on details is read-only
    • Removed color on read-only keys
    • Removed anchor from disable lookup button Simplified SELECT statements used in searches.

November 2005

Version 1.87
  • Added required and read-only attributes to maintenance screens for user keys. 'Y' for either attribute is the only valid value - any other value is treated as a blank.
  • Modified DOC100R to handle required keys:
    • Required key captions marked with asterisk.
    • Status bar explains meaning of asterisk when mouse runs over required key captions.
    • If required keys are blank, message is displayed when opening details window.
    • "Required key" tooltip is displayed when mouse positioned over blank required key.
    • Required keys are validated when Update button is clicked.
  • Modified DOC100R to handle read-only keys:
    • Read-only keys have no underline, are not bold, and background is lightly shaded.
    • This handling occurs based on either the read-only attribute of a key or the folder access for the user.
  • Added lookup table attribute to maintenance screens for document type and user keys. 'Y' is the only valid value - any other value is treated as a blank. Lookup table DOCL00 can be maintained using UPDDTA or other suitable application; a maintenance screen will be added in future release.
  • Modified DOC100R to handle lookup tables:
    • Title and user keys that specify using the lookup table DOCL00, and that have records in the table, will use a SELECT list, not a text INPUT box.
    • If user key has a value not found in the lookup table, that value is displayed in the list and a warning message is displayed on opening the details page.
    • "Lookup error" tooltip is displayed when mouse positioned over blank required key, with recommended action.
    • No validation is done for lookup errors.
  • Modified DOC100R to validate user keys as needed:
    • "Document details" displays required key and lookup errors when page is opened or refreshed. Required keys are marked with an asterisk. Required keys are validated for non-blank when updating.
    • "Searches" do not validate user keys, whether on opening or submitting the page.
    • "New" document pages validate only on submission.
    • "Adding links" do not validate user keys, whether on opening or submitting the page.
  • Modified custom lookup handling, so that the button is not displayed when the title or user key uses the DOCL00 lookup table. The button is disabled when the key is read- only or when there is no custom lookup defined for the key.
  • Lookup table lists behave as follows:
    • DOCL00 has 3 fields, document type, user key name, and key value. For searches, an additional option of an asterisk (*) is added as selected option, to indicate all values will be returned. For new links, a blank option is added, since the value does not need to be set.
  • Modified DOC101R to redirect upload page to DOC100R.
  • Added "shared" data attribute to maintenance screen for user keys. "J" marks the field(s) that uniquely identify a shared data set. This will usually be a single ID number. "D" marks the data that are associated with the "J"oin field(s). Shared data is held in file DOCAUX00. Corresponding fields in DOCS00 will be set to NULL. The join field(s) will be found in both DOCS00 and DOCAUX00.
  • Modified DOC100R to provide initial support for shared data. At this time, this consists of marking the key captions as bold for the join key(s) and indented italic for the associated data keys.
  • Added the new WebDocs login page, added rjsietfr.cab which will be used for downloads without prompts and added stop1.gif/go1.gif for quick approve process into the RJSIMGIFS save file. Added ButtonLookupDisabled.gif for use with disabled custom lookups.
  • Changed login so that cursor is in user ID field.
  • Added DOCTYPE01 to support alphabetical display of document types.
  • Modified DOCUPG to handle additional tables.
  • Modified document details page so that users can blank out a key by clearing the text. It is not necessary to use *BLANKS any longer, although that still works.

October 2005

Version 1.86
  • Added email address option to DOCSNDFFX CL command for sending faxes via email if customer uses Quadrant Fastfax .
  • Added DOCLAUNCH command for viewing any document from the green screen via the RJS Office Integrator. When DOCLAUNCH is called a temp copy of the document is sent to the PC and then launched for viewing via the viewer associated with the document type. Example: .DOC - MS Word, .XLS - MS Excel.

October 2005

Version 1.85
  • Added fields to support required and read-only user keys. Added fields to support lookups for document title and user keys. Added file DOCAUX00 and logicals to support auxiliary file by document type.

October 2005

Version 1.84
  • Added creation of DOCFFXKEYC for the DOCSNDFFX command. This program generates the next fax ID for sending a fax with Quadrant Fastfax software.

October 2005

Version 1.83
  • Fixed problem for DOCINFO URL calls. If invalid DOCID was passed, a CPF error would occur on one of the date fields.Now it returns a valid soft error. Added URL options for retreiving Doc Type, Doc Folder and Doc Keywords for use with Client Applications. These were added to support the new ActiveX HTTP API.
  • Created ActiveX HTTP API for accessing and uploading documents. This will allow us to write Smart Clients that can access the WebDocs system via HTTP. The API will also be used as part of the new MS Word and Excel Add-ins.
  • Created Quick Approve/Reject options on the document details screen for approving workflows from the doc details screen.


Version 1.82
  • Added additional misc fields to support custom ASP hosting needs TO DOCFLR00 and DOCUSR00 and DOCKEY00. Added new tables DOCFLRT00 and DOCFLRTS00 to support custom ASP hosting needs. Added new logical DOCKEY01 to support custom ASP hosting needs.

September 2005

Version 1.81
  • Fixed validation in DOCSRCH so that group profile is used if set. Temporarily removed password change DOC109R.

September 2005

Version 1.80
  • Added ability to change folders from doc details screen. Streamlines move process. On workflow list, the doc icon now displays doc details screen. Clicking title goes to workflow approval. This allows users to quickly get to workflow approval or doc details.

September 2005

Version 1.79
  • Added ASP multilibrary support. See internal RJS documentation. Created Quadrant FastFax Outbound fax API commands for faxing IFS files and WebDocs documents.
    • Fax IFS Document via Quadrant FastFax LAN API.
    • Fax WebDocs document via Quadrant FastFax LAN API.
  • Added password change program DOC109R that can be hooked up to a user's IMGLOGIN.HTM page as a link to allow users to change their passwords.
  • Fixed user filter screen in DOC302D so that lower case entry is allowed for user filter.

August 2005

Version 1.78
  • Restored case-insensitive searching to document searches and link searches. Searches in custom lookup windows will continue to be case-sensitive, because we do not know whether there are shared-weight indexes to support case-insensitivity. The use of data area DOCSCASE to set case-insensitivity is discontinued. Any value in that data area will be ignored. The data area will remain for possible future use.
  • Data area DOCSRCHOP1 has been changed to 'OPTIMIZE FOR 10 ROWS'. This will make the SQL optimizer look for indexes to retrieve the first page of records more quickly.
  • The DOCUPG command will NOT restore the value in this data area from the previous library.

If the search criteria are too general, the search can take a long time to finish. Use the DOCMAXSRCH data area to limit the number of items returned from document and link searches.

August 2005

Version 1.77
  • Added ability for DOCIMGPRT command to be able to specify a text annotation line to print on the page when printing a document. This is good when customers want to print docs with imprinted text on the document. Requires RJS Doc Image Viewer V1.0.44 Requires RJS Office Integrator PC V1.1.45 Text annotation location coordinates can be set by document type by editing the document type record to set up default annotation location coordinates and font sizes. If annotation coordinates are stored in the document type for the selected document, these coordinates will be used by default if no values are specified for the coordinate location when the DOCIMGPRT command is called.The minimum amount of info needed when you want to print a text annotation is the text itself since the print coordinates are obtained from the document type table if set. Ex:Width and height coordinates for a 300 dpi 8.5"x11" image are: Width:2550, Height:3300.
  • Added IFSMONQF1 CL sample program. This CL program is an exit pgm designed to import inbound Quadrant FastFax documents into WebDocs. This program needs the RJS IFS Tools software command IFSMON in order to be run. Search the RJS KB for: IFSMONQF1 to find instructions for using this exit program to capture inbound Quadrant faxes into WebDocs.

August 2005

Version 1.76
  • Fixed custom lookups problem where no records are returned if there is a number sign (#) in the key description. This affects document uploads, document & link searches, and document details.

August 2005

Version 1.75
  • Changed confirm verbiage on DOCMOVSEL and DOCMOVLOC commands. Removed Delete from the confirmation descriptions. Also changed the DOCVFY command to check both the primary IFS location and the ARCHIVED location FTPPATH set when a doc is moved with DOCMOVLOC.

July 2005

Version 1.74
  • Added DOCID to temp file name when calling DOCIMGVW command to launch an image for viewing from the green screen via iSeries Office Integrator. With this change, documents can be checked out and launched from the green screen with the RJS Image Viewer. This change will allow the check-in option in the RJS Image Viewer to work correctly with docs opened via DOCIMGVW.

July 2005

Version 1.73
  • Moved search options to top of left tree frame.
  • Added folder selection to document search screen for filtering within folders. Users can now select a folder name as part of the search criteria.
  • Added workflow notification by email flag at user level. Info added to DOCUSR00 and maintenance program.
  • Added email event creation to the workflow approval options. If a workflow item is set to INPROCESS/Pending, an email event record is generated in new table DOCEVENT. Then the event monitor DOCEVMON command can be used to process events that have been triggered in the DOCEVENT file. The DOCEVMON command is meant to be job scheduled, most likely by submitting it to job queue QSYSNOMAX to run once every few minutes and check for new events. A workflow item is set to INPROCESS/Pending when it arrives in a users inbox. This feature currently only notifies the owner of the workflow inbox. If someone else has access to their workflow inbox, the notifications still go to the owner only. DOCCHKIN command now recognizes and checks group folder access rights for a user before checking in a new document.

July 2005

Version 1.72
  • Fixed custom lookups so that blank lists are not returned when only one column is selected. This problem occurred at V5R2 of OS/400.
  • Added the ability to specify whether a column in a custom lookup list is clickable. I.e., whether values can be selected from that column. Fields LSLOOKTYP1 & LSLOOKTYP2 are used to control this behavior. Put an 'n' or 'N' in LSLOOKTYP1 to make column 1 'not clickable', the same in LSLOOKTYP2 for column 2. The main reason for using this feature is when there is a description and a code, where only the code is to go into the index key. This feature will prevent user error due to clicking in the wrong column.

July 2005

Version 1.71
  • Added AP001C sample code to library. Also compiled the binary screen for demos.

July 2005

Version 1.70
  • Updated logic added on V1.69. When DOCLINKDFT data area was set to *NO, no doc links were being created. This setting was only supposed to affect the creation of the default doc link.

July 2005

Version 1.69
  • Added DOCLINKDFT data area. If this data area is set to *YES a default document link record will get created. If set to *NO, no default document link record will get created when the DOCALTLINK data area is enabled for creating links upon new document checkin.

June 2005

Version 1.68
  • Added command (DOCLNK01) that parses document keywords and creates document link records based on the contents of the doc index keys. The keyword delimiter is set in data area DOCLNKDLM. The default delimiter is a semicolon: (;) This command gets called during DOCCHKIN if DOCALTLINK data area is set to *YES.

June 2005

Version 1.67
  • Added command (DOCDUPKEY) that lists documents that share index key values. The OUTPUT parameter controls whether to display or to print the list. Added command (DOCEXPDOC) that lists documents that have expired on or before the current date. The OUTPUT parameter controls whether to display or to print the list.

June 2005

Version 1.66
  • Fixed link search. Busted in 1.64/1.65 Added DOCPREFIX data area. This holds the document prefix to retreive when adding a new document. Was previously hardcoded to AS400DOC- for the file prefix. Added option to hide doc search option from web users. Useful when using link searches. New data area is DOCSEARCH. Dft: *YES Added document expiration information to the DOCCHKIN command. If the expiration days or expiration years settings are set in the document type record, an expiration date will be set on the document based on number of days or years until expiration.

May 2005

Version 1.65
  • Added approval notes for workflow approval. Also added the ability to re-route a workflow item to another user. Retrieve session cookie when not passed during View, View2 or DOCINFO actions for viewing doc details or viewing the actual document.
  • Re-added document list to IFS file by session ID instead of at the user level. Setting is controlled by DOCSESLIST data area. If set to *USER, docs will still be listed in a work file named by user in /RJSTEMP when a search or folder browser is done. If set to *SESSION, the session ID will be used to build the temp file name when listing docs. Session ID is much more flexible because each users name does not need to be entered and stored in the document viewer when the WebDocs iSeries integration option is enabled in the File/Settings menu of the RJS Document Image Viewer. This change was done mainly to free users from having to enter a user name when integration with the RJS Document Imaging Viewer is enabled. This helps a lot when loading the viewer on a multi-user Citrix Server or Windows Terminal Server.

March 2005

Version 1.64
  • Added user ID & password to DOCIMGVW & DOCIMGPRT commands, to support Office Integrator security.

March 2005

Version 1.63
  • Added ISELECT command parm to URL searching when action=Search is used. The ISELECT parm allows soft coded SQL WHERE criteria to be passed when doing a URL search. This provides a lot of flexibility for URL searching.

March 2005

Version 1.62
  • Updated DOCUSRCHK command to work correctly under V5R1 - V5R3. The command was broken on V5R3 and would not allow users to authenticate against the iSeries security.

March 2005

Version 1.61
  • When Search4 is used for URL searching, set the DOCRIGHTTG data area to the frame target where the DOCINFO screen should display. Packaged the new HTML and Image Files with WebDocs naming. Also changed descriptions on main menu to say WebDocs. Note: Make sure to run option 20 to restore the new WebDocs HTML files.

March 2005

Version 1.60
  • CHG DOC100R to display DOCINFO instead of the actual doc when Search4 URL search used.


Version 1.59
  • Fixed DOCIMG01R - did not find DOCID if it was in the last record of DOCVER00.

February 2005

Version 1.58
  • Added style sheet for Search4 tree. Style needs to be added to doclist.css and docdetail.css manually for now. The style controls the tree background color when Search4 is used. Style code: .isTreeBGColor1 { BACKGROUND: #FFFFFF; }
  • Temporarily removed case insensitive searching for DOC100R.

February 2005

Version 1.57
  • When sorting tree with Search4 option, tree now breaks down by folder, doc type in the visual tree that is generated with the doc list returned from the search.

February 2005

Version 1.56
  • Added new URL search action Search4 to DOC100R This search action returns the document search list in a java tree. If the user calls the search from a Javascript and specified a target window it can appear as if the doc tlist is a part of their application code.

February 2005

Version 1.55
  • Add support for LDAP directory authentication to authenticate users against MS Active Directory and other LDAP directory servers. User password must be set to *LDAP or *ldap to use LDAP authentication. The DOCLDAP command must also be used to set the host name or IP address for the LDAP or Active Directory LDAP server. The OCDOMAIN command must be used to set the Windows Active Directory domain name if a Windows Active Directory LDAP Server will be used for user authentication.

February 2005

Version 1.54


Version 1.53
  • Default workflow description in DOC100R if a new workflow item is added with no description.

January 2005

Version 1.52
  • Allow a single document to exist in multiple workflows.

November 2004

Version 1.51
  • Updated DOCVFY command to be *NOMAX when printing report of docs found. This will accomodate listing of an unlimited number of documents.
  • Created DOCMOVLOC, DOCMOVSEL and DOCMOVRST commands to handle the moving of documents from one storage medium to another.
  • Added option to make all searches case sensitive.

November 2004

Version 1.50
  • Fixed hard halt error when trying to search by document link. The search was causing a RPG error in the QSYSOPR messages. Had to be more specific on the field select when creating SQL query for selecting doc link records. Also added check so that even if SQL select is bad, we don't make it into the link record retreival loop. Added DELDATE field to DOC100DS and also to SQL statements in DOC100R to make sure that fields map correctly in SQL queries when searching by doc fields or doc links.

November 2004

Version 1.49
  • Changed DOCSCASE default to blanks instead of LCASE. This solves searching slowdown issues for users with lots of docs.

October 2004

Version 1.48
  • If a document link is clicked for viewing, the PC file extension is normally build from the PC file that was stored. Now if the PC file document type field: DOCTYPE is set to be different than the file extension, the DOCTYPE will be used as the PC file extension during download and viewing. This solves an issue where users coming from WAF/Visual Info have migrated document pointers to Image Server/400 and have maintained the old WAF file extensions which are not consistent for every document. If migrating WAF document pointers, users should set the DOCTYPE to TIF so the RJS Image Viewer can view the MODCA files.

October 2004

Version 1.47
  • Fixed hard halt error when trying to view list of documents in workflow inbox. Was causing a RPG error in the QSYSOPR messages. Had to be more specific on the field select when creating SQL query for selecting workflow records. Also added check so that even if SQL select is bad, we don't make it into the workflow record retreival loop. Added group user to select logic when viewing another persons workflow box. If group users were set up, viewing another user's workflow box would not select any docs.
  • Fixed workflow user access so more than one additional workflow inbox can be assigned to a user. Added new key to DOCFLOWS00 table. Added index by spool file info to allow us to go through file and remove duplicate spool file documents.
  • Fixed document lookup window on details screen. When the popup button was chosen, no values were shown in the list because the doc type key was not being passed correctly to the lookup program.
  • Added BMP and PNG image types to show as thumbnails if DOCTHUMBS setting is enabled. Fixed folder list on doc upload check-in screen. Was not showing folder list if user was enrolled in a group.
  • Added ability to specify 1 or 2 columns on the document lookup screen. If field LSLOOKUP1 or LSLOOKUP2 is left out when defining lookup criteria, the field column will also not display on the lookup screen.

September 2004

Version 1.46
  • Added pre update exit program call to DOCINFOUPD logic. The default pre update program name is: DOCEXITUPC. If the pre-update exit fails, the doc update will fail. This is a workflow feature that users can use to validate keys against their own processes before updating doc keyword details.
  • Added post update exit program call to DOCINFOUPD logic. The default pre update program name is: DOCEXITUC. If the update exit fails, the doc update will fail. This is a workflow feature that users can use to validate keys against their own processes before updating doc keyword details. Modified DOCINFOUPD and browser process to return the details form back to the user if an error occurs during keyword update process. If a pre-checkin error message is returned from a call to DOCEXITUPC, the message will be displayed at the top of the details form. Modified DOCINFODEL command to have two permanent delete flags. If both are set to *YES, both the document index entries and IFS files will be permanently deleted. Otherwise the doc is just sent to the DELETED folder for permanent removal later.

September 2004

Version 1.45
  • Added code to DOC100R to fix full text search causing "Length of varying length variable is out of range." error. Also added fix to full text search query so it would work correctly. Must have broken when we added the document link searching and data area DOC100DS. We now limit the number of fields selected when doing the full text search query.
  • Added DOCVFY audit command to scan IFS and check for image file existence in sync with database. This command generates a report of any document existence errors found.
  • Soft coded page back colors and created a style in doclist.css and docdetail.css called isBGColor to set the form background. All styles can now be set via doclist.css and docdetail.css

August 2004

Version 1.44
  • Added user popup selections for the document upload and document detail screens so users can select key values for document values when creating or updating document keys.
  • Updated document popup screen so values are left justified and the search fields are at the top of the screen. Also added next page support so the popup window is always sorted based on the left hand key value if user sets the ORDERBY1 field in file DOCLS00. If no ORDER BY, next page support is disabled. ** Warning: Using the ORDER BY clause for popup windows can significantly slowqueries against user lookup tables.
  • If a browser check-in fails and it's because of a pre-exit error, the user will get notified based on the text sent back from the pre-exit checkin program.
  • Modified DOCCHKIN and browser process to return the upload form back to the user if an error occurs during file upload and checkin If a pre-checkin error message is returned from a call to DOCEXITPC, the message will be displayed at the top of the upload form.
  • Added DOCTHUMBS data area setting. If set to *YES, Image Server will try to render GIF or JPG images as thumbnails. Also added a default icon size data area for GIF/JPG thumbnails.Data area name is: DOCICONSIZ. When rendering thumbnails, the virtual directory path must be relative to the /RJSIMAGE IFS folder.
  • The following directives should be added to your web server config in the following order to insure that GIF/JPG docs can be rendered:

By directly exposing an IFS folder to users, a minor security risk is being made.

  • Added 'Blank unpassed fields parm to the DOCINFOUPD command so when fields are not passed or are blanked out, the document index values are updated correctly.
    • YES - Blank out unpassed fields. (DEFAULT)
    • NO - Do not blank out unpassed fields.
  • Doc link search now outputs link keywords in search list instead of the regular doc fields. Viewing doc details will still show the regular doc index fields.
  • Added ability to call custom user lookup program for popups on the detail and search screens. Sample DOCLOOKR in source file SOURCE is an example of creating a custom user query. If a custom user exit program is used, the program name must be added to file DOCLS00. and the LSUSERPGM setting must be changed to 'Y' so the custom user program is utilized instead of a standard SQL statement.

August 2004

Version 1.43
  • Changed CGI service program to use QZHBCGI instead of QTMHCGI to avoid problems with the Apache Web Server on V5R3. On V5R3 the original HTTP server is no longer available so all users should upgrade to using the Apache web server before going to V5R3.

August 2004

Version 1.42
  • Enabled URL login - LOGIN2 and also Enabled URL login and rtn session - LOGIN3 action codes for allowing user pages to log in and retreive a session ID for use when calling Image Server searches from another 3rd party application.

July 2004

Version 1.41
  • Added DOC312 build to build program.

June 2004

Version 1.40
  • Updated DOCUPGC to not copy DOCTXT00 twice. Changed to copy DOCVOL00 instead.
  • Created DOCSRCHOP1 data area so user can soft code OPTIMIZE FOR xxx ROWS statement to limit the amount of data a search will return. This can greatly improve searches done by date.
  • Folder paging now sorts by check-in date in descending order. So when users page through a folder, newest documents will always show up first in the doc list.

June 2004

Version 1.39
  • Added DOCIMGVW command for viewing an image from the green screen via the RJS Office Integrator.

June 2004

Version 1.38
  • Major change: Soft coded library names so that users can have multiple versions of the Image Server software loaded. Initial implementation.
  • The following soft coded values are used for determining which library to use and which work directories to use: IMGLICENSE - Tells the name of the license checking data area. Default value = RJSIMAGE.
  • IMGWORKDIR - Tells the name of the IFS temp work directory. Default value = /RJSTEMP.
  • When a web server instance is created, and the directives are added for the web instance, the PASS/EXEC statements are usually pointed to RJSIMAGE library and /RJSIMAGE folder for images. If the library objects are moved to a new library, an IFS folder must be created to match that library name so image server knows where its images are located.
  • Created DOCSRCHORD data area so user can soft code ORDER BY statement for doc search.
  • Created DOCSRCHFE1 data area so user can soft code FETCH FIRST xxx ROWS ONLY statement to limit the amount of data a search will return. By default the doc search will only return 1000 rows so xxx can be set to 1000 or less for better search performance.
  • Improved performance on date range searches by not using the DATE() special SQL keywords. Added confirmation to document delete.
  • Changed Javascript default so user can click on the folder description in the tree menu on the left side of screen. Previously only the icon could be clicked to call a search, expand a folder, etc.
  • Display icon on document list if notes exist for a document.

March 2004

Version 1.36
  • Enabled SQL selection criteria statement in DOCLS00 to pre-filter records included in the document search pulldowns.

March 2004

  • Enabled lookup pulldowns on document search screen. Criteria stored in DOCLS00.

March 2004

Version 1.34
  • Fixed document Pre-Checkin exit point so it passed the actual document type to the Pre-Checkin exit.

March 2004

Version 1.33

Fixed URL search problem introduced when group profiles were added. URL search was not working.

  • March 2004
Version 1.32
  • Fixed HTML screens so the detail and search screen tables don't stretch when running a document search or viewing document details.
  • Also added new tree styles and indented tree descriptions once space.

March 2004

Version 1.31

Major HTML look and feel redesign. We now enumerate entire folder desc on HTML pages.

  • February 2004
Version 1.30
  • Added document paging to folder browsing. Enabled the Next Page button. Because of the complexity of tracking previous page, we haven't implemented a Previous Page button. Previous paging can be handle via the browser Back button. The DOCPAGSIZE data area controls the page size. Default page size = 20.
  • Added DOCSCASE data area to allow search criteria to be entered without regard to case. The data area must be set to 'LCASE' in order for case-insensitive searching to work correctly.
  • Added DOCSPLINFO data area to allow spool file info to be displayed in the search window and document details. If set to *NO, spool info is not displayed. If set to *YES, spool info is displayed.
  • Added DOCL00 table for creating lookups for search values. Initial code implemented for lookups, but not released yet.

January 2004

Version 1.29
  • Added pre check-in exit program call to DOCCHKIN logic. The default pre check-in program name is: DOCEXITPC. If the pre check-in exit fails, the doc check-in will fail. This is a workflow feature that users can use to validate keys against their own processes before checking in a new document. If new user is created and *AS400 or *as400 is entered for the password value, the user ID is checked to make sure it matches an existing AS/400 user profile and the AS/400user password is correct.
  • Added user filter criteria to allow for very specific security filtering of documents at the user level.
  • Added initial group profile implementation. If a user profile is specified for the group profile for any user, the group profile is used to determine which folders a user can access. This minimizes the need to enter folder security access info for each user.
  • Note: Specific user filter criteria is still selected at the user level if specified. The group profile does not override this

January 2004

Version 1.28
  • Added workflow rejection option.

November 2003

Version 1.27
  • Added lookup programs for user, folder names and document types.
  • Validate that doc type exists when adding new key entries.

September 2003

Version 1.26
  • Added green screen search results display screen for DOCSRCH command. This allows green screen users to view doc index info and launch doc printing via Office Integrator. Added DOCUSRRTV command to allow user info to be retrieved by AS/400 user ID of by Image Server user ID.
  • Added DOCUSRCHK command to verify AS/400 user ID and password entry info.
  • Added user type to doc session retrieve command to allow the AS/400 user ID or Image Server/400 usesr ID to be used to retrieve password info from the user table.
  • Added DOCTEST7C program to illustrate the use of launching an interactive search to either the green screen search screen or the web browser.
  • Added DOCTYPE2 to DOCEXITC exit program.


Version 1.25
  • Fixed DOCEXPSELC so that it selects to the end of the last date in date range.
  • Changed View icon on doc list and search screen to display document type icon instead of the View button.

August 2003

Version 1.24
  • Changed headings to say "Move docs to deleted folder" for prompts in DOCEXPDEL command.
  • Fixed DOCUPG so it copies over DOCVOLID data area during the upgrade process.

August 2003

Version 1.23
  • Updated DOCCPY2C to set *PUBLIC authority on the INDEX.HTM file when reports are being exported via DOCEXP. If *PUBLIC authority wasn't set to *RWX, users would not be able to open the INDEX.HTM file from a Snap Server network file share until the file authority was updated via the Snap Server web browser admin screen.
  • Fixed problem in INDEX.HTM where page count was not showing up in the file when exporting
  • User records can now be updated without forcing a password change.
  • Added date range to DOCEXPSEL command for selecting docs to export by folder and date range.
  • Added DOCEXPSEL, DOCEXP, DOCEXPRST and DOCEXPDEL to the DOC307C program which can now be used to interactively select and export documents for CD/DVD burning.

July 2003

Version 1.22
  • Added data area for enabling workflow. DOCWFLOW data area must be enabled to use the full text index searching.
  • Enabled DOCFTEXT setting so it works to enable/disable full text searching.
  • Initial implementation of document search CL command to search for documents and return a hit list to a file in QTEMP for user application of document lists. Command name is DOCSRCH.
  • Added DOCSRCHID command to retrieve a document ID and Title from the search results table. User can specify the search hit number to return from the search results.
  • Added DOCTEST6C program to illustrate the use of DOCSRCH and DOCSRCHID to launch and view a document from the green screen.

July 2003

Version 1.21
  • Initial workflow implementation.

June 2003

Version 1.20
  • Implemented document export to CD/DVD. Also implemented volume processing when exporting to CD.

June 2003

Version 1.19
  • DOCEXP, DOCEXPRST AND DOCEXPSEL commands for exporting documents from the system for burning to CD. Still need to implement the HTML doc index export page.

June 2003

Version 1.18
  • Changed %XXXXXXXX% in DOC100R to be XXXXXXXX%. This will speed up full text searches when AND criteria is used.
  • Reworked text search engine to use search groups. When criteria is entered for each group, the words are or-ed together logically. Each search group is then and-ed together before the text search is run. This allows customers to perform and/or searches effectively on full text indexed documents.

March 2003

Version 1.17
  • Added data area for enabling full text index searching via the browser. DOCFTEXT data area must be enabled to use the full text index searching.

March 2003

Version 1.16
  • Added initial implementation of full text index searching. Indexing is done at scan workstation and index keys are checked in when a new doc is checked in. DOCCLRDEL command to remove document info from the DOCS00 and DOCVER00 files as well as remove all associated IFS files for a deleted document.
  • Note: This has not been added to the audit trail logic yet. A delete log entry will still be added when doc is initially sent to the DELETED folder.
  • DOCCLRFLR command to remove document info from the DOCS00 and DOCVER00 files as well as remove all associated IFS files for a selected folder.

This has not been added to the audit trail logic yet.

February 2003

Version 1.15
  • Added document id, size and type to the bottom of the doc info screen. Also added folder description as well to the top.
  • Added DOCACC00 table. This table will allow users to be set with pre-defined filter criteria that always applies to their searches. That way a user can be limited to seeing selected docs within the folders they have access to.
  • Fixed caption in DOCMAINURL command. It was referring to SMTP server.
  • Added DOCLOG00 table. This table will hold all system audit trail activity for HIPAA compliance.
  • Added audit trail logging to track all system activity for HIPAA compliance. DOCAUDIT data area must be enabled to use the audit trail logging. Only administrator users can view audit logs.
  • Added CRTAUDIT parm to DOCINFODEL, DOCINFOUPD, DOCINFOMOV, DOCCHKIN to determine if audit trail entry is created if audit trail logging is enabled.
  • When moving documents, the "No Document Folder" option was removed so the user must select a valid folder name. In some cases, this would allow the doc folder name to get blanked on a move.
  • Altered DOCCHKIN to set authority to *RWX for the original uploaded IFS document file prior to copying to check-in location. We moved this step prior to the file copy because when copying to a NAS server or other NFS server, the file needs to be in *PUBLIC *RWX mode before the actual file copy to the NAS server. Setting authority after the copy to the NAS server could cause errors, thus causing a doc checkin to fail.
  • Added DOCCOMPARE data area for determining if a document is compared to the uploaded version after it's been checked in and copied to its final destination. This setting is enabled by default to insure file integrity during checkin.
  • Changed DOCMOUNT command to soft link instead of hard link to remote NFS/NAS servers to allow for timeouts if the NAS server goes down.
  • Added DOCCOMPARE command.
  • Added VOLUME ID info to DOCS00 and DOCVER00
  • Added date range to search for doc date and spool file date. Doc date and spool date are also displayed on doc details and doc lists.
  • Added compiles for logical files: DOCS30 - DOCS36 so all spool index fields and doc and spool date ranges are indexed.

January 2003

  • Added view button to document list pages.

January 2003

  • Add %%EBCDIC%% directive when auto configuring the Apache web server.
  • Add DOCTYPLIST command for listing document types for the scanning client.

January 2003

Version 1.12
  • Document title must now be passed to DOCCHKIN command when creating a new document.
  • Document type was added to allow each document to have different key descriptions based on the document type assigned.
  • Added document type table DOCTYPE00.
  • Remove compiles for logical files: DOCS15 - DOCS25. These were causing table scans on simple searches.

January 2003

Version 1.11
  • We now TRIMR instead of TRIM on doc title and details when DOCCHKIN or DOCINFOUPD are called
  • Created data area DOCSRCHSUF to determine whether searches are starts with for criteria or are exact searches unless % is placed in the front or back of a search criteria. Default = '%' for starts with. Blank out the data area for exact searches by default.

January 2003

Version 1.10
  • Added DOCIMGPRT command for printing an image from the green screen via the RJS Office Integrator.
  • Added compiles for logical files: DOCS15 - DOCS25 so all index fields and the title field are now fully indexed.
  • Added DOCSETAUT data area for setting IFS document authority for *PUBLIC access during check-in. If set to *YES - *PUBLIC access is set to *RWX during checkin so the web server and AS/400 api's can access IFS documents. If set to *NO - *PUBLIC access is not set to *RWX during checkin. Doc access is based on the AS/400 user ID used to check in doc. If this is the case, user ID QTMHHTP1 needs *ALLOBJ authority in order to access IFS docs via the browser.

January 2003

Version 1.09
  • Added web scanning and checkin ability.
  • Implemented document check-out/check-in to allow multiple document versions to be tracked. A doc revision record is created automatically for old records when a document is viewed.Added table DOCVER00 for version info.
  • Added DOCCHKI command to check in changes.
  • Added DOCCHKO command to check out a doc. Added DOCCHKU command to undo a checkout. Resolved issue with web upload where text files were getting corrupted during uploads. Extra info was also getting appended to binary files during the upload process. During web uploading, file name is now checked to make sure file is selected.
  • Reworked document details screen to use graphical buttons. Added new graphics to /RJSIMAGE IFS install.
  • Implemented document notes. Users can create notes to go with each document.
  • Implemented ability to view all document revisions via "Versions" button.
  • Added DOCPING utility command so users can PING TCP/IP host printers and systems. Updated EXEC web server directive to use %%EBCDIC%% directive so that special characters get converted correctly when entered.
  • IFS file size is now stored in the doc index files (DOCS00 and DOCVER00).
  • User was having problems with downloaded documents doubling information and also doubling in file size during download. It turns out there was a logic error in the report download program that was causing the report doubling. No document info was affected. This only affects downloads.
  • Added ability for users to update the spool file information keywords via browser.
  • Made document emailing optional via enable email option in folder settings.

December 2002

Version 1.08
  • Added DOCSQLQRY QM query definition so that DOCSQL will work correctly.
  • Added DOCINFODEL to delete doc details. Added DOCINFOMOV to move doc details.

November 2002

Version 1.07
  • Fixed exit program soft coding. DOCEXITC was always being called during check in. Now the exit program on DOCCHKIN works as expected.Added spool file parameters to the DOCCHKIN command. Now we can complete the Batch Report Server/400 report archival integration. Added alternate location checking when downloading a document for viewing. If a document is not local we will attempt to open and download the doc from its alternate archive/download location. DOCCHKIN now places new document ID in a data area named DOCIDTMP in library QTEMP in case a program needs to access the new document ID right after checkin.
  • Added DCODEPAGE data area to set codepage correctly when copying files. NFS servers typically need code page 437.
  • Added DOCHTTP2 command to create RJSIMAGE web server instance or if multiple IP addresses are being used, multiple server instances can be created. Added DOCHTTP3 command to remove RJSIMAGE web server instance if not being used.
  • Added DOCCLEAR to clear all docs from system.
  • Added DOCMOUNT AND DOCUNMOUNT for creating NFS file mappings.
  • Added DOCINFOUPD to update doc details.

October 2002

Version 1.06
  • Added compiles for logical files: DOCS11 - DOCS14 so all index fields and the title field are now fully indexed. In DOC100R, release session record lock right away after read/update to prevent LCKW conditions. Insure that at least one search criteria is entered on document search form when searching to prevent long queries.
  • Removed ORDER BY clause on document search to improve performance. Also removed join to DOCFLR00 during searching to improve search performance.
  • Added DEBUGSQL data area.

October 2002

Version 1.05
  • Added MAINURL data area for green screen programs to use when launching URL's via the iSeries Integrator OFCRUNPC command. Added DOCMAINURL command to set MAINURL data area.
  • Added DOCTEST* examples for launching URL's for Image Server/400. Added *NOPASSWORD option to DOCSESRTV.

October 2002

Version 1.04
  • Added SMTP build and other build code to RJSIMAGE compile program.
  • All docs get assigned as revision number of _000000000 until the revision check logic is implemented.

October 2002

Version 1.03
  • Added document email capabilities.
  • Added document exit program. Added ability to display key values on search document list and also on the folder document list. Added logout option.
  • Added separate icons for logout and search and also moved the search and logout icons below the folder list icons. Added folder description to folder list headings along with virtual folder path. Insure that users cannot skip past folder and document level security by always checking the current session user ID against the folder security for the user to see if they are authorized to view a doc. The session ID must also be correct as well. An invalid session ID cannot access any Image Server/400 documents or folders.

September 2002

Version 1.02
  • Added DOCTEMP call to command DOCIFS1 so the /RJSTEMP IFS directory gets created. This directory is used for temporary IFS work files.

August 2002

Version 1.01



Back to Document Management Products