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

  • Smartform Printing issue

    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
    Sudheer

    Hi 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.                    "FINDTEXT

    Hello,
    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 PM

    hi ,
    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 .....

  • Smartform page numbering

    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
    Rowan

    actasci 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
    venkat

    Hi 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
    Anand

    Hello 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.A

    Hi,
    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. Manavalan

    Hi
    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
    Anne

    Hey 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