Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Dialog transaction using SAP GUI Controls

Former Member
0 Likes
1,031

I have request is to create a dialog transaction using SAP GUI Controls. The internal table is passed to the GUI Control which is on the next screen. The user should be able to changerows, adding rows, delete rows & display the values in the gui control, and changes get updated in database table, can any one let me know which classes / methods are used to accomplish this task.

Thanks for your help.

Nag

I have request is to create a dialog transaction using SAP GUI Controls. The internal table is passed to the GUI Control which is on the next screen. The user should be able to changerows, adding rows, delete rows & display the values in the gui control, and changes get updated in database table, can any one let me know which classes / methods are used to accomplish this task.

Thanks for your help.

Nag

9 REPLIES 9
Read only

gopi_narendra
Active Contributor
0 Likes
984

Check these programs

demo_dynpro_tabcont_loop

demo_dynpro_tabcont_loop_at

for basic idea on how to display the data from the internal table.

For deleting the rows check this program

RSDEMO_TABLE_CONTROL

basically what u need to do is to place table contorl on ur custom screen.where in u can display all the data. for changing , deleting, adding, etc... u need to handle them in the user_command of that screen flow logic.

Regards

Gopi

Read only

0 Likes
984

Thank u gopi for your response.

Without using the Table Control, can the display of all the data. for changing , deleting, adding, etc... can be accomplished on the ALV Grid ?

Read only

RichHeilman
Developer Advocate
Developer Advocate
0 Likes
984

You may want to look at the programs which start with BCALV_EDIT*

REgards,

Rich Heilman

Read only

0 Likes
984

Dear Rich Heilman,

Appreciate your response, these programs should help me.

Thanks and best regards,

Nag

Read only

0 Likes
984

i have a question, i was checking the program BCALV_EDIT_01, this program has capabilities of editing like change/display, adding rows , changing rows, deleting etc....., once user makes any changes to the rows and press 'BACK' button, in which class/method these changes are stored, so that i can compare the original values with the changed values.

Thanks for your help.

best regards,

Nagabushan

Read only

Former Member
0 Likes
984

HI,

Its easy to use a table control for your requirement.

Please check the examples of table control.

Regards

Subramanian

Read only

Former Member
0 Likes
984

have a question, i was checking the program BCALV_EDIT_01, this program has capabilities of editing like change/display, adding rows , changing rows, deleting etc....., once user makes any changes to the rows and press 'BACK' button, in which class/method these changes are stored, so that i can compare the original values with the changed values.

Thanks for your help.

best regards,

Nag

Read only

0 Likes
984

there is no method or class as such to store the changes.

what happens is the internal table will be updated and the ALV grid is being displayed with the changed data. which means only the values in teh internal table are updated.

Regards

Gopi

Read only

uwe_schieferstein
Active Contributor
0 Likes
984

Hello Nag

When the user makes changes of an editable ALV list (e.g. modifying cell values, adding/deleting rows) this happens at the <b>frontend (= grid control).</b> The <b>backend (= your ABAP report)</b> does not take notice of the changes. In order to "transport" the changes from the frontend to the backend (i.e. the itab used for the ALV list) you have to call method go_grid-><b>CHECK_CHANGED_DATA</b>. If the ALV list has been changed this method will raise event <b>DATA_CHANGED</b>. You can handle this event using an event handler method.

After this method call the itab in your ABAP report will reflect the changed data displayed on the ALV list.

If you want to know what the user has changed have a look at the attributes of the "data change object" <b>ER_DATA_CHANGED</b> (class CL_ALV_CHANGED_DATA_PROTOCOL) in the interface of event DATA_CHANGED, e.g.:

- MT_MOD_CELLS (table of modified cells)

- MT_MOD_ROWS (table of modified rows)

- MT_DELETED_ROWS

- MT_INSERTED_ROWS

Regards

Uwe