Closed kenichi-fk closed 6 months ago
自己解決しました。
データベースのSitesテーブルにある、該当テーブルのSiteSettings列にテーブル設定情報がありますが、この中の事前に定義したViewsプロパティのJSONをそのまま使えば、リンク先テーブルの列でフィルタ出来ることを確認しました。
"GridColumns": [
"DateA",
"ClassA~11,ClassD", //●
"ClassA~11-ClassA~912,ClassA",
"ClassA~11-ClassA~912,ClassB",
"ClassA",
"ClassA~11,ClassE",
"NumA",
],
"ColumnFilterHash": {
"ClassA~11-ClassD~1390,ClassA": "D" //●
},
うまくフィルタが効かなかった原因は、GridColumnsで表示させる列と、ColumnFilterHashでフィルタさせる列の指定方法が異なったためでした。
上記のコードで、列(●) は実質同じ列です。 この同一の列 "ClassA\~11,ClassD" と "ClassA\~11-ClassD\~1390,ClassA" において、 GridColumnsプロパティ に "ClassA\~11-ClassD\~1390,ClassA" と指定しても正常に表示されますが、 逆に、ColumnFilterHashプロパティ に "ClassA\~11,ClassD" と指定するとフィルタは働きません。
同じ列でも、プロパティによってリンクの指定方法に制限があるんでしょうね。
API JSONデータのViewプロパティにおける ColumnFilterHashプロパティでは、自テーブルの列のみ指定可能だと思います。
GridColumnsプロパティで "ClassA~11,ClassB" と指定できるように、リンク先テーブルの列でフィルタできるようになりませんか?