|
Запрос с проверкой | ☑ | ||
---|---|---|---|---|
0
AlexZ99
21.05.17
✎
15:06
|
Добрый день, подскажите где не правильно.
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ЕСТЬNULL(КОЛИЧЕСТВО(Событие.Ссылка),0) КАК Ссылка, | Событие.МС_ТипСобытия КАК МС_ТипСобытия |ИЗ | Документ.Событие КАК Событие |ГДЕ | Событие.Дата МЕЖДУ &Дата И &Дата1 | И Событие.МС_ТипСобытия В(&МС_ТипСобытия) | И Событие.Состояние = &Состояние | И Событие.НачалоСледующегоСобытия < &НачалоСледующегоСобытия | |СГРУППИРОВАТЬ ПО | Событие.МС_ТипСобытия |АВТОУПОРЯДОЧИВАНИЕ"; Запрос.УстановитьПараметр("Дата",НачалоДня(Дата.Значение)); Запрос.УстановитьПараметр("Дата1",КонецДня(Дата.Значение)); Запрос.УстановитьПараметр("МС_ТипСобытия",Список); Запрос.УстановитьПараметр("Состояние", Справочники.СостоянияСобытий.Запланировано); Запрос.УстановитьПараметр("НачалоСледующегоСобытия", Дата.Значение); Имеется вот такой, в него передается массив с 8 статусами, на выходе имею 6 статусов, ибо по 2 статусам событий нет, как их вывести тоже? Т.е. статус1 10 статус2 15 статус3 0 статус4 0 и т.д. |
|||
1
Chameleon1980
21.05.17
✎
15:26
|
соединение с таблицей статусов
|
|||
2
AlexZ99
21.05.17
✎
15:31
|
Это как?
|
|||
3
Лефмихалыч
21.05.17
✎
15:40
|
ВЫБРАТЬ
| ТипыСобытий.Ссылка, | ЕСТЬNULL(КОЛИЧЕСТВО(Событие.Ссылка),0) КАК Ссылка, | Событие.МС_ТипСобытия КАК МС_ТипСобытия |ИЗ | Справочник.ТипыСобытий | ЛЕВОЕ СОЕДИНЕНИЕ Документ.Событие КАК Событие | ПО Событие.МС_ТипСобытия = ТипыСобытий.Ссылка | И Событие.Дата МЕЖДУ &Дата И &Дата1 | И Событие.Состояние = &Состояние | И Событие.НачалоСледующегоСобытия < &НачалоСледующегоСобытия |ГДЕ | ТипыСобытий.Ссылка В(&МС_ТипСобытия) | |СГРУППИРОВАТЬ ПО | ТипыСобытий.Ссылка, | Событие.МС_ТипСобытия |
|||
4
AlexZ99
21.05.17
✎
15:45
|
Сейчас опробую, спасибо
|
|||
5
AlexZ99
21.05.17
✎
16:24
|
Перекроил вот так вот.
"ВЫБРАТЬ | ВнешняяТаблица.Статус КАК Ссылка |ПОМЕСТИТЬ | ВнешняяТаблица |ИЗ | &ВнешняяТаблица КАК ВнешняяТаблица |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ЕСТЬNULL(КОЛИЧЕСТВО(Событие.Ссылка), 0) КАК Ссылка, | Событие.МС_ТипСобытия КАК МС_ТипСобытия |ИЗ | ВнешняяТаблица КАК ВнешняяТаблица | ЛЕВОЕ СОЕДИНЕНИЕ Документ.Событие КАК Событие | ПО ВнешняяТаблица.Ссылка = Событие.МС_ТипСобытия |ГДЕ | Событие.Дата МЕЖДУ &Дата И &Дата1 | И Событие.Состояние = &Состояние | И Событие.НачалоСледующегоСобытия < &НачалоСледующегоСобытия | |СГРУППИРОВАТЬ ПО | Событие.МС_ТипСобытия |АВТОУПОРЯДОЧИВАНИЕ"; Запрос.УстановитьПараметр("Дата",НачалоДня(Дата.Значение)); Запрос.УстановитьПараметр("Дата1",КонецДня(Дата.Значение)); Запрос.УстановитьПараметр("ВнешняяТаблица",Статусы); Запрос.УстановитьПараметр("Состояние", Справочники.СостоянияСобытий.Запланировано); Запрос.УстановитьПараметр("НачалоСледующегоСобытия", Дата.Значение); Но ситуация не поменялась( |
|||
6
Chameleon1980
21.05.17
✎
17:11
|
ВТ тут не к месту так-то
|
|||
7
Chameleon1980
21.05.17
✎
17:12
|
масло маслянное
и смотреть внимательно предложенный выше пример |
|||
8
Chameleon1980
21.05.17
✎
17:12
|
сюда &ВнешняяТаблица что прилетает?
|
|||
9
AlexZ99
21.05.17
✎
17:15
|
ТЗ с 8 статусами
|
|||
10
Shrek_yar
21.05.17
✎
17:27
|
(9)
Условие уберите
|
|||
11
Shrek_yar
21.05.17
✎
17:28
|
+ (10) Сначало соберите документы с условием, потом левое соединение с событиями, тогда все получиться
|
|||
12
Shrek_yar
21.05.17
✎
17:30
|
+(11) или как в (3) там все правилньо сделано
|
|||
13
Chameleon1980
21.05.17
✎
17:55
|
(9) а ТЗ как собирается?
код в студию |
|||
14
AlexZ99
21.05.17
✎
18:29
|
Уже разобрался, работает. Сделал Shrek_yar советовал, и собрал сначала документы с условием. Спасибо всем за помощь
|
|||
15
Лефмихалыч
21.05.17
✎
20:56
|
четыре часа и десять постов потребовалось, чтобы применить готовое решение.
прекрасный результат. |
|||
16
Лефмихалыч
21.05.17
✎
20:56
|
ну - три, ладно
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |