Имя: Пароль:
1C
1С v8
запрет редактирования строки/ячейки
0 Gill
 
19.10.11
11:00
Всем привет! Задача: Есть ТЧ, на ней есть поле ввода (тип булево).Как при добавлении строки или редактировании,если галочка установлена,запрещать редактирование ячейки.Перепробывал разные варианты, че-то туплю.Подскажите?!

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

КонецПроцедуры

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

Процедура РазработкаВедомостиПотребностиМатериаловПриАктивизацииСтроки(Элемент)
   // Вставить содержимое обработчика.
ПоказатьОстаткиТоваров();

   Если Элемент.Колонки.Признак=истина тогда
       Элемент.Колонки.Номенклатура.ТолькоПросмотр = Истина;
   Иначе
   Элемент.Колонки.Номенклатура.ТолькоПросмотр = Ложь;
   КонецЕсли;
КонецПроцедуры
1 mikecool
 
19.10.11
11:01
В ПередНачаломИзменения
 Отказ = БулевоУстановлено
2 Ткачев
 
19.10.11
11:05
Элемент.Колонки.Номенклатура.Доступность = ОформленияСтроки.ДанныеСтроки.Признак;
3 Gill
 
19.10.11
11:05
(1) в этом случае блокируется вся строка почему-то
4 Gill
 
19.10.11
11:10
(2) это в какой обработчик?
5 Ткачев
 
19.10.11
11:12
(4)Вместо:
Если ОформленияСтроки.ДанныеСтроки.Признак=Истина тогда
       Элемент.Колонки.Номенклатура.ТолькоПросмотр = Истина;
   Иначе
    Элемент.Колонки.Номенклатура.ТолькоПросмотр = Ложь;
   КонецЕсли;
6 Axel2009
 
19.10.11
11:15
из процедуры РазработкаВедомостиПотребностиМатериаловПриВыводеСтроки убрать обработку на только просмотр.
7 Axel2009
 
19.10.11
11:17
ОформленияСтроки.Ячейки.Номенклатура.ТолькоПросмотр = ДанныеСтроки.Признак;
оставить только эту строчку там. и отовсюду убрать вообще все остальное.
8 Ткачев
 
19.10.11
11:17
(6)Мне кажется что вооще отовсюду это надо убрать и поставить доступность номенклатуры на галку "Признак" при изменении, соответственно при открытии надо еще добавить.
9 Gill
 
19.10.11
11:24
Всем спасибо...помогло (7)
10 Gill
 
19.10.11
11:25
ОформлениеСтроки.Ячейки.Номенклатура.ТолькоПросмотр = ОформлениеСтроки.ДанныеСтроки.Признак
(7) = ОформлениеСтроки.Ячейки.Номенклатура.ТолькоПросмотр = ОформлениеСтроки.ДанныеСтроки.Признак
11 Gill
 
19.10.11
11:26
А как бы мне запретить доступ на ячейку установки галки через РольДоступна(?) куда это лучше привинтить?
12 Gill
 
19.10.11
11:29
Видимо я поторопился радоваться (7) срабатывает только на последней строке таб.части, т.е. на всех которые ваше доступно редактирование независимо от галки
13 Axel2009
 
19.10.11
11:30
(12) значит гдето остался код с Элемент.Колонки.Номенклатура.ТолькоПросмотр
14 Ткачев
 
19.10.11
11:33
(13)А чем  ТолькоПросмотр от Доступность отличается ?
15 Gill
 
19.10.11
11:34
(13)вроде я все вычистил в процедуре РазработкаВедомостиПотребностиМатериаловПриПолученииДанных оставил только ОформлениеСтроки.Ячейки.Номенклатура.ТолькоПросмотр = ОформлениеСтроки.ДанныеСтроки.Признак
16 Axel2009
 
19.10.11
11:35
(15) во всех процедурах это вычистить надо
(14) для ячеек нет доступность
17 Axel2009
 
19.10.11
11:36
(15)
в при получении данных надо ващето
Для Каждого ОформлениеСтроки Из ОформленияСтрок Цикл
 ОформлениеСтроки.Ячейки.Номенклатура.ТолькоПросмотр = ОформлениеСтроки.ДанныеСтроки.Признак;
КонецЦикла;
18 Gill
 
19.10.11
11:38
(17) извиняюс,ступил я.....спасибо!!! а как насчет (11)
19 Ткачев
 
19.10.11
11:39
(16)С чего вдруг нету ?
При доступности ее активизировать просто нельзя.
20 Ткачев
 
19.10.11
11:43
+(19)Ну да, нету :(
21 Axel2009
 
19.10.11
11:44
(19) ну попробуй ячейку сделать недоступной. потом расскажешь.
(18) при открытии
если не рольдоступна("роль") тогда
элементыформы.табличка.колонки.признак.толькопросмотр = истина;
конецесли;
22 Ткачев
 
19.10.11
11:45
(21)Уже попробовал.
23 Axel2009
 
19.10.11
11:45
(18)+ но вообще это делается через правапользователей. если в типовом и по "правильному"
24 Gill
 
19.10.11
11:46
Спасибо всем!!!