Меню

При выполнении транзакции произошла ошибка 1sjourn

   Воин 1С

17.08.06 — 14:46

Последние несколько дней база стала давать предупреждение:При выполенении произошла ошибка! Таблица 1SJourn Ошибка обращения к данным при транзакиции, выполняемой другим пользователем.Повторить попытку? [Да Нет].Появляется при проведении доков, выполнении отчетов. Если кто встречал такую фичу, подскажите как лечить

   AeDen

1 — 17.08.06 — 14:47

Ошибка обращения к данным при транзакиции, выполняемой другим пользователем.

   zbv

2 — 17.08.06 — 14:47

В поиске смотрел?

   Воин 1С

3 — 17.08.06 — 14:49

(1) Спасибо а то я думаю и что это значит…

   Воин 1С

4 — 17.08.06 — 14:49

(2) Не пока ща гляну

   Воин 1С

5 — 17.08.06 — 14:51

В поиске ничего подходящего нету;(

   AeDen

6 — 17.08.06 — 14:51

(3) Ну, думай дальше. Кто мешает?

   Воин 1С

7 — 17.08.06 — 14:59

Ну что, неужели никто не встречал ничего похожего?

   GenV

8 — 17.08.06 — 15:03

(5) Плохо смотрел. Ищи: Ошибка обращения к данным при транзакции 1С

   Воин 1С

9 — 17.08.06 — 15:07

(8) Спасиб, я глянул. Насколько понял, коллизия призаписи доков в табицу, используемую для УРБД. Но, почему она стала появляться? Раньше ведь не было..

   GenV

10 — 17.08.06 — 15:19

(9) См.(1) Ошибка <одновременного> обращения к <различным> данным при транзакиции, выполняемой другим пользователем. Темерь понятно?

   ламеры спрашивают

11 — 17.08.06 — 15:48

(10) Почему «к <различным>». Наверное хотел сказать «к одним и тем же»?

   Воин 1С

12 — 17.08.06 — 15:52

(10)Нет, поясни плиз

   GenV

13 — 17.08.06 — 15:52

(11) различным — значит не только к таблицам УРБД 🙂

   Воин 1С

14 — 17.08.06 — 15:54

(13) В 1SJORn хранятся записи используемые урбд.Непонятно почему это появилось и что с ним делать;)

   GenV

15 — 17.08.06 — 15:56

(14) … Да тех, кто в бронепоезде: несколько пользователей хотят одновременно получить одни данные. Возникает транзакция (блокировка данных). Теперь-то понятно?

   ламеры спрашивают

16 — 17.08.06 — 15:57

(13) ОК

   AeDen

17 — 17.08.06 — 15:57

(15) Rnj-nj gsnftncz ljcnexfnmcz lj lfyys[? rjnjhst ,kjrbhjdfys nhfypfrwbtq/

   Воин 1С

18 — 17.08.06 — 15:57

От тех, кто в бронепоезде: Почему этой ошибки раньше не было?

   Воин 1С

19 — 17.08.06 — 15:58

Сейчас она постоянно вылезает на экран

   GenV

20 — 17.08.06 — 15:59

(19) Сейчас только один пользователь или кто-то что-то проводит?

   zalex

21 — 17.08.06 — 15:59

(14) В 1SJORN хранятся журналы, все.

(18) Наиболее вероятно, что в одной из обработок проведения ты впендюрил Вопрос() или Предупреждение(). Обработка это транзакция, и она не закончится, пока пользователь не закроет окошко вызванное одной из этих функций. Пока один пользователь не закончит транзакцию, никто другой не может ее начать.

   Воин 1С

22 — 17.08.06 — 16:01

(21) Ничего я не впиндюривал, я конфу сам полностью писал.

   zalex

23 — 17.08.06 — 16:02

(22) Во-от… 🙂

   AeDen

24 — 17.08.06 — 16:02

+(17) Разные пользователи пытаются обратиться к одним и тем-же данным, которые блокированы кем-то в транзакции.

   Воин 1С

25 — 17.08.06 — 16:04

епрст, пользователей сколько было, столько и осталось, раньше этого предупреждения не было, а сейчас све юзеры ко мне бегут дружной толпой и жалуются

   GenV

26 — 17.08.06 — 16:05

(25) Попрубуй оставить одного и проверь.

   zalex

27 — 17.08.06 — 16:07

(25) Объясняю на пальцах, пока один пользователь проводит документ, другие пользователи ничего провести не могут, если у тебя где-то в проведении неэффективный алгоритм, т.е. док проводится 2-3 то все будут эти 2-3 минуты наблюдать эту надпись. Такое бывает если ты неэффективно рассчитываешь остатки например, пока доков было немного проводилось быстро, чем дальше — тем хуже. Либо вариант (21). Просто бери копию базы и тупо проводи доки по очереди, наблюдай который проводится слишком долго, или задает вопросы в процессе проведения.

   zalex

28 — 17.08.06 — 16:09

+(27) Проводи по сетке, зачастую локально у тебя все летает, а по сети тормозит (если, например, запрос в цикл засунул — локально будет пару секунд проводится, а по сетке пару минут)

   Воин 1С

29 — 17.08.06 — 16:12

(27) Кстати очень может быть, у меня в одном регистре висят огромные непроходящие минуса, из-за этого все доки долго черепятся

   zalex

30 — 17.08.06 — 16:15

(29) Даже наверняка… Еще сделай нехитрую вешь —  поиск по всем текстам «НачатьТранзакцию», если какой-нить тяжелый отчет целиком в транзакцию сунул, те несколько минут пока он формируется все будут наблюдать эту же ошибку.

   zalex

31 — 17.08.06 — 16:16

+(30) Короче с такой надписью всех блокирует кусок

НачатьТранзакцию();



ЗафиксироватьТранзакцию();

либо ОбработкаПроведения() — это такая же транзакция, только явно не написано.

   Воин 1С

32 — 17.08.06 — 16:17

НачатьТранзакцию нигде нет, скорее всего обработка проведения подвешивает все..

   zalex

33 — 17.08.06 — 16:19

(32) Осталось только оптимизировать, где-то многократные запросы, либо вместо итогов по движениям шаришься, чем больше движений — тем дольше проводится. Думай как сделать лучше.

   zalex

34 — 17.08.06 — 16:22

Как вариант можно их в терминал загнать — проведение ускорится в разы, но код свой анализировать все же надо, где-то косяк.

http://www.mista.ru/articles1c/terminal.htm

  

Воин 1С

35 — 17.08.06 — 16:24

Спасиб , буду думать;)

Показывать по
10
20
40
сообщений

Новая тема

Ответить

sahzavod

Дата регистрации: 05.09.2003
Сообщений: 2

От чего может возникнуть «Ошибка времени выполнения» при работе транзакции в конфигурации ЗиК.<br><br>Конкретнее:<br><br>Таблица: 1SJOURN Ошибка обращения к данным при транзакции, выполняемой другим пользователем.<br><br>И как востановить потеряные данные?<br><br>Заранее спасибо :)

Кот, который гуляет сам по себе

Дата регистрации: 29.10.2001
Сообщений: 882

Возникновение такой ошибки как правило связано с перегруженностью<br><br>сети. Эта ошибка происходит в том случае, когда программа<br><br>в течение продолжительного периода времени пытается захватить<br><br>некоторый файл (на очень непродолжительное время), а у нее не<br><br>получается. После повторения попыток в течение 60 сек. возникает<br><br>такая ошибка.<br><br> Как показывает опыт, причиной практически во всех случаях<br><br>является недостаточная производительность сети или сервера.<br><br>В частности такая ситуация имеет место быть при использовании<br><br>невыделенных или сильно нагруженных другими задачами серверов<br><br>со стороны значительного числа клиентов.<br><br>

vela

Дата регистрации: 18.08.2003
Сообщений: 20

Если дело в этом, то можно попробовать увеличить время ожидания захвата таблиц Базы Данных, к примеру до 90 сек. От многого уберегает, может и здесь поможет.

qwer007.070

Дата регистрации: 21.08.2007
Сообщений: 1

Как можно устранить ошибку при транзакций?

Alexandr VA

Дата регистрации: 07.01.2007
Сообщений: 1666

> Как можно устранить ошибку при транзакций? <br>Способов много, пробуйте:<br>Увеличить время ожидания захвата таблиц. <br>Сжать ДБФные таблицы, выполнить дефрагментацию диска с базами.<br>Повысить производительность сервера и сети.<br>Очистить журнал регистрации (сначала сархивируйте)<br>Перейти в терминалы<br>Перейти на SQL <br><br>

Татьянаааа

Дата регистрации: 07.08.2007
Сообщений: 86

Меню СЕРВИС -> ПАРАМЕТРЫ -> (Закладка ОБЩИЕ) Время ожидания захвата таблицы поставьте 40-60

Показывать по
10
20
40
сообщений

  1. Здраствуйте! Возникает такая проблема — «При выполнении транзакции произошла ошибка. Таблица 1Sjourn. Ошибка обращения к данным при транзакции, выполняемой другим пользователем»
    стоит 15 клиентских компов и один сервер опрационка win server 2003. база 1с7.7 -dbf, объем 1.5гига. В данный момент сейчас бухгалтера все работают в одном документе, и я думаю что это из-за этого. Позвонил в службу поддержки которые обслуживают нашу 1с — там ничего умного не посоветовали — «сказали типа у вас сервак на котором стоит 1с слабый — меняйте» короче прогнали полную чушь и отмазались :unsure: .
    Комп под сервак мы приобретали 3 месяца назад (проц. — атлон Х2 5600 оператива 2гига) вообщем понятно что дело не в этом. Так же я попробовал увеличить Значение ожидания, как было написано здесь на форуме, проблема не исчезла. Подскажите пожалуйста что можно еще сделать, и есть ли выход из этой ситуации???????


  2. bob

    Offline

    bob
    Опытный в 1С

    Регистрация:
    7 май 2008
    Сообщения:
    394
    Симпатии:
    1
    Баллы:
    29

    в одном документе работать одновременно невозможно. Ошибка из-за того, что при проведении документа, блокируется определенное кол-во таблиц, и другие пользователи могут с ними работать только после окончаниЯ проведения. Это только один из множества вариантов, есть еще, звоните в более компетентную службу поддержки.


  3. Kaboom

    Offline

    Kaboom
    Опытный в 1С

    Регистрация:
    2 июл 2007
    Сообщения:
    158
    Симпатии:
    0
    Баллы:
    26

  4. Заранее всем спасибо. завтра на работе попробую!


1C-pro.ru - форум по 1С:Предприятию 7.7, 8.0, 8.1, 8.2, 8.3

Подскажите, почему при работе с 1С по сети, когда одновременно на нескольких компьютерах выполняются какие-либо операции, появляются ошибки: «При выполнении транзакции произошла ошибка! Таблица: 1SJOURN. Ошибка обращения к данным при транзакции, выполняемой другим пользователем. Повторить попытку выполнить транзакцию?» ???

Время ожидания захвата таблиц увеличь…

а где его можно увеличить?

в меню сервис — параметры

потому как нагрузка на ваш сервер не адекватна числу юзеров. 1С блокирует таблицы в момент проведения (например) документа, т.е. второй (и последующие) юзера, которые в этот же момент времени пытаются провести док — получают такой транспорант. +1 хотя фиг его знает, может и не помочь P.S. поздравляю 🙂

вообщем лечит это терминал, ну и дальше уже можно думать — зависит от числа пользователей, характера их работы, объема баз и т.п.

Тэги:

Комментарии доступны только авторизированным пользователям

Программа 1С является самой популярной и наиболее удобной при автоматизации предприятия. В ней предусмотрены решения, созданные на базе одной платформы, соответственно, функционируют они по одному принципу, что значительно упрощает использование ПО. Нередко пользователи сталкиваются с сообщением «В данной транзакции уже происходили ошибки». Рассмотрим как в 1С 8.3 исправить подобную проблему.

1С 8.3 документация по работе с программой

Содержание

  1. Причина появления сообщения о повторных ошибках в 1С 8.3
  2. Есть ли смысл исправлять ошибки транзакции, которые уже происходили
  3. Устраняем ошибку транзакции в 1С Предприятие версии 8.3
  4. Также можно выполнить удаление другим способом:
  5. Особенности написания кода, которые помогут исключить ошибку в транзакциях

Причина появления сообщения о повторных ошибках в 1С 8.3

Главная проблема заключается в том, что сообщение об ошибке «В данной транзакции уже происходили ошибки» неинформативно, нет никакой конкретики. Поэтому будем опираться на проблемы, с которыми чаще всего сталкиваются пользователи. Например, с технической стороны ошибка такого рода может возникнуть при первой транзакции, то есть и при первичном обращении к базе данных.

Часть функций, которые выполняет платформа 1С

Подобная ошибка может произойти при обработки ситуации «Попытка-Исключение». Например, при создании записи «Объект_1» формируется исключительная ситуация, а сама ошибка появляется в «Ссылка_2.Наименование». То есть происходит запрос базы данных объектной модели.

В «Попытке-Исключение» начинается обработка операции, которая также должна быть выполнена в транзакции, которая, в свою очередь, может быть явной или неявной (создается в момент записи объекта).

1С: Предприятие 8.3 не поддерживает транзакций вложенного типа. Однако допускается создание вложенной конструкции сразу нескольких транзакций. Из-за наличия явной и неявной транзакции может возникнуть ошибка. То есть программа запрещает транзакцию 1-го уровня на более низших уровнях.

Читайте также: Значение не является значением объектного типа 1С.

Есть ли смысл исправлять ошибки транзакции, которые уже происходили

При работе с 1С 8.3 не стоит оставлять подобные вещи без внимания. Прежде всего, другой пользователь также может столкнуться с ней, но не поймет причин её возникновения. Если не выполнить отладку системы, то в дальнейшем могут возникнуть дополнительные проблемы. Так как оповещение «В данной транзакции уже происходили ошибки» появляется при первом обращении, то в журнале регистрации данная строка обязательно зафиксируется, но, опять же, без подробного пояснения. Хоть ошибка и располагается на нижнем уровне кода, она нарушит необходимую иерархию. Это приведет к сбою других функций и только еще больше запутает администратора.

При наличие некорректного кода, транзакции будут выполняться с нарушениями или не будут выполняться вовсе. Поэтому при возникновении таких сообщений стоит решить проблему.

Устраняем ошибку транзакции в 1С Предприятие версии 8.3

В первую очередь стоит очистить кэш базы данных. Сделать это можно вручную. Для этого:

  1. Переходим на диск, на котором расположена база 1С.
  2. Переходим в папку с базой (путь может отличаться, но по умолчанию она установлена в той директории, которая показана на фото ниже).Путь в данным кэша 1С версии 8.3
  3. Удаляем кэш вручную.Удаление кэша вручную
  4. То же самое делаем с кэшем в папке 1с8.2.

Также можно выполнить удаление другим способом:

  1. Создаем на рабочем столе пустой документ. Назовем его «Удаление пользовательского кэша».Создание пустого документа на рабочем столе
  2. Указываем в нем следующую строчу и сохраняем документ в формате .bat.

Указание функции для очистки кэша

После того, как файл преобразуется, его можно запустить и весь пользовательский кэш удалится автоматически. Пробуем снова запустить программу и выполнить операцию. Если не помогло, то лучше всего обратиться к администратору. Также нужно помнить про основные особенности написания кода с использованием транзакций. Это поможет исключить ряд распространенных ошибок.

Также вам будет интересно: Ошибка в 1С 7.7 «Порядок сортировки, установленный для базы данных, отличается от системного».

Особенности написания кода, которые помогут исключить ошибку в транзакциях

Прежде всего нужно опираться на нюансы корректной обработки исключений:

  • Метод «Начать транзакцию» должен быть вынесен за пределы «Попытка-Исключение».
  • Действия, осуществляемые после вызова «Начать транзакцию» должны быть в пределах блока «Попытка». К этом также относится чтение, обработка или блокировка данных.
  • Метод «Зафиксировать транзакцию» необходимо прописывать последним в блоке «Попытка» и до «Исключение».
  • В блоке «Исключение» необходимо сначала обратиться к методу «Отменить транзакцию» и уже потом выполнять прочие действия.
  • Если применяются вложенные транзакции, то в конце «Исключение» не лишним будет добавить оператора «Вызвать исключение».
  • В «Исключения» следует добавить соответствующую запись об ошибке.
  • Если транзакция неявная, то нет никакого смысла переходить к методу «Начать транзакцию». Некоторые также пробуют «обернуть» в явную транзакцию те операции, которые и вовсе не нуждаются в согласовании.

Решить проблему транзакций, в которых происходят ошибки, самостоятельно получается не всегда. Поэтому стоит попробовать выполнить простейшие действия – перезагрузить программу или очистить кэш. К более серьезным манипуляциям в 1С стоит переходить только при уверенности, что вы обладаете достаточным опытом.

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • При выполнении метода cmssign произошла ошибка cxmldsign ошибка исполнения функции 1627
  • При выполнении конвертации структуры информационной базы произошла критическая ошибка