my stock answer is to use a stored procedure, since you have more flexability and probably bring it out as 1 report.
if you can't make/use stored procedures, you can try a command object.
the sql would use the ideas of 'group by' and 'having'.
You can use the Having clause to ensure that the count(*) > 1.
If all of this is foreign to you, it might be a path to google and find out more.
last idea, if you can Group your report so that duplicates would display in the same group, you could use the count to determine if there are duplicates or not...but this will only work if the rows of detail are in a 1 to 1 relationship to the grouping criteria.
for example, if you were looking at names vs social security numbers and you grouped by names, you could see if there are 'duplicate' socials, but if you grouped by names, social and check number, it would be harder as 1 person might have multiple checks in a time range (or none) ...once you add another piece of data to be displayed in the report, this method starts running into difficulties
HTH