Донецкий техникум промышленной автоматики

Ажур-с, 1С Програміст - Помилка при виконанні обробника через: Помилка виконання запиту через: Конфлікт блокувань при виконанні транзакції

Опис помилки:
Нарешті пощастило зібрати контент по даній помилку, тому що часто ця помилка носить тимчасовий характер і пов'язана з процесами, що протікають в базі в момент, поки помилка виникає. Помилка може з'явитися в будь-якій базі будь-якої конфігурації 1С: Підприємство 8.
Знайдені рішення:

Приклад повного тексту окремого випадку помилки. Насправді найменування обробника в рядку 1 і "причини" в рядку 3 може бути якою завгодно. А ось решта тексту помилки буде незмінним.

Помилка при виконанні обробника - 'ПередЗапісью'
по причині:
{ОбщійМодуль.РаботаСДіалогамі.Модуль (1547)}: Помилка при виклику методу контексту (Виконати)
по причині:
Помилка виконання запиту
по причині:
Конфлікт блокувань при виконанні транзакції:
Microsoft SQL Server Native Client 10.0: Ви перевищили час очікування запиту на блокування.
HRESULT = 80004005, SQLSrvr: SQLSTATE = HYT00, state = 33, Severity = 10, native = 1222, line = 1

HRESULT = 80004005, SQLSrvr: SQLSTATE = HYT00, state = 33, Severity = 10, native = 1222, line = 1

Коли кількість користувачів бази зростає і зростає паралельність роботи а так же, якщо в базі можуть виконуватися тривалі фонові процеси, то користувачі іноді можуть отримати таку помилку в момент запису елемента довідника або проведенні документа (рідше при записі документа).

Але, якщо побачили таку помилку, панікувати не потрібно. Потрібно для початку зрозуміти, що, можливо, в цей самий момент хтось із користувачів на частку секунди раніше почав проводити свій документ. При цьому блокується для запису частина внутрішніх таблиць. І якщо, ви проводите документ того ж типу, то поки не проведеться перший - таблиці не розблокує і Ви не зможете провести свій документ. Тому то в тексті помилки і фігурує формулювання "Конфлікт блокувань при виконанні транзакції". Як відомо, проведення документа відбувається в транзакції.

Тому, якщо маєте справу з документом, то потрібно його записати, і пізніше - через хвилину або кілька хвилин повторити спробу проведення документа.

Буває так, що фонове завдання, виконання якого було заплановано на нічний час, і яке, наприклад, має перепровести документи за попередній день, не виповнилося в призначений час. Тоді воно може бути автоматично запущено платформою в будь-який найближчий можливий час, і може старторовать на початку робочого дня, тоді таке регламентне фонове завдання на тривалий час може заблокувати таблиці бази і не дозволяти виконати необхідне Вам дію. Але знову ж таки - панікувати не варто - можна спробувати уточнити у фахівця, який займається обслуговуванням Вашої 1С, приблизно коли в базі стане можливим безперешкодно проводити документи.

Наведу приватний приклад з особистого досвіду. У одного з моїх клієнтів в нічний час в базу завантажуються дані за цінами - це дуже великий файл з даними, процедури по завантаженню якого можуть тривати близько години. Трапляється, але досить рідко (останній раз через помилку "таблиця не має нового покоління і не може бути модифікована" при роботі з базою), що вночі завантаження не запускається і не відпрацьовує. Тоді відповідно до настройки - вона запускаетс в найближчий можливий час - яке найчастіше в таких випадках доводиться на перші робочі години організації. І тоді користувачі отримують таку помилку в момент спроби проведення докуметов (рідше при запису документів або елементів довідників). Як вже було описано вище - стає зрозуміло, що протягом години можливість штатно проводити документи повернеться, як тільки завантаження даних закінчить свою роботу.

© www.azhur-c.ru 2013-2014. Всі права захищені. Використання текстів і зображень з даної сторінки без письмового дозволу власника заборонено. При використанні матеріалів з даної сторінки обов'язкова вказівка ​​посилання на дану сторінку.

13-11-2018

Журавльов А.С. ( сайт azhur-c.ru )

назад