Application Development 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: 

Add an icon into the maintenance screen of a table (SM30)

Former Member
0 Kudos

Hi,

I have to manage the maintenance of a table using SM30 transaction. In order to do this, I've created a new transaction (SE93, transaction with parameters) that calls the SM30 and shows directly the table, but I also have to put a new icon in the status of the transaction.

I tried to add it directly into the status (using the menu painter), but then I had problems adding the new code to the function group (where the PAI of the dynpro was) because I didn't have permission to modify the code.

So, how could I do this?, any example on this topic would be very appreciated.

thanks in advance

10 REPLIES 10

RichHeilman
Developer Advocate
Developer Advocate
0 Kudos

Yep, that include is using for ALL table maintanence programs, so if you would add it to that status, it would show up for ALL table maintenance programs. What is this icon for?

Regards,

Rich Heilman

0 Kudos

I only have to show the icon for this table manteinance, rest of them should look the same as before.

thanks

0 Kudos

I can't understand what you're saying.

In my answer I've descripted how you can update the toolbar to insert a new code and manage it in PAI.

You'll see the same toolbar with your button.

Max

0 Kudos

You cannot change the menu of this screen as that is the common menu used by all tables. But what you can try is to define a push button in the screen and change the PAI logic to handle this additional button. Since you defined this screen, you will have control on this screen. But remember that it will be overwritten everytime you regenerate the table maintenance, so if you take this route, you should not change the table maintenance or if you change, you always redo this work.

0 Kudos

Hi

No! You can create an your own menu for SM30.

And it's easy: try this

After generating maintenance view, go to:

Enviroment->Modification->Interface:

- the system'll ask you to copy the standard tool bar;

- after you can update your tool bar inserting new button.

The STATUS EULG is the status should be updated.

After creating new status it has to set the flag "Individual Interface" instead of "Standard Interface".

Now while running SM30 (for only this table) the system'll set your bar instead of standard bar.

Max

0 Kudos

I'm sorry max, your first answer was clear enough, I was trying to answer Rich's question.

Thanks for the help, tomorrow I will try your solution and I hope it works.

thanks again

0 Kudos

Never tried it but thanks Max that is a good one to use. I have always been there in that menu option, but never tried the 'interface' part of it.

0 Kudos

Hi,

I have followed the steps.Now I am able to see my icon in the screen.But the laguage is different not English

Please guide

Thanks

Sujit Sawant

0 Kudos

To add a custom button to specific table maintianence view you can check this blog: [Add Custom Button on Maintianence View (SM30) |http://help-abap.blogspot.com/2008/09/add-custom-button-on-maintianence-view.html]

Regards,

Naimesh Patel

Former Member
0 Kudos

Hi

You can modify all objects beloging to your function group, becouse it's custom object.

When you want to update something of the program generating by Table Maintenance Generator, go to:

- SE11 -> Table Maintenance Generator

- how to update the status gui: Enviroment-> Modification-> User Interface.

- How to manage your new function code: you should update the flow logic of maintenance screen to add a new module to manage the new function codes.

Modification-> Maintenance Screens

I did what you want to do adding a new my user command module before standard module:

MODULE USER_COMMAND. <---- My Module

MODULE LISTE_AFTER_LOOP. <---- Standard Module

MODULE USER_COMMAND.

  • FUNCTION is standard global data, where the OK-CODE is

  • stored.

CLEAR FL_MY_CODE.

CASE FUNCTION.

WHEN <MY FUNCTION CODE 1>.

.................

FL_MY_CODE = 'X'.

WHEN <MY FUNCTION CODE 2>.

.................

FL_MY_CODE = 'X'.

WHEN <MY FUNCTION CODE 3>.

.................

FL_MY_CODE = 'X'.

.............

WHEN <MY FUNCTION CODE N>.

.................

FL_MY_CODE = 'X'.

ENDCASE.

  • If you don't need the program run std module after

  • running your user comand

IF FL_MY_CODE = 'X'.

LEAVE SCREEN.

ENDIF.

ENDMODULE.

I hope it can be usefull for you.

Max