Smartforms FAQ Part Two

Smartforms output difference
Problem with Smartforms: in a certain form for two differently configured printers, there seem to be a difference in the output of characters per inch (the distance between characters which gives a layout problem - text in two lines instead of one.

It happens when the two printers having different Printer Controls' if you go to SPAD Menu (Spool Administrator Menu) you can see the difference in the Printer Control and if you make the Printer control setting for both the printers as same. then it will be ok. and also u have to check what is the device type used for both the output devices. 

SmartForms Output to PDF
There is a way to download smartform in PDF format.
Please do the following:
1. Print the smartform to the spool.
2. Note the spool number.
3. Download a PDF file (Acrobat Reader) version of the spool by running Program RSTXPDFT4 and entering the
noted spool number.

How to save smart forms into PDF at runtime? - by Mehboob Ahmed Salman 
Dear ABAP Users,

I hope you are doing great.

Step 1: Execute ABAP Report 

Step 2: At Print Preview Type PDF! then Press Enter 

Step 3: Save PDF Preview at your Local Directory 

Happy Coding!!!

SmartForm Doublesided printing question 
Your customer wants your PO SmartForm to be able to print "Terms and Conditinos" on the back side of each page. They don't want to purchase pre-printed forms with the company's logo on the front and terms & conditions on the back. Now this presents an interesting problem. 
Has anyone else ever had a request like this? If for example there was a 3 page PO to be printed,  they want 3 pieces of paper, the front side of each to containe the PO information (page 1, 2, and 3) and the back side of each piece of paper to containg the static "Terms & Conditions" information. 
Anyone have a clue how to force this out? 

Easy - page FRONT lists page CONTACTS as next page and CONTACTS lists FRONT as next page. Since CONTACTS does not contain a MAIN window, it will print the contacts info and then continue on to FRONT for the rest of the main items. Additionally, set print mode on FRONT to D (duplex) and set CONTACTS to 'blank' (for both resource name and print mode - this is the only way to get to the back of the page). 

Transport Smart Forms
How does one transport SMARTFORM? SE01? 
How do you make sure that both, the SMARTFORM & it's function module gets transported? Or does the FM with same name gets generated automatically in the transported client? 

A smartform is transported no differently than any other object. if it is assigned to a development class that is atteched to a transport layer, it will be transported. 
The definition is transported, and when called, the function module is regenerated. 
This leads to an interetsing situation. On the new machine, it is very likely the function module name will be different than the name on the source system. Make sure, before you call the function module, you resolve the external name to the internal name using the 'SSF_FUNCTION_MODULE_NAME' function module. 
Typically, generate the SF, then use the pattern to being in the interface. Then change the call function to use the name you get back from the above function module. 

Smartforms: protect lines in main window.
How to protect lines in the main window from splitting between pages? 

It was easy with SAPscript, but how to do it with SF's.   For 4.7 version if you are using tables, there are two options for protection against line break: 
- You can protect a line type against page break.
- You can protect several table lines against page break for output in the main area.

Protection against page break for line types 
- Double-click on your table node and choose the Table tab page. 
- Switch to the detail view by choosing the Details pushbutton. 
- Set the Protection against page break checkbox in the table for the relevant line type.  Table lines that use this line type are output on one page. 

Protection against page break for several table lines 
- Expand the main area of your table node in the navigation tree. 
- Insert a file node for the table lines to be protected in the main area. 
- If you have already created table lines in the main area, you can put the lines that you want to protect again page break under the file using Drag&Drop. Otherwise, create the table lines as subnodes of the file. 
- Choose the Output Options tab page of the file node and set the Page Protection option.   All table lines that are in the file with the Page Protection option set are output on one page. 

In 4.6, Alternatively in a paragraph format use the Page protection attribute to determine whether or not to display a paragraph completely on one page. Mark it if you want to avoid that a paragraph is split up by a page break. If on the current page (only in the main window) there is not enough space left for the paragraph, the entire paragraph appears on the next page. 

See Also
Questions for Bar Code Printing in SAP

Get help for your ABAP problems
Do you have a ABAP Question?

SAP Books
SAP Certification, Interview Questions, Functional, Basis Administration and ABAP Programming Reference Books

Smartforms Tips
SAP Smartforms Tips and Tricks

ABAP Programming Tips
ABAP Forum for Discussion and Samples Program Codes for Abapers

Main Index
SAP ERP Modules, Basis, ABAP and Other IMG Stuff

All the site contents are Copyright © and the content authors. All rights reserved.
All product names are trademarks of their respective companies.  The site is in no way affiliated with SAP AG.
Every effort is made to ensure the content integrity.  Information used on this site is at your own risk.
 The content on this site may not be reproduced or redistributed without the express written permission of or the content authors.