Backward competability of connector function variables

Hello,
When creating a connector function that gets data from external system like SAP, I declare all components that recieved from source including simple fields, structures and tables (tables are array of structures), when calling this connector function, I must declare a variable by the type of the function. if I change the connector function, even by one field or field type, I must declare on a new variable by a new type of the function and then replace all occourances of the variable in the app (or apps),
If I’m using the connector in one app, it can be very simple, I don’t want to think how much work it will be when I’m using the same connector function in several apps.
For example, I get the list of production orders from the main ERP system of SAP, this list contains many details about the production order like material number, quantities, Mrp control, Material group and so on, for sure I’m using the data in many apps that works on the production floor, but what happen if the user suddenly wants to add a visible data of convertion to KG for example ?
I have to add it to my interface → update the connector function → the interface of the function had be changed → create a new variable in the app → replace this variable in all occourances, do the same thing in all apps, too much work to do and too much damage can be done on the way.

So, please think how can you save the backwards competability and update this variable by the changed interface without demand the developer create a new variable.

Thank you,
Amit

4 Likes