0% found this document useful (0 votes)
39 views10 pages

Smartform Output To PDF

The document outlines the steps to convert Smartform output into PDF format, which is a widely accepted format for customer requirements. It details the necessary parameters, function calls, and error handling involved in the conversion process. The steps include creating a local file parameter, selecting the file, retrieving OTF data, converting it to PDF, and downloading the PDF file.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views10 pages

Smartform Output To PDF

The document outlines the steps to convert Smartform output into PDF format, which is a widely accepted format for customer requirements. It details the necessary parameters, function calls, and error handling involved in the conversion process. The steps include creating a local file parameter, selecting the file, retrieving OTF data, converting it to PDF, and downloading the PDF file.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

9️⃣

Converting Smartform Output into


PDF Format
1. Introduction
Nowadays PDF are most widely accepted format.

So, Customers always wants smartforms output into PDF format.

So, to convert our smartform output into PDF format, we will follow the below steps.

2. Steps to Convert Smartform into PDF Format


?
Step 1 :- Create a parameter for local file.

PARAMETERS : P_FILE TYPE LOCALFILE.


PARAMETERS : P_EMP_ID TYPE ZAR_EMP_ID.

Step 2 :- Call the F4_FILENAME function module to select the file in which you want to
download the PDF.

Converting Smartform Output into PDF Format 1


Mob No :- +916261538504
AT SELECTION-SCREEN On VALUE-REQUEST FOR P_FILE.
CALL FUNCTION 'F4_FILENAME'
EXPORTING
PROGRAM_NAME = SYST-CPROG
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME =''
IMPORTING
FILE_NAME = P_FILE
.

Step 3 :- Call the function module of the smartform in Start-Of-Selection and get the OTF
data of the smartform.

START-OF-SELECTION.

DATA : LS_CONTROL TYPE SSFCTRLOP.


LS_CONTROL-GETOTF = 'X'.
LS_CONTROL-NO_DIALOG = 'X'.

DATA : LS_OUTPUT TYPE SSFCOMPOP.


LS_OUTPUT-TDDEST = 'LP01'.

DATA : LS_OUTPUT_INFO TYPE SSFCRESCL.


CALL FUNCTION '/1BCDWB/SF00000129'
EXPORTING
* ARCHIVE_INDEX =
* ARCHIVE_INDEX_TAB =
* ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS = LS_CONTROL
* MAIL_APPL_OBJ =
* MAIL_RECIPIENT =
* MAIL_SENDER =
OUTPUT_OPTIONS = LS_OUTPUT
USER_SETTINGS =''
P_EMP_ID = P_EMP_ID

Converting Smartform Output into PDF Format 2


Mob No :- +916261538504
IMPORTING
* DOCUMENT_OUTPUT_INFO =
JOB_OUTPUT_INFO = LS_OUTPUT_INFO
* JOB_OUTPUT_OPTIONS =
EXCEPTIONS
FORMATTING_ERROR =1
INTERNAL_ERROR =2
SEND_ERROR =3
USER_CANCELED =4
OTHERS =5
.

Step 4 :- Call CONVERT_OTF_2_PDF function to get the pdf data.

DATA : LT_LINES TYPE TABLE OF TLINE.


DATA : LT_DOCS TYPE TABLE OF DOCS.
CALL FUNCTION 'CONVERT_OTF_2_PDF'
* EXPORTING
* USE_OTF_MC_CMD = 'X'
* ARCHIVE_INDEX =
* IMPORTING
* BIN_FILESIZE =
TABLES
OTF = LS_OUTPUT_INFO-OTFDATA
DOCTAB_ARCHIVE = LT_DOCS
LINES = LT_LINES
EXCEPTIONS
ERR_CONV_NOT_POSSIBLE =1
ERR_OTF_MC_NOENDMARKER =2
OTHERS =3
.

Step 5 :- We can use the GUI_DOWNLOAD function module to download the PDF.

Converting Smartform Output into PDF Format 3


Mob No :- +916261538504
DATA : LO_FILE TYPE STRING.
LO_FILE = P_FILE.

CALL FUNCTION 'GUI_DOWNLOAD'


EXPORTING
* BIN_FILESIZE =
FILENAME = LO_FILE
FILETYPE = 'BIN'
* APPEND =''
* WRITE_FIELD_SEPARATOR =''
* HEADER = '00'
* TRUNC_TRAILING_BLANKS =''
* WRITE_LF = 'X'
* COL_SELECT =''
* COL_SELECT_MASK =''
* DAT_MODE =''
* CONFIRM_OVERWRITE =''
* NO_AUTH_CHECK =''
* CODEPAGE =''
* IGNORE_CERR = ABAP_TRUE
* REPLACEMENT = '#'
* WRITE_BOM =''
* TRUNC_TRAILING_BLANKS_EOL = 'X'
* WK1_N_FORMAT =''
* WK1_N_SIZE =''
* WK1_T_FORMAT =''
* WK1_T_SIZE =''
* WRITE_LF_AFTER_LAST_LINE = ABAP_TRUE
* SHOW_TRANSFER_STATUS = ABAP_TRUE
* VIRUS_SCAN_PROFILE = '/SCET/GUI_DOWNLOAD'
* IMPORTING
* FILELENGTH =
TABLES
DATA_TAB = LT_LINES
* FIELDNAMES =

Converting Smartform Output into PDF Format 4


Mob No :- +916261538504
EXCEPTIONS
FILE_WRITE_ERROR =1
NO_BATCH =2
GUI_REFUSE_FILETRANSFER =3
INVALID_TYPE =4
NO_AUTHORITY =5
UNKNOWN_ERROR =6
HEADER_NOT_ALLOWED =7
SEPARATOR_NOT_ALLOWED =8
FILESIZE_NOT_ALLOWED =9
HEADER_TOO_LONG = 10
DP_ERROR_CREATE = 11
DP_ERROR_SEND = 12
DP_ERROR_WRITE = 13
UNKNOWN_DP_ERROR = 14
ACCESS_DENIED = 15
DP_OUT_OF_MEMORY = 16
DISK_FULL = 17
DP_TIMEOUT = 18
FILE_NOT_FOUND = 19
DATAPROVIDER_EXCEPTION = 20
CONTROL_FLUSH_ERROR = 21
OTHERS = 22
.

Code
PARAMETERS : P_FILE TYPE LOCALFILE.
PARAMETERS : P_EMP_ID TYPE ZAR_EMP_ID.

AT SELECTION-SCREEN On VALUE-REQUEST FOR P_FILE.


CALL FUNCTION 'F4_FILENAME'
EXPORTING
PROGRAM_NAME = SYST-CPROG

Converting Smartform Output into PDF Format 5


Mob No :- +916261538504
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME =''
IMPORTING
FILE_NAME = P_FILE
.

START-OF-SELECTION.

DATA : LS_CONTROL TYPE SSFCTRLOP.


LS_CONTROL-GETOTF = 'X'.
LS_CONTROL-NO_DIALOG = 'X'.

DATA : LS_OUTPUT TYPE SSFCOMPOP.


LS_OUTPUT-TDDEST = 'LP01'.

DATA : LS_OUTPUT_INFO TYPE SSFCRESCL.


CALL FUNCTION '/1BCDWB/SF00000129'
EXPORTING
* ARCHIVE_INDEX =
* ARCHIVE_INDEX_TAB =
* ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS = LS_CONTROL
* MAIL_APPL_OBJ =
* MAIL_RECIPIENT =
* MAIL_SENDER =
OUTPUT_OPTIONS = LS_OUTPUT
USER_SETTINGS =''
P_EMP_ID = P_EMP_ID
IMPORTING
* DOCUMENT_OUTPUT_INFO =
JOB_OUTPUT_INFO = LS_OUTPUT_INFO
* JOB_OUTPUT_OPTIONS =
EXCEPTIONS
FORMATTING_ERROR =1
INTERNAL_ERROR =2
SEND_ERROR =3

Converting Smartform Output into PDF Format 6


Mob No :- +916261538504
USER_CANCELED =4
OTHERS =5
.

DATA : LT_LINES TYPE TABLE OF TLINE.


DATA : LT_DOCS TYPE TABLE OF DOCS.
CALL FUNCTION 'CONVERT_OTF_2_PDF'
* EXPORTING
* USE_OTF_MC_CMD = 'X'
* ARCHIVE_INDEX =
* IMPORTING
* BIN_FILESIZE =
TABLES
OTF = LS_OUTPUT_INFO-OTFDATA
DOCTAB_ARCHIVE = LT_DOCS
LINES = LT_LINES
EXCEPTIONS
ERR_CONV_NOT_POSSIBLE =1
ERR_OTF_MC_NOENDMARKER =2
OTHERS =3
.

DATA : LO_FILE TYPE STRING.


LO_FILE = P_FILE.

CALL FUNCTION 'GUI_DOWNLOAD'


EXPORTING
* BIN_FILESIZE =
FILENAME = LO_FILE
FILETYPE = 'BIN'
* APPEND =''
* WRITE_FIELD_SEPARATOR =''
* HEADER = '00'
* TRUNC_TRAILING_BLANKS =''
* WRITE_LF = 'X'

Converting Smartform Output into PDF Format 7


Mob No :- +916261538504
* COL_SELECT =''
* COL_SELECT_MASK =''
* DAT_MODE =''
* CONFIRM_OVERWRITE =''
* NO_AUTH_CHECK =''
* CODEPAGE =''
* IGNORE_CERR = ABAP_TRUE
* REPLACEMENT = '#'
* WRITE_BOM =''
* TRUNC_TRAILING_BLANKS_EOL = 'X'
* WK1_N_FORMAT =''
* WK1_N_SIZE =''
* WK1_T_FORMAT =''
* WK1_T_SIZE =''
* WRITE_LF_AFTER_LAST_LINE = ABAP_TRUE
* SHOW_TRANSFER_STATUS = ABAP_TRUE
* VIRUS_SCAN_PROFILE = '/SCET/GUI_DOWNLOAD'
* IMPORTING
* FILELENGTH =
TABLES
DATA_TAB = LT_LINES
* FIELDNAMES =
EXCEPTIONS
FILE_WRITE_ERROR =1
NO_BATCH =2
GUI_REFUSE_FILETRANSFER =3
INVALID_TYPE =4
NO_AUTHORITY =5
UNKNOWN_ERROR =6
HEADER_NOT_ALLOWED =7
SEPARATOR_NOT_ALLOWED =8
FILESIZE_NOT_ALLOWED =9
HEADER_TOO_LONG = 10
DP_ERROR_CREATE = 11
DP_ERROR_SEND = 12
DP_ERROR_WRITE = 13

Converting Smartform Output into PDF Format 8


Mob No :- +916261538504
UNKNOWN_DP_ERROR = 14
ACCESS_DENIED = 15
DP_OUT_OF_MEMORY = 16
DISK_FULL = 17
DP_TIMEOUT = 18
FILE_NOT_FOUND = 19
DATAPROVIDER_EXCEPTION = 20
CONTROL_FLUSH_ERROR = 21
OTHERS = 22
.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.

Output

Converting Smartform Output into PDF Format 9


Mob No :- +916261538504
Converting Smartform Output into PDF Format 10
Mob No :- +916261538504

You might also like