Business day batch node
This node primarily determines the business date on which the batch will be processed.
It uses the date and time of the incoming transmission and, based on either a day of the week or a time of day look up in the deadline table, adjusts it to the actual processing business date. This adjustment accounts for holidays.
Gateway provides the business day workflow with the date and time of when the transmission was received. Business Rules Server receives this information in separate data fields called ibmFileDateReceived and ibmFileTimeReceived. They are converted into a single data field, which is the day of week joined with the time. For example, 51000 is 10:00 Friday morning.
This date field is used with the product code, ibmValProductId, to look up the business day of week in the DepositProductDeadline table. The following table shows an example of an inbound product deadline table.
| Product code (absolute) |
Starting day and time (start range) |
Ending day and time (end range) |
Normal business day |
|---|---|---|---|
| ACH | 10000 | 20130 | 1 |
| ACH | 20131 | 30130 | 2 |
| ACH | 30131 | 40130 | 3 |
| ACH | 40131 | 50130 | 4 |
| ACH | 50131 | 60130 | 5 |
| ACH | 60131 | 72359 | 1 |
In this example, a transmission received at 51000 (10:00 Friday morning) is processed on Friday; the same day it came in. A transmission with a date of 60200 (2:00 AM Saturday) is moved to Monday.
The node then uses this date, along with the participant information for the immediate destination routing transit (RT) number, ibmValClDestinationRT, to determine if the date is a holiday. If so, the date is moved forward to the next business date.
Node descriptor
<?xml version="1.0"?>
<nodeDescriptor name="BusinessDayBatchNode" type="BusinessDayNode">
<assignments>
<assignment field="ibmValProductId" value="DFLT" type="string" executionPoint="onEntry" conditions="notCurrent"/>
<assignment field="ibmNprBdCategory" value="0" type="string" executionPoint="onEntry" conditions="notCurrent"/>
<assignment field="ibmSortPattern" value="1" type="decimal" executionPoint="onEntry" conditions="notCurrent"/>
<assignment field="ibmNprBdSite" value="0" type="decimal" executionPoint="onEntry" conditions="notCurrent"/>
<assignment field="ibmValDepositPriority" value="0" type="decimal" executionPoint="onEntry" conditions="notCurrent"/>
</assignments>
<tasks>
<task name="DepositProductDeadlineBatchTask"/>
</tasks>
</nodeDescriptor>
Tables
| Field name | Field type | Data type | Length | Description |
|---|---|---|---|---|
| ibmValProductId | key | char | 4 | The product code that was assigned by the Inbound product look up FTM node. |
| ibmIntDeadlineLow | key | char | 5 | The beginning of the day and time range. |
| ibmIntDeadlineHigh | key | char | 5 | The end of the day and time range. |
| ibmIntBusinessDay | payload | char | 1 | The business day of the week. |
| ibmIntBusinessDayPrefix | payload | char | 6 | Used for Billing purposes. |
| ibmIntBusinessDayPrefixCurrHol | payload | char | 6 | When the current day is a holiday, this prefix is used instead of ibmIntBusinessDayPrefix. |
| ibmIntBusinessDayPrefixPrevHol | payload | char | 6 | When the previous day is a holiday, this prefix is used instead of ibmIntBusinessDayPrefix. |