Дополнительные свойства и форма документа

1. irinka1986 13.06.12 22:51 Сейчас в теме
Здравствуйте,ситуация следующая : в БГУ на основании договора можно сделать "Принятое бюджетное обязательство". В модуле документа "Принятое бюджетное обязательство" в ОбработкеЗаполнения проверяем нет ли уже на основании этого договора созданный документ принятного бюд. обя-ва . Добавляем значение в ДополнительныеСвойства ( Истина или Ложь) . Соответственно , при открытии формы документа проверяем Доп.Свойства.

Если ДополнительныеСойства.свойство Тогда
не открываем документ
Иначе
Открываем
КонецЕсли;

Но в таком случае , если просто открыть документ "Принятое бюджетное обязательство" , то выскакивает ошибка (Поле объекта не обнаружено "Свойство") .
Т.е нужно как-то это свойство изначально добавить на форму , а потом просто менять его значение . Как это сделать , не знаю?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. zamichnik 13.06.12 23:56 Сейчас в теме
Можно перед обращением к 'ДополнительныеСойства.свойство' проверять, а есть ли такое поле в Дополнительных свойствах. Так как 'ДополнительныеСойства' - это структура, у неё есть метод Свойство() (его имя совпадает с вашим ключом, не спутайте :)), он возвращает 'Истину' если поле есть, а если нет, то 'Ложь' :
Если ДополнительныеСойства.Свойство("свойство") Тогда
   <ваш код>
КонецЕсли
3. YNik 13.06.12 23:59 Сейчас в теме
Так надо дать имя этому свойству, например, ЕстьПБО, и тогда в ОбработкеЗаполнения добавляем:
ДополнительныеСвойства.Вставить("ЕстьПБО",Истина);
а при открытии формы проверяем:
ЕстьПБО=Ложь;
Если ДополнительныеСвойства.Свойство("ЕстьПБО",ЕстьПБО) Тогда // если есть свойство ЕстьПБО
Если ЕстьПБО Тогда // тогда проверяем само свойство
не открываем документ
4. irinka1986 14.06.12 18:29 Сейчас в теме
Всем спасибо . Проверка ДополнительныеСвойства.Свойство() помогло.
5. demon_infernal 41 14.06.12 22:01 Сейчас в теме
Все верно, но для чего?
Можно просто при попытке ввести на основании договора ПБО проверять, есть ли уже введенное ПБО простым запросом, и если есть - открывать его, если нет - создавать новое.
Разве так не проще?
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот