Document Generation

Contents

 

Introduction

The Automated Document Generation module works in conjunction with LeasePak's Base System and the Application Tracking [U0801] module. The Automated Document dx Generation module allows the user to produce documents directly from their PC. Documents including Master Lease Agreements, Lease Schedules, Pricing Quotes, Invoices, Payoff Quotes, Collection and Customer Service Letters can be generated using a mail merge type function setup between Microsoft Word and LeasePak. For more on dx Generation, refer to the document dx Generation.

The module may be accessed through any of the Tracking Modules in LeasePak, Collections, Customer Service, Insurance, Mature Lease, Recovery modules as well as via the LeasePak Task Bar. Once the Task Bar is activated, the List of allowable (see Template set-up) documents is displayed for the user to select and complete the merge of actual data to produce the selected Document.

Additionally, this module enhances the Document List update [U0815] and allows the user to specify the document to generate based on status and the associated Word template used for the merge. By creating Document Lists to match the specific type of business, a Document list for each Lease Form for example, the User can ensure the correct and most up-to-date Documents are being produced.

The Word templates must be predefined and will contain both static text as well as mail merge 'fields' that are then replaced automatically with actual data from the application, lease or payoff quote etc., that the user is working with at the time. The merged document may be opened in Word as a *.doc file which can then be printed, faxed, email, converted to a PDF file, etc. Please see the Document List [U0815] update for a complete list of the fields currently supported.

Word must be installed on the client computer of the user.

This module also works in conjunction with the dx Generation module and scheduler. The interface allows various document types, including letters and invoices, to be created automatically. The user can define task(s) and schedule the time a task(s) will be automatically processed. A scheduled task will connect to LeasePak's database and execute the SQL for each defined primary key(s), such as the Lease #; calling the appropriate DLL template and merge the data to generate the scheduled document to be saved or printed based on the task definition.

 

Sample Document Templates

You can find sample document templates in the docsuite/refguide/general/doc_gen/samples folder. These files are Word template files (*.dot).

 

 

Template Setup

Use Microsoft Word to create and save documents as templates files. The Application template name must be defined as: A*.dot,and must not exceed a maximum of 20 characters; the naming convention is not case sensitive.

The users PC, depending on the users Security [U0706] settings, must be able to access the template directory defined in the Application Portfolio [U0822] update. LeasePak will then create the document(s) and replace the pre-defined key words in the template with the field values from LeasePak's database. For a detailed list of key values, refer to the Valid Key Values table found in this document.

Currently this enhancement only supports Word document templates.

Key words and the table fields are stored in LeasePak and may be modified by the user and an MSI representative only. Currently LeasePak supports the following tables:

rsc Security
ral Lessee
rlr  Vendor
rbk Broker
rin   Investor
rcu Customer
rfl Group
rls (child and overflow table) Lease
rap (child and overflow table) Application
raq (child and overflow table) Pending Asset
req (child and overflow table) Book Asset
rpa Portfolio
rpd Payoff Quote
rar (and child table) Account Receivable
rdm  Demography
rdmi Insurance
rgc Guarantor, Co-Lessee and user defined client*
rna Remittance address The RNA table is used for multiple purposes; therefore, the user must use RNA8 as the table name in the document.
rua  User Defined Asset Fields
rubt User Defined Asset Table
rud  User Defined Customer Fields
ruet User Defined Customer Table
rug  User Defined Lease Fields
ruht User Defined Lease Table
ruj  User Defined Application Fields
rukt User Defined Application Table
rum User Defined Lessee Fields
runt User Defined Lessee Table
ruo User Defined Vendor Fields
ruqt User Defined Vendor Table
rur  User Defined Application Asset Fields
rust User Defined Application Asset Table

If keywords are user defined, certain rules apply in order to setup the key words. The first three characters of the key word must represent the table name:

The key word values listed in the table below, must be defined within << >>; for example, <<LesNum>>. See sample Lease Agreement for more examples.

In order to define multiple records, for example Assets and Payment Schedules, additional key words must be defined in the Template to retrieve multiple items. If the multiple key words are not established within the template, LeasePak will only retrieve the value from the first record.

Each multiple key word must start on a new line. The following are valid multi-key words:

Example

In the Lease Agreement example below, only the first Asset description will be retrieved.

To retrieve Pending (Assets not yet Booked) Asset Descriptions associated with the Application, the following values should be defined in the template:

To retrieve the description of all the Assets (both Pending and Booked), the following values should be defined in the template:

This screen is a sample document template.

In some cases, a special table name is assigned, RGCL-Co-Lessee, RGCG- Guarantor, RGCU- User Defined Client. The field may physically reside in the RCX-Cross Ref, or RAL (Lessee), or the RGR Guarantor table.

LeasePak will map to the actual table to retrieve the data. Since multiple records exist, multi-tags need to be used. For example, Guarantor is shown below:

<<Multi>>
<<rgcl.les_s>>    <<rgcl.nam_long_s>>    <<rgcl.ss_s>>
<<MultiEnd>>

Other clients like Vendor, Lessee, etc, the DBA Name and Social Security Number is stored in RCX table, and the following rules must be applied in order to retrieve the data.

To retrieve SSN / Tax ID

Example:

<<ral.ss_s>> for lessee or <<rlr.ss_s>> for vendor.

To retrieve DBA name

Example:

<<ral.dba_name_s>>

Multi row parameters support RAQ, REQ and RAR and the Payment Schedule in RLS or RAP tables. An additional tag is required to identify that the data has multiple records. For example:

RAQ tag:

<<MultiPedAsset>>...<<MultiEnd>>

REQ tag

<<MultiBokAsset>>...<<MultiEnd>>

RLS or RAP Tag for payment schedule

<<MultiSchedule>>...<<MultiEnd>>

RAR tag

<<MultiInvoice>>...<<MultiEnd>>

In some cases <<Multi>>...<<MultiEnd>> will work for any section where the user expects multiple records.

All key word mappings are stored in RDG table; the default set does not contain the entire table or field names. However, you can add a new record to the table. If the key word is in the format of the table name and field e.g <<rls.lse_s>>, the program will recognize the new record, without adding it to the RDG table.

For an invoice, special key words needed and recognized but will not add the key word to RDG table:

Special hard coded key words for invoice:

Field level formatting codes is handled and supported by placing a slash ( / ) after a key word. For example, the field for American Phone Number format:

<<ral.bus_phn_s/phn>>

The following format codes are supported:

   
US phone format (###)###-#### phn
US dollar currency, put $ in front, will not display if it is 0 cur
US dollar currency, put $ in front, display even it is 0 cur0
Percentage, 7 digits after decimal, no display if 0 per
Percentage, 2 digits after decimal, no display if 0 per2
Percentage, 5 digits after decimal, no display if 0 per5
Percentage, 7 digits after decimal, display if 0 per0
Percentage, 2 digits after decimal, display if 0 per20
Percentage, 5 digits after decimal, display if 0 per50
 social security number ###-##-####
any string after slash, it will used as mask for formatting any 

The following are not currently supported in DocGen:

 

DocGen Objects

DocGen contains two object, MSIDocGD.dll and MSIDocGM.dll

MSIDocGD.dll

The Document Data Generating object, generates the data for the document and creates an XML file. The objects interfaces are as follows:

TemplatePath Template Path + Document Template Name
UserName       Database User Name
Password         Database Password
Database          Database Name
ODBCSource   ODBC Source Name
DocKeyType   1 for application, 2 for Lease, 3 for invoice, 4 for Lessee
DocKey            Application number, Lease number, Invoice number or Lessee Number.
ErrorMsg            return error message, blank if no error
Version Version of Object

MSIDocGM.dll

The Document Data Merged object, it merged the data with the document and creates an XML file. The objects interfaces are as follows:

TemplatePath Template Path + Document Template Name
DocumentPath Document Path
PurgeDoc        True or False purge document or not
PrintDoc          True or False print document or not
XMLDataFile  Path + data XML filename
DocumentFile  Path + Final Document filename.
ErrorMsg          return error message, blank if no error
Version Version of the object

 

Header and Footer Sections

DocGen now supports fields in the document template header and footer sections.

 

Valid Key Values

The table below lists the key words, database field format and descriptions needed to define the document templates. The database field format for the key word values is: table_name.field_name

Note: The key word values listed in the table below, must be defined within << >> for example, << LesNum>>. Due to HTML formatting within the Reference Guide, the symbols (<< >>) have been omitted within the table.

Table Key Word Database Field Description
RAL <lesnum>LesNum ral.les_s Lessee number
LesName ral.nam_long_s Lessee long name
LesAddr ral.add_s Lessee address line 1
LesAddr2 ral.add2_s Lessee address line 2
LesCity ral.cty_s Lessee city
LessState ral.st_s Lessee state
LesZip ral.zip_s Lessee zip code
LesBPhone ral.bus_phn_s Lessee business phone
LesHPhone ral.hom_phn_s Lessee home phone
LesContact ral.short_cont_nam_s Lessee contact name
LesContTitle ral.cont_title_s Lessee contact title
LesBillName ral.bill_nam_s Lessee bill name
LesBillAddr ral. bill_add_s Lessee bill address line 1
LesBillAddr2 ral. bill_add2_s Lessee bill address line 2
LesBillCity ral. bill_cty_s Lessee bill city
LesBillState ral. bill_st_s Lessee bill state
LesBillZip ral. bill_zip_s Lessee bill zip code
VenNum rlr.dlr_s Vendor number
RLR VenName rlr.nam_long_s Vendor long name
VenAddr rlr.add_s Vendor address line 1
VenAddr2 rlr.add2_s Vendor address line 2
VenCity rlr.cty_s Vendor city
VenState rlr.st_s Vendor state
VenZip rlr.zip_s Vendor zip code
VenPhone rlr.phn_s Vendor phone
PedEqtNum raq.unit_s Pending Asset number
RAQ PedEqtID raq.id_s Pending Asset identification
PedEqtDesc raq.desc_s Pending Asset description
PedEqtServ raq.d_serv_s Pending Asset in service date
PedEqtCost raq.org_d Pending Asset original cost
PedEqtRes raq.res_d Pending Asset residual Amount
PedEqtAddr raq.eq_add_s Pending Asset address
PedEqtCity raq.eq_cty_s Pending Asset city
PedEqtState raq.eq_st_s Pending Asset state
PedEqtZip raq.eq_zip_s Pending Asset zip code
PedEqtPurOrd raq.pur_ord_s Pending Asset purchase order number
REQ BokEqtNum req.unit_s Book Asset number
BokEqtID req.id_s Book Asset identification
BokEqtDesc req.desc_s Book Asset description
BokEqtServ req.d_serv_s Book Asset in service date
BokEqtCost req.org_d Book Asset original cost
BokEqtRes req.res_d Book Asset residual Amount
BokEqtAddr req.eq_add_s Book Asset address
BokEqtCity req.eq_cty_s Book Asset city
BokEqtState req.eq_st_s Book Asset state
BokEqtZip req.eq_zip_s Book Asset zip code
BokEqtPurOrd req.pur_ord_s Book Asset purchase order number
AppNo rap.app_s Application number
RAP AppTerm rap.trm_l Application Term
AppComm rap.d_com_s Application Commencement date
AppLsd rap.d_lsd_s Application lease date
AppPurOpt rap.pur_opt_s Application purchase option
RNM NamBankName rnm.name_s Application bank name
RAP AppYield rap.p_con_d Application Yield
AppRate rap.p_rent_d Application simple rate or add-on
AppCost rap.tot_org_d Application total cost
AppRes rap.tot_res_d Application residual amount
AppSec rap.sec_d Application Security Deposit
AppDn rap.cap_d Application down payment
AppInterim rap.up_d Application Interim rent
AppAdvPmt rapp.pmt_amt_d[0] Application advance payment
RAPP AppPmtAmt rapp.pmt_amt_d Application payment amount
AppPmtFrq rapp.pmt_frq_l Application payment frequency
AppPmtCode rapp.pmt_cd_s Application payment code
AppNextDueDate Calculated - first Next due date, application book invoice with due date after commenced date
RSC UsrBooking rsc.name_s Operator Name

 

 

LeasePak Setup

When the Automatic Document Generation module is purchase, various controls settings within LeasePak's updates must be established prior to initiating the Document Generation functions. Below are the updates and fields that work in conjunction with this module. For additional information on these updates and fields, please refer to the specified update and/or field document within the Reference Guide.

 

Security [U0706]

The Automated Lease Document Generation module user security access is established in the Security [U0706] update. The Letters And Documents [S02] option in Special Functions menu, allows the user to setup, access and generate documents when the Document Generation Letters and Documents [S02] security is granted.

When security is not granted, the user cannot generate Documents and Tasks from the Document Generation option or Delete File Attachments. The user does have the ability to setup and delete Documents and Tasks to be processed. Additionally, the user may only view, open and edit previously generated File Attachments.

 

Application User Profile [U0831]

The users Document profile settings must be established in order to define user accessibility to the Document List [U0815] update.

The Letters/Docs 3, tab of the Application User Profile [U0831] update requires the the Document portion of the screen to be defined for user access to the Document List [U0815] update. Select the desired options for the users profile.

 

Application Portfolio [U0822]

The Document Follow-up Days, Template Location and Document Location in the Application Portfolio [U0822] must be defined. For more detailed information, refer to the Application Portfolio [U0822] update.

The following fields work in conjunction with the Document List [U0815] update.

 

Document List [U0815]

The document template must be associated with the Document Name in the list.

This screen is used to enter a document list description and documents that are to be associated with the code. For each document, the supervisor can also specify when the document is required by entering an Application Status, as defined by the Application Status update [U0811]. The document will then be required when an application is changed to this status. Refer to Status Transfer of the Application update [U0801] for more information.