最新sap abap dms文档开发.docx

上传人:b****6 文档编号:3082264 上传时间:2022-11-17 格式:DOCX 页数:14 大小:103.18KB
下载 相关 举报
最新sap abap dms文档开发.docx_第1页
第1页 / 共14页
最新sap abap dms文档开发.docx_第2页
第2页 / 共14页
最新sap abap dms文档开发.docx_第3页
第3页 / 共14页
最新sap abap dms文档开发.docx_第4页
第4页 / 共14页
最新sap abap dms文档开发.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

最新sap abap dms文档开发.docx

《最新sap abap dms文档开发.docx》由会员分享,可在线阅读,更多相关《最新sap abap dms文档开发.docx(14页珍藏版)》请在冰豆网上搜索。

最新sap abap dms文档开发.docx

最新sapabapdms文档开发

SAPABAPDMS文档开发

1.用到的BAPI:

BAPI_DOCUMENT_CREATE2,ZBAPI_DOCUMENT_CHECKOUTVIEW2,BAPI_DOCUMENT_DELETE_DIRECT

2.其中ZBAPI_DOCUMENT_CHECKOUTVIEW2是从标准的

BAPI_DOCUMENT_CHECKOUTVIEW2改写(标准的在导出文档时,会自定义一个文档名称);改动代码如下:

a)新增函数组ZMM_CVBAPI

b)将LCVBAPITOP的定义对象拷贝到LZMM_CVBAPITOP

c)在LZMM_CVBAPITOP最后添加如下:

INCLUDE lcvbapif01.

INCLUDE lcvbapif02.

INCLUDE lcvbapif03.

INCLUDE lcvbapif04.

INCLUDE lcvbapif05.

INCLUDE lcvbapif06.

INCLUDE lcvbapif07.

d)拷贝函数BAPI_DOCUMENT_CHECKOUTVIEW2到新ZBAPI_DOCUMENT_CHECKOUTVIEW2,添加IMPORT参ORFILENAME,并修改代码。

 

3.以下为参考代码:

* 文档类型

CONSTANTS:

 con_dokar(3) VALUE 'ZQX'.

* 存储类别

CONSTANTS:

 con_storage_cat(10) VALUE 'DMS_C1_ST'.

FORM frm_creat_file.

  DATA:

 lv_rc        TYPE i,

        lt_filetable TYPE filetable WITH HEADER LINE.

  DATA:

 lv_filename TYPE filep,

        lv_path     TYPE filep.

  DATA:

 lv_docnumber     TYPE bapi_doc_aux-docnumber.

  DATA:

 ls_documentdata  TYPE bapi_doc_draw2,

        ls_documentdatax TYPE bapi_doc_drawx2, "bapi_doc_draw2x,

        lt_objectlinks   TYPE TABLE OF bapi_doc_drad WITH HEADER LINE,

        lt_documentfiles TYPE TABLE OF bapi_doc_files2 WITH HEADER LINE,

        ls_return        TYPE bapiret2.

  DATA:

 t_tdwp TYPE TABLE OF tdwp WITH HEADER LINE.

  DATA:

 name    TYPE draw-filep,

        ext(64) TYPE c.

  CALL METHOD cl_gui_frontend_services=>file_open_dialog

    EXPORTING

      window_title            = '选择文件'

      default_extension       = '*'

    CHANGING

      file_table              = lt_filetable[]

      rc                      = lv_rc

    EXCEPTIONS

      file_open_dialog_failed = 1

      cntl_error              = 2

      error_no_gui            = 3

      not_supported_by_gui    = 4

      OTHERS                  = 9.

  IF lt_filetable[] IS INITIAL.

    EXIT.

  ENDIF.

  READ TABLE lt_filetable INDEX 1.

*解析路径文件

  PERFORM frm_split_path_file USING lt_filetable-filename

        CHANGING lv_filename lv_path.

  name = lv_filename.

  WHILE name CA '.'.

    SPLIT name AT '.' INTO ext name.

  ENDWHILE.

  CONCATENATE '.' name INTO name.

  TRANSLATE name TO LOWER CASE.

  CALL FUNCTION 'CV120_DOC_GET_APPL'

    EXPORTING

      pf_file  = name

    TABLES

      ptx_tdwp = t_tdwp.

  IF t_tdwp[] IS INITIAL.

    MESSAGE s001 WITH '不支持此类型文件'.

  ENDIF.

  READ TABLE t_tdwp INDEX 1.

  ls_documentdata-documenttype    = con_dokar.

  ls_documentdata-documentversion = '00'.

  ls_documentdata-documentpart    = '000'.

  ls_documentdata-description     = '凭证描述'.

  ls_documentdata-username        = sy-uname.

*  ls_documentdata-ecnumber        = '123'.

  READ TABLE t_tdwp INDEX 1.

  lt_documentfiles-documenttype    = 'ZQX'.

  lt_documentfiles-storagecategory = con_storage_cat.

  lt_documentfiles-wsapplication   = t_tdwp-dappl.

  lt_documentfiles-docpath         = lv_path.

  lt_documentfiles-docfile         = lv_filename.

  lt_documentfiles-checkedin       = 'X'.

  APPEND lt_documentfiles.

  CALL FUNCTION 'BAPI_DOCUMENT_CREATE2'

    EXPORTING

      documentdata   = ls_documentdata

    IMPORTING

      documentnumber = lv_docnumber

      return         = ls_return

    TABLES

      objectlinks    = lt_objectlinks

      documentfiles  = lt_documentfiles.

  IF ls_return-type = 'E' OR lv_docnumber IS INITIAL.

*    MESSAGE e001 WITH '上传文件出错,请联系管理员'.

    MESSAGE ID ls_return-id TYPE ls_return-type NUMBER ls_return-number

      WITH ls_return-message_v1 ls_return-message_v2 ls_return-message_v3 ls_return-message_v4.

  ELSE.

    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.

    MESSAGE s001 WITH '上传成功'.

  ENDIF.

 

  wa_file-doc_id = lv_docnumber.

  wa_file-dname = lv_filename.

  wa_file-yk_planno = wa_xqjh_h-yk_planno.

  wa_file-dtype = name.

  wa_file-credat = sy-datum.

  wa_file-ctime = sy-uzeit.

  wa_file-cname = sy-uname.

  APPEND wa_file TO it_file.

  IF wa_xqjh_h-yk_planno IS NOT INITIAL.

    MODIFY ztmm_xqjh_file FROM wa_file.

    COMMIT WORK AND WAIT.

  ENDIF.

ENDFORM.                    " FRM_UPLOAD_FILE

*&---------------------------------------------------------------------*

*&      Form  frm_split_path_file

*&---------------------------------------------------------------------*

*       text拆分路径和文档名

*----------------------------------------------------------------------*

*  -->  p1        text

*  <--  p2        text

*----------------------------------------------------------------------*

FORM frm_split_path_file  USING uv_fullname CHANGING cv_filename cv_pathname.

  DATA:

 lt_match TYPE match_result_tab,

        ls_match LIKE LINE OF lt_match.

  FIND ALL OCCURRENCES OF '\' IN uv_fullname IN CHARACTER MODE RESULTS lt_match.

  IF NOT lt_match IS INITIAL.

    LOOP AT lt_match INTO ls_match.

    ENDLOOP.

    ADD 1 TO ls_match-offset.

    cv_pathname = uv_fullname(ls_match-offset).

    cv_filename = uv_fullname+ls_match-offset.

  ENDIF.

ENDFORM.

*&---------------------------------------------------------------------*

*&      Form  FRM_READ_FILE

*&-

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1