I have a report with two subreports. The parameter connecting the report with the subreports is based on a field with a datatype of UniqueIdentifier.
If I run each of the subreports by themselves, entering in value for the parameter, they run fine.
When I try to run the master report, it runs, but the subreport sections contain the following text instead of the correct output: "Error: Subreport could not be shown." The Output window shows 2 warning, one for each subreport:
The expression use in subreport 'subreport1' returned a data type that is not valid.
I don't know for a fact that it is the parameter causing the problem, because the error message has a blank for the expression that is having the problem.
Each subreport is a simple table with one column containing string fields from a simple query.
Anyone have any ideas

Invalid Data Type error with Subreports
Doug Wood
Cast from type 'Guid' to type 'String' is not valid.
Lelic
On the subreport parameters dialog, use the CStr(...) function to convert the Guids to strings. E.g. =CStr(Fields!GuidColumn.Value)
-- Robert
baxybaxy
-- Robert
Arnold Schrijver
I think I originally tried Robert's suggestion and was still giving an error like you found.
What I ended up doing was going into the queries for both the master and sub report and using "(CAST ScriptID AS varchar(255))" in the queries themselves. Then, these string fields linked up without a problem.
Gregg
B.I. - SQL 2005
I am having the same problem. I tried the CStr() function on the parameters to the SubReport, but had the same result. Any more ideas
Thanks,
Mike