Страница 2 из 3

Использование вложенного отчета

Добавлено: 10 сен 2010, 07:35
Ivan
Здравствуйте.

В следующем билде будет добавлено новое свойство. Пожалуйста попробуйте установить следующие свойства и сообщите нам о результатах:

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

StiOptions.Export.Rtf.DivideSegmentPages = false;
StiOptions.Export.Rtf.UseTemplatePageSize = true;


Спасибо.

Использование вложенного отчета

Добавлено: 13 сен 2010, 14:21
4it
Скажите пожалуйста пока еще не вышел новый билд, в программе есть возможность удалять пустые страницы. А есть ли возможность удалять пустые сегменты в предварительном отчете?

Использование вложенного отчета

Добавлено: 14 сен 2010, 10:02
Aleksey
Здравствуйте,
4it писал(а):Скажите пожалуйста пока еще не вышел новый билд, в программе есть возможность удалять пустые страницы. А есть ли возможность удалять пустые сегменты в предварительном отчете?
Да, что с помощью скриптов возможно сделать многое.
В принципе, и вашу задачу можно решить. Если есть необходимость, попробуем сделать для вас пример отчета.

Спасибо.

Использование вложенного отчета

Добавлено: 14 сен 2010, 10:53
4it
Да, что с помощью скриптов возможно сделать многое.
В принципе, и вашу задачу можно решить. Если есть необходимость, попробуем сделать для вас пример отчета.
Такая необходимость действительно есть, если это не очень сложно, рассчитываю на вашу помощь

Использование вложенного отчета

Добавлено: 20 сен 2010, 05:01
4it
Здравствуйте.

Вам удалось реализовать возможность удаления пустых сегментов из предварительного просмотра?

Использование вложенного отчета

Добавлено: 20 сен 2010, 07:01
Ivan
Здравствуйте.

Для удаления пустых сегментов используйте пожалуйста следующий код в событии EndRender отчета:

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

            foreach (StiPage page in RenderedPages)
            {
                if (page.SegmentPerWidth > 1 || page.SegmentPerHeight > 1)
                {
                    RenderedPages.GetPage(page);
                    double maxX = 0;
                    double maxY = 0;
                    foreach (StiComponent comp in page.Components)
                    {
                        if (comp.Right > maxX) maxX = comp.Right;
                        if (comp.Bottom > maxY) maxY = comp.Bottom;
                    }
                    int newSegmentPerWidth = 1;
                    while ((decimal)((page.PageWidth - page.Margins.Left - page.Margins.Right) * newSegmentPerWidth) < (decimal)maxX) newSegmentPerWidth++;
                    int newSegmentPerHeight = 1;
                    while ((decimal)((page.PageHeight - page.Margins.Top - page.Margins.Bottom) * newSegmentPerHeight) < (decimal)maxY) newSegmentPerHeight++;
                    page.SegmentPerWidth = newSegmentPerWidth;
                    page.SegmentPerHeight = newSegmentPerHeight;
                }
            }
В версии 2010.2 этот код будет вынесен в отдельный метод, и в событии EndRender будет достаточно написать:

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

            RecalculateRenderedPagesSegments();
Спасибо.

Использование вложенного отчета

Добавлено: 20 сен 2010, 09:31
4it
Большое спасибо!

А когда выйдет версия 2010.2?

Использование вложенного отчета

Добавлено: 20 сен 2010, 09:32
Andrew
Здравствуйте.

Версия 2010.2 выйдет в конце сентября.

Спасибо.

Использование вложенного отчета

Добавлено: 11 ноя 2011, 07:19
khan
Здравствуйте,
у меня такая же проблема.
4it писал(а):
Возникает следующий вопрос: Можно ли сделать так чтобы отчет не разбивался на страницы, а только на сегменты. Выглядел единым целым, наподобие выгрузки в HTML-формат?
Т.е. отчет создает по две одинаковые записи, а мне нужно чтобы он не делил ячейку, иначе при экспорте в Excel получаю по две строки вместо одной

Использование вложенного отчета

Добавлено: 13 ноя 2011, 17:51
Ivan
Здравствуйте.

Пришлите пожалуйста пример отчета с данными для анализа.

Спасибо.