[Stackoverflow] [Progress OpenEdge ABL] Change component by variable

Status
Not open for further replies.
R

Raphael Frei

Guest
At my company, I have a few programs that I designed to display some informations by using some FILL-INs.

They asked to do this instead of a Freeform Query, because they need to see the program from far away - And we already tried the Query (This would be the best solution, I know).

I'm trying to make some optimizations into my code. So my question is: Is it possible to change elements of FILL IN (or other components) by using something like this?

Code:
DEFINE INPUT PARAMETER cComponent AS CHARACTER NO-UNDO.
DEFINE INPUT PARAMETER cMessage   AS CHARACTER NO-UNDO.

VALUE(cComponent):SCREEN-VALUE IN FRAME {&FRAME-NAME} = cMessage.

Because my current flow is something like this:
(And if you have something like 40 FILL-INs, this becomes a great mess to work with)

Code:
DEFINE INPUT PARAMETER iID      AS INTEGER   NO-UNDO.
DEFINE INPUT PARAMETER cMessage AS CHARACTER NO-UNDO.

CASE iID:

    WHEN 1 THEN DO:
        ASSIGN fll-info1:SCREEN-VALUE = cMessage.
        ...
    END.

    ...

    WHEN n THEN DO:
        ASSIGN fll-infon:SCREEN-VALUE = cMessage.
        ...
    END.

END CASE.

I'm currently using version 11.7 - But we'll start upgrading to 12.2 later this year.

Thanks for the help!

Continue reading...
 
Status
Not open for further replies.
Top