Processing window node
The processing window node determines the delivery and settlement windows for a transmission when it is initially ingested. Based on the receipt time and the release time of the transmission, these processing windows may be changed during business day activation or during re-validation.
When a transmission is initially ingested, the node assigns it to a settlement window based on the receipt time of the transmission. Incoming batches (ICLs) are also assigned to settlement windows based on the receipt time of the transmission. The settlement windows for the batches (ICLs) can be changed during re-validation based on the transmission released time.
The processing window node determines the delivery window first and then the settlement window. It has a set of tasks that are used to look up the delivery window, followed by a set of tasks that are used to look up the settlement window. If a delivery window look up is not required, the node begins by looking up the settlement window. If only a delivery window is required, the node skips the settlement window tasks. The delivery and settlement window look ups return the first value that is found, which means that all of the look up tasks for each processing window type may not be run.
DistWindowPartnerRuntimeTask- searches the participant overrides for the active processing windows.DistWindowPartnerConfigTask- searches the window receipt overrides for the configured processing windows.DistWindowRuntimeTask- searches the active processing windows.DistWindowConfigTask- searches the configured processing windows.
SttlWindowPartnerRuntimeTask- searches the participant overrides for the active processing windows.SttlWindowPartnerConfigTask- searches the window receipt overrides for the configured processing windows.SttlWindowRuntimeTask- searches the active processing windows.SttlWindowConfigTask- searches the configured processing windows.
Node descriptor
<?xml version="1.0"?>
<nodeDescriptor name="ProcessingWindowNode" type="ESORT">
<assignments>
<assignment field="ibmValFileOriginRT" type="field" value="ibmValProcessor" conditions="notCurrent"/>
<assignment field="ibmNprBdCategory" type="string" value="" conditions="notCurrent"/>
<assignment field="refYYYYMMDDHHMM" type="Concat" value="ibmFileDateReceivedUTC, ibmFileTimeReceivedUTC"/>
<assignment field="refHHMM" type="field" value="ibmFileTimeReceivedOPT"/>
<assignment field="refYYYYMMDDHHMM" type="Concat"
value="ibmFileDateReleasedUTC, ibmFileTimeReleasedUTC" conditions="refUseReleasedDateTime EQ 'Y'"/>
<assignment field="refHHMM" type="field" value="ibmFileTimeReleasedOPT" conditions="refUseReleasedDateTime EQ 'Y'"/>
<assignment field="refIsLastWindowDist" type="string" value="N"/>
<assignment field="refIsLastWindowSttl" type="string" value="N"/>
</assignments>
<tasks>
<task name="DistWindowPartnerRuntimeTask"/>
<task name="DistWindowPartnerConfigTask"/>
<task name="DistWindowRuntimeTask"/>
<task name="DistWindowConfigTask"/>
<task name="SttlWindowPartnerRuntimeTask"/>
<task name="SttlWindowPartnerConfigTask"/>
<task name="SttlWindowRuntimeTask"/>
<task name="SttlWindowConfigTask"/>
</tasks>
<connections>
<connection srcName="CONDITIONAL_START" dstName="SttlWindowPartnerRuntimeTask">
<paymentCheck field="refKeepWindowDist" operator="EQ" value="Y"/>
<paymentCheck field="ibmValIsItem" operator="EQ" value="N"/>
</connection>
<connection srcName="DistWindowPartnerRuntimeTask" dstName="DistWindowPartnerConfigTask" results="FAILURE"/>
<connection srcName="DistWindowPartnerConfigTask" dstName="DistWindowRuntimeTask" results="FAILURE"/>
<connection srcName="DistWindowRuntimeTask" dstName="DistWindowConfigTask" results="FAILURE"/>
<connection srcName="DistWindowPartnerRuntimeTask" dstName="SttlWindowPartnerRuntimeTask">
<paymentCheck field="refKeepWindowSttl" operator="NE" value="Y"/>
</connection>
<connection srcName="DistWindowPartnerConfigTask" dstName="SttlWindowPartnerRuntimeTask">
<paymentCheck field="refKeepWindowSttl" operator="NE" value="Y"/>
</connection>
<connection srcName="DistWindowRuntimeTask" dstName="SttlWindowPartnerRuntimeTask">
<paymentCheck field="refKeepWindowSttl" operator="NE" value="Y"/>
</connection>
<connection srcName="DistWindowConfigTask" dstName="SttlWindowPartnerRuntimeTask">
<paymentCheck field="refKeepWindowSttl" operator="NE" value="Y"/>
</connection>
<connection srcName="SttlWindowPartnerRuntimeTask" dstName="SttlWindowPartnerConfigTask" results="FAILURE"/>
<connection srcName="SttlWindowPartnerConfigTask" dstName="SttlWindowRuntimeTask" results="FAILURE"/>
<connection srcName="SttlWindowRuntimeTask" dstName="SttlWindowConfigTask" results="FAILURE"/>
</connections>
</nodeDescriptor>