Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Подскажите, пожалуйста, как можно улучшить запрос

Подскажите, пожалуйста, как можно улучшить запрос
Я
   nature2002
 
29.03.19 - 12:30
"ВЫБРАТЬ
    |    ТаблицаОстатков.Субконто1,
    |    ТаблицаОстатков.Субконто2,
    |    ТаблицаОстатков.Субконто3,
    |    ТаблицаОстатков.Субконто4,
    |    ТаблицаОстатков.Субконто5
    |ПОМЕСТИТЬ ВтТаблицаОстатков
    |ИЗ
    |    &ТаблицаОстатков КАК ТаблицаОстатков
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ РАЗЛИЧНЫЕ
    |    ВЫБОР
    |        КОГДА ВтТаблицаОстатков.Субконто1 ССЫЛКА Справочник.Инструменты
    |            ТОГДА ВтТаблицаОстатков.Субконто1
    |        КОГДА ВтТаблицаОстатков.Субконто2 ССЫЛКА Справочник.Инструменты
    |            ТОГДА ВтТаблицаОстатков.Субконто2
    |        КОГДА ВтТаблицаОстатков.Субконто3 ССЫЛКА Справочник.Инструменты
    |            ТОГДА ВтТаблицаОстатков.Субконто3
    |        КОГДА ВтТаблицаОстатков.Субконто4 ССЫЛКА Справочник.Инструменты
    |            ТОГДА ВтТаблицаОстатков.Субконто4
    |        КОГДА ВтТаблицаОстатков.Субконто5 ССЫЛКА Справочник.Инструменты
    |            ТОГДА ВтТаблицаОстатков.Субконто5
    |        ИНАЧЕ ЗНАЧЕНИЕ(Справочник.Инструменты.ПустаяСсылка)
    |    КОНЕЦ КАК Инструмент
    |ИЗ
    |    ВтТаблицаОстатков КАК ВтТаблицаОстатков";
 
 
   formista2000
 
1 - 29.03.19 - 12:33
Какая интересная у вас, оказывается, структура и методика учёта однако! :-/
   Рэйв
 
2 - 29.03.19 - 12:36
У тебя если Справочник.Инструменты, то отработает только ВтТаблицаОстатков.Субконто1 
В остальные условия не зайдет
   1Сергей
 
3 - 29.03.19 - 12:39
(2) чо?
   Рэйв
 
4 - 29.03.19 - 12:40
Выполни для прикола в консоли
ВЫБРАТЬ ПЕРВЫЕ 1
    Выбор Когда Истина Тогда 1
          Когда Истина Тогда 2
          Когда Истина Тогда 3
    Конец Оно
   Рэйв
 
5 - 29.03.19 - 12:40
(4)->(3)
   1Сергей
 
6 - 29.03.19 - 12:41
(4) и чо?

ВтТаблицаОстатков.Субконто1 не обязательно инструменты
   Nyoko
 
7 - 29.03.19 - 12:42
Архитектор 1с 80+ LVL )))
   Рэйв
 
8 - 29.03.19 - 12:42
(6)Если не инструменты, то оно уйдет в Иначе. А остальные условия тут тогда ни к чему, в них никогда не попадет
   1Сергей
 
9 - 29.03.19 - 12:43
(8) почему?
Если Субконто1 не Инструменты, а Субконто2 Инструменты, то вернёт Субконто2
   Рэйв
 
10 - 29.03.19 - 12:44
(9)А.. вообще то точно:-) ..Мне померещилось, что там везде Субконто1 :-)
Тогда реплика (2) снимается
 
 Рекламное место пустует
   Nyoko
 
11 - 29.03.19 - 12:44
(9) а если они все инструменты )))
   1Сергей
 
12 - 29.03.19 - 12:45
(11) Ну, не буду я Вас логике учить, ладно? :)
   Рэйв
 
13 - 29.03.19 - 12:45
(12)Да, я тоже думаю, что  обойдемся:-)
   singlych
 
14 - 29.03.19 - 12:48
Не, ну если ожидается именно то, что запрос делает, то норм, мне кажется.
   Chameleon1980
 
15 - 29.03.19 - 12:51
вернемся к баранам

куда тут упрощять (улучшать)?
   VS-1976
 
16 - 29.03.19 - 12:54
(15) Если нужны все ссылки на Справочник.Инструменты, то запрос потенциально даже будет некорректным...
   unregistered
 
17 - 29.03.19 - 12:55
(0) Оптимизировать надо раньше. Ещё при получении таблицы остатков регистра бухгалтерии можно указать параметр "Субконто" и сразу получить остатки только по субконто нужного типа. И только если вид этого субконто предусматривает составной тип, то заморачиваться с операторами ВЫБОР и ССЫЛКА.

А в приведенном запросе особо ничего не оптимизируешь. Ибо исходные данные в &ТаблицаОстатков не оптимизированы.
   Бычье сердце
 
18 - 29.03.19 - 14:14
(0)
Есть код, как таблица остатков получается? Тимур спрашивает.

Список тем форума
Рекламное место пустует  Рекламное место пустует
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух.
Фредерик Брукс-младший
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует