Область применения: управляемое приложение, мобильное приложение, обычное приложение.
1. Для программного создания прикладных объектов следует использовать методы соответствующих менеджеров (СоздатьЭлемент, СоздатьДокумент, СоздатьНаборЗаписей и т.д.).
Для программного создания прикладных объектов, у которых существует соответствующие менеджеры объектов, использование конструктора (оператор встроенного языка Новый) запрещается.
Правильно:
ДокументПриходная = Документы.ПоступлениеТоваровУслуг.СоздатьДокумент();
Неправильно:
ДокументПриходная = Новый("ДокументОбъект.ПоступлениеТоваровУслуг");
2. При программном создании объекта следует явно вызывать метод объекта Заполнить. Если данных для заполнения нет, то передать значение Неопределено. В этом случае корректно отработают свойства реквизитов объекта "Значение заполнения", будет вызван обработчик ОбработкаЗаполнения и подписки на это событие, как при интерактивной работе с объектом.
Например, неправильно:
Папка = Справочники.ПапкиФайлов.СоздатьЭлемент();
// ...
Папка.Записать();
Правильно:
Папка = Справочники.ПапкиФайлов.СоздатьЭлемент();
// ...
Папка.Заполнить(Неопределено);
// ...
Папка.Записать();
Исключением могут быть случаи, когда объект полностью загружается из источника при обмене данными или восстановление базы из резервной копии (загрузка из XML).