• adobe form


    Call Adobe Form through ABAP Program
    2015-04-24      0 个评论    来源:ChampaignWolf的专栏  
    收藏    我要投稿

    Scenario

    Create an Adobe Form and call it through an ABAP Program

    Pre-request:

    1) In the Front End System Adobe Life Cycle Designer has to install. Then only the Adobe Form Layout and Adobe form will open in the SAP system
    2) Adobe Reader 8.0 and above version has to installed

    Steps to Create and Call the adobe form

    1) Create a Table Type for a Table
    2) Create the Interface for the Adobe Form
    3) Create the Adobe Form and design the layout
    4) Write a Program to Call the Adobe Form

    Step by Step Approach

    1) Create a Table Type for a Table

    Go to the Transaction Code "SE11" and give the Table Type name as "zmari_tb1".


    Then click "Create" and a popup will appear as shown below.

    Select the radio button "Table Type" and press enter

    Enter the Table Name 'MARI' in the line type.

    Then save it as Local Object and activate it.

    Activate the Table Type.

    2) Create the Interface for the Adobe Form

    Go to Transaction code 'SFP' and create the Interface for the ADOBE FORM

    Enter the Interface Name as 'ZSUR_ADOBE_INTR' and click "Create"

    Give the Description and click save.

    Give Description and press enter

    Save as Local Object

    Then the below screen will appear.

    Then Click "Append Row" icon as indicated below.

    Then as new row will inserted and assign the Table Type ZMARI_TBL value as shown below.

    Then activate it.

    Then go back and Give the Adobe Form name click Create.

    3) Create Adobe Form and design the layout in the Same Transaction Code "SFP"

    Give the Description and the Interface name, which just created as indicated below.

    Then Save as Local Object.

    Then the below Screen will appear.

    Expand the import button and you can find the Table Parameter ZMARI.

    Then Drag and drop it to the Context as shown below

    After Drag and Drop the Table type to Context, then below screen will appear.

    Then Click the "Layout" Tab and the Below Screen will appear.

    Drag and Drop the table type "ZMARI" to Design View Layout as indicated below.

    Then adjust the Table in the Top center of the layout as shown below.

    Select the 'Text' from the Library and drop it the Layout 'Design" View and give a description to the Table as shown below.

    Then Activate the Adobe form

    4) Write a Program to Call the Adobe Form

    Go to Transaction code SE38 and Create a Test Program "ZCALL_ADOBE_FORM".

    Save it as local Object.

    Then enter the Below Code.

    REPORT  zcall_adobe_form.
    &-----------------------------------------------------------------------&
    *& Author  : P Surjith Kumar
    *& Purpose : Call the Adobe form in the ABAP Program
    *&------------------------------------------------------------------------
    DATA: fm_name           TYPE rs38l_fnam,      " CHAR300 Name of Function Module
          fp_docparams      TYPE sfpdocparams,    " Structure  SFPDOCPARAMS Short Description  Form ParametersforForm Processing
          fp_outputparams   TYPE sfpoutputparams, " Structure  SFPOUTPUTPARAMS Short Description  Form Processing Output Parameter
          it_mari           TYPE zmari_tbl.       " Table Type ZMARI_TBL MARI Table Tyoe
    * Sets the output parameters and opens the spool job
    CALL FUNCTION 'FP_JOB_OPEN'                   "& Form Processing: Call Form
      CHANGING
        ie_outputparams = fp_outputparams
      EXCEPTIONS
        cancel          =1
        usage_error     =2
        system_error    =3
        internal_error  =4
        OTHERS          =5.
    IF sy-subrc <> 0.
    *            <error handling>
    ENDIF.
    *&---- Get the name of the generated function module
    CALL FUNCTION 'FP_FUNCTION_MODULE_NAME'           "& Form Processing Generation
      EXPORTING
        i_name     ='ZSUR_ADOBE_FORM'
      IMPORTING
        e_funcname = fm_name.
    IF sy-subrc <> 0.
    *  <error handling>
    ENDIF.
    *-- Fetch the Data and store it in the Internal Table
    SELECT * FROM mari INTO TABLE it_mari UP TO15ROWS.
    * Language and country setting (here US as an example)
    fp_docparams-langu   ='E'.
    fp_docparams-country ='US'.
    *&--- Call the generated function module
    CALL FUNCTION fm_name
      EXPORTING
        /1bcdwb/docparams        = fp_docparams
        zmari                   = it_mari
    *    IMPORTING
    *     /1BCDWB/FORMOUTPUT       =
      EXCEPTIONS
        usage_error           =1
        system_error          =2
        internal_error           =3.
    IF sy-subrc <> 0.
    *  <error handling>
    ENDIF.
    *&---- Close the spool job
    CALL FUNCTION 'FP_JOB_CLOSE'
    *    IMPORTING
    *     E_RESULT             =
      EXCEPTIONS
        usage_error           =1
        system_error          =2
        internal_error        =3
        OTHERS               =4.
    IF sy-subrc <> 0.
    *            <error handling>
    ENDIF.
    

    Then activate and Execute (F8) it.

    Then the printer screen will appear.

    Click the Print Preview

    Then the Output will shown as below.

  • 相关阅读:
    isObject:判断数据是不是引用类型的数据 (例如: arrays, functions, objects, regexes, new Number(0),以及 new String(''))
    isPrimitive:检测数据是不是原始数据
    FastDFS集群部署
    大数据系列之分布式大数据查询引擎Presto
    大数据系列之数据仓库Hive原理
    大数据系列之数据仓库Hive中分区Partition如何使用
    关于Java中final关键字的详细介绍
    关于分布式存储系统中-CAP原则(CAP定理)与BASE理论比较
    过拟合及其对策
    深入理解L1、L2正则化
  • 原文地址:https://www.cnblogs.com/goodsmith/p/4482470.html
Copyright © 2020-2023  润新知