2017-01-11 12 views
2

SAPUI5でアプリケーションを構築しているため、問題を解決できません。SAPUI5 - ナビゲーションプロパティ/配列を使用したフォーマッタラベル

私はフロントエンドにJS、SAPUI5、FIORIと私のバックエンド:HANA、HANAXSを持っています。何が起こっているのか

ここ

私は私のバックエンドサービスで、以下の構造を有する:

<Table> 
.... 
<items> 
<ColumnListItem 
    type="Navigation"> 
    <cells> 
     <Label text = "{START_TIME}" design="Bold"/> 
     <Label text = "{END_TIME}" design="Standard"/> 
     <ObjectIdentifier title="{DESCRIPTION}" /> 
     <Label text="{ItsSpeakers}" design="Bold"/> 
    </cells> 
</ColumnListItem> 
</items> 
</Table> 
:私は私の見解では、次のコードを持っている

http://prntscr.com/dudto4

私はすべてのフィールドを取得できます(START_TIME、END_TIME、DESCRIPT次の表にナビゲーションプロパティをあるION)が、ItsSpeakers、:

http://prntscr.com/dudvw3

上の画像から、私は例えば、(NAMEプロパティを取得するための最良のアプローチは)何ですか?

答えて

1

あなたItsSpeakersは、それが配列の場合

<Label text="{ItsSpeakers/NAME}" design="Bold"/> 

を次のようにバインドすることができ、単一のエンティティへの参照がある場合は、目的のレコードを決定し、フォーマッタ機能を経由して値を返すことができ

<Label text="{path:'ItsSpeakers', formatter: '.getItsSpeakersName'}" design="Bold"/> 

...とあなたのコントローラ上の対応する方法...

getItsSpeakersName: function(aItsSpeakers) { 
    // For example to return the NAME property of the first record 
    return this.getView().getModel().getProperty("/"+aItsSpeakers[0]+"/NAME"); 
} 

これらのいずれかが動作するためには、ItsSpeakersを表アイテムのバインディングに展開する必要があります。たとえば、

+0

ありがとうございます。それは完璧に働いた。もう一つの質問:答えを探してどこかを探しましたか、それともすでに分かっていましたか?私はたくさんの検索をしたので、何かを見つけることができなかったので、私はこの質問をします... – LuisValgoi

+0

喜んでこれは助けました...この過去に似た要件を持っていましたが、最初はどこかの例で見たか、デバッグ –

関連する問題