Всем добрый вечер. 2 вопроса:
1) что отрабатывается быстрее в условии (даже на миллиардные доли секунды):
Если НужнаяНомен = Справочники.Номенклатура.НайтиПоКоду("ЦБ0025637") Тогда
или
Если НужнаяНомен.Код = "ЦБ0025637 Тогда ?
2) Какой из вариантов более корректный?
(0) Голосовалка составлена некорректно. (впрочем на мисте это проблема едва ли не 99% всех голосовалок)
Не хватает пунктов
3. "Одинаково".
4. "Оба варианта - редкостный *авнокод".
Я бы голосовал за п.4.
Но если вопрос чисто теоретический и не имеет отношения к реальному применению в жизни, то примерно за одинаковое время они отработают. По первому пункту НайтиПоКоду() будет искать ссылку по индексируемому полю "Код", чтобы вернуть Ссылку. По второму пункту будет искать по индексируемому полю "Ссылка", чтобы вернуть Код. Как отработает кэш при повторном обращении - фиг его знает.
Если объект уже известен, то простая операция сравнения реквизита (код) со значением гораздо быстрее чем платформенный запрос
В этом случае запрос в базу НайтиПоКоду() лишний и нахрен не нужен
Если НужнаяНомен.Код = "ЦБ0025637 Тогда
Независимо от того, куда вы едете — это в гору и против ветра!