Поле объекта недоступно для записи в 1С
Администратор 1.
02.03.2017
95 понравилось
1833 просмотров

Поле объекта недоступно для записи в 1С

 

При первых начинания неопытных разработчиков 1С 8.3 достаточно часто возникает такая проблема: Поле объекта недоступно для записи 1С. Необходимо разобраться, почему же может возникать подобная проблемы и что следует делать, чтобы она больше не беспокоила пользователя.

В случае если вы НЕ программист 1С, а обычный пользователь.

Если программирование для вас всего лишь обычное слово и к нему вы не имеете никакого отношения, то лучше ничего не трогать, так как вы можете ещё больше усугубить ситуацию. Возможно, проблема заключается в обычной ошибке, которую допустил ваш программист при доработке конфигурации. В таком случае, вам просто необходимо попросить помощи у специалиста, который разберется в данной ситуации без каких-либо проблем. Подобная ошибка легко исправляется, если она не успела потянуть за собой осложнения. Также можно обновить полностью платформу до новейшей версии, если проблема «поле объекта недоступно для записи 1С» появилась после недавнего обновления конфигурации.

Полезная информация для начинающих программистов 1С.

Наиболее частой ошибкой неопытных программистов является изменение в программном коде данных, которые менять у вас не было права. Для подробного разъяснения, необходимо рассмотреть следующие ситуации:

  • Следует менять объект, а не ссылку! Самым распространенным объяснением появления данной ошибки следует считать изменение свойств ссылки, а не объекта. Как правило, это выглядит так:

Сидоров = Справочник.ФизЛицо.ПоискПоНаименованию("Сидоров Федор");

Сидоров.НомерУдостоверенияЛичности = "6574928";

В таком случае и возникает проблема «Поле объекта недоступно для записи 1С». Нужно запомнить, что возможность менять реквизиты или какие-либо свойства характерна только объекту. В приведенном примере переменная «Сидоров» включает в себя идентификатор для поддержки уникальности в базе, то есть ссылку.

У вас есть вопрос, нужна помощь консультанта?

Оставьте номер телефона и мы перезвоним!

Верный вариант:

СидоровСсылка = Справочник.ФизЛицо.ПоискПоНаименованию ("Сидоров Федор");

СидоровОбъект = СидоровСсылка.ПолучитьОбъект();

СидоровОбъект. НомерУдостоверенияЛичности = "6574928";

СидоровОбъект.Записать();

В представленной выше ситуации вы получите объект из ссылки, а уже только после появляется возможность его изменить. Затем вы можете зафиксировать полученное состояние и, как следствие, записать его.

  • Не пытайтесь изменить системные поля! Такая проблема встречается реже, чем первая, но всё же остается популярной. Суть данной ошибки заключается в попытке изменения реквизитов, которые изменять не стоит.

Если же возникшая проблема не поддается устранению, а обратиться к программисту с которым вы работали у вас нет возможности, то вы всегда можете воспользоваться услугами наших профессионалов. Для этого необходимо связаться с нами по телефону 8 (800) 700-15-02 или зарегистрироваться на сайте https://1s-nik.ru/.

Эта статья помогла вам?