1、SAP ABAP DMS文档管理开发SAP ABAP DMS文档开发 1. 用到的BAPI:BAPI_DOCUMENT_CREATE2 ,ZBAPI_DOCUMENT_CHECKOUTVIEW2,BAPI_DOCUMENT_DELETE_DIRECT2. 其中ZBAPI_DOCUMENT_CHECKOUTVIEW2是从标准的BAPI_DOCUMENT_CHECKOUTVIEW2改写(标准的在导出文档时,会自定义一个文档名称);改动代码如下:a) 新增函数组ZMM_CVBAPIb) 将LCVBAPITOP的定义对象拷贝到LZMM_CVBAPITOPc) 在LZMM_CVBAPITOP最后添加如下
2、:INCLUDElcvbapif01.INCLUDElcvbapif02.INCLUDElcvbapif03.INCLUDElcvbapif04.INCLUDElcvbapif05.INCLUDElcvbapif06.INCLUDElcvbapif07.d) 拷贝函数BAPI_DOCUMENT_CHECKOUTVIEW2到新ZBAPI_DOCUMENT_CHECKOUTVIEW2,添加IMPORT参ORFILENAME,并修改代码。3. 以下为参考代码:*文档类型CONSTANTS:con_dokar(3)VALUEZQX.*存储类别CONSTANTS:con_storage_cat(10)V
3、ALUEDMS_C1_ST.FORMfrm_creat_file.DATA:lv_rcTYPEi,lt_filetableTYPEfiletableWITHHEADERLINE.DATA:lv_filenameTYPEfilep,lv_pathTYPEfilep.DATA:lv_docnumberTYPEbapi_doc_aux-docnumber.DATA:ls_documentdataTYPEbapi_doc_draw2,ls_documentdataxTYPEbapi_doc_drawx2,bapi_doc_draw2x,lt_objectlinksTYPETABLEOFbapi_doc
4、_dradWITHHEADERLINE,lt_documentfilesTYPETABLEOFbapi_doc_files2WITHHEADERLINE,ls_returnTYPEbapiret2.DATA:t_tdwpTYPETABLEOFtdwpWITHHEADERLINE.DATA:nameTYPEdraw-filep,ext(64)TYPEc.CALLMETHODcl_gui_frontend_services=file_open_dialogEXPORTINGwindow_title=选择文件default_extension=*CHANGINGfile_table=lt_filet
5、ablerc=lv_rcEXCEPTIONSfile_open_dialog_failed=1cntl_error=2error_no_gui=3not_supported_by_gui=4OTHERS=9.IFlt_filetableISINITIAL.EXIT.ENDIF.READTABLElt_filetableINDEX1.*解析路径文件PERFORMfrm_split_path_fileUSINGlt_filetable-filenameCHANGINGlv_filenamelv_path.name=lv_filename.WHILEnameCA.SPLITnameAT.INTOex
6、tname.ENDWHILE.CONCATENATE.nameINTOname.TRANSLATEnameTOLOWERCASE.CALLFUNCTIONCV120_DOC_GET_APPLEXPORTINGpf_file=nameTABLESptx_tdwp=t_tdwp.IFt_tdwpISINITIAL.MESSAGEs001WITH不支持此类型文件.ENDIF.READTABLEt_tdwpINDEX1.ls_documentdata-documenttype=con_dokar.ls_documentdata-documentversion=00.ls_documentdata-do
7、cumentpart=000.ls_documentdata-description=凭证描述.ls_documentdata-username=sy-uname.*ls_documentdata-ecnumber=123.READTABLEt_tdwpINDEX1.lt_documentfiles-documenttype=ZQX.lt_documentfiles-storagecategory=con_storage_cat.lt_documentfiles-wsapplication=t_tdwp-dappl.lt_documentfiles-docpath=lv_path.lt_doc
8、umentfiles-docfile=lv_filename.lt_documentfiles-checkedin=X.APPENDlt_documentfiles.CALLFUNCTIONBAPI_DOCUMENT_CREATE2EXPORTINGdocumentdata=ls_documentdataIMPORTINGdocumentnumber=lv_docnumberreturn=ls_returnTABLESobjectlinks=lt_objectlinksdocumentfiles=lt_documentfiles.IFls_return-type=EORlv_docnumber
9、ISINITIAL.*MESSAGEe001WITH上传文件出错,请联系管理员.MESSAGEIDls_return-idTYPEls_return-typeNUMBERls_return-numberWITHls_return-message_v1ls_return-message_v2ls_return-message_v3ls_return-message_v4.ELSE.CALLFUNCTIONBAPI_TRANSACTION_COMMIT.MESSAGEs001WITH上传成功.ENDIF.wa_file-doc_id=lv_docnumber.wa_file-dname=lv_fi
10、lename.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.APPENDwa_fileTOit_file.IFwa_xqjh_h-yk_plannoISNOTINITIAL.MODIFYztmm_xqjh_fileFROMwa_file.COMMITWORKANDWAIT.ENDIF.ENDFORM.FRM_UPLOAD_FILE*&-*&Formfrm_split_path_file*&
11、-*text拆分路径和文档名*-*-p1text*p1text*directory_exist(directory=lv_file).IFlv_resultX.CALLMETHODcl_gui_frontend_services=directory_createEXPORTINGdirectory=lv_fileCHANGINGrc=lv_rcEXCEPTIONSdirectory_create_failed=1cntl_error=2error_no_gui=3directory_access_denied=4directory_already_exists=5path_not_found=
12、6unknown_error=7not_supported_by_gui=8wrong_parameter=9OTHERS=10.IFlv_rc0ORsy-subrc0.MESSAGEe001WITH文件路径拒绝访问.ENDIF.ENDIF.GETCURSORLINElv_line.READTABLEit_fileINTOwa_fileINDEXlv_line.CONCATENATElv_fileINTOlv_originalpath.lv_orfilename=wa_file-dname.CALLFUNCTIONZBAPI_DOCUMENT_CHECKOUTVIEW2EXPORTINGdoc
13、umenttype=con_dokardocumentnumber=wa_file-doc_iddocumentpart=000documentversion=00documentfile=ls_documentfileoriginalpath=lv_originalpathorfilename=lv_orfilenameIMPORTINGreturn=ls_return.IFls_returnISNOTINITIAL.MESSAGEIDls_return-idTYPEls_return-typeNUMBERls_return-numberWITHls_return-message_v1ls_
14、return-message_v2ls_return-message_v3ls_return-message_v4.ENDIF.CONCATENATElv_originalpathlv_orfilenameINTOlv_path.CALLMETHODcl_gui_frontend_services=executeEXPORTINGdocument=lv_pathsynchronous=XEXCEPTIONScntl_error=1error_no_gui=2bad_parameter=3file_not_found=4path_not_found=5file_extension_unknown
15、=6error_execute_failed=7synchronous_failed=8not_supported_by_gui=9OTHERS=10.IFsy-subrc0.*ImplementsuitableerrorhandlinghereMESSAGEs001WITH打开文档失败DISPLAYLIKEE.ENDIF.ENDFORM.FRM_READ_FILE*&-*&FormFRM_DOWN_FILE*&-*text*-*-p1text*file_save_dialogEXPORTINGwindow_title=选择位置*default_extension=default_file_n
16、ame=lv_filename*with_encoding=*file_filter=*initial_directory=*prompt_on_overwrite=XCHANGINGfilename=lv_filenamepath=lv_pathfullpath=lv_fullpathEXCEPTIONScntl_error=1error_no_gui=2not_supported_by_gui=3invalid_default_file_name=4OTHERS=5.IFsy-subrc0.EXIT.ENDIF.lv_result=cl_gui_frontend_services=directory_exist(directory=lv_path).IFlv_resultX.MESSAGEe001WITH文件路径不存在.ENDIF.lv_originalpath=lv_path.lv_orfilename=lv_filename.CALLFUNCTIONZBAPI_DOCUMENT_CHECKOUTVIEW2EXPORTINGdocumenttype=con_dokardocumentnumber=wa_file-doc_iddocumentpart
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1