You should be able to use a stored procedure as the datasource for a Crystal report. 1) Verify that when you execute the sproc outside of crystal it is returning the correct number of rows. 2) Make sure you are not performing some join in crystal which is giving you too many unexpected row. My vision would be that the sproc would return all of the data necessary to generate the report and you would not have to join to any other table for reference data (like user first name, last name, etc), this would make designing the report very straight forward. Hope this helps. :thumbsup: