2014-07-22 1 views
3

SAPUI5 TreeTable 요소에 바인딩 할 수있는 OData 서비스를 만드는 방법이 있는지 알고 있습니까? 여기에서의 예에 따르면 SAPUI5 TreeTable 용 OData 서비스를 만드는 방법은 무엇입니까?

: https://sapui5.netweaver.ondemand.com/sdk/#test-resources/sap/ui/table/demokit/TreeTable.html

데이터의 재귀 구조는리스트이다. 예를 들면 다음과 같습니다.

//Define some sample data 
var oData = { 
     root:{ 
      name: "root", 
      description: "root description", 
      checked: false, 
      0: { 
       name: "item1", 
       description: "item1 description", 
       checked: true, 
... 

서비스 측면에서이 문제를 해결할 것으로 예상됩니다. Like

속성이있는 요소와 속성 하나가 요소 목록을 가리 킵니다.

하지만 이것은 같지 않을 것입니다.

나는이 스레드를 감지하지만, 대답은 한 살이다 : 모두 http://scn.sap.com/thread/3389546

모든 , 여전히 대답은 사실이다? 아니면 데이터 바인딩이 작동하도록 솔루션이 있습니까?

답변

4

ODataModel의 트리 바인딩을 사용할 수 있습니다. 우선, 백엔드를 준비하십시오. 엔터티 집합에서 탐색을 순환해야합니다. 예를 들어 엔티티 집합이 ItemCollection이고 네비게이션 특성이 ItemNavigation 인 경우 ItemCollection을 참조하면됩니다. 당신의 트리 테이블에 바로 결합 트리 후 :

var oTreeTable = this.getView().byId("myTreeTable"); 
oTreeTable.bindRows({ 
    path : '/ItemCollection', 
    properties : { 
     navigation : { 
      'ItemCollection' : 'ItemNagigation' 
     } 
    } 
}); 

잘 작동하지만 Tree 컨트롤을 사용하는 알고 있어야합니다. TreeTable은 부모를 클릭하여 탐색 항목을로드하고 Tree는 전체 트리를 한 번에로드합니다.

+0

감사합니다. 매우 도움이되었습니다. 이 탐색 항목에 대한 설명서를 어디서 찾을 수 있는지 알려주십시오. https://sapui5.netweaver.ondemand.com/sdk/ (Developer Guide)를 살펴 보았지만 "고급"부분에 대한 주제를 찾지 못했습니까? – user3783327

+2

불행히도'ODataTreeBinding'에 대한 문서는 없습니다. 테스트 케이스 및 소스 코드에서 발견 한이 주제에 대한 정보. –

+0

안녕 니콜 리, 더 설명해 주시겠습니까? oData 모델이 어떻게 생겼는지 자세히 설명해 주시겠습니까? 대단 할거야! 그리고 UI5에서 어떻게 검색 했나요? – zyrex