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: 

Where used list for smart form

former_member193737
Participant
0 Kudos
3,437

Hi friends

   how to find the where used list for a smart form in a system

1 ACCEPTED SOLUTION

Former Member
0 Kudos
871

Use Tcode CODE_SCANNER

Or

Program RPR_ABAP_SOURCE_SCAN , it may help you out.

6 REPLIES 6

former_member289261
Active Contributor
0 Kudos
871

Hi,

I dont think you can find a where used list for smartforms.

To find it you will have to write a program to scan source codes of all the programs in the repository for string literal of your smartform name.

For standard TCODES like VA01,02,03, VF01,02,03, ME23N etc you can check the smartforms assignment in TCODE NACE.

For Z programs :

Suppose smartform name is "ZSF_ABCD".

So , you need to scan source code of all programs existing in the system containing the string "ZSF_ABCD".

And if the form name is getting determined dynamically based upon some settings in a table then you can use where used list for the table .

But i think you can find such program already made on SCN. Please search a bit for it.

Regards,

Ashish

Former Member
0 Kudos
872

Use Tcode CODE_SCANNER

Or

Program RPR_ABAP_SOURCE_SCAN , it may help you out.

0 Kudos
871

thanks sijin

  I dono it will work or not but useful info.

Former Member
0 Kudos
871

Hi,

you could try to see information into table TNAPR.

Into field PGNAM there is program name; into field SFORM there is SmartForms name.

Regards

Ivan

Jelena
Active Contributor
871

What Ivan said plus sometimes forms are assigned directly in the condition records (which is not a good practice, by the way, for this exact reason - difficult to find and maintain), so you might also want to check NAST table.

By the way, this is all assuming that Smartform is used only in the condition driven output (NACE transaction). The form might as well be used in PP/QM output or FI correspondence (usually these use SAPScript but it's feasible to use Smartforms as well), so none of these suggestions would work in such case.

Code scaner won't find a Smartform unless the call is hardcoded in some program.

There is really no one method, you'd need to know what Smartform is for to narrow the search intelligently.

Message was edited by: Jelena Perfiljeva

Private_Member_7726
Active Contributor
0 Kudos
871

Hi,

Solution Manager Usage Procedure Logging mentions detecting Smartform use. Obviously this relies on the actual call statistics of generated SF Function module in the monitored system, with all the attendant consequences. And nobody will set up SolMan just so I could find "my" Smartform usage...

Since SAP has not provided means to find the uses directly (and by now realistically has no way of providing them), once you have found the use via code scanner or by whatever other means necessary, it's never too late to start trying to "build" own where-used list (however inadequate) - at least for the use of your own custom forms.

For example, define an OO Interface and start adding smartform names as constants in there... Next, make some kind of use of this constant in the custom code "driving" the form. If the standard functionality derives name of smartform via some sort of customizing, make implicit enhancement and put the use of constant in standard code... Of course, the closer the use of constant to the actual call of function module SSF_FUNCTION_MODULE_NAME the better, but even adding a data definition referring the constant in standard code is better than no info on use at all. Btw, where used list for that FM helps narrowing the list of objects to be scanned; do include the generated objects in the objects to be searched as well.

Granted, keeping this stuff up do date will require commitment and discipline from everyone doing smartforms in the system, but it still beats all the Excel lists or having no info at all, and those low additional housekeeping efforts will save time in long term.

cheers

Jānis