After having some discussions about input tables for BRF+ functions during the last weeks, we thought that it would be worth spending some effort on increasing this functionality for our TM conditions.
Until now it was only possible to have data access definitions using table types that were equal to the table type of the used BO node. This seemed kind of insufficient as we usually don’t want a whole BO node but more likely one or more fields of that BO. We made a small correction that enables 3 different ways to use input tables in our conditions. As an example we use the TOR stop node as this is a pretty common use case, where input tables come into play, as in a lot of cases you move from TOR root to stop and what you get is all stops of that ROOT. In case you now want to consider all stops instead of maybe only stop_first or stop_last you need a data element of type table in your data access definition.
1.Case – Import the whole structure of a BO node:
2.Case – Import a single field from a BO node instance
In this case we insert a certain field from a BO node into the corresponding table type for this field. In case of the LOG_LOCID on TOR stop a table type already exists in standard but it might happen, depending on which field you want to get from your node, that you have to create a table type by yourself. Important: Always maintain the BO Node Field Name for this case!!
3.Import several fields from a BO node instance
If you want to have more than one field, you have to maintain a table with a structure including all the fields you want to get from your BO node. In some cases there might already be existing structures that you can reuse but in general you have to maintain a structure including all fields you want to give into BRF+. For example additionally to the Location ID for some reason we want to have the time windows of that stop given to BRF+.
After maintaining your structure, just add it to a table type you have created and assign it as Data Element to your DAD.
This small feature is included in note No. 1845371 and available for TM 9.0. If you know how to handle table input in BRF+, this feature offers some cool possibilities for our TM condition.