Возможна ли группировка в динамическом отчёте

Обсуждение Stimulsoft Reports.NET
Master
Сообщения: 39
Зарегистрирован: 08 апр 2009, 05:10

Возможна ли группировка в динамическом отчёте

Сообщение Master »

Теперь эти области мне надо исключить :)
Вот я последовательно эти участки и убираю :)

Осталось мне теперь исключить в отчёте:
Вложения
Summ.JPG
Summ.JPG (34.49 КБ) 1034 просмотра
Master
Сообщения: 39
Зарегистрирован: 08 апр 2009, 05:10

Возможна ли группировка в динамическом отчёте

Сообщение Master »

Кажеться сделал.
Когда создаю подвал, запоминаю какие имена StiText какому подвалу соответсвуют, а в событии в соответсвии со значением заголовка, устанавливаю соответсвенно их свойство Enabled.

Код: Выделить всё

private void Text_Conditions_GroupFooterBand(object sender, Stimulsoft.Report.Events.StiGetValueEventArgs e)
        {//Обработчик события отображения/неотображения подвалов названий группировки
            string s = ((StiComponent)(sender)).Name;
            if (e.Value != STR_ITOG.ToString().ToLower())
            {
                ((StiComponent)(sender)).Enabled = true;

                for (int i = 0; i < arlNameTextFooterGroupSumm.Count; i++)
                {
                    if (arlNameTextFooterGroupSumm[i].ToString().IndexOf(s) != -1)
                    {
                        StiText TextGroupFooterEvent;
                        string[] array = arlNameTextFooterGroupSumm[i].ToString().Split('|');
                        for (int ii = 1; ii < array.Length; ii++)
                        {
                            string str = array[ii].ToString();
                            TextGroupFooterEvent = report.CompiledReport.GetComponents()[str] as StiText;
                            TextGroupFooterEvent.Enabled = true;
                        }
                    }
                }
            }
            else
            {
                ((StiComponent)(sender)).Enabled = false;

                for (int i = 0; i < arlNameTextFooterGroupSumm.Count; i++)
                {
                    if (arlNameTextFooterGroupSumm[i].ToString().IndexOf(s) != -1)
                    {
                        StiText TextGroupFooterEvent;
                        string[] array = arlNameTextFooterGroupSumm[i].ToString().Split('|');
                        for (int ii = 1; ii < array.Length; ii++)
                        {
                            string str = array[ii].ToString();
                            TextGroupFooterEvent = report.CompiledReport.GetComponents()[str] as StiText;
                            TextGroupFooterEvent.Enabled = false;
                        }
                    }
                }
            }
        }
Если можно проще и изящнее, сообщите пожалуйста
Спасибо, Jan, за помощь.
Ответить