Stromy ADF mohou vypadat poněkud zavádějící, ale ve skutečnosti neodrážejí ovládací prvky dat (iterátory), které jste vytvořili v modulu aplikace. Stromy fungují na přístupových objektech odkazů. To je důvod, proč když vyberete uzel stromu, iterátory nedostanou žádné změny.
Pokud chcete vidět své přístupové objekty v projektu modelu, otevřete propojení pohledu mezi libovolnými dvěma sousedními objekty pohledu používanými ve vaší hierarchii. V Relationship - Accessors - Destination uvidíte parametr Accessor Name. Jeho hodnota by byla názvem nižší stromové úrovně. Stejný název, který uvidíte ve své stromové vazbě pageDef v sekci Pravidla úrovně stromu pro příslušnou úroveň.
Takže i když odstraníte všechny iterátory kromě OrgView1Iterator z řízení dat aplikačního modulu, váš strom bude stále fungovat (nemluvě o tabulce vpravo v tuto chvíli).
Nyní, aby váš případ fungoval.
- Ve kontrole dat aplikačního modulu budete potřebovat pouze tuto hierarchii:
- OrgView1
- VariablePointViewOrgZoneVariable
- VariablePointViewOrgZoneVariableVariablePoint
OrgView1 a VariablePointViewOrgZoneVariable jsou na kořenové úrovni. VariablePointViewOrgZoneVariableVariablePoint je potomkem proměnné VariablePointViewOrgZoneVariable. Všechny současné potomky OrgView1 by měly být odebrány z kontroly dat.
- Ve vazbě stránky v sekci Spustitelné soubory klikněte na zelené plus a přidejte iterátor VariablePointViewOrgZoneVariable (řekněme VariablePointViewOrgZoneVariable1Iterator).
Ve vašich spustitelných souborech by měly být 3 iterátory:OrgView1Iterator, VariableDataView1Iterator a VariablePointViewOrgZoneVariable1Iterator.
- Klíčovou součástí filtrace je atribut Cílový zdroj dat. Najdete ji ve své stromové vazbě. Ve vazbě stránky v sekci Vazby dvakrát klikněte na OrgView1. V pravidlech na úrovni stromu vyberte strom VariablePointViewOrgZoneVariable a ve spodní části zpřístupněte cílový zdroj dat. Klikněte na EL Picker, vyberte VariablePointViewOrgZoneVariable1Iterator a OK.
Výsledek by měl být ${bindings.VariablePointViewOrgZoneVariable1Iterator}.
- Na své stránce nastavte atribut částečný spouštěč tabulky tak, aby ukazoval na strom.
Po restartování by měla filtrace stránky fungovat.
Udělal jsem malý příklad ukazující váš případ. Postupujte podle pokynů a můžete jej spustit na svém počítači nebo si jen přečíst readme. Použije také výběr na poslední úroveň stromu, kterou možná nepotřebujete.
https://github.com/ILyaCyclone/adf-tree-to-table -filterandselect