How to know if some field appears in a screen in a call transaction ?
I have a program with a call transaction , so i fill the bdc tables and call the tcode.
But i have a problem, some next screen it's not always the same but it changes depends some configuration; i know how to fill the fields (almost all the fields are the same) but the call transaction does not works because the next number of screen changes.
I guess the only way to solve this is investigating in the transaction the conditions wich decides the next screen and make the same conditions in my program to get the next number screen.
But also there is only a field wich appears or does not appears in some screen and if i fill this field in the bdc parameters and the field is not present in the screen , the call transaction fails.
Is there any way to know if some field is present in a screen so i can decide to fill it or do not fill the field ?
While filling the BDCDATA - internal table itself you need to put the condition to handle the dynamic screens / field changes.
So noted down all the possible scenarios of that custom screens & based on that put the conditions while populating the BDCDATA. Record all the screens without any conditions and use them based on conditions while populating the BDCDATA.