I have a Java application the invokes Crystal Reports through its Java libraries. One of the reports has the following clause in its record selector:
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}
)
Each GroupIDnParameter is an integer groupID, created by selecting a group names from a tree structure in the UI. The UI converts these to groupIDs and passes them into the report. Now this record selector works but limits the number of selected groups to 10.
I would like to remove this limit. To check the syntax of a possible solution, I first tried the following
and {DriverMotionView.GROUPID} in [-1, 1618, 1608, 1610, -1]
This does indeed select the records for groupIDs 1618, 1608 and 1610.
So then I tried things like
and {DriverMotionView.GROUPID} in {?GroupIDListParameter}
where the GroupIDListParameter is passed in as the string [-1, 1618, 1608, 1610, -1]. This results in a run time Crystal Reports error.
I tried
and {DriverMotionView.GROUPID} in [{?GroupIDListParameter}]
but that clause is syntactically incorrect and results in a "array must be subscripted" error on a syntax check.
There is likely another approach to solving this problem, but I was not able to find it in the on-line help, reading the User's Guide or even Google searches.
Any suggestions would be appreciated.