|
Изменить условия формирования отчета | ☑ | ||
---|---|---|---|---|
0
Marfejka
21.11.11
✎
11:07
|
Есть отчет - формирует выборку данных для лиц до 17 лет. Необходимо его исправить на пенсионеров, т.е. мужчины >60, женщины >55.
Вот часть запроса, содержащая условие <=17: ВЫБОР | КОГДА ГОД(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) = 1 | ТОГДА 0 | ИНАЧЕ ГОД(СтатистикаКонсультацииОбороты.Дата) - ГОД(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) + ВЫБОР | КОГДА МЕСЯЦ(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) * 100 + ДЕНЬ(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) > МЕСЯЦ(СтатистикаКонсультацииОбороты.Дата) * 100 + ДЕНЬ(СтатистикаКонсультацииОбороты.Дата) | ТОГДА -1 | ИНАЧЕ 0 | КОНЕЦ |КОНЕЦ КАК Возраст |ИЗ | РегистрНакопления.СтатистикаКонсультации.Обороты(&ДатаНачала, &ДатаОкончания, , ) КАК СтатистикаКонсультацииОбороты |ГДЕ |ВЫБОР | КОГДА ГОД(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) = 1 | ТОГДА 0 | ИНАЧЕ ГОД(СтатистикаКонсультацииОбороты.Дата) - ГОД(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) + ВЫБОР | КОГДА МЕСЯЦ(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) * 100 + ДЕНЬ(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) > МЕСЯЦ(СтатистикаКонсультацииОбороты.Дата) * 100 + ДЕНЬ(СтатистикаКонсультацииОбороты.Дата) | ТОГДА -1 | ИНАЧЕ 0 | КОНЕЦ | КОНЕЦ <= 17"; На сколько я понимаю в месте, где 17 необходимо прописать необходимое мне условие. Пыталась так сделать: ВЫБОР КОГДА СтатистикаКонсультацииОбороты.Пациент.Пол=Перечисления.Пол.Женский Тогда | КОНЕЦ >= 55 | ИНАЧЕ | КОНЕЦ >= 60 | КОНЕЦ"; А он ругается что ему надо КОНЕЦ а там ВЫБОР. Не понимаю - как написать? |
|||
1
Defender aka LINN
21.11.11
✎
11:12
|
"КОНЕЦ >= 55" - скромнее надо быть. Все знают, что 22 - это максимум.
|
|||
2
darkvett
21.11.11
✎
11:33
|
Не особо силен в запросах, но думаю что-то вроде этого должно быть:
ВЫБОР | КОГДА ГОД(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) = 1 | ТОГДА 0 | ИНАЧЕ ГОД(СтатистикаКонсультацииОбороты.Дата) - ГОД(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) + ВЫБОР | КОГДА МЕСЯЦ(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) * 100 + ДЕНЬ(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) > МЕСЯЦ(СтатистикаКонсультацииОбороты.Дата) * 100 + ДЕНЬ(СтатистикаКонсультацииОбороты.Дата) | ТОГДА -1 | ИНАЧЕ 0 | КОНЕЦ |КОНЕЦ КАК Возраст |ИЗ | РегистрНакопления.СтатистикаКонсультации.Обороты(&ДатаНачала, &ДатаОкончания, , ) КАК СтатистикаКонсультацииОбороты |ГДЕ |((ВЫБОР | КОГДА ГОД(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) = 1 | ТОГДА 0 | ИНАЧЕ ГОД(СтатистикаКонсультацииОбороты.Дата) - ГОД(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) + ВЫБОР | КОГДА МЕСЯЦ(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) * 100 + ДЕНЬ(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) > МЕСЯЦ(СтатистикаКонсультацииОбороты.Дата) * 100 + ДЕНЬ(СтатистикаКонсультацииОбороты.Дата) | ТОГДА -1 | ИНАЧЕ 0 | КОНЕЦ | КОНЕЦ >= 55) И (СтатистикаКонсультацииОбороты.Пациент.Пол=Перечисления.Пол.Женский)) ИЛИ |((ВЫБОР | КОГДА ГОД(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) = 1 | ТОГДА 0 | ИНАЧЕ ГОД(СтатистикаКонсультацииОбороты.Дата) - ГОД(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) + ВЫБОР | КОГДА МЕСЯЦ(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) * 100 + ДЕНЬ(СтатистикаКонсультацииОбороты.Пациент.ДатаРождения) > МЕСЯЦ(СтатистикаКонсультацииОбороты.Дата) * 100 + ДЕНЬ(СтатистикаКонсультацииОбороты.Дата) | ТОГДА -1 | ИНАЧЕ 0 | КОНЕЦ | КОНЕЦ >= 60) И (СтатистикаКонсультацииОбороты.Пациент.Пол=Перечисления.Пол.Мужской))"; |
|||
3
Marfejka
21.11.11
✎
11:48
|
(Не поняла еще как ссылаться на того, кому пишу)
darkvett - Спасибо!!! Заработало! |
|||
4
darkvett
21.11.11
✎
11:52
|
Сам в шоке:)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |