2015-08-03 3 views
1

Я пытаюсь передать изображение в отчет через параметр текстового отчета.
Однако он работает только при небольшом изображении. Код, я использую, чтобы вызвать отчет по этим линиям:SSRS Как увеличить размер параметра текстового отчета

private CustomerAttachment LoadFromReportServer(byte[] imgAsByte) 
    { 
    string mimeType, encoding, extension; 
    string[] streamids; 
    Warning[] warnings; 

    string base64String = Convert.ToBase64String(imgAsByte); 
    _reportParams = new List<ReportParameter>(); 
    _reportParams.Add(new ReportParameter("p_farm_map", base64String)); 

    var rptViewer = new ReportViewer(); 

    rptViewer.ShowCredentialPrompts = false; 
    rptViewer.ShowParameterPrompts = false; 
    rptViewer.ProcessingMode = ProcessingMode.Remote; 

    _reportServerUrl = "http://MyReportServer.wesenergy.local/ReportServer"; 
    _reportFolderPath = "/WcfReportTest/"; 
    _reportName = "FarmMapReport"; 

    rptViewer.ServerReport.ReportServerUrl = new Uri(_reportServerUrl); 
    rptViewer.ServerReport.ReportPath = _reportFolderPath + _reportName; 
    rptViewer.ServerReport.SetParameters(_reportParams); 

    //Fails on this line here 
    byte[] bytes = rptViewer.ServerReport.Render(_reportFormat, deviceInfo, out mimeType, out encoding, out extension, out streamids, out warnings); 

    return new CustomerAttachment(_customerId, _fileName,"application/pdf", bytes); 
    } 

В докладе p_farm_map является параметром Text отчета.
Ошибка, которую я получаю в больших файлах, это ошибка rsInvalidParameter.

Есть ли способ явно установить максимальный размер типа данных Text?

+0

Насколько велики размеры имен файлов? Это полный путь? Я знаю, что у окон есть жесткий предел как 255 или что-то, с чем я столкнулся до –

+0

Размер файла составляет около 700 кб. Когда я вызываю отчет, изображение уже было преобразовано из потока в байт [] в base64String. Этот код работает для небольших файлов, поэтому я подозреваю, что проблема связана с типом данных SRSS Text. – sbennett

ответ

0

Из-за отсутствия ответа на этот вопрос и ограничения по времени проекта альтернативное решение заключалось в том, чтобы сохранить изображение в общей папке; передайте местоположение файла через текстовое поле в отчет и используйте это текстовое значение в качестве источника изображения. Не идеальное решение, так как я должен писать и читать с диска (медленно). Кроме того, теперь мне приходится очищать эти файлы.

Смежные вопросы