Java ライブラリを介して Crystal Reports を呼び出す Java アプリケーションがあります。レポートの 1 つは、そのレコード セレクターに次の句があります。
and ({DriverMotionView.GROUPID} = {?GroupID1Parameter}
or {DriverMotionView.GROUPID} = {?GroupID2Parameter}
or {DriverMotionView.GROUPID} = {?GroupID3Parameter}
or {DriverMotionView.GROUPID} = {?GroupID4Parameter}
or {DriverMotionView.GROUPID} = {?GroupID5Parameter}
or {DriverMotionView.GROUPID} = {?GroupID6Parameter}
or {DriverMotionView.GROUPID} = {?GroupID7Parameter}
or {DriverMotionView.GROUPID} = {?GroupID8Parameter}
or {DriverMotionView.GROUPID} = {?GroupID9Parameter}
or {DriverMotionView.GROUPID} = {?GroupID10Parameter}
)
各 GroupIDnParameter は整数の groupID であり、UI のツリー構造からグループ名を選択して作成されます。UI はこれらをグループ ID に変換し、レポートに渡します。現在、このレコード セレクターは機能しますが、選択するグループの数は 10 に制限されています。
この制限をなくしたいと思います。考えられる解決策の構文を確認するために、最初に次のことを試しました
and {DriverMotionView.GROUPID} in [-1, 1618, 1608, 1610, -1]
これにより、実際に groupID 1618、1608、および 1610 のレコードが選択されます。
それで、私は次のようなことを試しました
and {DriverMotionView.GROUPID} in {?GroupIDListParameter}
ここで、GroupIDListParameter は文字列 [-1, 1618, 1608, 1610, -1] として渡されます。これにより、Crystal Reports のランタイム エラーが発生します。
私は試した
and {DriverMotionView.GROUPID} in [{?GroupIDListParameter}]
しかし、その句は構文的に正しくなく、構文チェックで「配列を添字にする必要があります」というエラーが発生します。
この問題を解決する別の方法がある可能性がありますが、オンライン ヘルプ、ユーザー ガイド、または Google 検索を読んでも見つけることができませんでした。
任意の提案をいただければ幸いです。