Репортс. Как бы это поудобней сделать?

VarV
Дата: 03.08.2005 15:13:21
Условно говоря, есть 12 столбцов (по числу месяцев), принимающих определенные значения. Уважаемые юзвери просят выводить на нужную им дату только неNULLевые столбцы - условно говоря, 1,3,4,5,7 вместо 1,null,3,4,5,null,7... Как бы поудобней это организовать? Есть очевидный длинный вариант (то ись нарисовать 12 столбцов в репорте, каждому накатать в формат_триггере проверку всех значений и последовательно присваивать ближайшее по номеру непустое значение либо false), но какой-то он сильно трудоемкий...:((
1
Дата: 03.08.2005 15:36:07
Матричный отчет не подойдет?
Tolmachov Dmitiry
Дата: 03.08.2005 17:51:37
"Очевидно длинный вариант" и является самым реальным.
Tolmachov Dmitiry
Дата: 04.08.2005 13:15:46
Есть решение для твоей проблемы! Ты меня просто зажег! Всю ночь думал!
Так вот:
Используешь Lexical references (см. Help) при определении запроса в модели данных. Суть такова - для своей задачи создаешь 12 пользовательких параметров (по числу столбцов): param1 .. param12 (тип character). Каждый параметр должен иметь значение Initial Value - название соответствующего столбца результирующего набора. В модели данных создаешь запрос, используя следующий синтаксис: Select <знак амперсант>param1 as col1, ... <знак амперсант>param12 as col12 from <table_name>. Создается запрос и группа с именами полей col1 .. col12. Создаешь разметку, в столбцы в качестве источников данных помещаешь col1.. col12. Все! Перед вызовом отчета определяешь ненулевые столбцы с помощью DML. Для нашего случая пусть это будут столбцы 1,3,5,7. Их имена передаешь в параметры param1..param4, в остальные передаешь Null. При срабатывании запроса вместо param1..param12 будут подставлены соответствующие имена столбцов. Все! Разметка содержит первые 4 столбца с данными столбцов 1,3,5,7. Остальные пустые.

PS Пришлось использовать <знак амперсант> в описании, так как сам знак амперсанта превращается в какую-то фигню после публикации.
Stax.
Дата: 08.08.2005 13:06:41
Есть еще один вариант
1 Для каждого поля делаем счетчики (12 шт)
2 поля(шапки ...) привязываем друг к другу "горизонтально"
3 в формат триггере если счетчик=0 не печатаем
4 свойство "якоря" Collapse Horizontally выставляем в yes
Вроде все

зы
я так делал, правда для других целей
Tolmachov Dmitiry
Дата: 09.08.2005 12:45:55
to Stax:
Да, твой вариант лучше!
Vadim Zh
Дата: 09.08.2005 16:50:06
Все это можно сделать средствами SQL
исключив ненужные столбцы.

С уважением, Вадим.