Data Structures for Report Desk Defaults and Enforcements


Release Date: TBD

In Report Desk, users can save their input values, as well as output option in templates and re-use them in the future. On the first Report Desk screen, the system prompts you to input the selection of your data. For example, you can choose to print a list of term codes from A - Z like the following:


Then you can choose the "Save" tab to save your current input value. See sample screen below:



Once the template is saved, you can choose the "Use" tab on the main screen to re-use the previously saved template. See sample screen below:



In this article, we will discuss how we save data into the table SYRDPRTO (Report Desk Print Options Table) from a technical point of view to explain how Elliott Report Desk works:

The following is a list of columns in the table SYRDPRTO:


When you choose to save the template, the majority of the data is stored in the SYRDPRTO_INP_CHOICES, SYRDPRTO_EMAIL_BODY and SYRDPRTO_OUT_CHOICES columns in XML format. It has the data type LONGVARCHAR. The maximum physical limitation with LONGVARCHAR is 2GB. The operation through the insert statement limits the size to 15,000 bytes. You can insert more than 15,000 bytes by using parameterized insert (we use this option in our code). The maximum data that can be returned in a single call is 64KB. For all practical purposes, we can assume this column can store all necessary data for Report Desk input values.

This table has a combo key consisting of the following four columns:
  • SYRDPRTO_LOGIN: Login ID in the format of Domain\User.
  • SYRDPRTO_COMP_NO: Elliott company ID. Will have value from 00 - 99.
  • SYRDPRTO_FL_REPORTID: The Report Desk Report ID. Example: ARTYPLST.B.1.1.0
  • SYRDPRTO_SEQ_NO: Increment from value 1 for different template saved. It can also have a value of -2 to stand for default (user=domain/user) or enforcement (user=SUPERVISOR.)
Saving as Default
When a user chooses to save, and if the user checked the "Use this template for the default values of this report" option, then that template is saved under the SYRPRTO_SEQ_NO = -2. There can only be one record like this. So if there were another record that was previously saved under  -2, the original record will be saved under a new sequence number so the value is not lost. The default record only affects the same user. If a template was previously saved as "Default," and the user chooses to un-check the "Default" option, then the -2 record will be deleted and saved as regular record with the new sequence number assigned.

Saving Output Settings
Similar to saving input settings, output settings can be saved for future use.  This happens in three possible ways:
  • Enforcements specified by SUPERVISOR
  • Defaults specified by the user
  • Last-used settings automatically saved and re-used
Saving as Enforcement
When a user logs into Elliott as a SUPERVISOR, on the Printing tab for Disk and Email there's a checkbox for "Destination Enforced."  If a SUPERVISOR selects this option, it means other users printing the same report must also select the same output destination with the same options. In the legacy printing of Elliott V8.2, this was mainly for enforcing consistency with PDF PostOffice. But it can be used for various purposes, such as when a SUPERVISOR chooses to enforce that all postings must be posted to disk, or that certain printings to CSV or XLSX are meant for automation integration and that other applications must specify a fixed file path and name.

If a SUPERVISOR chooses to turn on "Destination Enforced," then a SYRDPRTO record will be saved as follows:
  • SYRDPRTO_LOGIN: Login ID will be hardcoded as "SUPERVISOR."
  • SYRDPRTO_COMP_NO: Elliott company ID. Will have value from 00 - 99.
  • SYRDPRTO_FL_REPORTID: The Report Desk Report ID. Example: ARTYPLST.B.1.1.0
  • SYRDPRTO_SEQ_NO: The value will be hard coded as -2.
Only the value related to the enforced tab will be saved in this record. If a report was previously enforced, and the SUPERVISOR / -2 record exists and SUPERVISOR chooses to un-enforce both Disk and Email tabs, than that SUPERVISOR / -2 record will be deleted.

When a non-SUPERVISOR user goes to the "Use" tab, the record saved under "SUPERVISOR" will not be displayed in the list since they are used for the special purpose of enforcement.

Saving User Defaults
When the user presses the Save button on the parameter input screen and then checks the Use this template for the default values of this report option and also checks Save output options with this template, then both the input and output settings will be saved and re-used as the default settings when the user runs this report in the future.  In this case, the SYRDPRTO key columns will be stored as follows:
  • SYRDPRTO_LOGIN: Login ID in the format of Domain\User.
  • SYRDPRTO_COMP_NO: Elliott company ID. Will have value from 00 - 99.
  • SYRDPRTO_FL_REPORTID: The Report Desk Report ID. Example: ARTYPLST.B.1.1.0
  • SYRDPRTO_SEQ_NO: The value will be hard coded as -2.
Saving Last-Used Settings
Each time a report is run by a user, a SYRDPRTO record is created with sequence number set to -1.  After the first time a user runs a particular report, the existing -1 record will be deleted before the new one is saved. 

Absent any enforcement record for a report, the output settings in the user's -1 record will be used to set default output options.  If an enforcement record for this report is found, the Disk tab and/or Email tab settings (based on the SUPERVISOR's enforcement settings)  will be joined with the last-used settings on any tab not enforced by SUPERVISOR.

EMK / JEG

Feedback and Knowledge Base