System.xml
Explained
March 20, 2006
Copyright 2006, R. James Holton
This document describes the system.xml
file. The system .xml file is the primary configuration for the ESS
system. It contains both site specific and database specific information.
The system.xml
element is broken-down into subelements, which for
purposes of this document, are lettered A through Z.
A. configuration
This element contains basic configuration
information for the ESS Report, Audit and Disconnect systems. Unlike the other
elements in the system.xml file, this element is
cached. Any changes require that the server be restarted prior to the changes
taking effect.
- company
- company name (e.g., Adisoft)
- exp_email_address - return address for email messages
(e.g.,expense@site.com)
- smtp_address - address of SMTP server for sending e-mail messages (e.g.,
mail.site.com)
- smtp_domain - domain name for user's emails. This is only used to construct
email address's if required (e.g., adisoft-inc.com)
- smtp_delimiter - character used to delimit first and last name
in constructed e-mail address. . This is only used to construct email
address's if required (e.g., '.')
- xml_folder - Full path of the folder that holds the register files. The
register files are comprised of the XML version of the expense reports.
(e.g., E:\ess_test\xmlr\/xml_folder, or, /var/ess/xmlr/)
- pal_email_address - set to the same value as exp_email_address
unless there is a specific reason not to do so. This address is used
specifically for receiving forms in the SubmitForm.jsp.
- personal_folder - Full path for the folder that holds personnel
information. (e.g. E:\ess_test\xmlu\)
- rep_reference - This element tells the XML2ESS class how to
summarize department totals. Within department options are: 1.
Project/Client, by unique project and client, 2. Entity/Client, by unique
entity (stepno) and client, 3. Clientno, by unique client.
- xmlstatus - fullpath for Status.xml. Status.xml holds
information on routing and processing of reports. (e.g., E:\ess_test\xmls\Status.xml)
- xmlsecurity - fullpath for security.xml. Security.xml
specifies who can perform the audit, profile generation and password reset
funcitons. (e.g., E:\ess_test\xmls\security.xml)
- receipt_req_amt_fld - this is the field to use in the EXPENSE table
for the amount at which a receipt is required. Normally it will be LIMIT
or XLIMIT. Use XLIMIT for MySQL databases and
LIMIT for others where LIMIT is not a reserved word.
- xmlrules - Full path of the rules.xml
file. The rules.xml file describes the rules
used for the initial processing of reports that have been submitted.
(e.g., /var/ess/rules.xml)
- pwd_expires_days - number of days before a user is required to
change there password. A '0' indicates that the user is never forced to
change their password. (e.g., a 28 requires a user to change their
password every four weeks)
- pwd_minimum_length - specifies the minimum length of a password.
- pwd_approval - a 'Yes' indicates that approvers need to enter their password
when approving reports. 'No' indicates that they don't. 'Yes' is akin to
requiring a signature on a report and is more secure in the event of an
unattended browser.
- pwd_audit - a 'Yes' indicates that auditors need to enter their password
when OKing reports for payment. 'No' indicates
that they don't. 'Yes' is akin to requiring a signature on a report and is
more secure in the event of an unattended browser.
- personal_code - Enter the expense type that indicates a
personal item that should not be reimbured. This
item will eventually be depricated and replaced
with process.personal below. (e.g., PERSONAL)
- xmlremove - Full path of Remove.xml
which describes what happens to a report that a user selects for removal.
(e.g., E:\ess_test\xmls\Remove.xml/xmlremove)
- xmlreports - Full path of reports.xml.
Reports.xml holds report descriptions for the
simple report generator. (e.g., /var/ess/reports.xml)
- project_report_name - The name for the title of the project field
that displays in the trip section of the detailed report. (e.g.,
'Project/Acct')
- manager_report_name - The name for the title of the reporters physical location on the report header. This
is usually either the name of their manager or the name of there
department. (e.g., 'Dept Name')
- show_company_name - A 'No' indicates that the company name with
not be displayed as part of the expense line items in the Trip section of
the report. Any other value indicates the title on the company column.
(e.g., 'Entity Charged')
- add_merchant_comment - a 'Yes' indicates that the merchant name will
be added to the comment detail of an expense line item in the Trip
section. 'No' indicates that it will not.
- dump_mail - In the ESSApprover class, reporters
who do not have a manager assigned will have there messags
sent to this e-mail address.
- update_exp_approval - Set to 'Yes.' Will be deprecated.
- home_page - This is the URL that you wish the user to be transferred to
after they logout. ( e.g., 'http://www.adisoft-inc.com')
- background_color - the color used as the background for trip
boxes, offset lines, etc. This color should match the colors used in the expense.css style sheet. (e.g., '#EAEAEA')
- xmlnacha - Full path for the NACHA file description.
(e.g. 'E:\ess\xmls\nacha.xml/xmlnacha')
- xmlcalendar - Full path for the calendar file. The calendar file
describes bank holidays and other important dates. (e.g., 'E:\ess_test\xmls\calendar.xml/xmlcalendar')
- xmlimport - Full path for the import file. The import file
describes the various layouts or files that ESS uses to transfer
information from and to other systems. (e.g., '/var/ess/import.xml')
- xmlexpoty Reserved.
- xmledit - Full path of the edit file. The edit file
describes the interaction between the various file maintenance screens in
the Audit module and the database. (e.g., '/var/ess/xmls/edit.xml')
- xmlschema - Full path of the schema file. The schema file
E:\ess_test\xmls\schema.xml/xmlschema
- xmlsecurityE:\ess_test\xmls\security.xml/xmlsecurity
- xmlprepopulatedmap - XML file used to map the pre-populated
information to a valid expense type. (e.g., /var/ess/xmls/prepopulated.xml)
- reportfolder - reserved for future.
- htmloutput - reserved for future.
- essprofile - Full path for the ESSProfile.js.
This is the physical location of the web ess
folder. (e.g., e:\Inetpub\wwwroot\ess\ESSProfile.js)
- referenceprefix - Prefix to the central reference number of a
report. The central reference number is generated as an eight-digit
number. If specified, this prefix replaces the first digit. (e.g., 'X')
- alternateprefix - Prefix to the alternate reference number of a
report. The alternate reference is generated from the user's reference
number and is a packed eight-digit number. If specified, this prefix
replaces the first digit. (e.g., 'A')
- alternatelength - Specified length of the alternate number.
Currently leave as '8.'
- step_display - The purpose table contains a stepno
column. The column is used to further classify expenses that are tied to
this expense in an manner that they client
wishes. This is the title of the associated field. (e.g., 'Aircraft' may
be appropriate is you want to know the type of aircraft being used for
travel)
- prepopulateditems - Set to 'Yes' if you import credit card items,
etc. to pre-populated report entry or else 'No' if you do not.
- pwd_audit A Yes means that auditors need to enter their password (as
their signature) when they approve reports for payment. A No means the auditor just has to
click the button.
- currency Default currency in the event that one is not specified in the
company record in the the company table.
- transactionlimit Limit of a single transaction if one is not
specified in the currency table for this currency.
- distance Default mileage units for the site. (Note: translated by
property file)
- billable_name Label for the billable field. (Note:
translated by property file)
- omitforeignguidelines A Yes will omit the guideline check from the
audit copy for reports that are in a foreign currency.
- omitguidelines A Yes will omit the guideline check from the
audit copy.
- purposescreen {deprecated}
- historycopy Status a copy of a report is given after it is
converted from a foreign currency.
- normalizetest A Yes will convert names, titles, etc. to
uppercase before saving them.
- omitforeignconversion A Yes will not allow auditors to convert
reports in foreign currency to local currency.
- dateformat default date format to use if none is
specified in the user profile.
Options are MM/dd/yyyy, dd/MM/yyyy, and yyyy-MM-dd.
- numberformat Controls the default numeric display to be used
if there is not a value set in the users profile. It can be set to
decimal, period, or comma. Decimal
and period are effectively the same.
- language Default language to use.
Current languages supports are en for English and fr for French.
- country
Default country code to use.
Currently not used.
- location Default location to use for location field.
- importwork physical location of the user import file.
- requireauditcomment If set to Yes the audit is required to provide
a comment/email to user regarding any report that is rejected.
- appserver - Enter the URL with ending slash of your
application server. If you use a conduit, the application server with be
the same as your Web server. (e.g., http://www.yourserver.com:8080). As of version 7, this element should be
left blank unless there is an overwhelming reason to use it.
- webserver - Enter the URL with an ending slash of the Web
server. (e.g., http://www.yourserver.com'). As of version 7, this element should be
left blank unless there is an overwhelming reason to use it.
- appfolder - This is the name of the application as it
appears in webapps. Normally should be 'ess-app,' but can be customized.
- webfolder - This is the name of the Web folder the
application resides in. Normally should be 'ess,'
but can be customized.
- customfolder - Normally should be 'ess'
unless you have done customized purpose screens, menu's etc that you wish
to maintain separately for upgrade purposes.
- localserver - Address of the server port used by the
disconnected application. Normally should be 'http://localhost:8085/localserver.'
- localsecuritystring - This string is used to test is the request to
the disconnected server is coming from the local machine. Leave as
'/127.0.0.1' unless you have a reason to change it.
- centraldatabase - This is the name of the JDBC driver. (e.g., jdbc:odbc:adisoft)
The following items are found in the system.xml file, but are not used in the online
version. They can be removed if you
dont want to look at them.
- localserverport - The port number that the disconnected server
is using. Leave as '8085' unless there is a conflict. This needs to be
coordinated with the localserver element.
- localfolder - Normally should be './' unless there is a
special problem.
- localserverfile - This is the html screen that is used for the
initial disconnected login. (e.g., './x1x.html')
- remotedomain - This is the application domain that this disconnected version
uses for uploading, etc. (e.g., 'http://www.adisoft-inc.com:8080/ess-app/')
- remoteprofileupdate - Full path name of the profile update JSP. The
profile update JSP updates disconnected users with the latest tables for
editing as well was sending them their pre-populated items. (e.g.,
http://www.adisoft-inc.com:8080/ess-app/ProfileFeed.jsp)
- remoteusersetup - This is the name of the screen that is used to
accept logins for the initial setup and update processes. (e.g.,
'http://www.adisoft-inc.com/ess/ess/LoginLocalSetup.html')
- xmluser - Name of the XML file that stores information
about the user in the disconnected system Leave as 'user.xml'
unless debugging.
- lessprofile - path name of the ESSProfile
location in the disconnected system. Leave as '.\ess\ess\ESSProfile.js.'
unless instructed by technical support.
- remotesave - http://192.168.0.2:8101/ess-app/SubmitLocal.jsp/remotesave
- testjsp - Disconnected system process. Leave as 'Less.HelloWorldServlet.'
- intro
- Disconnected system process. Leave as 'Less.IntroServlet.'
- submitform - Disconnected system process. Leave as 'Less.HelloWorldServlet.'
- submitformn - Disconnected system process. Leave as 'Less.HelloWorldServlet.'
- savexml - Disconnected system process. Leave as 'Less.SaveXMLServlet.'
- getreport - Disconnected system process. Leave as 'Less.GetReportServlet.'
- localmessage - Disconnected system process. Leave as 'Less.LocalMessageServlet.'
- lessscreen - Disconnected system process. Leave as 'Less.LessScreenServlet.'
- saveprofile - Disconnected system process. Leave as 'Less.SaveProfileServlet.'
- savepersxml - Disconnected system process. Leave as 'Less.SavePersXMLServlet.'
- prepopfeed - Disconnected system process. Leave as 'Less.PrepopFeedServlet.'
- prepopsave - Disconnected system process. Leave as 'Less.PrepopSaveServlet.'
- printreport - Disconnected system process. Leave as 'Less.PrintReportServlet.'
- loginprofile - Disconnected system process. Leave as 'Less.LoginProfileServlet.'
- logout
- Disconnected system process. Leave as 'Less.LogoutServlet.'
- recoverlog - Disconnected system process. Leave as 'Less.RecoverLogServlet.'
- guidelines - Disconnected system process. Leave as 'Less.GuidelineServlet.'
- removesave - Disconnected system process. Leave as 'Less.SaveRemoveServlet.'
- submitxmlwguide - Disconnected system process. Leave as 'Less.SubmitWithGuideServlet.'
- submitlocal - Disconnected system process. Leave as 'Less.SaveXMLServlet.'
B. process
This element is used by various processes,
such as the generic G/L and payment feeds, to avoid having to hard code
information. Other sub-elements flow into the JavaScript profiles.
- defaultpayment - Used to designate the default payment method.
(e.g., CASH)
- defaultlodging Not currently used.
- lodging
- Expense type to be used for hotel receipt screens. (e.g., LODGING)
- fleetallowance - Expense type used for fleet vehicle
maintenance allowances. (e.g., ALLOWANCE)
- advance
- Receipt type used to account for cash advances. There can be multiple
elements. If there are multiple elements, the first occurring element is
the default. (e.g., ADVANCE)
- personal - Expense type used to account for personal usage items that get
removed from the reimbursement calculation. There can be multiple
elements. If there are multiple elements, the first occurring element is
the default. (e.g., PERSONAL)
- returned - Receipt type used to account for cash returned against
advances. There can be multiple elements. If there are multiple elements,
the first occurring element is the default. (e.g., CASH-RETD)
- mileage
- Items to translate to mileage receipts when imported to your legacy
system. There can be multiple elements. Also, any expense
items where the units are 'miles' will also be imported as mileage
receipts.
- defaultmileage - Used to designate the default mileage expense
type (e.g., MILEAGE)
- airfare
used to designate the airfare entry on the new report screen.
- defaultcompany Not currently used.
C. generaloffset
Items in this element are used by the generic
EOD G/L creation to create debit entries for receipt types that do not have expense
information. Currently, these receipt types are identified in the process
element above. In the non-customized installation, they are 'advance' and
'cash-retd.' Inportant, the
element names are constructed by the program. Credit information is stored in
the payment type table.
- advance_debit_account - major account number for the advance debit.
- advance_debit_costcenter - cost center for the advance debit.
- advance_credit_account - major account number for the credit.
- advance_credit_costcenter - cost center for the credit.
- cash-retd_debit_account - major account number for the debit offset.
- cash-retd_debit_costcenter - cost center for the debit offset.
- cash-retd_credit_account - major account number for the debit offset.
- cash-retd_credit_costcenter - cost center for the debit offset.
- cash_search
- cash_debit_account - major account number for the debit offset.
- cash_debit_costcenter - cost center for the debit offset.
- cash_credit_account - major account number for the debit offset.
- cash_credit_costcenter - cost center for the debit offset.
- billable_debit_account - major account number for the debit offset.
- billable_debit_costcenter - cost center for the debit offset.
D. registertable
The register table element contains elements
needed to describe the register table to the application. Currently there is
only one element.
- listreports - This is the SQL statement that is used to
display the report selection list in the "Your Reports" option.
The statement must contain the following columns: register status,
reference, message, central database status, account date, accounting
time, register file date, personnel number and, report total receipt
amount. The following macro substitutes are used: $owner$ - personnel
number of the reports desired. Used in Intro.jsp.
E. encrypt
Certain columns in the report, purpose and
expense tables can be scrambled to prevent prying eyes from easily discerning
trip purposes or locations. It is not a true encryption but actually a simple XOR
cipher feedback process. It is not recommended for general usage but available
if strongly desired. Please note, that if you decided
to use this feature, you'll need to write routines to decrypt the columns in
the event you wish to use this information outside the expense system.
Scrambling occurs during the SQL write process so the values of the following
sub-elements are dependent upon the database being used.
- apply - Set to 'Yes' to scramble, otherwise leave as 'No.'
- key
- The decimal equivalent of the character to XOR with the first character
of text. Additional characters are XORed against
the previous results (i.e., feedback). (e.g., '6')
- base
- Numeric base to use to describe the characters in the SQL statement.
Needs to be 'Decimal,' 'Octal,' or 'Hex'
- head
- Text string that begins each column value in the SQL statement.
- tail
- Text string that ends each column value in the SQL statement.
- delimit
- Text string that is between each character value in the column.
F. mileage
This element is a collection of rate elements
and describes the default mileage rates to used over a
period of time. Your can thus change the default rate but still allow creation
of back dated reports with the effective rate for that period. This is
especially useful during January or February as many companies set yearly
rates. Each rate sub-element contains the following elements:
- value
- Mileage reimbursement rate expressed in dollars or major currency.
(e.g., 0.3450)
- effective01/01/2004/effective
G. sql
This is a desciption
of the SQL format used for a particular database. If you have selected a
standard configuration that matches your database, you shouldn't have to change
this. If you are using a new database that doesnt have a standard system.xml already for it, then you may have to tweak this
section as well as most of the other SQL templates in this file.
- driver
- simply identifies the driver for documentation purposes (e.g., 'VFP ODBC
Setup')
- dateformat - Either 'MM/DD/YYYY' , 'YYYY-MM-DD, or
DD-MMM-YYYY.
- datesql - This is the string which to embed the date
string to write to a date type SQL column. The macro $data$ is replaced
with the date string. (e.g., "CTOD('$date$')" works for FoxPro)
- yessql - Column value to use for true. (e.g., '1')
- nosql - Column value to use for false. (e.g., '0')
- acceptnulls - Indicates whether the database accepts null
values. If the database doesn't accept null values, the values are
converted to either empty strings or zeros. 'No' indicates that the
database does not accept nulls and a 'Yes' indicates that it does accept
nulls.
- blankdate - String to use for a blank date. (e.g.,
'00/00/0000')
- locktablesql - Reserved.
- unlocktablesql - Reserved.
- insertmethod - Database method to use to insert a record. Available
methods are 'SimpleSQL' or 'PreparedStatement.'
- reservedwordlist - List of column names, seperated
by semi-colons, that will be double quoted when the standard AdisoftDbase routines are used. Note, this is database
dependant and does not cover non-constructed SQL statements in the system.xml file.
H. passwordchange
This element contains the SQL statements that
are used to change and reset passwords. Passwords can be originally set as part
of the USER table maintenance process which is defined in the edit.xml file.
- updatesql - Used by end users to change their passwords.
Supports macros: $password$, $date$, and $email$. Used by ChangePWD.jsp.
- resetsql - Used by support staff to reset their
passwords. Supports macros: $password$, $date$, and $email$, however the
$date$ macro is always set to a blank date. Used by ResetPassword.jsp.
I. personneltable
This information is used by PersonnelTalble.java to access the personnel table (i.e.,
USER).
- emailinfoallsql - Used be setEmailInfoAll
method to load a personal profile and supports $email$.
- persinfosql - Used be setPersInfo
method to load a personal profile and supports $email$.
- persinfoallsql - Used be setPersInfoAll
method to load a personal profile and supports $persnum$.
- persnuminfosql - Used be setPersNumInfo
method to load a personal profile and supports $persnum$
- blanktopersnum - Normally set to 'No.' A 'Yes' lets the
personnel number be used as a password.
- persnumendcount - In conjunction with above, lets a portion of
the personnel number be used as a password. This value indicates the offest to the portion to
use. (e.g., '0')
- userlistsql - SQL statement used by auditor and
administrators to pull up a list of users from which to select for report
header entry. Must have last name, first name, phone, location, department
code, email, vehicle, and service date columns. The $lname$
macro (last name) is used.
J. departtable
The DepartmentTable
class to access the department table.
- departinfosql - Selets a row from
the department table. Uses the $depart$ macro which is the unique
department code or description.
K. vouchertable
This element describes how to generate
central reference numbers.
- voucherobject - Should be set to 'ServerSystemTable'
for all new installations.
- voucherprefix - Prefix for central reference numbers. (e.g.,
'K')
- voucherlength - Reserved.
L. reportstatus
The ProcessESSReport
class uses this element to accept and provide the initial state of a report
into the central database.
- submitstatus - This is the initial status that a report is
set to prior to running a guideline check. This should correspond to a
status that is located in the default element and status sub-element.
(e.g., ST_SUBMIT_ON)
- findsql - This is a SQL statement that will determine if
the submitted report already exists in the database. Normally this is done
be searching for a report with a valid processing status (i.e., hasn't
been rejected of deleted) for this user and previous reference number.
Macros $persnum$ and $pvoucher$
are used.
- updatecharsql - This SQL statement that is used to update a
single date column in the report. Macros $column$, $value$, $persnum$ and $pvoucher$ are
used.
- pdatesql - This SQL statement that is used to update a
single non-date column in the report. Macros $column$, $value$, $persnum$ and $pvoucher$ are
used.
- avoidduplicatesql - This SQL statement is used to check to see if
this specific instance already exists in the central database. It uses
macros $persnum$, $pvoucher$,
$status$, and $voucher$.
M. reporttable
This element provides SQL status
which are used to create report lists for various tasks. Each statement
needs to return these columns: name, personnel number, total receipt (report)
amount, report status (translated), report date, first approval signature,
central reference number, previous reference number, second approval signature
and, report department.
- selectapprove - List of reports for approval purpose. This is
the list of all reports requiring approval. There is logic in the Approve
List that will match reports against the current approver and only
actually display the reports they can act on.
- selectaudit - List of reports that can be audited. This is
the list of all reports requiring audit that met any work queue control
rules. The work queue rules are part of the SQL statement.
- selectfasttrack - Similar to selectaudit
above, but should only show reports that do not require physical receipts.
If receipts are required before payment, these reports can be audited
immediately avoiding an unnecessary delay in payment.
N. prepopulateditems
Pre-populated items generally enter the
system through credit card feeds.
- selectcards SQL that will retrieve a list of cards for a
specific user from the card file.
The $persnum$ macro is used.
- selectallitems - SQL that selects all items that have not yet
been used to pre-populate a report. Macros are $card$ and $number$. The
unique reference or cursor must be in the first column.
- updateitem - SQL that updates the item as having been
selected for a report. Macro is $recordcursor$.
- selectitem - SQL that identifies the individual, based on a
unique reference number or cursor, for receipt creation. Macro is $readcursor$. Columns are the transaction type, and the
transaction date.
O. prepopulatedrecovery
Recovery option in case user needs to repost
an item.
- selectallitems - SQL that selects all items that have been
marked as used but not reconciled as paid. Macros are $card$ and $number$.
The unique reference or cursor must be in the first column.
- updateitem - SQL that updates the item as having been
selected for a recovery. Macro is $recordcursor$.
- selectitem - SQL that identifies the individual, based on a
unique reference number or cursor, for recovery. Macro is $readcursor$. Columns are the transaction type, and the
transaction date.
Q. reconcilement
The reconcilement function allows auditors to
reconcile charges that have been paid to credit card statements. It is
primarily used to account that all items have been passed on an expense report,
but can also be used to detect fraud caused by overcharging.
- selectallcarditems - This SQL selects the items from the vendor
file that have been selected for a report but not yet reconciled. Macros
are $card$ and $number$. Columns are the record cursor/unique reference,
vendor status, card type, amount, transaction date, statement date, vendor
reference, and detail.
- carditemtable - Physical name of the vendor table. (e.g.,
'STATEMNT')
- selectallreceiptitems - This SQL selects the items from the receipt
file that have been paid but not yet reconciled. Macros are $card$ and
$number$. Columns are the record cursor/unique reference, status, payment
type, anount, transaction date, report date,
receipt reference, and merchant.
- receiptitemtable - Physical name of the ESS receipt table. (e.g.,
'RECEIPT')
R. post
This element consists of a single sub-element
that is executed by the reconcilement process to indicate that an item is OK.
The pre-populated POST JSP select which statement to
use based upon the table the item comes from. The table is the actual statusok sub-element. Below is an example of a statusok element that can handle a STATEMNT table or a
RECEIPT table:
- <statusok>
- <STATEMNT>
- UPDATE STATEMNT SET VND_STAT = 'OK' WHERE recno() =
$rowkey$;
- </STATEMNT>
- <RECEIPT>
- UPDATE RECEIPT SET OK_STAT = 'OK' WHERE recno()
= $rowkey$;
- </RECEIPT>
- </statusok>
S. history
This element is used to generate the report
history list. The report history list lets users
access reports in the central database for personal investigations.
- approval - Should correspond to the first level approval type in the Status.xml. (e.g., 'MANAGER')
- reporter - This SQl lists all reports submitted
for this user over the selected time frame. Macros are $persnum$, $begdate$, and $enddate$.
- approver - This SQl lists all reports approved
by this user over the selected time frame. Macros are $persnum$,
$begdate$, and $enddate$.
- admin
- This SQl lists all reports entered by this user
over the selected time frame. Macros are $persnum$,
$begdate$, and $enddate$.
- subordinates - This SQl lists all reports for people
who report to this user over the selected time frame. Macros are $begdate$ and $enddate$.
T. sendmessages
This element provides information needed to
send payment notices.
- messagelistmsg - This is the screen message for the operator.
- messagelistsql - This is the SQL that selects the reports to
have processing messages sent for. It uses the $update$ macro. It needs to
specify name, personnel number, receipt (report) amount, report status
(translation), report date, batch date, central reference number, previous
reference number, and department columns for a specific batch date.
Specific reports can be deselected so a message will not be delivered.
- messagesendsql - This SQL collects information on a report for
the actual message send process, one report at a time. It needs colums personnel number, report status, name, receipt
(report) amount, previous reference number, central reference number,
batch date, department, report create date. It selects based on the
$voucher$ and $status$ macros.
U. delinquentmessages
This element defines how the delinquent
message routine will act, including the text of the follow-up messages that are
sent out.
- resendafterdays - Number of days that will elapse, since
submittal, before the orignal router is
re-notified that they need to take action. This is calendar days (e.g.,
'7' would be two weeks). This person will then be notified everytime the delinquient
message routine is run until they either approve/reject the report or
until their manager is notified.
- notifymanagerdays - Number of days that elapse since submittal on
non-approved reports before the original approvers manager is notified
that the report is still in the queue.
- sendtoreporter - This is a list of central database status
codes (i.e., Status.xml, translation element)
that will notify the original reporter that his report needs action. These
are normally manager and system reject stati.
- messagelistmsg - Instruction to the operator on running the
delinquent report module.
- messagelistsql - The SQL that will select which reports need
attention. This would be a list of specific stati
where the last operation occurred prior to the current date adjusted for
the number of "resend after days" number. The macro $update$ is
substituted for the adjusted date.
- messagesendsql/messagesendsql
- notifymessage - Message sent to a reporter if there is a
report that needs his attention. The follow are the macros used $pvoucher$, $voucher$, $amount$, $date$ and $status$.
- approvermessage - Message sent to an approver if there is a
report that needs his attention. The follow are the macros used $pvoucher$, $voucher$, $amount$, $date$ and $status$.
Note: It is customary to provide a link to the ESS system with this
message.
- escalatemessage - Message sent to an approver's manager if there
is a report that needs his attention. The follow are the macros used $pvoucher$, $voucher$, $amount$, $date$ and $status$.
Note: It is customary to provide a link to the ESS system with this
message.
- messagelistsql SQL that retrieves the base set of reports for
which to generate delinquent
approval messages. The $curdate$ macro is
used. The $curdate$
macro refers to the current date of the report (i.e., cur_date
clomun). (In pre-1.7, the $update$ macro is
used. It is resolved with the cur_date. The
$update$ macro is still maintained, but has been deprecated.)
V. releasepayments
This element groups reports together in a
'daily' batch and updates their status so that they can be included in the
posting and payments processes.
- screenmessage - This is the screen message for the operator.
- listsql - This lists the reports that can be included in
the batch. The process allows an operator to deselect a specific report
after it have been listed.
- retrievesql used to verify the existence of a report. Uses macros: $voucher$ and $status$.
- updatesql - Used to update the report status in the
central database to indicate that it has been processed into a batch. Uses
the macros: $status$, $date$, $persnum$ and
$voucher$
- updatesqlreceipts Used to update the receipt status in the
central database to indicate that it has been processed into a batch. Uses
the macros: $status$, $date$, $persnum$ and
$voucher$
- updatesqlexpenses - Used to update the expense status in the
central database to indicate that it has been processed into a batch. Uses
the macros: $status$, $date$, $persnum$ and
$voucher$
W. endofday
This element is used be the end of day feed
creation process to take information from the ESS system and post it to other
corporate systems.
- screenmessage - Message that describes the process to the person
who runs the feeds.
- listsql - This is the SQL that selects the reports to be
included in the feed. It uses the $update$ macro. It needs to specify
name, personnel number, receipt (report) amount, report status
(translation), report date, batch date, central reference number, previous
reference number, and department columns for a specific batch date.
- feed
- This element specifies an ESS complient class
to run as part of the EOD feed creation process. Some generic classes are ess.NACHAFeed, ess.GeneralFeed
and ess.GeneralPayment. This element type can
appear multiple times.
- folder
- This is the folder to deposit the output of the feeds in.
- prenote - A 'Yes' indicates that the prenotes
should be included at the end of the daily NACHA.FIL file automatically. A
'No' indicates that prenotes will be handle in a
separate process./prenote
X. achprenote
This element controls the ACH prenote process. The ACH prenote
process also uses information in the nacha.xml file.
- listsql - SQL statement that selects users who have been
designated to be prenoted.
- batchupdatesql Reserved.
- updatesql - This updates a single user as having been prenoted. Uses the $date$ and $persnum$
macros. screenmessage -
Instructions to the person running the prenote
process.
- listsqlstatus - this SQL list the items that have been prenoted so that they can be marked as OK to send via
ACH after the ten days have elapsed. Need columns: Personnel number, Lanst name, First name, payment method, prenote date, bank routing number and bank account.
- screenmessagestatus - Instructions to the person running the OK Prenote process.
- updatesqlstatusUPDATE USER SET CASH='ACH' WHERE PERS_NUM = '$persnum$';/updatesqlstatus
XX. auditreport
Contains only one sub-element, receiptcheckupdate, that contains the SQL statement to update a receipt with
the status of a physical receipt.
Y. removereport
This is the set of SQL statements required to
fully delete a report from the central database. There is one type of
sub-element call sql. There can be a multiple
number of sql statements, each one of which
will be executed. The only macro is $voucher$.
Z. messages
This element consists of text messages that
system uses to communicate with the user.
- email_name - Used as the email title in the acceptance notification
generated by ProcessESSReport class.
- email_reporter - Used as the title for the reporters name in
the accept notification generated by ProcessESSReport
class.
- central_reference - Used as the central reference number title in
the acceptance notification generated by ProcessESSReport
class.
- personal_reference - Used as the previous reference number title in
the acceptance notification generated by ProcessESSReport
class. Note: the letter prefix is stripped from the previous reference
number in this display.
- email_routeto - Title for the name of the individual that this
report has been routed to for approval. Used in ProcessESSReport
class.
- email_subject - This is the text that will appear on the subject
line of the acceptance notification. Uses macros $voucher$ and $name$.
- email_new_line the new line character to use. Defaults to \n.
- submission_link - This is the text of the submission link that
the user sees after the guideline check has been run.
- introduction - This is the text the user will see the first time that they log
into the system.
- approvallist - Text that displays below the approval queue.
- auditlist - Text that displays below the approval queue.
- received - Screen message the user sees to indicate that the report has
been submitted and persisted OK. Macros available are: $time$, $email$, $personalReference$, $personalStatus$,
$centralStatus$ and, $centralReference$.
###