SQL Server, T-SQL, ASP.NET, Javascript, SAP, ABAP Programming

Kodyaz Development Resources

Development resources, articles, tutorials, samples, codes and tools for .Net, SQL Server, Vista, etc.
Welcome to Kodyaz Development Resources Sign in | Join | Help






Request Single Spool Record for SmartForms Call within an ABAP Loop using output_options tdnewid


While SmartForms calls, ABAP developers can set single spool request or a spool request for each SAP Smartform call using the output-options tdnewid.

Distinct Spool Reqests for each SmartForms Call

The following ABAP code calls the same SAP Smartforms report within a loop.
You can call SAP Smartform with different parameters each time according to your Smart Form requirements.
Within the ABAP loop we call Smartform report using CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME' and CALL FUNCTION fm_name methods.
Note that the Smartform control_parameters and output_options are determined prior ABAP loop and Smartforms call methods as follows:
gs_control_parameters-no_dialog = 'X'.
Setting no_dialog field Smarforms control_parameters to 'X' means that no dialog screen will be displayed to the user.
gs_output_options-tdnewid = 'X'.
Setting tdnewid option of SAP Smartforms output_options to 'X' means that the print will request for a new print spool id.
So calling SAP Smartform report each time with the above settings and output options will create a new spool entry for each Smartform call.

REPORT Z_CALL_SMARTFORM.

DATA :
  fm_name TYPE rs38l_fnam,
  it_vbak TYPE TABLE OF vbak.

SELECT * FROM vbak into TABLE it_vbak
  WHERE vbeln GE '0100000004'
  AND vbeln LE '0100000010'.

DATA :
  gs_control_parameters TYPE SSFCTRLOP,
  gs_output_options TYPE SSFCOMPOP.

gs_control_parameters-no_dialog = 'X'.
gs_output_options-tdnewid = 'X'.

CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
  EXPORTING
    formname = 'ZSMARTFORMS_SALES_DOCUMENTS3'
  IMPORTING
    FM_NAME = fm_name
  EXCEPTIONS
    NO_FORM = 1
    NO_FUNCTION_MODULE = 2
    OTHERS = 3.

DATA : i TYPE i VALUE 5.

WHILE i > 0.

CALL FUNCTION fm_name
  EXPORTING
    control_parameters = gs_control_parameters
    output_options = gs_output_options
  TABLES
    it_vbak = it_vbak
  EXCEPTIONS
    FORMATTING_ERROR = 1
    INTERNAL_ERROR = 2
    SEND_ERROR = 3
    USER_CANCELED = 4
    OTHERS = 5.

i = i - 1.
ENDWHILE.

As you can see in the below screenshot of the SAP SP01 screen, there are 5 spool reuests displayed for 5 SAP Smartform calls from sample ABAP code.

create distinct spool for each output and each smartform call





Unique Spool Reqests for all SmartForms Call with in a Loop

Generally, the case is just the opposite. I mean ABAP developers do not request for a huge number of spool requests.
Working with a lot of spool requests makes tasks more difficult. So it is easier to work with a single spool request for a SAP Smartform output task.

The solution is setting the approtiate values for the control_parameters no_dialog parameter and for output_options tdnewid option.
Actually setting the output_options 's tdnewid property to 'X' value for the first print spool request and then setting the output_options 's tdnewid to ' ' or space for the following print / spool requests will solve the problem.
In such a case there will be only one spool request created for the all print requests created within the ABAP loop by calling the SAP Smartform.
Here below, you can find the ABAP code example for single spool request creation.

REPORT Z_CALL_SMARTFORM.

DATA :
  fm_name TYPE rs38l_fnam,
  it_vbak TYPE TABLE OF vbak.

SELECT * FROM vbak into TABLE it_vbak
  WHERE vbeln GE '0100000004'
  AND vbeln LE '0100000010'.

DATA :
  gs_control_params TYPE SSFCTRLOP,
  gs_output_options TYPE SSFCOMPOP.

gs_control_params-no_dialog = 'X'.

CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
  EXPORTING
    formname = 'ZSMARTFORMS_SALES_DOCUMENTS3'
  IMPORTING
    FM_NAME = fm_name
  EXCEPTIONS
    NO_FORM = 1
    NO_FUNCTION_MODULE = 2
    OTHERS = 3.

DATA : i TYPE i VALUE 5.

WHILE i > 0.
IF i = 5.
  gs_output_options-tdnewid = 'X'.
ELSE.
  gs_output_options-tdnewid = space.
ENDIF.

CALL FUNCTION fm_name
  EXPORTING
    control_parameters = gs_control_params
    output_options = gs_output_options
  TABLES
    it_vbak = it_vbak
  EXCEPTIONS
    FORMATTING_ERROR = 1
    INTERNAL_ERROR = 2
    SEND_ERROR = 3
    USER_CANCELED = 4
    OTHERS = 5.

i = i - 1.
ENDWHILE.

create single spool request for all SAP Smartforms calls in a loop

If you do not set the control_parameters no_dialog to 'X', then the SAP print dialog screen will be displayed for each SAP Smartforms call request.
Note that on the first print SAP dialog screen, "New spool request" checkbox is checked causing a new print spool request to open.
On the other hand on the following print dialog screens, the "New spool request" checkbox is cleared. So all these print requests will be in the same spool request as desired.
Please note that you will not want to click on the print buttons for more than you can stand, if your loop has a large number of iterations.

first spool request with output_options tdnewid x

following spool requests with output_options tdnewid cleared





SAP Resources

SAP Tutorial

SAP Forums

SAP Tools

SAP Transaction Codes Table














Related SAP Tutorial and ABAP Tutorials

SAP Notes - How to Read OSS Note
Find Accounting Document Number From Invoice Number in Smartforms
SAP Currency Table for Currency Text in ABAP Development
ABAP Transport Error : Object CUAD ReportName is Inactive
Enable SAP Users Create Own Layout Variants using set_table_for_first_display
ABAP bapi_salesorder_change to Delete Sales Order in SAP
How to Copy SAP Variants of ABAP Reports Using RS_COPY_SELECTION_SETS Function Module
Display SAP Logical Database using SE36 or ABAP Report at Attributes Screen
SAP T682 Conditions: Access Sequences Table
Sales Tables among ABAP Tables (SAP Sales and Distribution SD Tables)
ABAP Function Module rv_invoice_document_read to Read SAP Invoice Data Details
Read SAP Customer Data from KNA1 using kna1_single_reader ABAP Function Module
How to Upload Data to SAP from Excel File using alsm_excel_to_internal_table Function Module
ALV Grid Color - Table Row Background Color in ALV List
Display SAP Documentation using bmenu_show_documentation ABAP Function Module
Multi Color ALV Grid Color Alternate using ALV Layout info_fname Property
How to Debug SmartForms - Debugging SAP SmartForm in ABAP ?
How to Display SAP Transaction in a New Session Or in New Window using ABAP4_Call_Transaction Function Module
How to Open SAP Transaction in New Window Or in New Session using ABAP cc_call_transaction_new_task Function Module
ABAP Tutorial - How to Set Default Date Range in SAP Selection Screen for Date Parameter
ABAP Tutorial - Upload SAP Data to Excel using xxl_simple_api Function Module
How to Download, Upload and Share SAP Favorites Menu
How Find SAP SmartForms Function Module Name
How to Open PopUp_To_Confirm Screen When Delete Function Key is Pressed for Confirmation
SAP Email Send using ABAP efg_gen_send_email Function Call
SAP SmartForms Download as SmartForm PDF Format using WS_DOWNLOAD and cl_gui_frontend_services
SAP Symbols List - Display List of Symbols using ABAP Symbols Report
Display SAP Icons using ABAP Code - SAP Icon List
How to Configure Default ABAP Editor to ABAP WorkBench Front End Editor New
ABAP - Create Hierarchy Tree List using rs_tree_construct, rs_tree_list_display and snodetext
SAP Tutorial for ABAP Developers - Create Number Range Object using SAP Transaction Code SNRO
Create CL_GUI_ALV_GRID ALV Grid Column Header using ABAP Data Element
How to Create SAP Transaction Code using SAP SE93 Transaction
SAP Tutorial - Create Transaction Code for ABAP Module Pools
How to Upload Bitmap Image to SAP using SAP Transaction SE78
SAP Custom Splitter Container cl_gui_splitter_container ABAP Example Code
Message no. 00264 : Status STATUS of the user interface ZREPORT missing
Request Single Spool Record for SmartForms Call within an ABAP Loop using output_options tdnewid
ABAP Tutorial - SAP Split and ABAP Split String Function
Upload Data from Excel File in ABAP using TEXT_CONVERT_XLS_TO_SAP
Display SAP Product Hierarchy using Table T179T VTEXT Field on cl_gui_alv_tree ABAP ALV Tree Object
SAP Product Hierarchy - Example ABAP Program using rv_produkthierarchie_text_get Function
SAP Sales Division SPART Text Description for Different Languages in TSPAT Table
SAP Sales Distribution Channel VTWEG Text Description for Different Languages in TVTWT Table
SAP Sales Organization VKORG Text Description for Different Languages in TVKOT Table
SAP Tutorial - Convert Spool Request to PDF File using RSTXPDFT4 ABAP Report
ABAP Tutorial - How to Generate Random Number for a Given Range of Numbers using RANDOM_I2 Function Module
ABAP Tutorial - How to Generate Random Number for a Given Range of Numbers using QF05_RANDOM_INTEGER
SAP ABAP Tutorial - ALV Grid Example with cl_gui_alv_grid and Screen Painter
How to Create Favorites and Add SAP Transaction Code in SAP Favorites Menu Folder
How to Display Keys in All Dropdown Lists on SAP Screens
SAP EXAM - ABAP EXAM : Free Online Certification SAP Questions and Answers to Tests
How to Delete All Breakpoints within ABAP Code using SAP ABAP Editor (SE80)
SAP Tutorial - How to Translate Text Module in Smartforms (Translation for Smartforms)
SAP Transaction - Create Transaction Code for ABAP Program or Selection Screen
SAP Smartforms Tutorial - Create Smartforms Example
SAP Smartforms - How to Call Smartform within ABAP Program
Smartforms Program Lines Error - Field "TITLE" is unknown. It is neither in one of the specified tables nor defined by a "DATA" statement.
Smartforms System Field &SFSY-JOBPAGES& - Total Number of Pages on a SmartForm document
What is OSS - Online SAP Support Notes ?
Sales Tables among SAP ABAP Tables (Sales and Distribution SD Tables)
ABAP ACE_SOP_CLIENT_READ Function Call to Read System Clients Table t000
Free MaxDB Training on MaxDB Database and Administration from SAP
SAP Download MaxDB Database Software
SAP - ABAP Checkbox in Selection Screen Example
SAP - ABAP Radio Button Selection Screen Example
SAP - ABAP ALV Grid Sample Code using REUSE_ALV_GRID_DISPLAY
ABAP Code to Display SAP Table Contents
How to Remove Preceeding Zeros in ABAP Development
Valid ABAP TRTYP SAP Transaction Type List
How to Find the SAP Transaction Code of the Current Screen Displayed ?
How to Find the Menu Path of a SAP Tansaction Code using SEARCH_SAP_MENU
SAP Smart Forms Tutorial and Smart Forms Resources
SAP Training Cource BC470 Form Printing with SAP Smart Forms
SAP MiniWAS Web Application Server 6.20 and SAP DB Installation for Windows and Troubleshooting
Download SAP GUI for Windows 7.10 and 6.20 from SMP
Introduction to SAP ABAP Programming
Complete List of SAP Modules
SAP Module Abbreviations
Complete List of SAP Sales and Distribution Module (SD) Sub-Modules
List of SAP Standard Material Types
Message Types in Method Return Parameters for SAP Modules
Built-in ABAP Type List or Predefined ABAP Types for SAP Systems






Copyright © 2004 - 2010 Eralper Yilmaz. All rights reserved.
Powered by Community Server, by Telligent Systems