I used crystal as part of a share register application that I wrote. The way I managed to pass parameters to the report was to write to a comma delimited text file all the parameters I needed, then set the report to run whenever the file was created. The report would then delete the file, and the cycle would go on 😉 Basically involved quite a bit of scripting in both crystal and php. It's time consuming, but I didn't really have a choice, the users wanted to customize their own reports, but didn't want to learn how to use anything except crystal. argh!