powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Функция SWITCH ???
5 сообщений из 5, страница 1 из 1
Функция SWITCH ???
    #32866156
Евгений1234-5
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А-97, Win 98
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
TRANSFORM Sum(LGOTN.KOLLG) AS Sum_KOLLG
SELECT [LGOTN]![KATEG] AS KTG
FROM LGOTN INNER JOIN NORMA ON LGOTN.Norma = NORMA.SHIFR
WHERE (((LGOTN.Id_Периода)=True) AND ((LGOTN.Id_Закр)=False))
GROUP BY [LGOTN]![KATEG], LGOTN.Id_Периода, LGOTN.Id_Закр
PIVOT Switch(NORMA.shifr= 0 ,"NoNor",
NORMA.shifr= 1 ,"230/365",
NORMA.shifr= 2 ,"80/115",
NORMA.shifr= 3 ,"70/50",
NORMA.shifr= 4 ,"30/25",
NORMA.shifr= 5 ,"30",
NORMA.shifr= 6 ,"230/365чс",
NORMA.shifr= 7 ,"70/50чс",
NORMA.shifr= 8 ,"70+30чс",
NORMA.shifr= 9 ,"70чс",
NORMA.shifr= 10 ,"30чс",
NORMA.shifr= 11 ,"0/50",
NORMA.shifr= 12 ,"120/260",
NORMA.shifr= 13 ,"230/225",
NORMA.shifr= 14 ,"100/180")
 In ("NoNor", "230/365", "80/115", "70/50", "30/25", "30", "230/365чс", "70/50чс",
 "70+30чс", "70чс", "30чс", "0/50", "120/260", "230/225", "100/180");
Ругается на слишком сложным расчетом, пункотв в Switch 15, но если любой один убрать то все работает. Это ограничение ?
...
Рейтинг: 0 / 0
Функция SWITCH ???
    #32866207
Евгений1234-5
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пример:
...
Рейтинг: 0 / 0
Функция SWITCH ???
    #32866440
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно соединить перед трансформом соединить таблицу NORMA с дополнительной табличкой, куда загнать эти 15 пар значений код-расшифровка. И делать пайвот по полю расшифровки.
...
Рейтинг: 0 / 0
Функция SWITCH ???
    #32866616
Евгений1234-5
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может я не верно понял, но так и было.
Проблема в том что этот запрос используется в отчете и при отсутствии например 3-х, 4-х или даже одной нормы, отчет ругается отсутствием поля.
Есть мысль от SWITCH вообще избавится, оставить только IN.
...
Рейтинг: 0 / 0
Функция SWITCH ???
    #32866618
Евгений1234-5
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А ларчик просто открывался !!!
Код: plaintext
1.
2.
3.
4.
5.
TRANSFORM Sum(LGOTN.KOLLG) AS Sum_KOLLG
SELECT [LGOTN]![KATEG] AS KTG
FROM LGOTN INNER JOIN NORMA ON LGOTN.Norma = NORMA.SHIFR
WHERE (((LGOTN.Id_Периода)=True) AND ((LGOTN.Id_Закр)=False))
GROUP BY [LGOTN]![KATEG], LGOTN.Id_Периода, LGOTN.Id_Закр
PIVOT NORMA.NORMA In ("NoNor", "230/365", "80/115", "70/50", "30/25", "30", "230/365чс", "70/50чс", "70+30чс", "70чс", "30чс", "0/50", "120/260", "230/225", "100/180");


P.S.
Ложись Иван спать утром запрос мудрнее вечернего.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Функция SWITCH ???
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]