2017-06-27 5 views
-1

Foliiアプリケーション用のoDataサービスから添付ファイルをUploadCollectionを使用してフラグメント内にアップロードしようとしています。Sapui5 Upload Collection oDataからアップロードアタッチメント

フラグメントコード:

<core:FragmentDefinition xmlns:l="sap.ui.layout" xmlns:f="sap.ui.layout.form" xmlns:core="sap.ui.core" xmlns="sap.m" 
 
\t xmlns:mvc="sap.ui.core.mvc"> 
 
\t <UploadCollection id="UploadCollection" maximumFilenameLength="55" multiple="true" change="onChange" fileDeleted="onFileDeleted" 
 
\t \t fileRenamed="onFileRenamed" fileSizeExceed="onFileSizeExceed" items="{/DataAttachment}" typeMissmatch="onTypeMissmatch" 
 
\t \t uploadComplete="onUploadComplete"> 
 
\t \t <items> 
 
\t \t <UploadCollectionItem contributor="{contributor}" documentId="{documentId}" fileName="{fileName}" fileSize="{fileSize}" 
 
\t \t \t \t mimeType="{mimeType}" thumbnailUrl="{thumbnailUrl}" uploadedDate="{uploadedDate}" enableEdit="{enableEdit}" enableDelete="{enableDelete}"/> 
 
\t \t </items> 
 
\t </UploadCollection> 
 
</core:FragmentDefinition>

詳細コード:

<IconTabFilter icon="sap-icon://attachment" iconColor="Neutral" design="Horizontal" text="Attachment" key="Attachment"> 
 
\t \t \t \t \t \t <content> 
 
\t \t \t \t \t \t \t <core:Fragment id="AttachmentFrag" fragmentName="ztravel.view.Attachment" type="XML"/> 
 
\t \t \t \t \t \t </content> 
 
</IconTabFilter>

コントローラ詳細コード:

\t \t \t var sEntityPath = new sap.ui.model.odata.ODataModel("/sap/opu/odata/sap/ZSERVICE/", true); 
 

 
\t \t \t // this.setModel(oViewModel); 
 

 
\t \t \t // this.getView().bindElement("/DataAttachment"); 
 
\t \t \t 
 
\t \t \t var oView = this.getView(); 
 
\t \t \t 
 
\t \t \t // oView.bindElement(sEntityPath); 
 
\t \t \t // update list binding 
 
\t \t \t var sAttach = sEntityPath + "/DataAttachment"; 
 
\t \t \t 
 

 
\t \t \t var oItemTemplate = new sap.m.UploadCollectionItem({ 
 
\t \t \t \t documentId: "{Pernr}", 
 
\t \t \t \t fileName: "{Reinr}", 
 
\t \t \t \t mimeType: "{ImMimeType}", 
 
\t \t \t \t thumbnailUrl: "", 
 
\t \t \t \t // url: { 
 
\t \t \t \t // \t parts: [{ 
 
\t \t \t \t // \t \t path: 'ImImgEqui' 
 
\t \t \t \t // \t }, { 
 
\t \t \t \t // \t \t path: 'ImIdEqui' 
 
\t \t \t \t // \t }], 
 
\t \t \t \t // \t formatter: function(idimg, idequi) { 
 
\t \t \t \t // \t \t return oView.getModel().sServiceUrl + "/AttachmentsSet(ImImgEqui='" + idimg + "',ImIdEqui='" + idequi + "')/$value"; 
 
\t \t \t \t // \t } 
 
\t \t \t \t // }, 
 

 
\t \t \t \t enableEdit: false, 
 
\t \t \t \t enableDelete: false, 
 
\t \t \t \t visibleDelete: false, 
 
\t \t \t \t visibleEdit: false, 
 
\t \t \t \t statuses: new sap.m.ObjectStatus({ 
 
\t \t \t \t \t title: "Uploaded On", 
 
\t \t \t \t \t text: { 
 
\t \t \t \t \t \t parts: [{ 
 
\t \t \t \t \t \t \t path: 'ImDatum' 
 
\t \t \t \t \t \t }], 
 
\t \t \t \t \t \t formatter: function(sValue) { 
 
\t \t \t \t \t \t \t if (sValue) { 
 
\t \t \t \t \t \t \t \t var oDateFormat = sap.ui.core.format.DateFormat.getDateTimeInstance({ 
 
\t \t \t \t \t \t \t \t \t pattern: "dd/MM/yyyy" 
 
\t \t \t \t \t \t \t \t }); 
 
\t \t \t \t \t \t \t \t return oDateFormat.format(new Date(sValue)); 
 

 
\t \t \t \t \t \t \t } else { 
 
\t \t \t \t \t \t \t \t return sValue; 
 
\t \t \t \t \t \t \t } 
 
\t \t \t \t \t \t } 
 
\t \t \t \t \t } 
 
\t \t \t \t }) 
 

 
\t \t \t }); 
 
\t \t \t 
 
\t \t // \t var fragmentId = this.getView().createId("AttachmentFrag"); 
 
    //  var tab = sap.ui.core.Fragment.byId(fragmentId, "UploadCollection"); 
 
     //  tab.bindItems({ 
 
\t \t \t // \t path: sAttach, 
 
\t \t \t // \t template: oItemTemplate 
 
\t \t \t //}); 
 
\t \t \t 
 
\t \t \t sap.ui.core.Fragment.byId("AttachmentFrag", "UploadCollection").bindItems({ 
 
\t \t \t path: sAttach, 
 
\t \t \t template: oItemTemplate 
 
\t \t \t });

コンソールは、私は、このエラーを与える: はTypeError: sap.ui.core:プロパティを読み取ることができません 'bindItems' 未定義

のを詳細コントローラのコードの最後の部分に。 Fragment.byId( "AttachmentFrag"、 "UploadCollection")。bindItems({....

この問題を解決するのに手伝ってもらえますか?すべて、

MAV

答えて

0

はこれを試してみてください ありがとう:

sap.ui.core.Fragment.byId(this.getView().createId("AttachmentFrag"), "UploadCollection") 
+0

おかげAndriiは、あなたのソリューションは、エラーを解決するために正常に動作します。 添付ファイルが表示されない可能性があるので、私は他のいくつかのエラーを起こしている可能性があります。 コンソールに次のエラーが表示されます。 http:// localhost:57681/sap/opu/odata/sap/ZSERVICE/405(方法が許可されていません) どこが間違っているか分かりますか? – Mavhart

+0

どのバックエンドをお使いですか?それはどこにありますか?ファイルがアップロードされるネットワークタブ(デベロッパーツール内)からリクエストパスを指定できますか? –

+0

サービスはECCゲートウェイで実行され、パスは http://domainclient.org:8000/sap/opu/odata/sap/ZSERVICE/DataAttach これを意味しますか? ブラウザで起動するとデータが表示されるので、バックエンドサービスに問題はないと思います。 – Mavhart

関連する問題