Имя: Пароль:
1C
1С v8
УФ: Доступность элемента формы
0 СейчасНаФоруме
 
06.06.13
12:57
Возможно ли при установленном свойстве ТолькоПросмотр у формы, сделать доступным для изменения один из ее элементов (поле ввода)?

Так не получилось:

ЭтаФорма.ТолькоПросмотр = Истина;
Элементы.МоеПолеВвода.Доступность = Истина;
1 1Сергей
 
06.06.13
12:58
Нет
2 СейчасНаФоруме
 
06.06.13
12:58
(1) для кнопок почему то данный код работает (но не для полей ввода)
3 1Сергей
 
06.06.13
13:00
(2) я в курсе
4 1Сергей
 
06.06.13
13:01
у меня так сделано:

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
   СообщениеОшибки = "";
   Если (НЕ (РольДоступна("Бухгалтер") ИЛИ РольДоступна("ГлавныйБухгалтер") ИЛИ РольДоступна("ПолныеПрава") ИЛИ (Объект.Дата>=НачалоДня(ТекущаяДата()) И Объект.Дата<=КонецДня(ТекущаяДата())))) И ЗначениеЗаполнено(Объект.Ссылка)  Тогда
       //ЭтаФорма.ТолькоПросмотр = Истина;
       Для каждого ЭлементФормы Из ЭтаФорма.Элементы Цикл
           Если (ЭлементФормы.Имя = "ФлагОплачен")
               ИЛИ(ЭлементФормы.Имя = "Авторизовал")
               ИЛИ(ЭлементФормы.Имя = "ФормаДокументРеализацияАвиабилетовПечать")
               ИЛИ(ЭлементФормы.Имя = "КнопкаОбновитьКарточки")
               ИЛИ(Найти(ЭлементФормы.Имя, "Провести") > 0)Тогда
               ЭлементФормы.Доступность = Истина;
           ИначеЕсли(ТипЗнч(ЭлементФормы)=Тип("ГруппаФормы")) Тогда
               ЭлементФормы.Доступность = Истина;
           Иначе
               ЭлементФормы.Доступность = Ложь;
           КонецЕсли;
       КонецЦикла;
       Элементы.КнопкаОбновитьКарточки.Доступность = Ложь;
       Сообщение = Новый СообщениеПользователю;
       Сообщение.Текст = "Редактирование документа запрещено. Документ открыт в режиме только просмотр";
       //Сообщение.Поле = "Объект.Номер";
       Сообщение.УстановитьДанные(Объект);
       Сообщение.Сообщить();        
   ИначеЕсли (НЕ (РольДоступна("Бухгалтер") ИЛИ РольДоступна("ГлавныйБухгалтер") ИЛИ РольДоступна("ПолныеПрава"))) Тогда
       Элементы.Дата.ТолькоПросмотр = Истина;
   КонецЕсли;