Я пытаюсь загрузить свой RDL-файл в CRM с помощью SDK, но моя проблема в том, что то, что дает мне SDK, отличается от того, что я получаю из отчетов-> Редактировать-> Действия-> Загрузить отчет Изображение .
SDK изменяет запросы на выражение, в то время как это должен быть обычный запрос SQL.
(я предполагаю, что при загрузке RDL CRM изменяет их и сохраняет их в столбце originalbodytext в таблице отчетано SDK не будет делать то же самое)
var serverConc = new CrmServiceClient(connectionString);
if (serverConc.IsReady)
{
using (var ctx = new OrganizationServiceContext(serverConc))
{
var reports = ctx.CreateQuery("report");
foreach (var item in reports)
{
var rdlRequest = new DownloadReportDefinitionRequest() { ReportId = (Guid)item["reportid"] };
var response = (DownloadReportDefinitionResponse)ctx.Execute(rdlRequest);
XmlTextWriter reportDefinitionFile =
new XmlTextWriter(paath)
reportDefinitionFile.WriteRaw(response.BodyText);
}
}
}
При использовании приведенного выше кода, это получить это
Выражение моего запроса
= "SELECT TOP" & chrw (40) & "20" & chrw (41) & "invoiceid AS quoteid" & chrw (10) & "FROM" & "(" & Parameters! P1.Значение & ") as" & "CRMAF_FilteredInvoice" & "" & ""
Но что дает нормальная загрузка, это
Мой запрос
ВЫБРАТЬ ТОП (20) invoiceid AS quid FROM
FilteredInvoice AS CRMAF_FilteredInvoice