sap.m.UploadCollection在Chrome浏览器中上载\下载.msg文件类型时出现问题?

2020-09-05 17:55发布

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

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


相同文件和相同文件类型上载和下载在IE11中正常工作。 但是在Chrome(75.0)中显示错误。

无法识别是必须从前端端还是后端网关端进行纠正。

从chrome中打开.msg文件时出现错误消息。

文件属性有所不同,例如从Chrome下载时没有自定义标签。(所有.msg文件的"自定义数据"标签都是从Outlook中保存的)

从IE下载时的文件属性

从Chrome下载的

文件属性

查看代码

 
 
 
 <内容>
  
 
 <页脚>
 
 
 
 
 

用于文件上传的控制器代码

 var a ="/img/sap/opu/odata/sap/Z_XYZ_PD_DB_SRV";
 var f = {
 标头:{
 " X-Requested-With":" XMLHttpRequest",
 " Content-Type":" application/atom + xml",
 " DataServiceVersion":" 2.0",
 " X-CSRF-Token":"获取",
 },
 requestUri:一个,
 方法:" GET"
 };
 var oHeaders;
 var sUrl ="/img/sap/opu/odata/sap/Z_XYZ_PD_DB_SRV; mo/AttachmainSet(SAP__Origin ='" + window.oGlobalSysAlias +
 "',Filename ='" + file.name +"')/AttachmentDetailsS​​et";
 OData.request(f,函数(数据,成功){
 var oToken = oSuccess.headers [" x-csrf-token"];
 oHeaders = {
 " x-csrf-token":oToken,
 " slug":" U ||"  + window.viewFlag +" || G ||"  + window.oPrKey +" ||"  + $ .sap.oGlobalOrderNo +" || ||"  + file.name,
 " PrRangeKey":window.oPrKey,
 " PrTypeKey":""
 };
/****************要获取CSRF令牌********************/


/*******************要上传文件************************/

 var filetype = file.type;
 var oURL = sUrl;
 var base64_marker ='数据:'+文件类型+'; base64,';



 var reader = new FileReader();
 reader.onload =(function(sFilename){
 返回函数(evt){
 var base64Index = evt.target.result.indexOf(base64_marker)+ base64_marker.length;
 var base64 = evt.target.result.substring(base64Index);
 jQuery.ajax({
 输入:" POST",
 网址:oURL,
 标头:oHeader,
 快取:false,
 contentType:文件类型,
 processData:否,
 数据:base64,
 成功:功能(数据){
 如果(oPrRangeFlag === true){
 window.oPrKey = data.childNodes [0] .childNodes [6] .childNodes [1] .firstChild.nodeValue;
 AppService.getSharedModel()。getProperty(window.oPrKeyPath).PrKey = data.childNodes [0] .childNodes [6] .childNodes [1] .firstChild.nodeValue;
 AppService.getSharedModel()。refresh(true);
 oPrRangeFlag = false;
 }
 that.onAttachmentsGlClose();
 busyDialog.close();
 busyDialog.setVisible(false);
 如果(data.childNodes [0] .childNodes [6] .childNodes [4] .firstChild.nodeValue ==="成功上传"){
 sap.m.MessageToast.show(I18nService.getResourceBundle()。getText(
 " detailPage_PriceMatrixTab_UploadSuccess"));
 var oPrRangeKey = window.oPrKey;
 var oPrTypeKey ="";
 var oIdentifier = window.viewFlag;
 var oReadType =" RG";
 MaintenancePriceService.getAttachmentsGl(oPrRangeKey,oPrTypeKey,oIdentifier,oReadType);
 }
 如果(data.childNodes [0] .childNodes [6] .childNodes [4] .firstChild.nodeValue ==="上传失败"){
 sap.m.MessageToast.show(I18nService.getResourceBundle()。getText(" detailPage_PriceMatrixTab_UploadFailed"));
 }


 },
 错误:函数(数据){
 that.onAttachmentsGlClose();
 busyDialog.close();
 busyDialog.setVisible(false);
 sap.m.MessageToast.show(I18nService.getResourceBundle()。getText(" detailPage_PriceMatrixTab_UploadFailed"));
 }
 });
 };
 })(文件);
 reader.readAsDataURL(file);
 });
 

(8.2 kB)

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

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


相同文件和相同文件类型上载和下载在IE11中正常工作。 但是在Chrome(75.0)中显示错误。

无法识别是必须从前端端还是后端网关端进行纠正。

从chrome中打开.msg文件时出现错误消息。

文件属性有所不同,例如从Chrome下载时没有自定义标签。(所有.msg文件的"自定义数据"标签都是从Outlook中保存的)

从IE下载时的文件属性

从Chrome下载的

文件属性

查看代码

 
 
 
 <内容>
  
 
 <页脚>
 
 
 
 
 

用于文件上传的控制器代码

 var a ="/img/sap/opu/odata/sap/Z_XYZ_PD_DB_SRV";
 var f = {
 标头:{
 " X-Requested-With":" XMLHttpRequest",
 " Content-Type":" application/atom + xml",
 " DataServiceVersion":" 2.0",
 " X-CSRF-Token":"获取",
 },
 requestUri:一个,
 方法:" GET"
 };
 var oHeaders;
 var sUrl ="/img/sap/opu/odata/sap/Z_XYZ_PD_DB_SRV; mo/AttachmainSet(SAP__Origin ='" + window.oGlobalSysAlias +
 "',Filename ='" + file.name +"')/AttachmentDetailsS​​et";
 OData.request(f,函数(数据,成功){
 var oToken = oSuccess.headers [" x-csrf-token"];
 oHeaders = {
 " x-csrf-token":oToken,
 " slug":" U ||"  + window.viewFlag +" || G ||"  + window.oPrKey +" ||"  + $ .sap.oGlobalOrderNo +" || ||"  + file.name,
 " PrRangeKey":window.oPrKey,
 " PrTypeKey":""
 };
/****************要获取CSRF令牌********************/


/*******************要上传文件************************/

 var filetype = file.type;
 var oURL = sUrl;
 var base64_marker ='数据:'+文件类型+'; base64,';



 var reader = new FileReader();
 reader.onload =(function(sFilename){
 返回函数(evt){
 var base64Index = evt.target.result.indexOf(base64_marker)+ base64_marker.length;
 var base64 = evt.target.result.substring(base64Index);
 jQuery.ajax({
 输入:" POST",
 网址:oURL,
 标头:oHeader,
 快取:false,
 contentType:文件类型,
 processData:否,
 数据:base64,
 成功:功能(数据){
 如果(oPrRangeFlag === true){
 window.oPrKey = data.childNodes [0] .childNodes [6] .childNodes [1] .firstChild.nodeValue;
 AppService.getSharedModel()。getProperty(window.oPrKeyPath).PrKey = data.childNodes [0] .childNodes [6] .childNodes [1] .firstChild.nodeValue;
 AppService.getSharedModel()。refresh(true);
 oPrRangeFlag = false;
 }
 that.onAttachmentsGlClose();
 busyDialog.close();
 busyDialog.setVisible(false);
 如果(data.childNodes [0] .childNodes [6] .childNodes [4] .firstChild.nodeValue ==="成功上传"){
 sap.m.MessageToast.show(I18nService.getResourceBundle()。getText(
 " detailPage_PriceMatrixTab_UploadSuccess"));
 var oPrRangeKey = window.oPrKey;
 var oPrTypeKey ="";
 var oIdentifier = window.viewFlag;
 var oReadType =" RG";
 MaintenancePriceService.getAttachmentsGl(oPrRangeKey,oPrTypeKey,oIdentifier,oReadType);
 }
 如果(data.childNodes [0] .childNodes [6] .childNodes [4] .firstChild.nodeValue ==="上传失败"){
 sap.m.MessageToast.show(I18nService.getResourceBundle()。getText(" detailPage_PriceMatrixTab_UploadFailed"));
 }


 },
 错误:函数(数据){
 that.onAttachmentsGlClose();
 busyDialog.close();
 busyDialog.setVisible(false);
 sap.m.MessageToast.show(I18nService.getResourceBundle()。getText(" detailPage_PriceMatrixTab_UploadFailed"));
 }
 });
 };
 })(文件);
 reader.readAsDataURL(file);
 });
 

(8.2 kB)
付费偷看设置
发送
2条回答
N-Moskvin
1楼-- · 2020-09-05 18:30

Sachin,

您的问题与SAP Cloud Appliance库无关。

请删除标签[SAP Cloud Appliance库]。

感谢和问候,

Aleksandar

悠然的二货
2楼-- · 2020-09-05 18:29

(如果在Chrome浏览器中将.msg更改为.txt可以正常上传和下载。
从chrome上将.msg扩展名更改为.txt)

并从chrome下载相同的文件将.txt更改为.msg,可以在Outlook中正常运行。

一周热门 更多>