Smartform Pages issue
Hi All,
I have a strange issue on Smartform Pages,I have 4 pages in the smartform and i need all pages should be printed one after another,
for that i have selected in GENERAL ATTRIBUTES next page as subsequent page,
Eg:
FIRST PAGE --> SECOND PAGE->THIRD PAGE->FOURTH PAGE and so on .
but when i execute layout is displaying only 2pages,if i change the sequence also 2 pages,
just to check i put command in the main window and in that i gave the page names even though always two pages.
did i miss something?or this is an issue with some other issue like GUI etc....
Please let me know your suggestions to resolve this.
Thanks
Surendra
Hi Vara,
By default there will be a value set by the administrator for the number of pages you can view in the spool. So to me it looks like this value is set to 33 in yoru case. You can go to setting from the same screen and change thsi setting to display all pages. But beware that this may take a long time some times and also give you a dump at times.
-Guru
Similar Messages
-
Hi All,
I have created a smartform and when i try to print it prints in Landscape format, but the form Output has 'Portrait' format and uses DINA4 page format. I have verified my default printer settings and has a page format as 'Letter' , I have changed it to A4 size but still same issue.
Let me know if you have any solution or any tips, highly appreciated...
Thanks
SudheerHi All,
Thanks for the response.
I have correct format 'Potrait' in Smartform Page Output Options and i have verified SPAD parameters also.Interstingly it has 2 DINA4 page formats with following values..
Potrait :
Width - 210 mm
Height - 297 mm
Landscape :
Width - 297 mm
Height - 210 mm
When i looked at Smartform Form Painter Graphical view it has Potrait format(210X297)(WXH).
And i have tried to reprint today morning again and has same problem.
So issue is still unresolved....
Thanks
Sudheer -
Smartform : How do i append o/p of a report(ZA3C) as Smartform Pages
Dear all
I have three smartform pages with a Driver prog .
Now i want 2 append the o/p of mere a report(not SapScript) as smartform pages .
I m trying 2 achieve that by the following BOLD part of my code .
Throw some light on this
Thnx in Advance
Moni
Have look at my code plz
*Printing of Export Invoice, Packing List,Enclosure to Packing List & Case Marking in one SMART FORMS layout *
REPORT ZSD_REP_MULTI_PRINT.
TABLES :
VBAK,
VBAP,
VBFA,
LIKP,
LIPS,
KONV,
t005t,
KNA1,
t001w,
T001,
ADRC.
DATA: FM_NAME1 TYPE RS38L_FNAM,
FM_NAME2 TYPE RS38L_FNAM,
FM_NAME3 TYPE RS38L_FNAM,
FM_NAME4 TYPE RS38L_FNAM,
P_E_DEVTYPE TYPE RSPOPTYPE,
P_JOB_OUTPUT_INFO TYPE SSFCRESCL OCCURS 2000 WITH HEADER LINE,
T_OTF LIKE ITCOO OCCURS 0 WITH HEADER LINE,
T_OTF2 TYPE SSFCRESCL OCCURS 2000 WITH HEADER LINE,
P_OUTPUT_OPTIONS TYPE SSFCOMPOP OCCURS 0 WITH HEADER LINE,
P_CONTROL_PARAMETERS TYPE SSFCTRLOP OCCURS 0 WITH HEADER LINE ,
P_DOC LIKE DOCS OCCURS 2000 WITH HEADER LINE,
P_LINES LIKE TLINE OCCURS 200,
P_BIN_FILESIZE TYPE I,
P_LANGUAGE TYPE SFLANGU,
P_BIN_FILE TYPE XSTRING,
OK_CODE LIKE SY-UCOMM.
DATA: T_ITEM TYPE ZSD_TABL_LITEM,
WA_ITEM TYPE ZSD_STRUCT_LITEM,
T_ADRS LIKE ZSD_STRUCT_ADRS OCCURS 0 WITH HEADER LINE,
MSLINES LIKE TLINE OCCURS 1 WITH HEADER LINE,
TIDNO LIKE STXL-TDID,
TNAME LIKE STXL-TDNAME,
TOBJT LIKE STXL-TDOBJECT,
SSORD LIKE VBAK-VBELN,
TOT LIKE VBAK-NETWR,
WORD LIKE SPELL,
ITNO LIKE VBAP-POSNR.
SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
PARAMETERS: P_DELNO LIKE LIKP-VBELN OBLIGATORY,
P_INVNO LIKE VBRK-VBELN OBLIGATORY,
P_DATE LIKE SY-DATUM.
SELECTION-SCREEN END OF BLOCK blk1.
AT SELECTION-SCREEN.
CLEAR T_ADRS.
REFRESH T_ITEM.
T_ADRS-INVNO = P_INVNO.
T_ADRS-INVDAT = P_DATE.
SELECT SINGLE VBELV INTO VBFA-VBELV
FROM VBFA
WHERE VBELN = P_DELNO
AND VBTYP_N = 'J' .
SSORD = VBFA-VBELV.
*Exporter's Address
SELECT SINGLE BUKRS_VF INTO VBAK-BUKRS_VF
FROM VBAK
WHERE VBELN = VBFA-VBELV.
SELECT SINGLE ADRNR
INTO T001-ADRNR
FROM T001
WHERE BUKRS = VBAK-BUKRS_VF.
SELECT SINGLE NAME1 STREET CITY1 POST_CODE1 COUNTRY
INTO (T_ADRS-NAME1,T_ADRS-STREET,T_ADRS-CITY1,
T_ADRS-POST_CODE1, ADRC-COUNTRY)
FROM ADRC
WHERE ADDRNUMBER EQ T001-ADRNR.
SELECT SINGLE LANDX
INTO T_ADRS-COUNTRY
FROM T005T
WHERE SPRAS = 'EN'
AND LAND1 = ADRC-COUNTRY.
*Consignee Address & Buyer Other Than Consignee
SELECT SINGLE KUNNR KUNAG INTO (LIKP-KUNNR, LIKP-KUNAG)
FROM LIKP WHERE VBELN = P_DELNO.
IF LIKP-KUNNR = LIKP-KUNAG.
SELECT SINGLE NAME1 NAME2 STRAS ORT01 PSTLZ REGIO TELF1 ADRNR
INTO (T_ADRS-CNAME1, T_ADRS-CNAME2, T_ADRS-CSTREET,
T_ADRS-CCITY, T_ADRS-CPCODE, T_ADRS-CREGIO,
T_ADRS-CTELF1, KNA1-ADRNR)
FROM KNA1
WHERE KUNNR = LIKP-KUNNR.
SELECT SINGLE COUNTRY INTO ADRC-COUNTRY
FROM ADRC
WHERE ADDRNUMBER EQ KNA1-ADRNR.
SELECT SINGLE LANDX
INTO T_ADRS-CCOUNTRY
FROM T005T
WHERE SPRAS = 'EN'
AND LAND1 = ADRC-COUNTRY.
T_ADRS-ONAME1 = T_ADRS-CNAME1 .
T_ADRS-ONAME2 = T_ADRS-CNAME2 .
T_ADRS-OSTREET = T_ADRS-CSTREET .
T_ADRS-OCITY = T_ADRS-CCITY.
T_ADRS-OPCODE = T_ADRS-CPCODE .
T_ADRS-OREGIO = T_ADRS-CREGIO.
T_ADRS-OTELF1 = T_ADRS-CTELF1 .
T_ADRS-OCOUNTRY = T_ADRS-CCOUNTRY.
ELSE.
SELECT SINGLE NAME1 NAME2 STRAS ORT01 PSTLZ REGIO TELF1 ADRNR
INTO (T_ADRS-CNAME1, T_ADRS-CNAME2, T_ADRS-CSTREET,
T_ADRS-CCITY, T_ADRS-CPCODE, T_ADRS-CREGIO,
T_ADRS-CTELF1, KNA1-ADRNR)
FROM KNA1
WHERE KUNNR = LIKP-KUNNR.
SELECT SINGLE COUNTRY INTO ADRC-COUNTRY
FROM ADRC
WHERE ADDRNUMBER EQ KNA1-ADRNR.
SELECT SINGLE LANDX
INTO T_ADRS-CCOUNTRY
FROM T005T
WHERE SPRAS = 'EN'
AND LAND1 = ADRC-COUNTRY.
*Buyer Other than Consignee
SELECT SINGLE NAME1 NAME2 STRAS ORT01 PSTLZ REGIO TELF1 ADRNR
INTO (T_ADRS-ONAME1, T_ADRS-ONAME2, T_ADRS-OSTREET,
T_ADRS-OCITY, T_ADRS-OPCODE, T_ADRS-OREGIO,
T_ADRS-OTELF1, KNA1-ADRNR)
FROM KNA1
WHERE KUNNR = LIKP-KUNAG.
SELECT SINGLE COUNTRY INTO ADRC-COUNTRY
FROM ADRC
WHERE ADDRNUMBER EQ KNA1-ADRNR.
SELECT SINGLE LANDX
INTO T_ADRS-OCOUNTRY
FROM T005T
WHERE SPRAS = 'EN'
AND LAND1 = ADRC-COUNTRY.
ENDIF.
*Other's Ref
TIDNO = 'Z071'.
TNAME = SSORD.
TOBJT = 'VBBK'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
T_ADRS-OREF = mslines-tdline(50).
EXIT.
ENDLOOP.
*Buyer's Order No Ref
TIDNO = 'Z023'.
TNAME = SSORD.
TOBJT = 'VBBK'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
T_ADRS-BUYER = mslines-tdline(50).
EXIT.
ENDLOOP.
*Exporter Ref
TIDNO = 'Z072'.
TNAME = SSORD.
TOBJT = 'VBBK'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
T_ADRS-XPREF = mslines-tdline(50).
EXIT.
ENDLOOP.
*Pre-Carraige By
TIDNO = 'Z074'.
TNAME = SSORD.
TOBJT = 'VBBK'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
T_ADRS-PCRG = mslines-tdline(50).
EXIT.
ENDLOOP.
*Place Of reciept by Pre-Carraige
TIDNO = 'Z073'.
TNAME = SSORD.
TOBJT = 'VBBK'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
T_ADRS-PLPCRG = mslines-tdline(50).
EXIT.
ENDLOOP.
*Vessel/Flight No
TIDNO = 'Z075'.
TNAME = SSORD.
TOBJT = 'VBBK'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
T_ADRS-VFNO = mslines-tdline(50).
EXIT.
ENDLOOP.
*Port Of Loading
TIDNO = 'Z077'.
TNAME = SSORD.
TOBJT = 'VBBK'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
T_ADRS-PLOAD = mslines-tdline(50).
EXIT.
ENDLOOP.
*Port Of Discharge
TIDNO = 'Z076'.
TNAME = SSORD.
TOBJT = 'VBBK'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
T_ADRS-PDISG = mslines-tdline(50).
EXIT.
ENDLOOP.
*Final Destination
TIDNO = 'Z070'.
TNAME = SSORD.
TOBJT = 'VBBK'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
T_ADRS-FDEST = mslines-tdline(50).
EXIT.
ENDLOOP.
*Terms Of Delivery & Payment
TIDNO = 'Z080'.
TNAME = SSORD.
TOBJT = 'VBBK'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
T_ADRS-TERMS = mslines-tdline(50).
EXIT.
ENDLOOP.
APPEND T_ADRS.
*BODY SECTION FOR LINE ITEMS
SELECT POSNR KWMENG VRKME WAERK
INTO (VBAP-POSNR, VBAP-KWMENG, VBAP-VRKME, VBAP-WAERK)
FROM VBAP
WHERE VBELN = SSORD.
*Mark/Case No
TIDNO = '0002'.
CONCATENATE SSORD
VBAP-POSNR
INTO TNAME.
TOBJT = 'VBBP'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
WA_ITEM-MARKNO = mslines-tdline(40).
EXIT.
ENDLOOP.
*Packing Type
TIDNO = '0003'.
CONCATENATE SSORD
VBAP-POSNR
INTO TNAME.
TOBJT = 'VBBP'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
WA_ITEM-PACKTYP = mslines-tdline(40).
EXIT.
ENDLOOP.
*Goods Description
TIDNO = '0001'.
CONCATENATE SSORD
VBAP-POSNR
INTO TNAME.
TOBJT = 'VBBP'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
WA_ITEM-GDESC = mslines-tdline(40).
EXIT.
ENDLOOP.
*Goods Quantity
WA_ITEM-QTY = VBAP-KWMENG.
WA_ITEM-VRKME = VBAP-VRKME.
*Goods Rate
SELECT SINGLE KNUMV INTO VBAK-KNUMV FROM VBAK WHERE VBELN = SSORD.
SELECT SINGLE KBETR WAERS
INTO (WA_ITEM-RATE, WA_ITEM-WAERS)
FROM KONV
WHERE KNUMV = VBAK-KNUMV
AND KPOSN = VBAP-POSNR
AND KSCHL = 'PR00'.
*Item Remarks
TIDNO = 'ZREM'.
CONCATENATE SSORD
VBAP-POSNR
INTO TNAME.
TOBJT = 'VBBP'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
WA_ITEM-REMARK = mslines-tdline(40).
EXIT.
ENDLOOP.
*Goods Amount
WA_ITEM-AMOUNT = WA_ITEM-QTY * WA_ITEM-RATE.
WA_ITEM-WAERK = VBAP-WAERK.
TOT = TOT + WA_ITEM-AMOUNT.
ITNO = VBAP-POSNR.
APPEND WA_ITEM TO T_ITEM.
ENDSELECT.
T_ADRS-TOT = TOT.
CALL FUNCTION 'SPELL_AMOUNT'
EXPORTING
AMOUNT = TOT
CURRENCY = VBAP-WAERK
FILLER = ' '
LANGUAGE = SY-LANGU
IMPORTING
IN_WORDS = WORD
EXCEPTIONS
NOT_FOUND = 1
TOO_LARGE = 2
OTHERS = 3
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*Gross Wieght
TIDNO = 'Z078'.
TNAME = SSORD.
TOBJT = 'VBBK'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
T_ADRS-GWT = mslines-tdline(40).
EXIT.
ENDLOOP.
*Net Wieght
TIDNO = 'Z079'.
TNAME = SSORD.
TOBJT = 'VBBK'.
PERFORM FINDTEXT.
LOOP AT MSLINES.
T_ADRS-NWT = mslines-tdline(40).
EXIT.
ENDLOOP.
T_ADRS-TOT_WORDS = WORD-WORD.
APPEND T_ADRS.
START-OF-SELECTION.
P_LANGUAGE = 'EN'.
CALL FUNCTION 'SSF_GET_DEVICE_TYPE'
EXPORTING
I_LANGUAGE = P_LANGUAGE
I_APPLICATION = 'SAPDEFAULT'
IMPORTING
E_DEVTYPE = P_E_DEVTYPE.
P_OUTPUT_OPTIONS-XSFCMODE = 'X'.
P_OUTPUT_OPTIONS-XSF = SPACE.
P_OUTPUT_OPTIONS-XDFCMODE = 'X'.
P_OUTPUT_OPTIONS-XDF = SPACE.
P_OUTPUT_OPTIONS-TDPRINTER = P_E_DEVTYPE.
P_OUTPUT_OPTIONS-TDDEST = 'LOHP'.
APPEND P_OUTPUT_OPTIONS.
P_CONTROL_PARAMETERS-NO_DIALOG = 'X'.
P_CONTROL_PARAMETERS-GETOTF = 'X'.
P_CONTROL_PARAMETERS-NO_CLOSE = SPACE.
APPEND P_CONTROL_PARAMETERS.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = 'ZSD_REP_MULTI_PRINT1'
VARIANT = ' '
DIRECT_CALL = ' '
IMPORTING
FM_NAME = FM_NAME1
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 2
OTHERS = 3
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION FM_NAME1
EXPORTING
ARCHIVE_INDEX =
ARCHIVE_INDEX_TAB =
ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS = P_CONTROL_PARAMETERS
MAIL_APPL_OBJ =
MAIL_RECIPIENT =
MAIL_SENDER =
OUTPUT_OPTIONS = P_OUTPUT_OPTIONS
USER_SETTINGS = 'X'
IMPORTING
DOCUMENT_OUTPUT_INFO =
JOB_OUTPUT_INFO = P_JOB_OUTPUT_INFO
JOB_OUTPUT_OPTIONS =
TABLES
T_ADRS = T_ADRS
T_ITEM = T_ITEM
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
LOOP AT P_JOB_OUTPUT_INFO-OTFDATA INTO T_OTF.
APPEND T_OTF.
ENDLOOP.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = 'ZSD_REP_MULTI_PRINT2'
VARIANT = ' '
DIRECT_CALL = ' '
IMPORTING
FM_NAME = FM_NAME2
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 2
OTHERS = 3
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION FM_NAME2
EXPORTING
ARCHIVE_INDEX =
ARCHIVE_INDEX_TAB =
ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS = P_CONTROL_PARAMETERS
MAIL_APPL_OBJ =
MAIL_RECIPIENT =
MAIL_SENDER =
OUTPUT_OPTIONS = P_OUTPUT_OPTIONS
USER_SETTINGS = 'X'
IMPORTING
DOCUMENT_OUTPUT_INFO =
JOB_OUTPUT_INFO = P_JOB_OUTPUT_INFO
JOB_OUTPUT_OPTIONS =
TABLES
T_ADRS = T_ADRS
T_ITEM = T_ITEM
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
LOOP AT P_JOB_OUTPUT_INFO-OTFDATA INTO T_OTF.
APPEND T_OTF.
ENDLOOP.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = 'ZSD_REP_MULTI_PRINT3'
VARIANT = ' '
DIRECT_CALL = ' '
IMPORTING
FM_NAME = FM_NAME4
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 2
OTHERS = 3
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION FM_NAME4
EXPORTING
ARCHIVE_INDEX =
ARCHIVE_INDEX_TAB =
ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS = P_CONTROL_PARAMETERS
MAIL_APPL_OBJ =
MAIL_RECIPIENT =
MAIL_SENDER =
OUTPUT_OPTIONS = P_OUTPUT_OPTIONS
USER_SETTINGS = 'X'
IMPORTING
DOCUMENT_OUTPUT_INFO =
JOB_OUTPUT_INFO = P_JOB_OUTPUT_INFO
JOB_OUTPUT_OPTIONS =
TABLES
T_ADRS = T_ADRS
T_ITEM = T_ITEM
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
LOOP AT P_JOB_OUTPUT_INFO-OTFDATA INTO T_OTF.
APPEND T_OTF.
ENDLOOP.
<b>*for capturing the o/p pages from ZPL3 and consolidating into table T_OTF to get single PDF
SET PARAMETER ID: 'AUN' FIELD SSORD ,
'APO' FIELD ITNO.
CALL TRANSACTION 'ZPL3' AND SKIP FIRST SCREEN.
IF SY-SUBRC NE 0.
MESSAGE E001(ZQOTBANK).
ENDIF.
IMPORT (T_OTF2) FROM MEMORY ID 'MEMID'.
LOOP AT T_OTF2-OTFDATA INTO T_OTF.
APPEND T_OTF.
ENDLOOP.</b>
CALL FUNCTION 'CONVERT_OTF_2_PDF'
EXPORTING
USE_OTF_MC_CMD = 'X'
ARCHIVE_INDEX =
IMPORTING
BIN_FILESIZE = P_BIN_FILESIZE
TABLES
OTF = T_OTF
DOCTAB_ARCHIVE = P_DOC
LINES = P_LINES
EXCEPTIONS
ERR_CONV_NOT_POSSIBLE = 1
ERR_OTF_MC_NOENDMARKER = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
BIN_FILESIZE = P_BIN_FILESIZE
FILENAME = 'C:\SD6.pdf'
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'
IMPORTING
FILELENGTH = P_BIN_FILESIZE
TABLES
DATA_TAB = P_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
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.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*& Form FINDTEXT
text
FORM FINDTEXT.
REFRESH mslines.
CALL FUNCTION 'READ_TEXT'
EXPORTING
client = sy-mandt
id = tidno
language = sy-langu
name = tname
object = tobjt
TABLES
lines = mslines
EXCEPTIONS
id = 1
language = 2
name = 3
not_found = 4
object = 5
reference_check = 6
wrong_access_to_archive = 7
OTHERS = 8.
DELETE mslines WHERE tdline IS INITIAL.
ENDFORM. "FINDTEXTHello,
You can find out the Spool Request w.r.t the Program by FM RSPO_FIND_SPOOL_REQUESTS.
This Spool Request could be converted to PDF by FM CONVERT_ABAPSPOOLJOB_2_PDF.
P.S.: The Import parameter 'NO_DIALOG' in FM CONVERT_ABAPSPOOLJOB_2_PDF is to be initial. You will be getting a Popup seeking the Path and name of the file to be created. This is because you can direct the Spool list to be created in the same PDF file by appending it into earlier created SSF/SAPScript PDF outputs.
I hope this helps you.
Regards, Murugesh AS -
How can i know total number of lines in a smartform page?
Hello All,
1. How to find the total number of lines that can be printed on a smartform page?
2. Need to determine the current line on which the text is goint to printed
Depending upon the no of lines left for printing i need to call a new page explicitly?
Answers will be rewared...
Thanks and Regards,
Josin George
Edited by: Bhuvaneswari Mathuraiveeran on Jan 1, 2009 1:02 PMhi ,
I think u have to decide no of lines by trial error menthod only ...
u can use SY-TABIX to decide , which line its printing ...
hope its helps ..... -
Hi experts,
I am displaying notification numbers in the ALV format. when the user selects few of the notification numbers and click on display button it should display the notification details using smartform.
I have to trigger a new page for every notification number.
I had problem in numbering the smartform pages.
For example if the user selects 3 notification numbers say 1st one takes 3 pages, second one takes one page and third one takes 2 pages then i have number the pages as below.
1st notif:1of 3,2 of 3,3 of 3.
2nd notif:1 of 1.
3rd notif:1 of 2,2 of 2.
Please give me some suggestion.
Thank you.
Regards,
Bharat Kalagara.hi ,
in the driver program based on on a check on notification number call smartform , and now in smartform where u are printing page number make that window as a final window , this will help in calculating total no of pages now create a text element and write &sfsy-page(3cz)& of &sfsy-formpages(3cz)&.
hope this helps you !!!
regards,
prashanti -
How do you fix redirecting page issue?
Every time I click any links like coolermaster.com links at Google search engine box, it redirects me to random website. So, how do you prevent this redirecting page issue? It pisses me off! Also, I have installed Redirect Remover add-on, and it doesn't help prevent redirecting me to some random websites; even though, I hate it and it just irritates me! Please, help resolve this issue.
I got caught by this bug toady while make a Facebook Page Tab. Many users of Facebook (including me) use it over https and the jQuery included by Muse prompts a insecure message in Chrome.
I suggest that the engineering team use the protocol agnostic version of the script tag and sets up a cdn on the worldsecuresystems.com domain. It will use either http och https depending on your connection.
<script src="//musecdn.worldsecuresystems.com/scripts/1.1/jquery-1.7.min.js" type="text/javascript"></script>
Eagerly awaiting the next version of Muse =) -
Empty page issue in Oracle Reports!
Hi All,
I am facing an empty page issue between header and cover trailer when Main section is empty.
In a report there are two forms Form-1 (Portrait size) , Form-2 (Landscape size)...
Based on run time parameter we optionally print form-1 , form-2 or both.
ie if run time parameter is 1 then only form 1
if it is 2 then only form - 2
if it is 3 then both
As Form-1 is portrait size and Form-2 is Landscape size,
At present in Report Layout, Form-1 is designed in Cover page Header Section
and Form-2 is designed in Main section of report.
So When the report is run with PRINT_PATTERN='2', Main section will be empty.
An empty page issue appears in report for form-2.
Is there anyway to avoid EMPTY PAGE issue between header and trailer page,
based on runtime parameter value if Main section is empty.
Thanks in advance.Hi vdsk,
The issue I posted is not about the rdf or in concurrent program. The problem I've encountered is in the tally printer itself. So what I did was to adjust the paper size settings in the printer.
Thanks,
Regards,
Diane -
10.5.7 Pages Issue
Ok, so this is really a Pages issue but i am posting here because i think it is caused by the update. I am trying to export a word from Pages as a MS Word document, which seems to work, but when i or anyone tries to open the new file it is corrupted and cannot be opened. I have to do this regularly and have never had an issue before i updated today. Ideas?
Cheers
Rowanactasci wrote:
Seems like 10.5.7 is most problematic update ever.
No it is not. In fact if you read back in these forums, you will conclude every update is the most problematic, including the upgrade from Tiger to Leopard 10.5.0.
I have a problem about it too. I reinstalled 10.5.4 on my mac. And directly I started software update. I downloaded all of the updates (6) and started installation process. After that I stuck in "configuring installation". Computer keeps responding but nothing happening. I rebooted twice everything is good but when I started software update and click install it still in the same screen. Any suggestions?
Never install more than one update at a time especially those requiring a reboot.
Always use the manual combo update.
Always run DU and repair permissions and HD before and after the update.
Never update or upgrade a computer that is not working perfectly. Any problems should be addressed before updating, unless the problem is specifically addressed by the update. Otherwise, the update will usually make the problem worse, not better. -
Custom page issue in smartforms
hi all,
As per requirement custom page with 11 inch X 12 inch page size.In windows in default page setting is "letter" so when i am taking print out ,system is considering that letter format and it is not printing all the data as per form developde .
if i maintained in window page setting as A3 size paper then all data is printing but in next page is skipping up 1/4 page and 2nd page is printing from there only.
Requireemnt is system should not consider the windows default setting and it should consider the paeg size what defined in SAP.The users in client orgabnisation are not allowed to change any windows settings.
Kindly guide me how we can solve the issue by doing development in SAP.
Regards
venkatHi Venkat,
I don't think there's such option available in smartforms unless you change the frontend (windows) settings.
You must change your printer default settings in windows to match smartform size.
Umakanth R -
Smartform Spool issue - Not pulling all pages
Hi,
I am expecting aorund 2000 pages of spool file with a smartform driver program.
My spooljob is limiting me to only 33 pages and job is still active when i check using SM37.
Anything related to spooling is wrong in my code?
SORT T_ITEM BY FKDAT.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = P_FORM
IMPORTING
FM_NAME = FM_NAME
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
LS_COMPOSER_PARAM-TDNEWID = 'X'.
LS_CONTROL_PARAM-PREVIEW = ''.
SORT T_HEADER BY NAME1 KUNNR.
DATA: V_PREV_CUR LIKE BSID-WAERS.
LOOP AT T_HEADER INTO WA_HEADER.
REFRESH: ITEM_ITAB, ITEM_ITAB_TMP.
CLEAR: V_PREV_CUR.
LOOP AT T_ITEM WHERE KUNRG = WA_HEADER-KUNNR.
MOVE-CORRESPONDING T_ITEM TO ITEM_ITAB.
APPEND ITEM_ITAB.
ENDLOOP.
SORT ITEM_ITAB BY WAERS.
LOOP AT ITEM_ITAB.
IF SY-TABIX <> 1.
IF V_PREV_CUR <> ITEM_ITAB-WAERS.
SORT ITEM_ITAB_TMP BY FKDAT.
CALL FUNCTION FM_NAME
EXPORTING
ARCHIVE_INDEX = TOA_DARA
ARCHIVE_INDEX_TAB = ARC_IND_TAB
ARCHIVE_PARAMETERS = ARC_PARAMS
CONTROL_PARAMETERS = LS_CONTROL_PARAM
MAIL_APPL_OBJ = LS_RECIPIENT
MAIL_RECIPIENT = LS_RECIPIENT
MAIL_SENDER = LS_SENDER
OUTPUT_OPTIONS = LS_COMPOSER_PARAM
USER_SETTINGS = SPACE
WA_ITAB = WA_HEADER
IMPORTING
DOCUMENT_OUTPUT_INFO = DOCUMENT_OUTPUT_INFO
JOB_OUTPUT_INFO = JOB_OUTPUT_INFO
JOB_OUTPUT_OPTIONS = JOB_OUTPUT_OPTIONS
TABLES
WA_DEP = ITEM_ITAB_TMP
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4.
IF SY-SUBRC <> 0.
WRITE: / 'ERROR in passing variables to the smartforms '.
ENDIF.
LS_COMPOSER_PARAM-TDNEWID = SPACE.
LS_CONTROL_PARAM-NO_DIALOG = 'X'.
LS_CONTROL_PARAM-PREVIEW = ''.
REFRESH ITEM_ITAB_TMP.
MOVE-CORRESPONDING ITEM_ITAB TO ITEM_ITAB_TMP.
APPEND ITEM_ITAB_TMP.
ELSE.
MOVE-CORRESPONDING ITEM_ITAB TO ITEM_ITAB_TMP.
APPEND ITEM_ITAB_TMP.
ENDIF.
ELSE.
REFRESH ITEM_ITAB_TMP.
MOVE-CORRESPONDING ITEM_ITAB TO ITEM_ITAB_TMP.
APPEND ITEM_ITAB_TMP.
ENDIF.
AT LAST.
CALL FUNCTION FM_NAME
EXPORTING
ARCHIVE_INDEX = TOA_DARA
ARCHIVE_INDEX_TAB = ARC_IND_TAB
ARCHIVE_PARAMETERS = ARC_PARAMS
CONTROL_PARAMETERS = LS_CONTROL_PARAM
MAIL_APPL_OBJ = LS_RECIPIENT
MAIL_RECIPIENT = LS_RECIPIENT
MAIL_SENDER = LS_SENDER
OUTPUT_OPTIONS = LS_COMPOSER_PARAM
USER_SETTINGS = SPACE
WA_ITAB = WA_HEADER
IMPORTING
DOCUMENT_OUTPUT_INFO = DOCUMENT_OUTPUT_INFO
JOB_OUTPUT_INFO = JOB_OUTPUT_INFO
JOB_OUTPUT_OPTIONS = JOB_OUTPUT_OPTIONS
TABLES
WA_DEP = ITEM_ITAB_TMP
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4.
IF SY-SUBRC <> 0.
WRITE: / 'ERROR in passing vars to the smartforms '.
ENDIF.
LS_COMPOSER_PARAM-TDNEWID = SPACE.
LS_CONTROL_PARAM-NO_DIALOG = 'X'.
LS_CONTROL_PARAM-PREVIEW = ''.
ENDAT.
V_PREV_CUR = ITEM_ITAB-WAERS.
ENDLOOP.
ENDLOOP.Hi Vara,
By default there will be a value set by the administrator for the number of pages you can view in the spool. So to me it looks like this value is set to 33 in yoru case. You can go to setting from the same screen and change thsi setting to display all pages. But beware that this may take a long time some times and also give you a dump at times.
-Guru -
Regarding smartform page wise total.
hi
guru's
i am having doubt on smartform
i want to caluclate sum of qunatities in pagewise
Regards
AnandHello Anand ,
Really good Question.
As per my knowledge and understanding it is possible only a only when , when the you know the no of row you can print in Main window like......
In my Main Window I can print 5 Row . Then in the Footer you can Code like this. That's i don't thing big issue. But majar thing on the basic of your data in internal table (you can say how many row can be printed in first and so on page).
I haven't done this yet , quite sure it will help you.
Regards
Swati namdeo -
Smartform Implementation issue for the report RFKORD50
Hi,
I have a requirement to implement a smartform for FI Invoice.
This smartform should be configured in OB96 for the print program RFKORD50.
Currently the SAP Script F140_DOCU_EXC_01 has been configured for Standard print program RFKORD50.
This SAP Script should be replaced with Smartform. But the issue is the report RFKORD50 is designed to
call only a SAP Scrip. Is there any better way to trigger the Smartform other than modifying the standard program?
Thanks,
Sailaja.AHi,
One of the very tough task, when it comes to migrate a script into Smartforms .. With a satndard print program ..
You have a option on samrtform screen , just to migrate a Sapscript into Smartform .. But it is just a migration of Layout.. means just creation of WINDOWS and pages.. All the elements and text node creation still you need to do ..
But one of the major challenge is to Customize your print program..
So i will suggest you to create a Z copy of RFKORD50.. as print prgm .. Then you can feal better
Now keep all the data selection part as it is .. collect it in different structure, then call your samrtform..
and before calling your smartform, prepare your layout ..
Very Imp suggestion, try to work on small small task. -
Smartforms - Performance Issue
Hi,
I am developing a report related to customer ageing details which involves high volume of transactional data.
Initially the report was displayed using ALV , but the client was not satisfied when they print the alv report in 130 col printer with sort and sub-total features.So I developed a smartform according to the required design.
Since the report involves page break and totals inbetween...i have used the event and At new command in the loop within the smartform..
The issue here is...when the report was tested with actuall data(high volume)..it took almost 5 times of the time when the report was executed using ALV..this is due to the design of the smartform involving the loops...
Is there any way to check out the performance of smartforms.Kindly suggest.
Regards,
Thyagu,Hi Thyagu,
As ALV, smart forms are just ABAP, so you can use the runtime analysis (SE30, or ST12, or SAT) to see what makes it slow.
See SDN and official documentation for more information about runtime analysis
BR
Sandra -
Smartforms -Page Skipping Problem in Continue Sheet Printing.....
Hi Gurus,
I face problem with multiple page printing in dot matrix printer for purchase order printing.
Here are the details about my requirement
Our client Purchase order pre-printed Paper size Width 303 mm Height 203 mm and continued sheet. I have created a z layout zpoprint for the above size and assigned it in smarforms and select DINA4 transverse in printer. Whenever we printing 2nd page it starts printing after 5 cm. My friends asked me to create a customized page format in server properties in printer. Is there any other way to overcome this issue? Anybody face this problem kindly reply to me.
By
SP. ManavalanHi
Though you can double check the page layouts of both pages of your smartform, also keep in consideration that using a dot matrix printer to get the output of smartforms will have some impact of the positioning of the print as dot matrix printers are mechanical in nature(wheels are moving!).
Whereas, in laser printers, the whole data is taken, formatted and then sent to print.
Regards
Raj -
Smartforms: Page break in main window
Hello all,
I am working on a smartform that has a loop in the Main window which finally shows a table with serveral rows. I would like to have a page break if one group of lines doesn't fit on the page anymore.
I did some research on that and found the following solution:
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.
I did all this and activated the form. But when I go the generic output issue to see the form, following error message comes up:
Output could not be displayed (it may not be complete)
Any ideas why this is happening? (If I delete the folder with the "page protection" mark, then it is working fine again..)
Thanks a lot
AnneHey Anne,
If you are getting the error as soon as you check the box for page protection, it indicates that its not placed at correct position.
I think you placed the folder at a wrong node. I placed the folder under the main area of the table and placed the row types under the folder. Then i checked the folder for page protection.
Its working for me. I am working in ECC 6.0. I dont know if we have that provision in 4.6 C.
Create the folder under the main area of the table node.
put the row types under the folder and check the box for page protection.
Thanks,
Vamshi.
Edited by: vamshi p on Jan 31, 2008 9:19 PM
Maybe you are looking for
-
canot update windows error 80070490 and i have no vista disk was moms computer and she died Model #: SR5413WM Product #: KJ393AA-ABA Serial #: [removed for privacy] Software Build #: 82NAv3PrA1 Service ID #: [removed for privacy] PCBRAND: Pre
-
Problem: More than one VPN user at a time - Airport Extreme Base Station
Hey Folks, Myself and my girlfriend both have work laptop PCs. It appears that the AEBS only allows one VPN user at a time. When a new user is logging in, it will kick out the other user. Is there a setting on the AEBS that will allow more than one V
-
IPhoto 09 originals disappeared after Aperture 3 import
*My situation as it used to be:* Aperture 2 contained my iPhoto library as referenced masters. All was good. *My current situation:* After updating to Aperture 3, I decided to import all of my iPhoto files so I'd have a single library with all my pho
-
Anonymous Users can see pages and files only about 10 minutes
We have set Anonymous access permission to an KM repository. After the portal restarting very strange things are happen. An user who belongs to the Anonymous Users group can see and open pages (created by WPC), files and hyperlinks. But after about
-
Hello everyone. I`m a apple user from Turkey. Lately I have bought an iphone 4S in U.S.A and brought it back to my country. My problem is I can`t use it with my local service provider; because I can`t activate my iphone 4S with the sim kart which I h