ABAP Blog Posts
cancel
Showing results for 
Search instead for 
Did you mean: 
Surendra_Karma
Participant
223

Introduction:
In SAP, Forms vary from SAPscript to Smartforms, Adobe forms, Form templates and Form fragments. Smartforms are quite useful method since 1998 and companies are keeping it frequently till date. But in some situations, any smartform printing starts raising an exception, not giving expected print, giving dump suddenly and we'll keep debugging to find exact NODE for the dump. Here, I would like to share a smart tip to get to the affected NODE within a couple of minutes.

Smart Tip:
I have been debugging ABAP codes from long back whether its standard or custom code. And finally, I had a spot which can show you exactly which NODE in SMARTFORM is having the issue. And I would like to share this knowledge which can save your time and complete the deliveries on time.

Program: SAPLSTXBC or Function Group: STXBC

Include: LSTXBCFDC

Subroutine/Perform: CALLBACK

Screenshot 2026-02-07 115807.png

Here, you just have to pay attention after which NODE your smartform is not giving print or raising an exception when calling from driver program. And that is the NODE which has an issue.

Best Real-time use case:
In migration projects, a few of the complex smartforms have still not been migrated to Adobe Forms while migrating from ECC to S/4 HANA. I
n such cases, smartforms are either not giving prints or some field mapping has been changed in new system. Or some standard texts do not exist, or some graphics do not exist, not giving expected print, raising an exception or giving dumps. Sometimes, in other scenarios we also have to debug and find the NODE which is causing the issue.

Thanks for reading, Comments are always welcome.
Happy Learning!

3 Comments
Sandra_Rossi
Active Contributor

Thanks. Could you share an example of one short dump, especially the section containing the ABAP Call Stack? (I guess you should obtain the subroutine name %WI1) Also, I guess the transaction SFTRACE would be helpful.

Surendra_Karma
Participant
0 Likes

Thanks, Sandra, for highlighting this. Yes, in the case of dumps, we do get the information from the call stack. However, as far as I recall, in some cases, SFTRACE may not be helpful, as shown below. What is the name of the graphic/text? From where, or which table, is this graphic/text coming? Which variable is storing it? Proper documentation for such details is often not available.

Surendra_Karma_0-1783313485350.png

Sandra_Rossi
Active Contributor
0 Likes

I guess you used SFTRACE with default trace level 5.

Instead, use the trace level 80.

Sandra_Rossi_0-1783335639614.png

You'll get something like that:

-------------------------------------------------------
|00|trace begin level 80                              |
|00|trace version 046C01                              |
|00|time stamp 20161215151746                         |
|00|locale date 15.12.2016                            |
|00|locale time 16:17:46                              |
|00|system information                                |
|00|  sap version 740                                 |
|00|  operating system AIX                            |
|00|  database system ORACLE                          |
|00|  database name ZZ1                               |
|00|  user name SR0D12FN                              |
|15|open                                              |
|15|  device PRINTER                                  |
|15|  output device LOCL                              |
|15|  device type SAPWIN                              |
|15|  archive mode print only                         |
|15|generating output table definition                |
|15|generating output table definition                |
|15|generating output table definition                |
|15|generating output table definition                |
|15|generating output table definition                |
|15|generating output table definition                |
|15|generating output table definition                |
|15|generating output table definition                |
|15|generating output table definition                |
|15|generating output table definition                |
|15|process document                                  |
|15|structure form header                             |
|15|  form name ZSHEETLET_GESTION                     |
|15|  language EN                                     |
|15|  version 00001                                   |
|15|  variant                                         |
|15|  start page FEUILLET                             |
|15|  style SYSTEM                                    |
|15|  dynamic start page not set                      |
|15|structure document description                    |
|15|  page SHEETLET                                   |
|15|  next page SHEETLET                              |
|15|    window LOGO type graphic                      |
|15|    callprog /1BCDWB/SAPLSF00000005               |
|15|    callform %WI1                                 |
|15|    window TITLE_LOWERANCE type text              |
|15|    callprog /1BCDWB/SAPLSF00000005               |
|15|    callform %WI2                                 |
|15|    window LOWERANCE type text                    |
|15|    callprog /1BCDWB/SAPLSF00000005               |
|15|    callform %WI3                                 |
|15|    window TITLE type text                        |
|15|    callprog /1BCDWB/SAPLSF00000005               |
|15|    callform %WI4                                 |
|15|generating form header and document structure     |
|05|! A SSFCOMPOSER 050                               |
|05|  MSGV1: ZCOURIER                                 |
|05|trace output closed due to error                  |
-------------------------------------------------------