Всем привет. Мне надо узнать программно - проводится ли новый документ или перепроводится уже созданный. Делаю следующим образом:
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
Если (Документы.ДобавитьДом.НайтиПоНомеру(Номер).Проведен = Ложь) Тогда
Сообщить("Проводится");
Иначе
Сообщить("Перепроводится");
КонецЕсли;
КонецПроцедуры
Впринципе все работает, но есть вопрос - есть ли проблемы у такой конструкции?
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
Если (ЭтотОбъект.Проведен = Ложь) Тогда
Сообщить("Проводится");
Иначе
Сообщить("Перепроводится");
КонецЕсли;
КонецПроцедуры
Только вопрос остался - чем именно поиск по ссылке? Лишним поиском только?
(3) ссылка - это сохраненная запись в базе, которой совершенно по-барабану в каком состоянии объект, тем более, что для нового объекта она не существует
>> Если (Документы.ДобавитьДом.НайтиПоНомеру(Номер).Проведен = Ложь) Тогда
Эпично!:-)
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший