У нас здесь своя атмосфера...
Группа: Основатель
Сообщений: 14050
Из: Киев
Спасибо сказали: 4612 раз
Рейтинг: 3748.8
В запросе есть условие:
| (&ФильтрКлиент = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | ИЛИ НЕ &ФильтрКлиент = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | И ВЗ_ИсточникДанных.Клиент = &ФильтрКлиент)
Не будет ли оно работать точно так же, если из него удалить 2 верхние строки? Или же это условие аналогично такому:
| ((&ФильтрКлиент = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка)) | ИЛИ (НЕ &ФильтрКлиент = ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) | И ВЗ_ИсточникДанных.Клиент = &ФильтрКлиент))
У нас здесь своя атмосфера...
Группа: Основатель
Сообщений: 14050
Из: Киев
Спасибо сказали: 4612 раз
Рейтинг: 3748.8
Цитата(Acid @ 13.07.12, 10:20)
это код от 1С?
Нет, от "продвинутых 1Снегов"
Цитата(Zaval @ 13.07.12, 10:21)
А не тормознее ли? Еще Выбора звать)
Это от многих факторов может зависеть (от конкретного запроса, от количества записей в результате запроса, от железа, от сети и т.п.) и однозначного ответа на этот вопрос, наверное, нету. И с таким подходом вообще получается, что можно везде писать вместо ВЫБОР КОГДА подобные инструкции через ИЛИ.
Цитата(Zaval @ 13.07.12, 10:21)
Наглядность, в сущности, дело привычки.
Наглядность - это культура разработки, которая помимо прочего так же говорит о уровне разработчика. А всё что написано не наглядно в простонародье зовется говнокод
У нас здесь своя атмосфера...
Группа: Основатель
Сообщений: 14050
Из: Киев
Спасибо сказали: 4612 раз
Рейтинг: 3748.8
Цитата(Zaval @ 13.07.12, 10:43)
Цикл, написанный одной строкой, тоже наглядностью не блещет.
Интересно чем же он вообще блещет ? Без примера конкретного цикла, который можно замерять у себя на машине - вариант "бОльшая производительность" не принимаю .
Выборка = Запрос.Выполнить().Выборать(); Пока Выборка.Следущий() Цикл Ля-ля-ля; ля-ля-ля; как же приятно читать такой код; ля-ля-ля; КонецЦикла;
Старейшина
Группа: Команда (модераторы)
Сообщений: 1116
Из: Одесса-Луганск
Спасибо сказали: 193 раз
Рейтинг: 0
Чтобы почуствовать производительность нужна разница во времени выполнения хотя бы пару секунд. При фактическом времени вызова интерпретатора менее 1 мс нужен цикл с числом итераций более 2000, а такое количество в большинстве случаев не нужно
Правильно поставленный вопрос содержит до 90% ответа.
Про1С-ник
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2539 раз
Рейтинг: 0
Цитата(Vofka @ 13.07.12, 17:56)
Утверждать на глаз или по теоретическим материалам о производительности конкретного кода - это пальцем в небо.
Можно "вскрыть" исходный текст модуля, и увидеть что на каждую строку присутствует некий обработчик команды, вероятно поэтому код написанный в одну строку срабатывает чуть быстрее поскольку выполняется в одном обработчике.
Личные бесплатные консультации не даю, для этого есть форум!
У нас здесь своя атмосфера...
Группа: Основатель
Сообщений: 14050
Из: Киев
Спасибо сказали: 4612 раз
Рейтинг: 3748.8
Цитата(logist @ 13.07.12, 22:05)
Можно "вскрыть" исходный текст модуля, и увидеть что на каждую строку присутствует некий обработчик команды, вероятно поэтому код написанный в одну строку срабатывает чуть быстрее поскольку выполняется в одном обработчике.
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!