'One Field to Control Them All!"

Hi Folks,

I am creating a MAP (input using map…) with a vertical column of an array (see attachment, screenshot 4.). On the left you see the selection array for the user. What I want is for the user to place one X in any one of the boxes, and all the other boxes to turn gray, unmodifiable, so that only one box can be selected at a time.

Screenshot 1 of the attachment shows the array on the map. Screenshot 2 of the attachment shows the field #SELECT-ARR, the control variable #SEL-AD (defined as #SEL-AD (C/1:10) in define area) and the DIM as 1.

Screenshot 3 shows the layout of the array on the map (10 vertical occurrences.)

Can this be done using a map?

I am fairly new to Natural so can anyone give me some code examples or the statements I would need to use to get all the fields to turn gray except for the one with the X?


This is not possible simply because a map does not send events,
you only get control when the user presses or a function key.

As Wolfgang pointed out, this is impossible using an INPUT statement.

If you truly have a need for such a user interface, you might want to take a look at Natural Dialogs. Here, what you want to do is quite simple.

HOWEVER, if the system you are working on must also run on a mainframe, where dialogs do not exist, there will be no way to convert the dialogs into maps with the capability you are looking for.

Ya I figured something like that.

Thanks a bunch for the replies!