|
Как в КроссТабе обработать заголовки столбцов ...
|
|||
---|---|---|---|
#18+
Всем привет! В общем задача такая: пользователь формирует КроссТаб-отчет, в которой два параметра: начальная и конечная дата. Например: с 05.05.2005 по 10.08.2005 Данные группируюся в sql-представлении по месяцам так select to_char(t.work_date,'MM/yyyy') as Date1 from sklad t и т.д. Вопрос: реально ли в кристале обработать первый и последний столбцы т.е. чтоб заголовки столбцов в готовом отчете были такими: 05.05.05 | 06.05 | 07.05 | 10.08.2005 | --------- |-------|------|------------ | ............ |......... |........ |.................| Если возмодно, то как? Заранее спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2005, 15:07 |
|
Как в КроссТабе обработать заголовки столбцов ...
|
|||
---|---|---|---|
#18+
Неужели ни у кого никаких идей? :(( ... |
|||
:
Нравится:
Не нравится:
|
|||
17.08.2005, 07:05 |
|
Как в КроссТабе обработать заголовки столбцов ...
|
|||
---|---|---|---|
#18+
Если речь о заголовках, то можно сделать всё, что душе угодно. В диалоге "Format CrossTab" есть кнопка "Group options". Хотя можно предложить другой рецепт. Создать формулу, формирующую загловок, и сгруппировать сначала по ключевому полю (например по дате), а потом по заголовку. Надписи ключевого поля скрыть (Suppress label). ... |
|||
:
Нравится:
Не нравится:
|
|||
17.08.2005, 09:10 |
|
Как в КроссТабе обработать заголовки столбцов ...
|
|||
---|---|---|---|
#18+
to gaper изначально подразумевалось создать требуемый заголовок с помощью формул есть ли в синтаксисе Crystal ф-ции для работы со столбцами, тогда можно было бы решить эту проблему так //для заголовка первого столбца if FirstCol then Left ({?month}, 3)+{VJ_PRODUCER_RASHOD_SERGEY.DATE1} else {VJ_PRODUCER_RASHOD_SERGEY.DATE1} //для последнего столбца КроссТаб таблицы: if LastCol then Left ({?month}, 3)+{VJ_PRODUCER_RASHOD_SERGEY.DATE1} else {VJ_PRODUCER_RASHOD_SERGEY.DATE1} Создать формулу, формирующую загловок, и сгруппировать сначала по ключевому полю (например по дате), а потом по заголовку Я новичок в этом деле и если честно, мало что понял из Вашего совета. Пожалуйста, можно чуть по подробней или приведите пример такой формулы :) ... |
|||
:
Нравится:
Не нравится:
|
|||
17.08.2005, 10:13 |
|
Как в КроссТабе обработать заголовки столбцов ...
|
|||
---|---|---|---|
#18+
работать со столбцами кросстаба нельзя. Кросстаб -- это вещь в себе. Но, основываясь на текущем значении поля (формулы), по которому выполняется группировка, можно сформировать заголовок. Если значения (в данном случае даты), соответствующие первому и последнему столбцу известны заранее, то нет проблем. Если это не так, то вижу единственный путь: при подготовке данных пометить эти заничения (первый, последний). Формула будет выглядеть так: Код: plaintext 1. 2. 3. 4.
Второй вариант -- незначительное видоизменение первого. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.08.2005, 11:19 |
|
Как в КроссТабе обработать заголовки столбцов ...
|
|||
---|---|---|---|
#18+
наверное, можно даже так Код: plaintext 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.08.2005, 11:21 |
|
Как в КроссТабе обработать заголовки столбцов ...
|
|||
---|---|---|---|
#18+
to gaper Большое спасибо за подсказку, прадва после некоторых мучений у меня получилась такая рабочая формула: select {TABLE.date} case totext({?date})[4 to 10] : Left (totext({?date}), 2)+'.'+{TABLE.date} case totext({?date1})[4 to 10]: Left (totext({?date1}), 2)+'.'+{TABLE.date}default: {TABLE.date} Все работает замечательно :) Однако теперь проблема в сортировке столбцов, как видно из картинки, Crystal выводит столбцы в порядке возрастания Всем нутром своим чую, что решение этой проблемы в "Format Cross Tab" - "Cross Tab Group Options"(поля Date) - в CompoBox'e выбираю "Specified order" Но неполучается правильно выбрать параметры/условия сотрировки, Crystal выводит столбец "orders" Подскажите пожалуйста, кто знает, осталось чуть-чуть, охото все нормально зделать :)) ... |
|||
:
Нравится:
Не нравится:
|
|||
17.08.2005, 15:25 |
|
Как в КроссТабе обработать заголовки столбцов ...
|
|||
---|---|---|---|
#18+
Сорри, вот сама картина фрагмента отчета :) Например, отчет сформирован за период с 17.05.2005 по 17.08.2005 что у меня сейчас получается: | 06.2005 | 07.2005 | 17.05.2005 | 17.08.2005 Подскажите как поменять сортировку, PLZ, чтоб было так | 17.05.2005 | 06.2005 | 07.2005 | 17.08.2005 ... |
|||
:
Нравится:
Не нравится:
|
|||
17.08.2005, 15:32 |
|
Как в КроссТабе обработать заголовки столбцов ...
|
|||
---|---|---|---|
#18+
вид формулы не важен, лишь бы она выдавала нужный результат (действительно ужасно) по поводу группировки: не совсем так. Группировать (использовать как столбец) нужно именно поле таблицы. При этом можно указать с какой точностью выполнять группировку (день, неделя, и т. д.) А затем (см. прежний пост) в [Group options] настроить выводимый заголовок. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.08.2005, 15:42 |
|
|
start [/forum/topic.php?fid=31&fpage=170&tid=1539524]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
57ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 160ms |
0 / 0 |