|
Аудит фреш не принимает запрос и посылает .... | ☑ | ||
---|---|---|---|---|
0
simon_spb
09.09.22
✎
15:25
|
Аудит фреш не принимает запрос и посылает на сайт 1С, где в примерах оптимизации запросов абсолютно точно такой же запрос с таким же условием.\
Это мой: ВЫБРАТЬ ГОД(ХозрасчетныйОбороты.Период) КАК ПериодГод, МЕСЯЦ(ХозрасчетныйОбороты.Период) КАК ПериодМесяц, НАЧАЛОПЕРИОДА(ХозрасчетныйОбороты.Период, ДЕНЬ) КАК ПериодДата, ХозрасчетныйОбороты.СуммаОборот КАК Сумма, ВЫБОР КОГДА ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета ТОГДА ВЫРАЗИТЬ(ХозрасчетныйОбороты.Регистратор КАК Документ.СписаниеСРасчетногоСчета).СтатьяДвиженияДенежныхСредств КОГДА ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет ТОГДА ВЫРАЗИТЬ(ХозрасчетныйОбороты.Регистратор КАК Документ.ПоступлениеНаРасчетныйСчет).СтатьяДвиженияДенежныхСредств КОНЕЦ КАК СтатьяДДС, ВЫБОР КОГДА ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета ТОГДА ВЫРАЗИТЬ(ХозрасчетныйОбороты.Регистратор КАК Документ.СписаниеСРасчетногоСчета).ВидОперации КОГДА ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет ТОГДА ВЫРАЗИТЬ(ХозрасчетныйОбороты.Регистратор КАК Документ.ПоступлениеНаРасчетныйСчет).ВидОперации КОНЕЦ КАК ВидДвижения, ВЫБОР КОГДА ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета ТОГДА ВЫРАЗИТЬ(ХозрасчетныйОбороты.Регистратор КАК Документ.СписаниеСРасчетногоСчета).Контрагент КОГДА ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет ТОГДА ВЫРАЗИТЬ(ХозрасчетныйОбороты.Регистратор КАК Документ.ПоступлениеНаРасчетныйСчет).Контрагент КОНЕЦ КАК Контрагент, ВЫБОР КОГДА ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета ТОГДА ВЫРАЗИТЬ(ХозрасчетныйОбороты.Регистратор КАК Документ.СписаниеСРасчетногоСчета).Организация КОГДА ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет ТОГДА ВЫРАЗИТЬ(ХозрасчетныйОбороты.Регистратор КАК Документ.ПоступлениеНаРасчетныйСчет).Организация КОНЕЦ КАК Организация, ВЫБОР КОГДА ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета ТОГДА ВЫРАЗИТЬ(ХозрасчетныйОбороты.Регистратор КАК Документ.СписаниеСРасчетногоСчета).СчетОрганизации КОГДА ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет ТОГДА ВЫРАЗИТЬ(ХозрасчетныйОбороты.Регистратор КАК Документ.ПоступлениеНаРасчетныйСчет).СчетОрганизации КОНЕЦ КАК СчетОрганизации, ВЫБОР КОГДА ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета ТОГДА ВЫРАЗИТЬ(ХозрасчетныйОбороты.Регистратор КАК Документ.СписаниеСРасчетногоСчета) КОГДА ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет ТОГДА ВЫРАЗИТЬ(ХозрасчетныйОбороты.Регистратор КАК Документ.ПоступлениеНаРасчетныйСчет) КОНЕЦ КАК Регистратор ИЗ РегистрБухгалтерии.Хозрасчетный.Обороты(&НачалоПериода, &КонецПериода, Регистратор, Счет В ИЕРАРХИИ (&Счёт), , , , ) КАК ХозрасчетныйОбороты ГДЕ (ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета ИЛИ ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет) СГРУППИРОВАТЬ ПО ГОД(ХозрасчетныйОбороты.Период), МЕСЯЦ(ХозрасчетныйОбороты.Период), НАЧАЛОПЕРИОДА(ХозрасчетныйОбороты.Период, ДЕНЬ), ХозрасчетныйОбороты.СуммаОборот, ХозрасчетныйОбороты.Регистратор.СтатьяДвиженияДенежныхСредств, ХозрасчетныйОбороты.Регистратор.Контрагент, ХозрасчетныйОбороты.Регистратор.ВидОперации, ХозрасчетныйОбороты.Организация, ХозрасчетныйОбороты.Регистратор.СчетОрганизации, ХозрасчетныйОбороты.Регистратор УПОРЯДОЧИТЬ ПО НАЧАЛОПЕРИОДА(ХозрасчетныйОбороты.Период, ДЕНЬ) А это пример: Запрос.Текст = "ВЫБРАТЬ | ВЫБОР | КОГДА Продажи.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг | ТОГДА ВЫРАЗИТЬ(Продажи.Регистратор КАК Документ.РеализацияТоваровУслуг).Номер | КОГДА Продажи.Регистратор ССЫЛКА Документ.ЗаказПокупателя | ТОГДА ВЫРАЗИТЬ(Продажи.Регистратор КАК Документ.ЗаказПокупателя).Номер | КОНЕЦ ВЫБОРА КАК Номер, | ВЫБОР | КОГДА Продажи.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг | ТОГДА ВЫРАЗИТЬ(Продажи.Регистратор КАК Документ.РеализацияТоваровУслуг).Дата | КОГДА Продажи.Регистратор ССЫЛКА Документ.ЗаказПокупателя | ТОГДА ВЫРАЗИТЬ(Продажи.Регистратор КАК Документ.ЗаказПокупателя).Дата | КОНЕЦ ВЫБОРА КАК Дата, | Продажи.Контрагент, | Продажи.Количество, | Продажи.Стоимость |ИЗ | РегистрНакопления.Продажи КАК Продажи |ГДЕ | Продажи.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг | ИЛИ Продажи.Регистратор ССЫЛКА Документ.ЗаказыПокупателя"; После того как кинул скрин с сайта, на сайт посылать перестали. Но посоветовали использовать временную таблицу. Вопрос: что им надо и как его переделать? |
|||
1
RomanYS
09.09.22
✎
15:27
|
У тебя в группировках обращение через 2 точки:
ХозрасчетныйОбороты.Регистратор.СтатьяДвиженияДенежныхСредств, ХозрасчетныйОбороты.Регистратор.Контрагент, ХозрасчетныйОбороты.Регистратор.ВидОперации, ХозрасчетныйОбороты.Регистратор.СчетОрганизации, |
|||
2
lodger
09.09.22
✎
15:37
|
как его переделать:
напиши со временными табами сперва всё то же самое, но без группировок и без данных через точку и в вт1 во вторую временную табу возьми таблицы документов с отбором ссылок из вт1, объединить со вторым видом документа в третьем запросе соединяй вт1 и вт2, группируй. |
|||
3
lodger
09.09.22
✎
15:38
|
впрочем, я вообще не понял зачем группировка?
СГРУППИРОВАТЬ ПО ХозрасчетныйОбороты.СуммаОборот, |
|||
4
Ботаник Гарден Меран
09.09.22
✎
15:50
|
ГДЕ
(ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета ИЛИ ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет) Это надо разделить на два с объединением Выбрать * ИЗ Где ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета Объединить Все Выбрать * ИЗ Где ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет |
|||
5
RomanYS
09.09.22
✎
17:00
|
(4) проще сначала объединить два списка документов в одну ВТ с нужными колонками, а потом уже внутреннее Регистром без дополнительных условий
|
|||
6
Фантазер
09.09.22
✎
18:04
|
Интересно эти "аутисты" вручную обработки проверяют? или у них тесты какие-то стоят?
ПыСЫ: не выношу их мерзкие и лицемерные требования к стандартам 1С, из-за которых страдает только клиент. |
|||
7
RomanYS
09.09.22
✎
18:07
|
(6) То что в (1) вполне автоматически выявляется.
|
|||
8
mistеr
09.09.22
✎
18:07
|
(6) Если забить на стандарты, страдать будет не один клиент, а все.
|
|||
9
СеменовСемен
09.09.22
✎
18:34
|
бери не по таблице оборотов, а по таблице движений
|
|||
10
СеменовСемен
09.09.22
✎
18:35
|
(4) особой разницы нет, ибо все равно будет скан по индексу период
|
|||
11
Фантазер
09.09.22
✎
18:35
|
(8) А все и страдают. И забивать на свои стандарты стало ... само 1С. Или меняет их на ходу.
Достаточно заглянуть в модули зарплаты. |
|||
13
mistеr
09.09.22
✎
19:28
|
(10) С разделителями планы могут быть неожиданно разными.
|
|||
14
rudnitskij
09.09.22
✎
19:35
|
(0) "ГДЕ
(ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета ИЛИ ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет)" - вот это лучше вынести из условий в параметры виртуальной таблицы |
|||
15
БигБаг
09.09.22
✎
20:54
|
Первый раз вижу, что бы писали "КОНЕЦ ВЫБОРА"
|
|||
16
БигБаг
09.09.22
✎
20:59
|
А зачем это выражение?:
|
|||
17
RomanYS
09.09.22
✎
22:13
|
(15) а можно без него? Конструктор автоматом ставит
|
|||
18
RomanYS
09.09.22
✎
22:13
|
(16) "по-аналогии" видимо
|
|||
19
simon_spb
10.09.22
✎
16:23
|
(16) Затем, что в ответе фреша есть фраза: сходите по ссылке "Оптимизация запросов" и сделайте как там. Второй запрос не мой, а образцовый, с сайта, и я смотрю к нему уже возникло много вопросов. Конца Выбора тоже касается
|
|||
20
simon_spb
10.09.22
✎
16:27
|
(14) Я конечно все попробую, спасибо всем. Но реально не понимаю чем это отличается от
|ГДЕ | Продажи.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг | ИЛИ Продажи.Регистратор ССЫЛКА Документ.ЗаказыПокупателя из запроса который по мнению 1С оптимальный |
|||
21
RomanYS
10.09.22
✎
16:39
|
(14) в параметрах ВТ нельзя накладывать условия на регистратор
(20) запрос у тебя реально кривой, минимум (1) и (3) нужно исправить. А оптимальнее имхо (5), и быстрее будет и запрос выглядеть будет прилично |
|||
22
simon_spb
02.10.22
✎
17:26
|
(21) Внутреннее с регистром тоже забраковали. Сначала регистр в третью временную таблицу,потому уже соединение с ней. И проиндексировать поле соединения.
|
|||
23
Ник второй
02.10.22
✎
17:45
|
(22) Ибо небось опять хрень отдал.
|
|||
24
SweetaAngel
02.10.22
✎
18:19
|
(20) Тем что в примере берут данные из физической таблицы, а в твоем варианте из из виртуальной. Зачем тебе виртуальная? Ты вроде из субконто ничего не берешь.
Кроме того конструкция " Счет В ИЕРАРХИИ (&Счёт)" — сильно затратна при обращении к регистрам бухгалтерии. По хорошему надо из плана счетов отобрать список счетов подходящих к этому условию, а затем отбирать именно по списку. |
|||
25
rudnitskij
03.10.22
✎
12:07
|
(21) по поводу (14) - в оборотах можно
|
|||
26
RomanYS
03.10.22
✎
12:36
|
(25) С каких пор?
Поле не найдено "Регистратор" РегистрБухгалтерии.Хозрасчетный.Обороты(, , Регистратор, , , <<?>>Регистратор Ссылка Документ.ПлатежноеПоручениеИсходящее Платформа 8.3.20.1914, режим совместимости 8.2 |
|||
27
simon_spb
15.10.22
✎
02:06
|
(24) Понял, спасибо!
|
|||
28
ДедМорроз
15.10.22
✎
11:12
|
А регистратор ссылка так без точки и написано?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |