|
v7: Группировка в запросе, обратная сортировка | ☑ | ||
---|---|---|---|---|
0
exec11
25.05.22
✎
16:25
|
1с 77
Есть простой запрос : Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = "//{{ЗАПРОС(Сформировать) |Период с ПериодС по ПериодПО; |ВладелецЗап = Справочник.ГрафКалендарь.Владелец; |СпрЗап = Справочник.ГрафКалендарь.ТекущийЭлемент; |Группировка СпрЗап Упорядочить по СпрЗап.ДатаРеестр без групп; |Условие (СпрЗап.ПометкаУдаления()=0); |Условие (Запрос.ВладелецЗап = Название); |Без итогов; |"//}}ЗАПРОС ; Пока Запрос.Группировка() = 1 Цикл Сообщить("ДатаРеестр "+Запрос.СпрЗап.ДатаРеестр); Сообщить(" "); КонецЦикла; Он работает, все нормально. Но если так : Пока Запрос.Группировка(1) = 1 Цикл То выборка пустая. А если вернуть назад : Пока Запрос.Группировка() = 1 Цикл То выборка опять работает. Можно ли кто-нибудь объяснить мне - почему ???? Предвижу вопрос, зачем это мне. Отвечу, нужно сделать обратную сортировку. Делается так: (1,-1) Если указываю так - выборка пустая. |
|||
1
Злопчинский
25.05.22
✎
16:30
|
условие на пометку удаления так делать не надо есть отдельная инструкция языка запросов
Обрабатывать Непмеченные.... - читай СП на сон грядущий |
|||
2
Злопчинский
25.05.22
✎
16:30
|
Без Итогов поставить после периода
|
|||
3
Злопчинский
25.05.22
✎
16:31
|
вызывает сомнение
Запрос.ВладелецЗап = Название Название - это что? ВладелецЗап - это ведь ссылка... |
|||
4
Злопчинский
25.05.22
✎
16:32
|
Период - убрать нафиг, какой период для обработки справочников?
|
|||
5
Злопчинский
25.05.22
✎
16:33
|
Без Итогов - группировки не накапливаются.
поэтому Пока Запрос.Группировка() = 1 - чита СП - об этом сказано прямо |
|||
6
Злопчинский
25.05.22
✎
16:43
|
Без Итогов;
Обрабатывать НеПомеченныеНаУдаление; ВладелецЗап = Справочник.ГрафКалендарь.Владелец; СпрЗап = Справочник.ГрафКалендарь.ТекущийЭлемент; ДатаРеестр = Справочник.ГрафКалендарь.ДатаРеестр; Группировка СпрЗап Без Упорядочивания Без групп; Условие (Запрос.ВладелецЗап = ?ЗДЕСЬССЫЛКАНА?); ТЗ = СоздатьОбъект("ТаблицаЗначений"); Запрос.Выгрузить(ТЗ,1,0); ТЗ.Сортировать("ДатаРеестр-"); ТЗ.ВыбратьСтроки(); Пока ТЗ.ПолучитьСтроку() = 1 Цикл //ТУДУ КонецЦикла; |
|||
7
exec11
25.05.22
✎
16:48
|
1-4 исправил, спасибо.
5. Если оставить итоги, то в выборку попадает, скажем так, пуста строка. Но если ставим Запрос.Группировка(1,-1) то пустая строка пропадает. И сортировка как надо. Странно, но работает. Спасибо! Такое решние подошло ! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |