Cây ADF có thể trông hơi sai lệch, nhưng chúng không thực sự phản ánh các điều khiển dữ liệu (trình vòng lặp) mà bạn đã tạo trong mô-đun ứng dụng của mình. Cây hoạt động trên các trình truy cập liên kết xem. Đó là lý do tại sao khi bạn chọn một nút cây, các trình vòng lặp không nhận được bất kỳ thay đổi nào.
Nếu bạn muốn xem những người truy cập của mình trong dự án Mô hình, hãy mở một liên kết dạng xem giữa hai đối tượng dạng xem liền kề bất kỳ được sử dụng trong hệ thống phân cấp của bạn. Trong Mối quan hệ - Người truy cập - Đích bạn sẽ thấy tham số Tên người truy cập. Giá trị của nó sẽ là tên của cấp cây thấp hơn. Tên tương tự mà bạn sẽ thấy trong liên kết cây pageDef của mình trong phần Quy tắc cấp độ cây cho cấp độ thích hợp.
Vì vậy, ngay cả khi bạn xóa tất cả các trình vòng lặp trừ OrgView1Iterator khỏi kiểm soát dữ liệu mô-đun ứng dụng, cây của bạn sẽ vẫn hoạt động (không nói về bảng ở bên phải vào lúc này).
Bây giờ để làm cho trường hợp của bạn hoạt động.
- Trong kiểm soát dữ liệu mô-đun ứng dụng của bạn, bạn sẽ chỉ cần hệ thống phân cấp này:
- OrgView1
- VariablePointViewOrgZoneVariable
-
- VariablePointViewOrgZoneVariableVariablePoint
OrgView1 và VariablePointViewOrgZoneVariable ở cấp cơ sở. VariablePointViewOrgZoneVariableVariablePoint là phần tử con của VariablePointViewOrgZoneVariable. Tất cả các phần tử con hiện tại của OrgView1 nên bị xóa khỏi kiểm soát dữ liệu.
- Trong liên kết trang của bạn trong phần Executables, hãy nhấp vào dấu cộng màu xanh lục và thêm trình lặp VariablePointViewOrgZoneVariable (giả sử, VariablePointViewOrgZoneVariable1Iterator).
Trong Executable của bạn nên có 3 trình lặp:OrgView1Iterator, VariableDataView1Iterator và VariablePointViewOrgZoneVariable1Iterator.
- Phần quan trọng của quá trình lọc là thuộc tính Nguồn dữ liệu mục tiêu. Bạn có thể tìm thấy nó trong liên kết cây của mình. Trong liên kết trang của bạn trong phần Bindings, hãy nhấp đúp vào OrgView1. Trong quy tắc cấp cây, hãy chọn cây VariablePointViewOrgZoneVariable và tiết lộ Nguồn dữ liệu mục tiêu ở dưới cùng. Nhấp vào Bộ chọn EL, chọn VariablePointViewOrgZoneVariable1Iterator và OK.
Kết quả phải là $ {binds.VariablePointViewOrgZoneVariable1Iterator}.
- Trên trang của bạn, thuộc tính partTrigger của bảng để trỏ đến cây.
Sau khi bạn khởi động lại, tính năng lọc trang của bạn sẽ hoạt động.
Tôi đã làm một ví dụ nhỏ cho thấy trường hợp của bạn. Hãy làm theo hướng dẫn và bạn có thể chạy nó trên máy tính của mình hoặc chỉ cần đọc qua readme. Nó cũng áp dụng lựa chọn cho cấp cây cuối cùng mà bạn có thể không cần.
https://github.com/ILyaCyclone/adf-tree-to-table -filterandselect