krekotnev
21.01.13
✎
18:42
Коллеги, приветствую!
Вот такая ситуация. Используем 1С БУ 8. В соответствии со спецификой учета на предприятии применяем три операции:
1) поступление ТМЦ,
2) перемещение ТМЦ,
3) передача ТМЦ на объект строительства через треб.-накл.
Сегодня нашел ошибку в одной из операций перемещения. Отменил ее проведение. Поменял счета учета на правильные (003.01 — 003.01), но снова провести документ не смог — система выдала ошибку: «Ошибка при вызове метода контекста (Заблокировать): Значение субконто, заданное с помощью ссылки на ПВХ, должно быть ссылочного типа, пространство блокировки = РегистрБухгалтерии.Хозрасчетный».
Подскажите, в каком направлении копать?
Спасибо!
krekotnev
21.01.13
✎
18:43
Используем 1С Бухгалтерия 8.3
krekotnev
21.01.13
✎
18:47
Был на Гэлэкси, там есть похожее обсуждение
http://www.1c-galaxy.ru/forum4/topic602010/
Но не могу понять ((
krekotnev
23.01.13
✎
12:11
Народ, когда возникает ошибка, то в подробностях идет ссылка на конкретную процедуру УстановитьУправляемуюБлокировку в модуле ОбщегоНазначения:
Процедура УстановитьУправляемуюБлокировку(СтруктураПараметров, КоллекцияЗначенийБлокировки = Неопределено, КоллекцияОписанияИсточника = Неопределено, Отказ = Ложь, Заголовок = «») Экспорт
Если НЕ ТипЗнч(СтруктураПараметров) = Тип(«Структура») Тогда
Возврат;
КонецЕсли;
ИспользоватьЗначенияБлокировки = КоллекцияЗначенийБлокировки <> Неопределено
И (ТипЗнч(КоллекцияЗначенийБлокировки) = Тип(«Структура»)
ИЛИ ТипЗнч(КоллекцияЗначенийБлокировки) = Тип(«Соответствие»))
И КоллекцияЗначенийБлокировки.Количество() > 0;
ИспользоватьИсточникДанных = КоллекцияОписанияИсточника <> Неопределено
И (ТипЗнч(КоллекцияОписанияИсточника) = Тип(«Структура»)
ИЛИ ТипЗнч(КоллекцияОписанияИсточника) = Тип(«Соответствие»))
И КоллекцияОписанияИсточника.Количество() > 0
И СтруктураПараметров.Свойство(«ИсточникДанных»);
Если НЕ ИспользоватьЗначенияБлокировки И НЕ ИспользоватьИсточникДанных Тогда
Возврат;
КонецЕсли;
Блокировка = Новый БлокировкаДанных;
ТипТаблицы = ?(СтруктураПараметров.Свойство(«ТипТаблицы»), СтруктураПараметров.ТипТаблицы, «РегистрНакопления»);
ИмяТаблицы = СтруктураПараметров.ИмяТаблицы;
ПространствоБлокировки = ТипТаблицы + «.» + ИмяТаблицы;
ЭлементБлокировки = Блокировка.Добавить(ПространствоБлокировки);
РежимБлокировки = ?(СтруктураПараметров.Свойство(«РежимБлокировки»), СтруктураПараметров.РежимБлокировки, РежимБлокировкиДанных.Исключительный);
ЭлементБлокировки.Режим = РежимБлокировки;
Если ИспользоватьЗначенияБлокировки Тогда
Для каждого ЭлементКоллекции Из КоллекцияЗначенийБлокировки Цикл
ЭлементБлокировки.УстановитьЗначение(ЭлементКоллекции.Ключ, ЭлементКоллекции.Значение);
КонецЦикла;
КонецЕсли;
Если ИспользоватьИсточникДанных Тогда
ИсточникДанных = СтруктураПараметров.ИсточникДанных;
Если ТипЗнч(ИсточникДанных) = Тип(«МенеджерВременныхТаблиц») Тогда
Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = ИсточникДанных;
ТекстЗапроса = «»;
Для каждого ЭлементКоллекции Из КоллекцияОписанияИсточника Цикл
ТекстЗапроса = ТекстЗапроса + «,
| Таб.» + ЭлементКоллекции.Значение;
КонецЦикла;
ТекстЗапроса = Сред(ТекстЗапроса, 2);
ТекстЗапроса =
«ВЫБРАТЬ РАЗЛИЧНЫЕ»
+ ТекстЗапроса + »
|ИЗ
| » + СтруктураПараметров.ИмяВременнойТаблицы + » КАК Таб»;
Запрос.Текст = ТекстЗапроса;
Результат = Запрос.Выполнить();
ЭлементБлокировки.ИсточникДанных = Результат;
Иначе
ЭлементБлокировки.ИсточникДанных = ИсточникДанных;
КонецЕсли;
Для каждого ЭлементКоллекции Из КоллекцияОписанияИсточника Цикл
ЭлементБлокировки.ИспользоватьИзИсточникаДанных(ЭлементКоллекции.Ключ, ЭлементКоллекции.Значение);
КонецЦикла;
КонецЕсли;
Попытка
Блокировка.Заблокировать();
Исключение
ОбщегоНазначения.СообщитьОбОшибке(ОписаниеОшибки(), Отказ, Заголовок);
ВызватьИсключение «Операция не выполнена»;
КонецПопытки;
КонецПроцедуры
Пожалуйста, помогите понять, где и что надо исправить. Учетная политика не менялась.
krekotnev
23.01.13
✎
13:24
Временная мера позволила перепроводить документы, гдебыли отменены проводки. В «хвостовой» части процедуры «УстановитьУправляемуюБлокировку» закомментированы строки:
Попытка
Блокировка.Заблокировать();
Исключение
ОбщегоНазначения.СообщитьОбОшибке(ОписаниеОшибки(), Отказ, Заголовок);
ВызватьИсключение «Операция не выполнена»;
КонецПопытки;
После этого получается выполнить перепроведение документов по операции «Перемещение товаров». Остается открытым вопрос: а на что повлияет комментирование указанных строк?..
Может, обсудим?
krekotnev
25.01.13
✎
18:03
Более опытный коллега подсказал, что это связано с несовпадением субконто.
krekotnev
25.01.13
✎
18:03
тема закрыта, всем спасибо!
Stasya |
|
||
---|---|---|---|
|
При проведении документа в серверной версии бухгалтерии 1с 8.2 (обычное приложение) вылетает ошибка:
Ошибка при вызове метода контекста (Заблокировать): У счета отсутствует субконто, заданное ссылкой на характеристику. При проведении только одного документа»Возврат поставщику», остальные документы проводятся нормально. Сделала копию базы, обновила. В копии ошибка исчезла, при обновлении рабочей базы — ошибка осталась. Что делать??? Откуда у такой ошибки «ноги растут»? Изменено 28.08.13 07:55:49 |
Yandex |
|
||
---|---|---|---|
|
Jonsony |
|
||
---|---|---|---|
|
релиз платформы?
релиз конфы? без этого ноги не просто искать |
Stasya |
|
||
---|---|---|---|
|
ой, извитие. Платформа: 8.2.17.157, релиз БП 2.0.44.5 |
Stasya |
|
||
---|---|---|---|
|
отбой, слетел режим совместимости с 8.2.13. Установила, все заработало. |
Stasya |
|
||
---|---|---|---|
|
Вопрос закрыт! |
Подсказка: Вы можете приложить к ответу файл или изображение щелкнув по значку или в редакторе. |
Павел Крохин Заглянувший Сообщений: 27 |
При проведении документа Комплектация выходит ошибка след. содержания: {ОбщийМодуль.ОбработкаСобытийДокументаСервер.Модуль(1402)}: Ошибка при вызове метода контекста (Заблокировать): Не найдено поле источника данных: Номенклатура В процедуре ПолучитьРезультатЗапросаПоТоварам ошибка, номенклатура с маленькой буквы |
Тамара Герасимчук Заглянувший Сообщений: 168 |
#2
18.02.2022 09:04:09
Добрый день! Можете предоставить скриншот документа Комплектация, который не проводится и скриншот самой номенклатуры с видом Комплект? |
||
Павел Крохин Заглянувший Сообщений: 27 |
#3
18.02.2022 09:41:57
Исправьте это в модуле, и не надо будет ни каких скриншотов документа и номенклатуры(комплект) |
||||
Ещё один вопрос: уточните, пожалуйста, релиз платформы 1С. Есть проблема на платформе 8.3.20.* Изменено: Тамара Герасимчук — 18.02.2022 09:57:10 |
|
Павел Крохин Заглянувший Сообщений: 27 |
#5
18.02.2022 10:14:02
1С:Предприятие 8.3 (8.3.20.1613) |
||
Тамара Герасимчук Заглянувший Сообщений: 168 |
#6
18.02.2022 10:31:14
Данная проблема известна, у разработчиков есть задача Ц000031543, будет исправлено в ближайшем релизе. |
||||
Артём Заглянувший Сообщений: 971 |
Здравствуйте. В Альфе 5 такая же проблема. Помогите, пожалуйста. |
Артём, добрый день, у вас слишком высокая платформа 1С для данного релиза Альфа-Авто. |
|
Артём Заглянувший Сообщений: 971 |
#9
01.06.2023 17:57:59
Какая нужна? |
||
Светлана Сулименко Посетитель Сообщений: 9055 |
#10
02.06.2023 08:52:13 Артём, платформа нужна 8,3,16. |
Версия Платформы: 1С:Предприятие 8.3 (8.3.10.2299); версия 1С: документооборота: Документооборот 8 КОРП, редакция 2.1 (2.1.12.2).
Зависли бизнес-процессы. В журнале регистрации появляется ошибка выполнения заданий. Кто-нибудь сталкивался? Код ошибки:
{ОбщийМодуль.РаботаСЭП.Модуль(1031)}: Ошибка при вызове метода контекста (ЗаблокироватьДанныеДляРедактирования)
ЗаблокироватьДанныеДляРедактирования(ПодписанныйОбъект,, ИдентификаторФормы);
по причине:
Ошибка блокировки объекта. Объект уже заблокирован:
{РегистрСведений.ЗадачиДляВыполнения.МодульМенеджера(212)}: Ошибка при вызове метода контекста (Заблокировать)
по причине:
по причине:
В данной транзакции уже происходили ошибки!
-
Вопрос задан
-
1375 просмотров
Да, я помню такой кусочек кода — в ДО очень любят перед манипуляциями делать проверку с помощью ЗаблокироватьДанныеДляРедактирования(). А еще я помню, что там куча фоновых висит, включая бесконечный пересчет прав. И еще пользователи могли работать с браузера или мобильного клиента и их сессия зависла… Короче нужно сервер рестартануть.
Если есть такая возможность, то рекомендую хотя бы раз в неделю регламентно в выходной перегружать службу 1С.
P.S. Или можете настроить расширенное логирование технологического журнала и при следующей ошибке на блокировке отследить по истории кто там его ранее блокировал — человек или регламентное задание. Далее решение по обстоятельствам.
UPD. Если вы подключены к системе взаимодействия, то можете сами снять блокировку без необходимости перегружать сервер. Из задачи, которую не можете выполнить заходите в предмет (как я понимаю, речь о внутреннем документе) и попытайтесь его отредактировать. Вам будет предложено снять блокировку. Подробнее тут:
https://wonderland.v8.1c.ru/blog/vzaimodeystvie-pr…
Пригласить эксперта
Такое возникает, если есть сеанс в котором этот объект заблокирован для редактирования. Либо программно (например параллельное фоновое задание), либо интерактивно — открыт клиент 1ски и в нем открыт этот объект и начато его изменение. Проще всего сначала срубить все сеансы, а потом проверить ещё раз. Вообще в тексте ошибки должен писать, что за пользователь у того сеанса, который установил блокировку, и так можно найти, откуда она взялась.
-
Показать ещё
Загружается…
21 сент. 2023, в 07:57
20000 руб./за проект
21 сент. 2023, в 06:22
4000 руб./за проект
21 сент. 2023, в 04:48
2000 руб./за проект
Минуточку внимания
Тема: Блокировки Данных 1с по билетам (Прочитано 5998 раз)
0 Пользователей и 1 Гость просматривают эту тему.
Пытаю воспроизвести нечего не выходит
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.ОстаткиНоменклатуры");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.ИсточникДанных = СписокНоменклатуры;
ЭлементБлокировки.ИспользоватьИзИсточникаДанных("Номенклатура", "Номенклатура");
Блокировка.Заблокировать();
Скрыть
Ошибка при выполнении обработчика — ‘ОбработкаПроведения’
по причине:
{Документ.РасходнаяНакладная.МодульОбъекта(18)}: Ошибка при вызове метода контекста (Заблокировать)
Блокировка.Заблокировать();
по причине:
Использование блокировки допустимо только внутри транзакции в режиме управляемых блокировок!
Записан
Ну так включи управляемые блокировки в свойствах конфигурации. По умолчанию там автоматические.
Записан
Записан