Skip to content

Instantly share code, notes, and snippets.

@fedejousset
Created February 21, 2017 14:10
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save fedejousset/f2cc28665dc7740e31d5bdbc0bf376af to your computer and use it in GitHub Desktop.
Save fedejousset/f2cc28665dc7740e31d5bdbc0bf376af to your computer and use it in GitHub Desktop.
SELECT DISTINCT
'InputParameter',
REPLACE(mreq.Name, '{Entity.PrimaryEntityName}', ''),
mrf.Name,
CASE
WHEN CHARINDEX(',', mrf.ClrParser) > 0 THEN SUBSTRING(mrf.ClrParser, 1, CHARINDEX(',', mrf.ClrParser) - 1)
ELSE mrf.ClrParser
END,
CASE
WHEN mrf.Optional is null THEN 1
ELSE 0
END as Required
FROM SdkMessageRequestField mrf
INNER JOIN SdkMessageRequest mreq ON mrf.SdkMessageRequestId = mreq.SdkMessageRequestId
WHERE NOT mrf.ClrParser LIKE '%Microsoft.Crm.Sdk%'
AND NOT mrf.ClrParser LIKE '%Microsoft.Crm.Sdk.Reserved%'
UNION ALL
SELECT DISTINCT
'OutputParameter',
REPLACE(mreq.Name, '{Entity.PrimaryEntityName}', ''),
mrf.Value,
CASE
WHEN CHARINDEX(',', mrf.ClrFormatter) > 0 THEN SUBSTRING(mrf.ClrFormatter, 1, CHARINDEX(',', mrf.ClrFormatter) - 1)
ELSE mrf.ClrFormatter
END,
0
FROM SdkMessageResponseField mrf
INNER JOIN SdkMessageResponse mres ON mrf.SdkMessageResponseId = mres.SdkMessageResponseId
INNER JOIN SdkMessageRequest mreq ON mres.SdkMessageRequestId = mreq.SdkMessageRequestId
WHERE NOT mrf.ClrFormatter LIKE '%Microsoft.Crm.Sdk%'
AND NOT mrf.ClrFormatter LIKE '%Microsoft.Crm.Sdk.Reserved%'
ORDER BY 2,1 DESC
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment