Как Из Документа-объекта Обратиться К Реквизиту Формы?

Надя1972

Well-Known Member
23.10.2013
60
1
#1
Здравствуйте! Подскажите, пожалуйста, как из документа объекта обратиться к реквизиту формы этого документа? У документа Платежное поручениеИсходящее есть реквизит формы "Список". Мне нужно узнать, истина он, или ложь?
Код:
Док=Документы.ПлатежноеПоручениеИсходящее.Выбрать();
Пока Док.Следующий() Цикл
Если Док.?????? Тогда
КонецЕсли;
КонецЦикла;
 

puh14

Well-Known Member
11.07.2008
1 412
0
НеРезиновая
#2
Что за конфигурация? Если открыть форму в конфигураторе, открыть свойство списка - то что написано в поле имя? Есть ли такой реквизит в документе?
 

Надя1972

Well-Known Member
23.10.2013
60
1
#3
Что за конфигурация? Если открыть форму в конфигураторе, открыть свойство списка - то что написано в поле имя? Есть ли такой реквизит в документе?
[/qu
Конфигурация УПП. В поле имя написано список. Такого реквизита в документе нет. Это реквизит формы.
 

tanat

Well-Known Member
02.03.2007
265
0
#4
Это влияет только лишь на отображение на форме данных. Сам принцип является неизменным. Обязательным является заполнение табличной части документа платежное поручение. Т.е. если у вас стоит галочка - данные из таблицы заполняют реквизиты на форме, если нет - то отображается сама табличная часть.

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

Обратите внимание на Процедуру ПриОткрытии основной формы, там даже есть кусочек кода


Если РасшифровкаПлатежа.Количество()>1 Тогда
Список = Истина;
Иначе
Список = Ложь;
КонецЕсли;
 

ЧИА

Active Member
22.10.2009
33
0
#5
Если для вас это еще актуально, то приблизительно так:

Док=Документы.ПлатежноеПоручениеИсходящее.Выбрать();
Пока Док.Следующий() Цикл
Форма = Док.ПолучитьФорму();
СписокИзДокумента = Форма.ЭлементыФормы.Список.Значение;
// Здесь анализ содержимого реквизита "Список" через переменную СписокИзДокумента
....
КонецЦикла;
 

tanat

Well-Known Member
02.03.2007
265
0
#6
Чойта я могу ошибаться, конечно, однако мне кажется ПолучитьФорму() не запускает обработку ПриОтктытии(). Значит, как мне думается, значение реквизита "Список" будет тем, какое оно стоит по умолчанию.
 

Надя1972

Well-Known Member
23.10.2013
60
1
#7
Это влияет только лишь на отображение на форме данных. Сам принцип является неизменным. Обязательным является заполнение табличной части документа платежное поручение. Т.е. если у вас стоит галочка - данные из таблицы заполняют реквизиты на форме, если нет - то отображается сама табличная часть.

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

Обратите внимание на Процедуру ПриОткрытии основной формы, там даже есть кусочек кода


Если РасшифровкаПлатежа.Количество()>1 Тогда
Список = Истина;
Иначе
Список = Ложь;
КонецЕсли;
Спасибо, так примерно и сделала

Добавлено:
Если для вас это еще актуально, то приблизительно так:

Док=Документы.ПлатежноеПоручениеИсходящее.Выбрать();
Пока Док.Следующий() Цикл
Форма = Док.ПолучитьФорму();
СписокИзДокумента = Форма.ЭлементыФормы.Список.Значение;
// Здесь анализ содержимого реквизита "Список" через переменную СписокИзДокумента
....
КонецЦикла;
Спасибо, может пригодится в будующем, пока сделала через анализ количества строк в табличной части