SAP----Adobe form 总结

步骤

1:t-code: sfp 新建interface,定义好页面需要显示的数据作为变量

2:  t-code: sfp 新建form,关联步骤一建立的interface

3:  form 中layout的设计,层级控制(Hierarchy),对象属性,如绑定值可以在palette---->object -->Binding 里设置。

    需要注意的是,如何默认控制文本换页显示,请勾选以下check box.

call_adobe_form

  CALL FUNCTION 'FP_JOB_OPEN'
    CHANGING
      ie_outputparams = fp_outputparams
    EXCEPTIONS
      cancel          = 1
      usage_error     = 2
      system_error    = 3
      internal_error  = 4
      OTHERS          = 5.
  IF sy-subrc <> 0.
  Endif.
  TRY.

      CALL FUNCTION 'FP_FUNCTION_MODULE_NAME'
        EXPORTING
          i_name     = form_name
        IMPORTING
          e_funcname = fm_name.
    CATCH cx_root INTO gv_w_cx_root.
      lv_mesg = gv_w_cx_root->get_text( ).
      MESSAGE lv_mesg TYPE 'E'.
  ENDTRY.
  CALL FUNCTION fm_name
    EXPORTING
      /1bcdwb/docparams  = fp_docparams
      zvbdka             = vbdka
      item               = it_items[]
      ship_to            = wa_ship_to
      sold_to            = wa_sold_to
      zuser              = usr03
      za_projnm          = g_za_projnm
      za_win_date        = g_za_win_date
      z_disc_tot         = v_disc_tot
**<<V08.00
      z_charges          = v_charges
**>>V08.00
      z_sum1             = v_sum1
      z_tax_rate         = tax_rate
      z_total_tax        = total_tax
      z_total            = v_total
      z_co_addr          = wa_salesorg
      z_country          = wa_country
      z_testdoc          = l_testdoc
      za_cust_nm         = gv_za_cust_nm           " V03.00
      za_cntrtno         = gv_za_cntrtno           " V03.00
      ztext01            = lw_ztext                " V05.00
      footer_obj         = lv_footerobjname        " V05.00
      footer_obj1        = lv_footerobjname1      " V06.00
      lang               = p_lan                   " V05.00
    IMPORTING
      /1bcdwb/formoutput = fp_form_output
    EXCEPTIONS
      usage_error
      =1
      system_error
      =2
      internal_error
      =3.
  IF sy-subrc <> 0.
*  <error handling>
    MESSAGE ID 'ZV_SAP1' TYPE 'E' NUMBER 999 WITH
       'Adobe function errored out; RC='(251) sy-subrc  ##TEXT_POOL.
  ENDIF.

  CALL FUNCTION 'FP_JOB_CLOSE'
    IMPORTING
      e_result       = fp_result
    EXCEPTIONS
      usage_error    = 1
      system_error   = 2
      internal_error = 3
      OTHERS         = 4.
  IF sy-subrc = 0.
    IF  nast-nacha = '7' OR ( nast-nacha = '5' AND nast-anzal = '0' )
                          OR p_mail = 'X'.
      PERFORM external_send_email.
    ELSEIF nast-nacha = 1 .
      retcode = 0.
    ENDIF.
  ELSE.
    MESSAGE ID 'ZV_SAP1' TYPE 'E' NUMBER 999 WITH
               'Job (spool) close failed; RC='(250) sy-subrc  ##TEXT_POOL.
  ENDIF.

猜你喜欢

转载自www.cnblogs.com/HARU/p/11935051.html
今日推荐