|
|
|
Crystal Reports, содержание
|
|||
|---|---|---|---|
|
#18+
Приветствую Возник вопрос: как сформировать содержание - т.е. список заголовков групп и номеров страниц - в отчете, созданном в Crystal Reports. Вроде бы, задача не такая уж редкая, но почему-то не нашел такой функции в CR (CR в VS .NET 2003). В сети нашлось 2 таких решения: 1) http://support.businessobjects.com/library/kbase/articles/c2011950.asp Недостаток - нужно записывать некоторую информацию в базу, что неприемлемо 2) http://www.ml-crystal.com/articles/toc.htm Здесь формируется 2 строковых переменных - список заголовков и список страниц. Недостаток - максимальная длина строковой переменной слишком мала ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2006, 19:02 |
|
||
|
Crystal Reports, содержание
|
|||
|---|---|---|---|
|
#18+
up в исх.сообщении забыл знак вопроса поставить :) Как добавить к отчету на CR содержание? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2006, 10:54 |
|
||
|
Crystal Reports, содержание
|
|||
|---|---|---|---|
|
#18+
все тоже, что описано в статье под 2-м пунктом, только вместо строковой переменной использовать динамический массив... а можно и два массива (для заголовка и для страницы) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2006, 11:20 |
|
||
|
Crystal Reports, содержание
|
|||
|---|---|---|---|
|
#18+
Спасибо, сделал через массив. Однако вопрос: как вывести массив? 1. Пробовал вывести его в цикле (т.е. вот формула, которая выводит массив): Код: plaintext 1. 2. 3. 4. 5. 2. Если вместо цикла написать просто Код: plaintext 3. Еще можно вместо цикла из кода в 1. написать такое: Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2006, 16:03 |
|
||
|
Crystal Reports, содержание
|
|||
|---|---|---|---|
|
#18+
мне кажется, что через функию join проще будет :) например : инициализация переменных 1. _initialize WhilePrintingRecords; NumberVar toc_bound; StringVar array toc_content; StringVar array toc_content_pages; toc_bound := 0; "" расчет в процессе (обычно в заголовке группы) 2. _calculate WhilePrintingRecords; NumberVar toc_bound; StringVar array toc_content; StringVar array toc_content_pages; toc_bound := toc_bound + 1; Redim Preserve toc_content[toc_bound]; Redim Preserve toc_content_pages[toc_bound]; toc_content[toc_bound] := {<your_content>}; toc_content_pages[toc_bound] := ToText(PageNumber,"#"); "" и выводим TOC (эти формулы переносим на репорт и наслаждаемся эффектом) 3. _toc_print_content WhilePrintingRecords; StringVar array toc_content; Join(toc_content,Chr(13)) 4. _toc_print_pages WhilePrintingRecords; StringVar array toc_content_pages; Join(toc_content_pages,Chr(13)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2006, 17:24 |
|
||
|
|

start [/forum/topic.php?fid=31&msg=34231232&tid=1538375]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 240ms |
| total: | 358ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...