Использование большего количества наборов данных на сервере отчетов из одной хранимой процедуры - PullRequest
1 голос
/ 16 апреля 2009

В последнее время я развернул много отчетов. И чтобы я сохранил код и версию ясными и понятными, Мне бы хотелось иметь одну хранимую процедуру на отчет. Чаще всего мне нужно больше наборов данных для одного отчета. Существует ли возможность иметь более одного набора данных в отчете SSRS для вызова только одной хранимой процедуры для этого отчета. (Я использую удаленные отчеты, размещенные на Sql Report Server 2008).

Я использую знакомый образец консоли Issue whit для создания нескольких файлов CSV из SQL с помощью одной хранимой процедуры. фрагмент кода выглядит примерно так:

        SqlConnection conn = new SqlConnection(strConn); 
        SqlCommand command = new SqlCommand("sp_ado_pos_data", conn);
        command.CommandType = CommandType.StoredProcedure;
        command.Parameters.Add("@skl_id", SqlDbType.Int).Value = 158;
        SqlDataAdapter adapter = new SqlDataAdapter(command);
        DataSet ds = new DataSet();
        adapter.Fill(ds);
        for (int i = 0; i < ds.Tables.Count; i++)
        {
            string datoteka  = (string.Format(@"{0}tablea{1}.csv", direktorij, i));
            DataTable tabela = ds.Tables[i];  
            //Here I fill datasets with multiple results from one stored proc.
            CreateCSVFile(tabela,datoteka );
            Console.WriteLine("Generišem tabelu {0}", datoteka);
        }

1 Ответ

1 голос
/ 17 апреля 2009

Похоже, что это невозможно при использовании стандартных отчетов, представляемых через средство просмотра отчетов по умолчанию - SSRS игнорирует все, кроме первого набора результатов из источника с несколькими наборами результатов.

Однако, исходя из этой статьи , представляется, что это возможно в отдельных отчетах (расширение .rdlc). Я не уверен, означает ли это, что с помощью специального средства просмотра отчетов стандартные отчеты .rdl можно настроить аналогичным образом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...