2016-11-17 1 views
0

Openui5의 OdataV4 모델에서 JSON 데이터를 가져 오는 우아한 방법이 있습니까?

나는 그 데이터 odatav4 모델에 의해 제공되는 항목의 목록, (sap.ui.model.odata.v4.ODataModel)

이,

안녕하세요 (버전 1.42 openui5) Item을 선택하고 컨트롤러를 사용하여 Detail View에 바인딩합니다.

이제 odata 모델에서 데이터를 가져오고 싶습니다. 이 해결책 중 하나로, OData의 V4 모델은 읽기 방법을 지원하지 않기 때문에, 작동하지 않습니다 Converting ODataModel into JSON Model

JSON (모델 또는 직접 데이터 등)로 선택한 항목의 데이터를 얻을 수있는 방법이 있나요를?

this.getView().getBindingContext("ams").getProperty("Ident)

반환 1 :

는 내가 얻을 수있는 것은 내 컨트롤러의 컨텍스트에서 속성입니다. 선택한 항목의 식별자.

답변

1

Context.getObject을 사용할 수 있습니다. 이것은 컨텍스트가 가리키는 완전한 객체를 전달합니다. 그러나 1.42에는 버그가 있습니다. 결과가 랩핑되고 .value[0]을 통해 액세스해야합니다. 이 버그는 1.44.7에서 수정되었습니다. release notes을 참조하십시오.

1.42 및 이후 릴리스에서 모두 작동하는 솔루션은 getObject도 객체의 일부를 제공 할 수 있다는 사실을 사용하는 것입니다. 빈 sPath 매개 변수를 전달하십시오.

this.getView().getBindingContext("ams").getObject("") 
2

바인딩 컨텍스트에서 getObject 메서드를 호출하면 엔티티를 json으로 가져와야합니다.

this.getView().getBindingContext("ams").getObject() 
+0

도움 주셔서 감사합니다. 그것이 올바른 방향이었습니다. 또한 값을 가져와야했다 :'this.getView(). getBindingContext ("ams") .getObject(). value [0]' –

관련 문제