Форум: "Базы";
Текущий архив: 2004.09.26;
Скачать: [xml.tar.bz2];
ВнизГруппировка в отчете Найти похожие ветки
← →
Jey (2004-08-31 09:17) [0]Всем привет!!! Такая трабла! В отчете нужно выводить меню (ну, которое висит в столовой). В этом меню нужно выводить:
"Первые блюда"
блюдо1
блюдо2
блюдоN
"Вторые блюда"
блюдо1
блюдо2
блюдоN
"Гарниры" и т.д
Группировку делаю по первым 2-м буквам индекса блюда - полю IND_BL. Структура поля такая: первые 2 буквы означают класс блюда, остальные 5 цифр его номер по справочнику. В свойстве Expression компонента QRExpr пробовал писать IF (COPY(Query1.IND_BL),1,2)="СУ","Первые блюда",IF (COPY(Query1.IND_BL),1,2)="МИ","Вторые блюда")). Пробовал также писать каждое условие с новой строки типа
IF (COPY(Query1.IND_BL),1,2)="СУ","Первые блюда","")
IF (COPY(Query1.IND_BL),1,2)="МИ","Вторые блюда","")
и с с ипользованием OR,... но в ответ одни маты.
Короче, в IF вместо второго аргумента подставляю новое условие, но он начинает ругаться. Как можно в Expression задать сразу несколько условий выбора?
← →
dolmat (2004-08-31 09:24) [1]Трудновато для этих баз такое. Не мучайтесь и разделите на два поля и если нужно потом их соединить намного легче и проблемы решаться.
← →
KSergey © (2004-08-31 09:29) [2]Там, наверное, IF писать не надо всяко...
Да и сильно сомневаюсь, что он там ф-ции воспринимать умеет.
Наверное, надо взять и сделать в выдорке еще одно поле, которое бы содержало результат COPY(Query1.IND_BL),1,2) (к стати, я со скобками что-то не понял ничего)
По нему и рисовать условие
← →
Sergey13 © (2004-08-31 09:30) [3]> Структура поля такая: первые 2 буквы означают класс блюда, остальные 5 цифр его номер по справочнику
Узнаю себя в клипперной юности. 8-)
А почему бы не сделать 2 поля? И многие извраты можно будет обойти стандартным путем - в данном случае мастер-детальный отчет. И без всяких анализов.
← →
KSergey © (2004-08-31 09:33) [4]> [3] Sergey13 © (31.08.04 09:30)
> А почему бы не сделать 2 поля?
А вот и ответ:
> Узнаю себя в клипперной юности. 8-)
;)
← →
Deniz © (2004-08-31 10:03) [5]Вот так нада:
IF(COPY(Query1.IND_BL),1,2)="СУ","Первые блюда",
IF(COPY(Query1.IND_BL),1,2)="МИ","Вторые блюда","")
получается вариант типа
if ... then ... elseif ... then ... elseif ...кстати, список можно продолжить.Тоже самое положить в Group.Expression и тогда QReport еще и сгруппирует про такому выражению, есть правда некоторые подводные камни
← →
Deniz © (2004-08-31 10:06) [6]Что-то со скобками я намудрил
IF((COPY(Query1.IND_BL),1,2)="СУ","Первые блюда",
IF(COPY(Query1.IND_BL),1,2)="МИ","Вторые блюда","")
← →
Jey (2004-08-31 11:31) [7][5] Так пробовал так, не получается, начинает ругаться
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.09.26;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.047 c