点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我正在尝试将文件保存在UI5应用程序中,但是文件损坏。以下是代码
从SAP读取文件
oModelFile.read(itemString,{ 成功:功能(数据,响应){ var fName = odata.ImFilename; var fType = odata.ImMimeType; var fMres = atob(odata.ImMediaResource); if(fType ==="文本/纯文本") { sap.ui.core.util.File.save(fMres,fName," txt",fType); } if(fType ===" image/png") { sap.ui.core.util.File.save(fMres,fName," png",fType); } if(fType ===" image/jpg") { sap.ui.core.util.File.save(fMres,fName," jpg",fType); } if(fType ===" application/pdf") { sap.ui.core.util.File.save(fMres,fName," pdf",fType); } if(fType ===" application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") { sap.ui.core.util.File.save(fMres,fName," xlsx",fType); }
正在读取文件
var reader = new FileReader(); reader.onload =函数(e){ var vContent = e.currentTarget.result.replace(" data:" + file.type +"; base64,",""); that.postImageToBackend(workorderId,that.fileName,that.fileType,vContent); }; reader.readAsDataURL(file);
在SAP中创建文件
postImageToBackend:函数(workorderId,fileName,fileType,Content){ var itemString ="/img/ZWOFileSet/"; var serviceURI ="/img/sap/opu/odata/sap/ZBM_MRKWO_FILE_SRV/"; var oDataModel = new sap.ui.model.odata.v2.ODataModel(serviceURI); var有效负载= { " ImWorkorder":workorderId, " ImFilename":fileName, " ImMediaResource":btoa(encodeURI(Content)), " ImMimeType":fileType }; oDataModel.create(itemString,有效负载,{ 成功:功能(){ sap.m.MessageBox.success("成功!;已创建文件上传"); } },
致谢
Bilal
Bilal
您尝试不使用" btoa"编码吗?
我还检查了编码和解码,效果很好
一周热门 更多>