Имя: Пароль:
1C
1С v8
Будут ли работать управляемые блокировки, если включить режим только у конфигурации?
0 ИС-2
 
naïve
30.12.14
09:50
УПП 1.2 (в 1.3 уже это сделано)

Будут ли действовать управляемые блокировки в случае:
Если в палитре конфигурации включить "Режим управления блокировкой данных в транзакции по умолчанию" - Управляемый, но в объектах оставить режим автоматический.
Согласно статье https://docs.google.com/document/d/1wcJq0jVtjQZCk2MWQCc6o2QIf0hRKro_ZTgdAWHVOaQ/edit?hl=ru&pli=1 ( http://infostart.ru/public/57613/files/ ) у меня так и останутся автоматические блокировки

И типовой код блокировок не будет блокировать записи. Например:
Если глЗначениеПеременной("ИспользоватьБлокировкуДанных")  Тогда
        Запрос.Текст =
            "ВЫБРАТЬ Склад, Номенклатура," + ИмяДокументРезерва + ?(ЕстьХарактеристика, ", ХарактеристикаНоменклатуры", "") + "
            |ИЗ Документ." + СтруктураПараметров.ИмяТаблицы + " КАК Док
            |ГДЕ
            |    Не Док.Номенклатура.Комплект
            |    И Док.Ссылка  =  &ДокументСсылка
            |    "+?(СтруктураПараметров.ИмяДокумента = "АвансовыйОтчет"," И "+ИмяДокументРезерва+".БезПраваПродажи","И НЕ Док." + ИмяДокументРезерва + " В (&МассивПустыхСсылок)");
            
        РезультатЗапросаДляБлокировки = Запрос.Выполнить();
        Если НЕ РезультатЗапросаДляБлокировки.Пустой() Тогда
            СтруктураПараметровБлокировки = Новый Структура(
                "ТипТаблицы,ИмяТаблицы,ИсточникДанных"
                ,"РегистрНакопления"
                ,"ТоварыВРезервеНаСкладах"
                ,РезультатЗапросаДляБлокировки);
                
            СтруктураИсточникаДанных = Новый Структура(
                "Склад,Номенклатура,ДокументРезерва"
                ,"Склад"
                ,"Номенклатура"
                ,ИмяДокументРезерва);
            Если ЕстьХарактеристика И СтруктураПараметров.ИспользоватьХарактеристикиНоменклатуры Тогда
                СтруктураИсточникаДанных.Вставить("ХарактеристикаНоменклатуры","ХарактеристикаНоменклатуры");
            КонецЕсли;
            
            ОбщегоНазначения.УстановитьУправляемуюБлокировку(СтруктураПараметровБлокировки,,СтруктураИсточникаДанных, Отказ, Заголовок);
        КонецЕсли;
    КонецЕсли;

глЗначениеПеременной("ИспользоватьБлокировкуДанных") - равно Истина

Чтобы они заработали мне надо у выбранных документов и регистров включить управляемый режим и у документа и у регистра?
1 floody
 
30.12.14
09:55
Если у конфы включен "управляемый", то выбранный у объектов режим - игнорируется.
2 ИС-2
 
naïve
30.12.14
09:59
(1) т.е признак в конфе домирует над признаками в объектах?
3 floody
 
30.12.14
10:04
(2) если у конфы автоматический - все в автоматическом
    если у конфы авт и упр      - выбирается режим объекта
    если у конфы управляемый    - все в управляемом

Статья на инфостарте - мягко говоря... После того, как автор не различает блокировки и deadlock'и - дальше читал по диагонали.
4 ИС-2
 
naïve
30.12.14
10:37
(3) есть что-то более квалифицированное?
5 patria0muerte
 
30.12.14
10:42
(4) Можно попробовать книженцию "Настольная книга эксперта по технологическим вопросам". Там про блокировки много и хорошо.
Основная теорема систематики: Новые системы плодят новые проблемы.