APL |
Sub-Sender List |
Sub-Sender List
This enhancement adds a process on the InvestCloud side that collects the unique set of FIX Sub-Sender IDs on the platform. Unique Sub-Sender IDs that are no longer active (retired) are not included on the list.
The process involves two functions:
- BILLSWBSUBSENDER
- EDITSUBSENDER
BILLSWBSUBSENDER
The function BILLSWBSUBSENDER is used for billing based on the FIX Sub-Sender IDs. The function has the following attributes:
| Attribute | Comments |
|---|---|
| The function is available to internal InvestCloud users only | There is an initial draft of the code in japptst01:/u/ssadri/FIXCHARGES. The function in the workspace is called COVER. We will call it BILLSWBSUBSENDER. |
| The function will check all client directories on the given machine, except for ADP, CLT and IBM | For Production, the function will be run on japptst01. This is the only machine where all clients are present. |
| For a given client, the function will check the /u/{client}/Config sub-directory for FIX connections. | The Config sub-directory holds the configuration files. The naming convention is FIX.{client}.{FIX connection ID}. For example, /u/ais/Config/FIX.ais.tdwinst. If no FIX configuration files are found, there is nothing to report for this client. |
| If one or more FIX configuration files are found, grep for the Sub-Sender ID | The function will look for: Client ID= or CLIENT ID= Collect the Sub Sender IDs for the given client and move on to the next client. |
| Reduce the list of Sub-Sender IDs down to the unique list and remove the retired or inactive IDs. | If the Sub-Sender ID is in the EDITSUBSENDER table, it is removed from the list. See EDITSUBSENDER below for more information |
Create the file SCHWABFIXBILL.CSV with the following attributes:
Header: The Header includes the title "SCHWAB SUB-SENDER ID BILLING" and the time stamp of when the file was created
Detail Records: This is a list of the unique Sub-Sender IDs, one per row
Trailer: This includes the words "RECORD COUNT" followed by the number of detail records only. The Header and Trailer records are not included in the record count
For example:
- The function will be scheduled to run once per month in a control job on japptst01
- An email will be sent indicating that the FIX billing process has run and including the SCHWABFIXBILL.CSV file
- Client Services can add/delete retired Sub-Sender IDs that will be excluded from the SCHWABFIXBILL.CSV output report
EDITSUBSENDER
Use the EDITSUBSENDER utility to manage the retired Sub-Sender IDs.
The utility has the following attributes:
| Attribute | Comments |
|---|---|
| The function is available to internal InvestCloud users only | There is an initial draft of the code in japptst01:/u/ssadri/FIXCHARGES. The function is called EDITSUBSENDER and the associated table is called retfixline (all underlined). |
| The Header of the function should be changed to RETIRED SUB-SENDER BY PROVIDER | Currently, the Header shows "SUB-SENDER BY PROVIDER." Since this table is for retired Sub-Sender IDS only, the Header should be changed to avoid confusion. |
| The function has two columns: Sub-Sender and Provider | The function lists the Sub-Sender IDs that are excluded from the billing, as well as the Provider. The function is being created generically; other providers may want to bill in the future. |
| Internal users can add, edit or remove Sub-Sender IDs and Providers on the list. | Standard function keys are used to insert or delete lines. |
| Internal users can exit without saving, or save and then exit. | Standard function keys are used. |
| When the user selects to save, the function will review the list and save only the unique entries. | The primary sort is Provider; the secondary sort is Sub-Sender ID. |
Sample EDITSUBSENDER Table
Note: The list of retired Sub-Sender IDs is provided by Client Services. Customer Operations will maintain the new table, adding new retired IDs as needed.