What to do if conversion failed when converting from a character string to uniqueidentifier?
I am creating a Dynamic CRM 2011 Report in SSRS. I use several joins, And use GUID in joins. For ex Quote.OpportunityId=Opprtunity.OpportunityId
The problem comes from parameters. I have a parameter whose label is a name and the value is GUID of a record. I retrieve them from a Dataset. The query of the this Dataset(named siteDataset) is this :
select site.SiteId, site.Name from Site;
the siteId goes to the value of the parameter and site.name goes to the label of the parameter, the Parameter is named siteId itself.
But when I try to do this in another DataSet :
siteGUIDInAnotherEntity='@siteId'
Give me the subject Error. I even tried this :
CONVERT(VARCHAR(50), site.SiteId)
in siteId DataSet; But no success.
If conversion failed when converting from a character string to uniqueidentifier - you shouldn't have those single quotes around @siteId, it should be like this:
siteGUIDInAnotherEntity=@siteId
The text string '@siteId' can't be converted into a uniqueidentifier for that join, and will result in the error you mentioned:
SELECT CAST('@siteId' AS uniqueidentifier);
Msg 8169, Level 16, State 2, Line 1
Conversion failed when converting from a character string to uniqueidentifier.