Базовые положения
Общие объекты
Общие метаданные
Прикладные объекты
Базовые положения
Общие объекты
Общие метаданные
Прикладные объекты
В 1С недоступно ООП, невозможно описывать классы, конструкторы объектов и тд. Но есть возможность оперировать существующими классами и получать объекты с заранее заложенными свойствами и методами.
Общая методика получения нового экземпляра класса в использует метод Новый
.
МойМассив = Новый Массив; //или МойМассив = Новый Массив(КоличествоЭлементов); //сработает заложенный разработчиками конструктор и мы получим массив с нужным количеством элементов
Есть возможность использовать строковое представление при создании объектов.
МойСправочник = Новый("Справочник.Менеджер.Номенклатура");
Бывает полезно, когда тип будущего объекта заранее не известен.
Для того что бы "избавиться" от объекта, нужно записать в переменную Неопределено
. Если объект находится внутри процедуры или функции он перестанет существовать когда процедура\функция закончит свою работу.
Обращение к свойствам методам происходит через точку по имени например
Запрос.Текст
или по индексу
Запрос[Текст]
когда значение свойства заранее неизвестно. Так как свойства экземпляров объектов могут тоже иметь объектный тип, возможно обращение к значениям свойств через несколько точек. Например
ВажностьКлиента = Текущийдоговор.Договора.Владелец.Родитель.ВажностьКлиента
Но нужно понимать что при таком обращении система считывает в память все реквизиты каждого объекта которые есть в выражении, это разумеется генерирует запросы к базе, увеличивает потребление памяти и как следствие снижает производительность. Почти всегда падение производительности получается незначительным, но если это происходит в цикле, то можно получить достаточно сильный эффект. То есть в целом правильнее будет делать так:
ГруппаКонтрагента = Текущийдоговор.Договора.Владелец.Родитель; Для сч = 1 По ЧтоТоТам Цикл ВажностьКлиента = ГруппаКонтрагента.ВажностьКлиента //... КонецЦикла
убрав по максимум обращения через точку из цикла.