Имя: Пароль:
1C
1С v8
Конфликт блокировок при выполнении транзакции
0 G30y
 
08.09.17
09:37
Доброго дня!
    Используем УПП 1.3 на 1С 8.2 с РАУЗ'ом и имеем конфликт блокировок при проведении реализации товаров и услуг, во время проведения расчета себестоимости. Перенес на движок 8.3, отключил режим совместимости для конфигурации, флажки в скуле тоже применил(ALLOW_SNAPSHOT_ISOLATION, READ_COMMITTED_SNAPSHOT), конфигурация уже была переключена в управляемый режим управления блокировками данных.
    Только блокировки как были так и остались, что я делаю не так?

    Еще небольшое описание ситуации, считать себестоимость в самые темные ночи месяца не получается, 1С работает без простоев, автоматика создает выпуски продукции, которую привыкли продавать прямо с конвейера (скоропорт).
1 Heckfy
 
08.09.17
09:43
"конфигурация уже была переключена в управляемый режим управления блокировками данных" - этого мало. Нужно еще в коде "управлять" блокировками.
2 bodri
 
08.09.17
09:46
Видится мне, что флажки проставить это считай вообще не чего не сделал. Когда я боролся с такой ситуёвиной, я ещё в модулях писал управление блокировками.

ЭлементБлокировкиДанных (DataLockItem)
Свойства:

ИсточникДанных (DataSource)
Область (Region)
Поля (Fields)
Режим (Mode)

Методы:

ИспользоватьИзИсточникаДанных (UseFromDataSource)
УстановитьЗначение (SetValue)

Описание:

Предназначен (как составная часть объекта БлокировкаДанных) для явной блокировки данных от чтения или изменения другими сессиями.

Доступность:

Сервер, толстый клиент, внешнее соединение.
Возможен обмен с сервером. Сериализуется.
Пример:

Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить(
     "РегистрНакопления.ТоварыНаСкладах");
ЭлементБлокировки.УстановитьЗначение("Качество",
     Справочники.Качество.НайтиПоКоду("1"));
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.ИсточникДанных =
     ДокументОбъект.ВозвратнаяТара;
ЭлементБлокировки.ИспользоватьИзИсточникаДанных(
     "Номенклатура", "Номенклатура");
ЭлементБлокировки.ИспользоватьИзИсточникаДанных(
     "Склад", "Склад");
Блокировка.Заблокировать();
3 G30y
 
08.09.17
09:47
(1) переписать стандартный расчет?
4 Heckfy
 
08.09.17
09:48
(3) Да.
5 Heckfy
 
08.09.17
09:48
Дополнить управление блокировками. Для примера (2)
6 G30y
 
08.09.17
09:52
(2) Все верно видится, модули не трогались. Удалось Вам победить блокировки в конечном итоге?
7 bodri
 
08.09.17
09:57
(6) да