Капитально об программе 1С 8.0-8.3-8.4, 7.7

Передача данных между обычными формами 1С

Существует несколько вариантов передачи данных между формами в режиме обычного приложения 1С предприятия

Список способов

  1. Непосредственная запись в реквизиты формы
  2. Оповещение формы
  3. Оповещение владельца формы (о выборе, о записи)
  4. Оповещение подчиненным формам (об активизации строки, объекта)
  5. Оповещение об изменении
  6. Через объекты посредники (справочники, регистры сведений, файлы)

Механизм работы в первом случае:

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

Метод Оповестить() второго способа

Является самым универсальным для обмена, поскольку предоставляет возможности:

Обмен через объекты-посредники:

Используется, например, при организации чатов, оповещениях пользователей об обновлениях

Остальные методы:

ОповеститьОбАктивизацииОповеститьОбАктивизацииОбъекта, ОповеститьОбИзменении, ОповеститьОВыборе, ОповеститьОЗаписиНового, ОповеститьОЗаписиНовогоОбъекта  являются узкоспециализированными и односторонними (владельцу формы, подчиненным формам)