Smartforms :Multiple forms 2 be printed in single print prog,PDF too

Hello Smartforms Gurus
I need to print 4 forms (Export Invoice, packing List, Enclosure to Packing list, Case marking) within a single print prog .
User will execute this prog and it should print all the 4 forms and then by clicking on a button(Archive) there
it should download a single pdf file containing all 4 forms .
At present my following program directly download this form(only Export Invoice) to a pdf file but doesnt leave options to go to Print or Print Preview .
Plz look into my code , and  suggest.
Thnx
Moni
*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,
    vbpa,
    vbfa,
    VBRK,
    VBRP,
    LIKP,
    LIPS,
    KONV,
    objk,
    tvko,
    ser01,
    sadr,
    equi,
    makt,
    mast,
    t005t,
    kna1,
    t001w,
    T001,
    ADRC,
    sscrfields,
    zpp_plcmi,      "Packing list history For Conf: Item data
    zplh,           "PACKING LIST HISTORY : HEADER DATA
    zpli.           "PACKING LIST HISTORY : ITEM DATA
DATA: FM_NAME  TYPE RS38L_FNAM,
      P_E_DEVTYPE TYPE RSPOPTYPE,
      P_JOB_OUTPUT_INFO 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,
      <i>OK_CODE LIKE SY-UCOMM.</i>
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.
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.
**BUYERS NO & DATE
SELECT SINGLE BSTNK BSTDK INTO  (T_ADRS-BSTNK,T_ADRS-BSTDK)
                     FROM  VBAK
                     WHERE VBELN = VBFA-VBELV.
*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(25).
    EXIT.
  ENDLOOP.
*Buyer's Order No  Ref
  TIDNO = 'Z023'.
  TNAME = SSORD.
  TOBJT = 'VBBK'.
  PERFORM FINDTEXT.
  LOOP AT MSLINES.
    T_ADRS-BUYER = mslines-tdline(25).
    EXIT.
  ENDLOOP.
*Exporter Ref
  TIDNO = 'Z072'.
  TNAME = SSORD.
  TOBJT = 'VBBK'.
  PERFORM FINDTEXT.
  LOOP AT MSLINES.
    T_ADRS-XPREF = mslines-tdline(25).
    EXIT.
  ENDLOOP.
*Pre-Carraige By
  TIDNO = 'Z074'.
  TNAME = SSORD.
  TOBJT = 'VBBK'.
  PERFORM FINDTEXT.
  LOOP AT MSLINES.
    T_ADRS-PCRG = mslines-tdline(25).
    EXIT.
  ENDLOOP.
*Place Of reciept by Pre-Carraige
  TIDNO = 'Z073'.
  TNAME = SSORD.
  TOBJT = 'VBBK'.
  PERFORM FINDTEXT.
  LOOP AT MSLINES.
    T_ADRS-PLPCRG = mslines-tdline(25).
    EXIT.
  ENDLOOP.
*Vessel/Flight No
  TIDNO = 'Z075'.
  TNAME = SSORD.
  TOBJT = 'VBBK'.
  PERFORM FINDTEXT.
  LOOP AT MSLINES.
    T_ADRS-VFNO = mslines-tdline(25).
    EXIT.
  ENDLOOP.
*Port Of Loading
  TIDNO = 'Z077'.
  TNAME = SSORD.
  TOBJT = 'VBBK'.
  PERFORM FINDTEXT.
  LOOP AT MSLINES.
    T_ADRS-PLOAD = mslines-tdline(25).
    EXIT.
  ENDLOOP.
*Port Of Discharge
  TIDNO = 'Z076'.
  TNAME = SSORD.
  TOBJT = 'VBBK'.
  PERFORM FINDTEXT.
  LOOP AT MSLINES.
    T_ADRS-PDISG = mslines-tdline(25).
    EXIT.
  ENDLOOP.
*Final Destination
  TIDNO = 'Z070'.
  TNAME = SSORD.
  TOBJT = 'VBBK'.
  PERFORM FINDTEXT.
  LOOP AT MSLINES.
    T_ADRS-FDEST = mslines-tdline(25).
    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-PACKTYP = 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'.
*Goods Amount
    WA_ITEM-AMOUNT = WA_ITEM-QTY * WA_ITEM-RATE.
    WA_ITEM-WAERK = VBAP-WAERK.
    TOT = TOT + WA_ITEM-AMOUNT.
    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.
  T_ADRS-TOT_WORDS = WORD-WORD.
  APPEND T_ADRS.
START-OF-SELECTION.
<b>  SET PF-STATUS '1000'.</b>
  CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
    EXPORTING
      FORMNAME                 = 'Z_SD_REP_MULTI_PRINT'
  VARIANT                  = ' '
  DIRECT_CALL              = ' '
   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.
  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 = 'LOCL'.
  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 FM_NAME
   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.
<b>AT USER-COMMAND.
OK_CODE = SY-UCOMM.
CASE OK_CODE.
WHEN 'ARCHIVE'.</b>
CALL FUNCTION 'CONVERT_OTF_2_PDF'
  EXPORTING
    USE_OTF_MC_CMD               = 'X'
  ARCHIVE_INDEX                =
IMPORTING
    BIN_FILESIZE                 = P_BIN_FILESIZE
TABLES
    OTF                          = P_JOB_OUTPUT_INFO-OTFDATA
    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 'WS_DOWNLOAD'
EXPORTING
   BIN_FILESIZE                  = P_BIN_FILESIZE
  CODEPAGE                      = ' '
   FILENAME                      = 'C:\sd.pdf'
   FILETYPE                      = 'BIN'
   MODE                          = ''
  WK1_N_FORMAT                  = ' '
  WK1_N_SIZE                    = ' '
  WK1_T_FORMAT                  = ' '
  WK1_T_SIZE                    = ' '
  COL_SELECT                    = ' '
  COL_SELECTMASK                = ' '
  NO_AUTH_CHECK                 = ' '
IMPORTING
    FILELENGTH                    = P_BIN_FILESIZE
  TABLES
    DATA_TAB                      = P_LINES
  FIELDNAMES                    =
EXCEPTIONS
  FILE_OPEN_ERROR               = 1
  FILE_WRITE_ERROR              = 2
  INVALID_FILESIZE              = 3
  INVALID_TYPE                  = 4
  NO_BATCH                      = 5
  UNKNOWN_ERROR                 = 6
  INVALID_TABLE_WIDTH           = 7
  GUI_REFUSE_FILETRANSFER       = 8
  CUSTOMER_ERROR                = 9
  NO_AUTHORITY                  = 10
  OTHERS                        = 11
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
<b>ENDCASE.</b>
*&      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
Message was edited by: md monirujjaman
Message was edited by: md monirujjaman
Message was edited by: md monirujjaman

Hello,
You cannot get continuous page numbers, But you will be able to merge all the 4 form outputs into one PDF file.
In yesterdays example you called one form, then converted OTF data into PDF data and downloaded on Presentation server.
In this case, after you call first form, you get the OTF data. Push this OTF data into a MAIN Internal table ( Same type as of OTF dada Int TAB ). Then Call second form. Then you get second set of OTF data. This second set of OTF data may be appended to the MAIN Internal table and the follw same procedure for the rest of the forms. In the end you will have one Internal table which holds OTF data of all the 4 forms.
Now convert the OTD data to PDF Data by the FM and Download one file which has output of all the 4 forms.
I hope my explanation is quite clear.
Regarding your second question, the Archive and Print and archive buttons on the PRINT PREVIEW screen works for Spool archiving which is to be enabled by customizing. If you wish to archive the output as PDF, you may have to do it in program.
I am NOT accessible on YAHOO.
Plz let me know if you are stuck.
Regards, Murugesh AS

Similar Messages

  • Is it possible to create a form with multiple form fields on a single line?

    Is it possible to create a form with multiple form fields on a single line?  I can't find anything in the documentation or a template that does this.
    I am trying to create a "documents received" checklist with a check box on the left margin, a date-received field to the right of the check box and and a description of the document (Formatted Text) on the far right.
    In the past I have entered the Fixed Text with a word processor, published it to a PDF file, then added the check box and date fields with the Acrobat Forms editor.  I would prefer to use FormsCentral if it is possible.

    We now support multiple fields on one line. This post provides a brief overview.
    Give it a try and send us your feedback.
    Sorry it took so long.
    Randy

  • Multiple Form Regions with a single Save button

    Hello,
    Is it possible to have multiple form regions on a single page, with a single Save button that commits changes in all form regions? If so, would the forms have to be manual forms?
    If that is not possible, or a bad way to go with APEX, what are my alternatives?
    I am trying to avoid the user having to click through many screens to input the data. Logically each section should be in a different table, but I would like to group some of the sections together to reduce the number of pages the users need to navigate to.
    Thanks in advance for your help,
    Johnnie
    Edited by: johnniebillings on Jun 1, 2009 9:33 PM

    Hi Johnnie,
    I assume that the tables are related somehow?
    If so, you can create a SQL View on the joined tables (making sure that you have a unique ID for each record in the view that can act as the Primary Key), base the form on that view and then use an INSTEAD OF trigger on the view to populate the individual tables.
    Andy

  • Multiple form items on a single line.

    Does anybody know if it is possible to squeeze multiple items onto a single line in a Java ME form? i.e. can you have a small TextBox (say, 2 chars wide), a small StringItem, and then another small TextBox all together on the same line?
    If it can be done, then how can it be done?

    Are you referring to using the standard LCDUI framework? If so this may be down to the device manufacturers implementation of the standard Form layout.
    Besides, I would personally advise using LWUIT for any current Mobile Java App, unless you have to target very old devices. LWUIT certainly has this layout capability and more through Swing-like layout managers, and Suns endorsement of it as the de-facto UI framework on JavaME apps seems to be growing by the day.

  • Generate and Print Preview Multiple Forms in a Single PDF

    There have been other questions similar to this but none directly address my problem.  We have the need to generate multple forms in a .pdf using Adobe interactive forms.  We can generate the multiple forms, but the user has to click on each form to view.  They want to have the forms in a single document that they can scroll through before printing.  We can do this in SmartForms but need to do it in Adobe.  Does anyone know how to generate multiple forms, either multiple copies of the same form or various forms, from an ABAP program into a single pdf that can be print previewed, in scrollable form, by the user?

    I can describe it one more time, I think:))
    You have multiple options, but only one "reasonable" within SAP.
    You can call an external application (through command line etc.) to concatenate forms for you.
    You can use iText as mentioned in the thread, and write yourself a "tool" which will concatenate the forms for you.
    Both these "options" would not be acceptable for my clients, I name them to help you get the whole picture.
    Then there is the third option: use a form for a single instance (template/ form A) and create a new form (form B), where you will use the A template:
    - you need to: create a new interface where everything from the old interface is a row of the table (example: you have a form to print out the personal card of the employee, so in a new form you will need to use a table, where a row is an employee)
    - you need to create a new form layout based on the new interface:
    in this new layout you will paste the whole layout of the old form (A/ single instance) and wrap it into a subform. The added subform will work as a table (you will bind that to the table from interface) and everything from the old template within this new subform will work as a "row" (something what you can repeat for each data item).
    Does that sound reasonable?
    Cheers Otto

  • Adobe forms -Can we print multiple forms?

    i,
    Right now my form has an ability to display a single Order with single Header & line items.
    Hi,
    I want to enhance the functionality to multiple forms prints.I mean I will be having multiple headers and l ine items.
    I can fill my internal tables with multiple records data but what are the other form changes should i take care( hierarchy, data, etc...)
    In smartforms I was able to do this because there we can define loops.How do we handle it here in adobe forms?
    FYI.. I am filling internal table through WD application.Should I do Some context level changes?
    Also,
    In Dev environment I can see my Bold objects but when i move it to QA they are disappearing & font is also changing.What could be the reason?
    rgds
    Vara

    Hi Vara,
    Re: Adobe Forms
    Regards,
    Sravanthi

  • GR Printing For Single Line Item With Multiple Account Assignment.

    Hi All,
    There is PO for projects (Account Assignment -P - Network) in which in a single item consist of multiple account assignment.
    Noe while entering the GR I select "Collective Slip" option but when the GR is posted system automatically select option "Individual slip" and seprate line item are printed for each account assignment.
    The printing program is standard SAPM07DR. The SAP version is 4.7. Can anyone tell what is ther any setting in configuration or is it problem in program or smart form
    Thanks & Regards,
    Omkar

    hi
    please check your form and routine used to print.

  • Print multiple forms between FP_JOB_OPEN and FP_JOB_CLOSE

    I am aware, that there are questions regarding "Printing Multiple forms", but I didn't find answers there.
    Still my system is not working as expected:
    1.  FP_JOB_OPEN is called
    2. the generated Adobe Forms function is called multiple times
    3.  FP_JOB_CLOSE is called
    This program doesn't deliver all the pages, but just the first call. How shall I solve this problem?
    (Coding should work anywhere with copy-pase.)
    data: fm_name           type rs38l_fnam,
          fp_docparams      type sfpdocparams,
          fp_outputparams   type sfpoutputparams.
    parameters: p_fpname type fpname default 'FP_TEST_02'.
    * Get the name of the generated function module
    call function 'FP_FUNCTION_MODULE_NAME'
      exporting
        i_name     = p_fpname
      importing
        e_funcname = fm_name.
    * Sets the output parameters and opens the spool job
    call function 'FP_JOB_OPEN'
      changing
        ie_outputparams = fp_outputparams
      exceptions
        cancel          = 1
        usage_error     = 2
        system_error    = 3
        internal_error  = 4
        others          = 5.
    * Call the generated function module
    call function fm_name.
    * SECOND CALL ****************************
    call function fm_name.
    * Close the spool job
    call function 'FP_JOB_CLOSE'
    *    IMPORTING
    *     E_RESULT             =
      exceptions
        usage_error           = 1
        system_error          = 2
        internal_error        = 3
        others               = 4.

    Hi ZSOLT,
    In order to call the form multiple times please do the following,
    1) Just before your FP_JOB_OPEN you need to pass the output parameters (good practice). You can also set other parameters as well (for example nodialog, preview, copies., etc)
      CLEAR  fp_outputparams.
      fp_outputparams-dest = 'PDF1'.      "Default pdf printer
      fp_outputparams-reqnew = 'X'.       "New spool request
    Now call your FM FP_JOB_OPEN with the above output parameters.
    2) Usually this step is processed in a loop. (getting your interface data into a internal table and then looping at it)
    But here I am enhancing your example code.
    In order to trigger the form multiple times you need to change some input data to the form (for example I have changed date and time below in the prepare test data sections) so that the call function fm_name gets regenerated every time there is new data
    data  l_datatypes       type sfpdatatypes.
    prepare test data
      l_datatypes-char = '#'.
      l_datatypes-string = 'Auf geht''s! '.    "#EC NOTEXT
      l_datatypes-numc = '42'.
      l_datatypes-dec = 0 - ( 12345 / 7 ).
      l_datatypes-fltp = 0 - ( 12345 / 7 ).
      l_datatypes-int = 4711.
      l_datatypes-curr = 0 - ( 12345 / 7 ).
      l_datatypes-cuky = 'JPY'.       " no decimals
      l_datatypes-quan = 12345 / 7.
      l_datatypes-unit = 'DEG'.       " 1 decimal
      l_datatypes-date = '20040613'.      
      l_datatypes-time = '100600'.         
      l_datatypes-lang = sy-langu.
    FIRST CALL ****************************
    Call the generated function module
      CLEAR fp_docparams.
      fp_docparams-langu = 'EN'.       
      fp_docparams-country = 'US'.  
      call function fm_name
        exporting
          /1bcdwb/docparams        = fp_docparams
          datatypes                = l_datatypes
          mychar                   = l_datatypes-char
         mybyte                   =
          mystring                 = l_datatypes-string
         myxstring                =
          mydate                   = l_datatypes-date
          mytime                   = l_datatypes-time
          mynum                    = l_datatypes-numc
          myint                    = l_datatypes-int
          myfloat                  = l_datatypes-fltp
          mypacked                 = l_datatypes-dec
      IMPORTING
        /1BCDWB/FORMOUTPUT       =
    prepare test data
      l_datatypes-char = '#'.
      l_datatypes-string = 'Auf geht''s! '.    "#EC NOTEXT
      l_datatypes-numc = '42'.
      l_datatypes-dec = 0 - ( 12345 / 7 ).
      l_datatypes-fltp = 0 - ( 12345 / 7 ).
      l_datatypes-int = 4711.
      l_datatypes-curr = 0 - ( 12345 / 7 ).
      l_datatypes-cuky = 'JPY'.       " no decimals
      l_datatypes-quan = 12345 / 7.
      l_datatypes-unit = 'DEG'.       " 1 decimal
      l_datatypes-date = '20100913'.                 "You need to change your data in order it to trigger a new form with the new data.
      l_datatypes-time = '10700'.                        "You need to change your data in order it to trigger a new form with the new data.       
      l_datatypes-lang = sy-langu.
    SECOND CALL ****************************
    Call the generated function module
      CLEAR fp_docparams.
      fp_docparams-langu = 'EN'.
      fp_docparams-country = 'US'.
      call function fm_name
        exporting
          /1bcdwb/docparams        = fp_docparams
          datatypes                = l_datatypes
          mychar                   = l_datatypes-char
         mybyte                   =
          mystring                 = l_datatypes-string
         myxstring                =
          mydate                   = l_datatypes-date
          mytime                   = l_datatypes-time
          mynum                    = l_datatypes-numc
          myint                    = l_datatypes-int
          myfloat                  = l_datatypes-fltp
          mypacked                 = l_datatypes-dec
      IMPORTING
        /1BCDWB/FORMOUTPUT       =
    Close the spool job
    call function 'FP_JOB_CLOSE'
       IMPORTING
        E_RESULT             =
      exceptions
        usage_error           = 1
        system_error          = 2
        internal_error        = 3
        others               = 4.
    I have tested the above code and I am getting multiple forms.
    Please try on your end and let me know if it works.
    Thanks
    Raj

  • Single Printing for Multiple ALVs in Splitter Containers

    Hi,
    I am creating multiple ALVs (3 to 4) of CL_GUI_ALV_GRID class in my report. The ALVs are being displayed inside the splitter containers of class CL_GUI_SPLITTER_CONTAINER. My question is how to print all the ALVs inside these multiple containers with a single execution? I've found a close answer to this at this thread but it is using the REUSE_ALV... function.
    How to print multiple ALV Grids with only one print dialog?
    Is there a way to do this by making use of the CL_GUI_ALV_GRID printing functionality, if there is?
    Thanks for your kind attention,
    Kamal.

    -found alternative.

  • How do you print multiple different images on a single page in preview

    How do you print multiple different images on a single page in preview?

    Chances are no one who saw your question knew the answer.
    Unless you're willing to share the answer you found here, then anyone else like you searching for the problem who comes across this thread will also be unable to thank you for providing the answer too.  

  • How to call two smartforms with using a single print program

    Hi,
       I have a requirement wherein I need to call two smartforms using a single print program.
       The interface parameters are different in two smartforms.
       I presently solved the issue using the smartform names as the reference.
       Can anyone let me know if there is any other way to solve it.
       I heard something about global params. But not sure.
       Please let me know the best possible way to solve this issue.
    Thanks and Regards,
       Debabrata

    Hi Debabrata,
    Based on the condition in your print program you can call the below code
    fname1 TYPE rs38l_fnam.
    IF -
    call function 'SSF_FUNCTION_MODULE_NAME'
      exporting
        formname                 = 'ZSMARTFORMS'
    importing
       fm_name                  = fname1
    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 FNAME
    EXPORTING
      ARCHIVE_INDEX              =
      ARCHIVE_INDEX_TAB      =
      ARCHIVE_PARAMETERS =
      CONTROL_PARAMETERS=
      MAIL_APPL_OBJ              =
      MAIL_RECIPIENT              =
      MAIL_SENDER                 =
      OUTPUT_OPTIONS           =
      USER_SETTINGS             = 'X'
    IMPORTING
      DOCUMENT_OUTPUT_INFO =
      JOB_OUTPUT_INFO             =
      JOB_OUTPUT_OPTIONS      =
    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.
    ELSE.
    fname2 TYPE rs38l_fnam.
    call function 'SSF_FUNCTION_MODULE_NAME'
      exporting
        formname                 = 'ZSMARTFORMS'
    importing
       fm_name                  = fname2
    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 FNAME
    EXPORTING
      ARCHIVE_INDEX              =
      ARCHIVE_INDEX_TAB      =
      ARCHIVE_PARAMETERS =
      CONTROL_PARAMETERS=
      MAIL_APPL_OBJ              =
      MAIL_RECIPIENT              =
      MAIL_SENDER                 =
      OUTPUT_OPTIONS           =
      USER_SETTINGS             = 'X'
    IMPORTING
      DOCUMENT_OUTPUT_INFO =
      JOB_OUTPUT_INFO             =
      JOB_OUTPUT_OPTIONS      =
    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.
    ENDIF.

  • SAPScript  / SmartForm - 2 Forms & 2 Printer

    Hi All,
    I have a requirement as below. Please suggest me a suitable solution.
    1. The SAP Standard Program calls the Form. The Standard Form is modified to accommodate the client specific changes and added in Customization.
    2. If the numbers of pages to be printed is with in one page, Form1 to be used to print the same using Printer A for printing this Form1.
    2. If the numbers of pages to be printed are more than one page, Form2 to be used to print the same using Printer B for printing Form2.
    3. Form1 and Form2 have different page windows. That is, both First page and Next page are of different Format for both the Forms.
    Please write to me,
    1. Is it possible to accommodate the above requirement in SAPScript?
    1. Is it possible to accommodate the above requirement in SmartForm?
    Thanks in Advance,
    Kannan

    Hello
    Do you want to know the idea how find out which form should be called depending of number of pages?
    But the question is:
    How do you count number of pages ? Usually it's not possible to know that at program running.
    Do you count the number of positions? it is not save but it could be use... in the worst case...
    What would I do I would use surely ONLY smartform
    if I do not want to change Standard program.
    You can use in Smartform - COMMAND placed within MAIN Window of First page and with it control the flow of pages withouth any small change done in a Sap Standard Program.
    With Command included in MAIN Window you can jump to the diffrent pages.
    I think it is complicated but possible to manage...
    I have a lot of experience in creating strange
    Smartform Flows...
    Try to create:
    4 Pages
    FIRST1 (Next page parked as Next1)
    NEXT1  (Next page marked as Next1)
    FIRST2 (Next page parked as Next2)
    NEXT2  (Next page marked as Next2)
    (All of them has the same MAIN window
    and in that MAIN window depending on condition use
    COMMAND at the beggining and jumb to the
    requested PAGE accoring to condition
    either FIRST1 or FIRST2)
    You must try it and I cannot 100% assure you that it works
    Create a simple Smartform and try to test it.
    But I have no IDEA how to force printing it on diffrent printers... on diffrent trays it is possible but printers I have no idea...
    Greetings
    Bogusia [email protected]

  • PRINT MULTIPLE FORM

    Hi Guys,
    I have Created a Business Object (Eg- Preview) .
    Can anybody help me out in creating a solution for providing more than one preview option to the end user in the Purchase order/Sales order Scenario.
    Like, while looking at the Purchase Order preview, we get two options- Cancelled PO, & Changed PO.
    thanks & regards
    Manoj Kannaujiya.

    Hi Thomas,
    i want to print two different print form from a single preview button .
    i  have added  some extension field in sales order through adaptation.
    Now my customer want to print  default sales order form as well as extended field with default sales order form.
    these two form would be available on choices like a purchase Order Preview button in the  system .
    is it possible ..?
    thanks
    Manoj Kannaujiya.

  • How do I print a single image when multiple images are open?

    There was discussion on this back in 2009 but I hope that things have been put right - if they have, I can't find the answer.
    I have multiple images open and want to print just the top image. I can't do it - PSE prints all of them and uses the same settings for all of them!
    The solution appears to be to select the image to be printed in the project bin and then print. But I hate the project bin - simply a waste of screen area.
    Is using the project bin the only way to do this?
    Mac OS 10.6.8

    Click in the project bin to select it before you enter the print window.
    Oops, sorry, just saw your comment about that. Yes, the only way unless you want to just remove the others once in the PSE print window.

  • Print Multiple forms per Marketing Document SAP B1 2007

    When printing the Delivery document,  I need to print a Packing list and a Bill of Lading.  How can I acheive this in SAP B1 2007?  I am hoping there is a way when pressing the Print button that I can have both documents print like when printing and order,  having both an Order and a Pick list print.
    TIA!!!
    Dana

    Dana,
    You can have multiple Layout pages to the PLD.
    If you open the PLD of the Delivery document / any marketing document
    and From the Print layout designer Menu click display document properties... Paper format tab, you can add 2 or more pages in the field <b>Number of Layout Pages</b>.
    By this you can design the second page of the layout accordingly.
    Regards
    Suda

Maybe you are looking for

  • How do i take movies from my pc laptop hard drive and put them on my ipad?

    not sure how to drag movies on to the ipad.pls help

  • Function in a rawValue

    The below script allows me to place a date from mm-dd-yyyy format e.g. 05-17-2004 into Month Day, Year format, e.g. May 17, 2004. I used a Script Object function to convert the date. However how do I run the function inside the textfield.rawValue = 

  • User registration email notice

    I am trying to get this working in our user registration form in portal where user will only get an email when she is approved or denied by our USER admin team BUT not when he first register at PORTAl. Right now user register himself on portal and he

  • EP6 SP2 Metaframe XP

    We are currently experiencing Mayor problems on our Metaframe servers. When users access the Portal the portal loads up correcly. But as soon as they navigate within the portal it just refreshes the page it started up with. Are there any browser sett

  • Why does my iPhone 4 lose 3G signal when plugged into the TV with the AV Adapter?

    When I plug in my iPhone 4 (Verizon) or my husband's iPhone 4 (AT&T) to watch Netflix, Netflix stalls and the 3G signal disappears. I have tried connecting the adapter both before and after entering the application. I believe the digital AV adapter a