28 сент. 2016 г.

Есть ли Свойство в ЭлементыФормы

Например, нужно обойти все элементы формы и для тех элементов, в которых есть свойство Доступность установить значение в Ложь, а так же для тех элементов, в которых есть свойство ТолькоПросмотр также установить значение в Ложь.
Процедура ОбходВсехЭлементовФормы()
Для Каждого эл Из  ЭлементыФормы Цикл
                       
     Если эл.Имя = "ДействияФормы" Или эл.имя = "ОсновныеДействияФормы" Тогда 
              Продолжить;
    КонецЕсли;
                       
      Если ЕстьСвойство(эл, "ТолькоПросмотр") Тогда
             эл.ТолькоПросмотр = Ложь;
      ИначеЕсли ЕстьСвойство(эл, "Доступность") Тогда
            эл.Доступность = Ложь;
     КонецЕсли;

КонецЦикла;
КонецПроцедуры

Функция ЕстьСвойство(Объект, ИмяСвойства)
        РезультатФункции = Ложь;
        НачальноеЗНачение = Новый УникальныйИдентификатор();
        ЗначениеРеквизита = Новый Структура(ИмяСвойства, НачальноеЗНачение);
        ЗаполнитьЗначенияСвойств(ЗначениеРеквизита,Объект);
        Если ЗначениеРеквизита[ИмяСвойства] <> НачальноеЗНачение Тогда
                РезультатФункции = Истина;
        КонецЕсли;
        Возврат РезультатФункции;
КонецФункции
или через попытку
Попытка
    Рек.Доступность = Ложь;
Исключение
КонецПопытки;
Способы нашел на просторах интернета.

Комментариев нет:

Отправить комментарий

 

CopyPaste Copyright © 2017 - |- Шаблон создан O Pregador - |- Отредактирован myr4ik07