Build a Custom Distribution Channel¶
PLOSSYS Distribution Engine channels share one structure. Building a project-specific channel the same way keeps it consistent with the standard channels, refer to Channel Architecture.
Prerequisites¶
- A DPF workflow development environment for PLOSSYS Distribution Engine.
- Familiarity with
DistChannel_n,CurrFileName,IS_DIST_FILE,DIST_RESULT, andDIST_RESULT_TYPE.
Design Goals¶
- Do not add a new
WantXxxparameter to enable or disable the channel. UseDistChannel_ninstead. Channels stay easy to add, remove, or reorder this way, without changing the standard PLOSSYS Distribution Engine workflows. - Give the channel the same structure as the standard channels. Developers, PEs, and support can then orient themselves in an unfamiliar channel.
Build the Channel¶
-
Add a user exit step at the beginning of the channel workflow. This is the project-specific hook, for example to prepare or filter the RLI for the channel.
-
Add the standard channel behavior after the user exit step. It reads only the RLI lines marked with
IS_DIST_FILE= Y, and delivers or stores the file atCurrFileName. -
If the channel produces its own result file, for example an archive confirmation, mark the result line with
DIST_RESULT= Yand setDIST_RESULT_TYPE. A later channel, for exampledpf4distribute.DistributeResultFile, can then distribute that result further. -
Register the new workflow module as a value for
DistChannel_nin the job'sDIST_CONFIGconfiguration file.
Select Files per Channel on Document Level¶
By default, every channel in the chain processes the same files. To send some documents through one channel and others through a different channel in the same job, add a project-specific workflow step before each channel. Clear IS_DIST_FILE for all documents first, then set it to Y only for the documents belonging to that channel, based on a project-specific RLI column.
Validate¶
-
Configure a test job with the new channel in
DIST_CONFIG. -
Trigger the job in SAP.
-
Check that the new channel processes only the expected files.
-
If the channel produces a result file, check that a following channel distributes it correctly.