ошибка с управляемыми блокировками
☑
0
vde69
модератор
22.11.13
✎
10:55
устанавливаю блокировку.
Сделка есть в каждом из перечисленом объекте
в последовательности - как реквизит
в регистрах - как индексированое измерение
выдает ошибку на последовательности "Ошибка при вызове метода контекста (Заблокировать): У пространства блокировок Последовательность.ПоследовательностьСделок.НаборЗаписей не существует поля с именем Сделка"
база тестовая, никаких других процессов кроме моего нет...
вот код (вызов идет в транзакции)
Процедура УстановитьБлокировкуПоСделке(Сделка)
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Последовательность.ПоследовательностьСделок.НаборЗаписей");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.УстановитьЗначение("Сделка", Сделка);
ЭлементБлокировки = Блокировка.Добавить("РегистрСведений.ПараметрыСделок");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.УстановитьЗначение("Сделка", Сделка);
ЭлементБлокировки = Блокировка.Добавить("РегистрСведений.СостояниеБлоковУчета");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.УстановитьЗначение("Сделка", Сделка);
Блокировка.Заблокировать();
КонецПроцедуры
1
vde69
модератор
22.11.13
✎
11:08
короче записи блокировать можно а весь набор нельзя...
а как мне заблокировать возможность добавления в последовательность по конкретной сделки нового документа (и следовательно новой строки)???
и почему по РС не подчиненному регистратору нельзя блокировать набор по определенным имерениям?
2
Жан Пердежон
22.11.13
✎
12:10
(1) опять ты воду мутишь?
3
Рэйв
22.11.13
✎
12:13
(1)Набор- это программный объект,в базе нигде незаписан, его блокировать ты не можешь. Запись дело другое
4
Рэйв
22.11.13
✎
12:13
Но можешь блокировать список
5
Жан Пердежон
22.11.13
✎
12:14
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("Последовательность.ПоследовательностьСделок");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.УстановитьЗначение("Сделка", Сделка);
ЭлементБлокировки = Блокировка.Добавить("РегистрСведений.ПараметрыСделок");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.УстановитьЗначение("Сделка", Сделка);
...
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.