将文件从应用程序服务器(AL11)上载到DMS

2020-08-16 12:51发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我的AL11中存在P...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我的AL11中存在PDF文件,并且想使用BAPI在DMS系统中上载相同的文件:BAPI_DOCUMENT_CHANGE2。 首先使用BAPI创建DMS文档编号:BAPI_DOCUMENT_CREATE,然后通过提供应用服务器路径和文件名,调用change BAPI来附加来自应用服务器的文档。 伙计们,这很紧急,从过去两天开始一直在尝试,但未能实现。

您能否建议我,是否可以将文件从Al11上传到DMS? 似乎有可能,但找不到方法。

以下链接: ls_documentdata-description = lv_dartxt。"'正在测试DMS-Ecratum'。
ls_documentdata-username = sy-uname。
ls_documentdata-statusextern ='RE'。

调用功能'BAPI_DOCUMENT_CREATE'
导出
documentdata = ls_documentdata
IMPORTING
doctype = dms_key-dokar
docnumber = dms_key-doknr
docpart = dms_key-doktl
_docversion = d dokvr
return = ls_return。

通话功能'BAPI_TRANSACTION_COMMIT'
EXPORTING
等待= abap_true
IMPORTING
return = ls_return。

***** ----通过从应用程序服务器获取文件来附加文档

类型:ts_document_hdr的开始,
TYPE dokar的类型,
数字TYPE doknr,
部件TYPE doktl_d,
版本TYPE dokvr,
ts_document_hdr的结尾。

数据:ls_document_hdr类型ts_document_hdr,
" ls_documentdata类型bapi_doc_drawx2,
ls_documentdatax类型bapi_doc_drawx2。 doknr。
ls_document_hdr-part = dms_key-doktl。
ls_document_hdr-version = dms_key-dokvr。

*文档数据
ls_documentdata1-wsapplication2 ='PDF'。" p_filty。
ls_documentdatax-wsapplication2 = abap_true。
ls_documentdata1-docfile2 ='/usr/sap/trans/
FlowChart.pdf 。 " p_path && p_filnm。
ls_documentdatax-docfile2 = abap_true。

*文档文件
ls_files-documenttype = ls_document_hdr-type。
ls_files-documentnumber = ls_document_hdr-number。
ls_files- documentpart = ls_document_hdr-part。
ls_files-documentversion = ls_document_hdr-version。
ls_files-docpath ='/usr/sap/trans/'。" p_path。
ls_files-docfile ='
FlowChart.pdf "。 " p_filnm。
ls_files-description ='文件名'&&'/usr/sap/trans/'&&' FlowChart .pdf '。
ls_files-wsapplication ='PDF'。" p_filty。
* ls_files-sourcedatacarrier ='DV-1'。 " p_datcar。
ls_files-originaltype ='1'。
ls_files-storagecategory ='DMS_C1_ST'。"在这里尝试使用" SAP-SYSTEM"
附加ls_files到lt_files。

*附加
调用功能'BAPI_DOCUMENT_CHANGE2'
导出
documenttype = ls_document_hdr-type
documentnumber = ls_document_hdr-number
documentpart = ls_document_hdr-part
documentversion = ls_document_hdr-version < br> documentdata = ls_documentdata1
documentdatax = ls_documentdatax
导入
return = ls_return
TABLES
documentfiles = lt_files。

如果ls_return-type NE'E'。
呼叫功能'BAPI_TRANSACTION_COMMIT'
导出
等待= abap_true。
消息s000(zz)与'成功'。
ELSE。
呼叫功能'BAPI_TRANSACTION_ROLLBACK'。
消息ID ls_return- id TYPE ls_return-type NUMBER ls_return-number
带ls_return-message_v1 ls_return-message_v2 ls_return-message_v3 ls_return-message_v4。
ENDIF。

运行上述代码后,出现以下错误。

根据要求,非常紧急。请做需要的事

致谢

Madan Chandragiri

(19.6 kB)
9条回答
Baoming ROSE
2020-08-16 13:11

嗨,桑德拉,

是的。 PDF文件存在于应用程序服务器中,应在DMS中上载。 按照您的建议,交叉检查应用程序服务器的路径和文件名,一切似乎正常,然后调用程序:RSFTP005,并在ST01中也检查了跟踪。 坦白地说,没有得到任何追踪。

通过使用BAPI:BAPI_DOCUMENT_CREATE2传递SAPFTPA/SAPHTTPA再次尝试,仍然出现相同的错误。 其他解决方案或有效代码。

致谢

Madan Chandragiri

一周热门 更多>