In the SUPPLY automatically-generated function modules, there can be seen the following comments:
* General Notes
* =============
* A common scenario for a supply method is to aquire key
* informations from the parameter <parent_element> and then
* to invoke a data provider.
* A free navigation thru the context, especially to nodes on
* the same or deeper hierachical level is strongly discouraged,
* because such a strategy may easily lead to unresolvable
* situations!!
*
** data declaration
* DATA lt_nod TYPE wd_this->Elements_nod.
* DATA ls_nod LIKE LINE OF lt_nod.
** @TODO compute values
** e.g. call a data providing **FuBa**
I understand the dangers of navigating through nodes that have an associated Supply Function but haven’t been initialized yet – this basically leads to dead locks.
What i’d like to know is what’s a FuBa, or data provider and how to use that – all the examples i’ve found only supply data for a node in a trivial manner, and don’t tackle this problem.
Is that some way to register the nodes to be updated later… or… dunno ?
In this case, data provider is not a technical term, it’s just some coding that provides the data you want to add to the context. Whatever that may be depends on your application context – anything from a local or remote function module or method call, a call to your assistance class or even – if you really want to adopt bad coding habits – to a direct database access.
FuBa is an abbreviation of Funktionsbaustein = function module.