Как найти sql ошибка 1с

Сотрудники компании «АйТи-Консалтинг», специализирующиеся на разных программных продуктах, бухгалтерских и it услугах, написали статьи, позволяющие посетителям сайта быстро ориентироваться в ответах на интересующие вопросы.

Неточности СУБД базы данных (ошибка SQL) в программном продукте 1С: Предприятие 8

Данный материал будет полезен пользователям, столкнувшимся с неточностями в работе программных продуктов на платформе 1С: Предприятие 8.

Наличие большого количества сообщений пользователей (администраторов компаний, клиентов) с просьбой о содействии в ликвидации крупных ошибок СУБД базы данных (ошибка SQL) в программе 1С: Предприятие 8, стало причиной создания данной публикации.

На рисунке 1 приведен пример окна ошибки: Ошибка СУБД Ошибка SQL.

субд1.jpg

Почему возникают такие ошибки?

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

Примеры источников ошибок в функционировании программ 1С и виды визуального выражения нарушения целостности БД (база данных):

  • аварийное завершение работы ОС с работающей программой 1С: Предприятие 8, в особенности во время формирования, проведения либо удаления файлов;

  • удаление и повреждение конфигурационных файлов в результате вмешательства со стороны пользователя либо техники;

  • приостановка процесса восстановления архивной информации;

  • отсутствие внешнего надежного напряжения питания;

  • присутствие файлов без нумерации, дат создания;

  • присутствие файлов с датой создания, которая не соответствует рядом стоящим файлам, к примеру, 2001 г. 01 ч. 01 мин. 01 с.;

  • присутствие операций без нумерации, дат создания;

  • недоступность ранее созданных файлов и операций;

  • отсутствие ссылок на объекты.

Таким образом, в первую очередь нужно завершить работу программы 1С.

После этого создайте копию БД (база данных) с повреждениями (для этого нужно сохранить базу в отдельный каталог на винчестере). Путь, ведущий к местонахождению БД (база данных), можно определить с помощью панели запуска 1С: Предприятие 8 внизу, найдите данный каталог на жестком диске и скопируйте его (смотрите рисунок 2).

Рисунок 2: Окно запуска 1С: Предприятие 8.

субд2.jpg

Далее протестируйте БД (база данных) на физическую целостность (на предмет «разрушения»). Чтобы это сделать, выполните переход к стандартной встроенной обработке 1С: Предприятие 8 по исправлению и тестированию неточностей – chdbfl.exe (загрузить для 1С: Предприятие 8). Данный документ должен присутствовать в каталоге с установленной программой 1С, найдите и выполните его запуск (смотрите рисунок 3).

Рисунок 3: Местонахождение документа chdbfl.exe.

субд3.jpg

Потом выбираем документ 1CV8.1 CD, который можно найти в каталоге нашей БД (база данных) с повреждениями, устанавливаем галочку «Исправлять обнаруженные ошибки» и жмем «Выполнить» (смотрите рисунок 4).

На проверку физической целостности документа БД (база данных) может уйти от 10 мин. до нескольких часов – это определяется объемом вашей БД (база данных) и количеством неточностей в ней. По завершении проверки обнаруженные неточности рекомендуется сохранить в отдельный документ для последующей экспертной диагностики.

Рисунок 4: Окно проверки физической целостности документа информационной базы

субд4.jpg

После этого зайдите в режим конфигуратора (смотрите рисунок 5) и найдите в нем сервисную утилиту “Тестирование и исправление информационной базы” (смотрите рисунок 6).

Меню – Администрирование – Тестирование и исправление

Рисунок 5: Конфигуратор

субд5.jpg

Рисунок 6: Окно тестирования и исправления БД (база данных)

субд6.jpg

Выберите такие пункты, как:

  • Реиндексация таблиц информационной базы – функция восстановления табличной части БД (база данных).

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

  • Проверка ссылочной целостности информационной базы – тестирование внутренних связей таблиц, которые устанавливает программа 1С: Предприятие 8, проверка фактического существования элементов данных со ссылками в полях записи таблиц.

  • Перерасчет итогов – выполнение полного перерасчета итоговых данных.

  • Переключатель ниже, выбор пункта «Тестирование и исправление».

Операция «Тестирование и исправление» может длиться от 10 мин. до нескольких часов – это определяется объемом БД (база данных) и количеством неточностей в ней. По завершении проверки обнаруженные неточности рекомендуется сохранить в отдельный документ для последующей экспертной диагностики.

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

Внимательно изучите ситуацию, сделайте верные выводы: обеспечьте вашим работникам обучение корректной работе с программами 1С, купите новую технику на замену старой.

Если Вы слишком заняты и не можете тратить на это время, мы ждем Ваших обращений в сертифицированный центр обслуживания 1С — «АйТи-Консалтинг».

Делимся опытом, как исправить ошибки в логической целостности в базе 1С, размещенной на Microsoft SQL Server.

Поступила жалоба от бухгалтера о проблемах с проведением документов в 1С.

Из скриншота выяснилось, что 1С «ругается» на проблемы с согласованностью «внутри» базы данных и предлагает провести проверку на согласованность.

Переходим в SQL Server Management Studio и, сделав, на всякий случай, бэкап текущего состояния, выполняем проверку:

Для начала переводим нужную нам БД в однопользовательский режим

Запускаем Окно запросов (CTRL+N). Выбираем Новый запрос и вводим запрос Transact-SQL (T-SQL) в этом окне:

	 ALTER DATABASE KA
	 SET SINGLE_USER
	 WITH ROLLBACK IMMEDIATE

Далее, вводим запрос на сканирование базы данных:

	 USE [ka]
	 GO
	 DBCC CHECKDB(N'ka') WITH NO_INFOMSGS
	 GO

Проверка продлилась около 15 минут, после чего выдала следующее:

CHECKDB обнаружил 0 ошибок размещения и 766 ошибок согласованности, не связанных ни с одним объектом.

CHECKDB обнаружил 0 ошибок размещения и 1 ошибок согласованности в таблице «sys.sysdbfiles» (идентификатор объекта 20).


CHECKDB обнаружил 0 ошибок размещения и 1 ошибок согласованности в таблице «sys.sysxmlcomponent» (идентификатор объекта 91).


CHECKDB обнаружил 0 ошибок размещения и 49 ошибок согласованности в таблице «_AccRg1025» (идентификатор объекта 1778313595).


CHECKDB обнаружил 0 ошибок размещения и 3 ошибок согласованности в таблице «_AccRgAT21046» (идентификатор объекта 1826313766).


CHECKDB обнаружил 0 ошибок размещения и 1783 ошибок согласованности в таблице «_AccRg1051» (идентификатор объекта 1906314051).


CHECKDB обнаружил 0 ошибок размещения и 2603 ошибок согласованности в базе данных «KA».

Вариант решения №1: восстановление из бэкапа выявило накопительный характер ошибки: чем раньше сделан бэкап – тем меньше в базе ошибок, вплоть до самого «дальнего» (14 дней). Примерно на третьем бэкапе количество ошибок перестало уменьшаться – стало ясно, что этим путём мы придём только к потере актуальности базы и проблему не решить

Вариант решения №2: В
справочной информации описаны три возможных варианта исправления этих ошибок, рассмотрим каждый:

REPAIR_FAST

Синтаксис поддерживается только для обеспечения обратной совместимости. Действия по восстановлению не выполняются.

REPAIR_REBUILD

Выполняет действия по восстановлению данных, которые можно выполнить без риска их потери. Это может быть быстрое восстановление (например, восстановление отсутствующих строк в некластеризованных индексах) или более ресурсоемкие операции (например, перестроение индекса).

REPAIR_ALLOW_DATA_LOSS

Пытается устранить все обнаруженные ошибки. Эти исправления могут привести к частичной потере данных.

Аргумент REPAIR_FAST нам не подходит, REPAIR_ALLOW_DATA_LOSS оставим на крайний случай — пробуем REPAIR_REBUILD:

	 DBCC CHECKDB(N'ka', REPAIR_REBUILD) WITH NO_INFOMSGS

CHECKDB обнаружил 0 ошибок размещения и 766 ошибок согласованности, не связанных ни с одним объектом.

CHECKDB обнаружил 0 ошибок размещения и 1 ошибок согласованности в таблице «sys.sysdbfiles» (идентификатор объекта 20).


CHECKDB обнаружил 0 ошибок размещения и 1 ошибок согласованности в таблице «sys.sysxmlcomponent» (идентификатор объекта 91).


CHECKDB обнаружил 0 ошибок размещения и 49 ошибок согласованности в таблице «_AccRg1025» (идентификатор объекта 1778313595).


CHECKDB обнаружил 0 ошибок размещения и 3 ошибок согласованности в таблице «_AccRgAT21046» (идентификатор объекта 1826313766).


CHECKDB обнаружил 0 ошибок размещения и 1783 ошибок согласованности в таблице «_AccRg1051» (идентификатор объекта 1906314051).


CHECKDB обнаружил 0 ошибок размещения и 2603 ошибок согласованности в базе данных «KA».

Не помогло, переводим базу данных обратно в многопользовательский режим:

	 ALTER DATABASE KA
	 SET MULTI_USER

На всякий случай, я попробовал провести обслуживание базы данных и перепроверил – результат тот же.

Решил провести тестирование и исправление информационной базы средствами 1С, на что получил ошибку

Выгрузить базу данных в *.dt файл тоже не удалось:

Что ж, стало понятно, что часть потерянных данных – меньшее зло, по сравнению с «развалившейся» базой данных, пробуем REPAIR_ALLOW_DATA_LOSS:

	 DBCC CHECKDB (N'KA', REPAIR_ALLOW_DATA_LOSS) WITH NO_INFOMSGS

И, наконец, после нескольких прогонов, количество ошибок немного уменьшилось:

CHECKDB обнаружил 0 ошибок размещения и 733 ошибок согласованности, не связанных ни с одним объектом.

CHECKDB обнаружил 0 ошибок размещения и 1 ошибок согласованности в таблице «sys.sysdbfiles» (идентификатор объекта 20).


CHECKDB обнаружил 0 ошибок размещения и 1 ошибок согласованности в таблице «sys.sysxmlcomponent» (идентификатор объекта 91).


CHECKDB обнаружил 0 ошибок размещения и 1783 ошибок согласованности в таблице «_AccRg1051» (идентификатор объекта 1906314051).


CHECKDB обнаружил 0 ошибок размещения и 2518 ошибок согласованности в базе данных «KA «.

Ситуацию это не спасло: база, по-прежнему не выгружалась и не «лечилась» средствами 1С.

Дальнейшие попытки (по очереди несколько раз запускал REPAIR_REBUILD и REPAIR_ALLOW_DATA_LOSS) не увенчались успехом: количество ошибок не уменьшилось, база, по-прежнему, не выгружалась и не «лечилась».

Коллеги подсказали попробовать очистить (именно очистить, без удаления самой таблицы) «проблемную» таблицу в MS SQL.

Больше всего ошибок в таблице «_AccRg1051» – ей и было принято решение заняться:

Вводим запрос

	 TRUNCATE TABLE _AccRg1051

И, после успешного выполнения, прогоняем проверку еще раз:

	 DBCC CHECKDB(N'ka') WITH NO_INFOMSGS

15 минут ожидания и, о чудо – все ошибки исчезли, в том числе и в остальных таблицах.

Перевожу базу в многопользовательский режим, выгружаю в *.dt файл и загружаю обратно.

Звоню бухгалтеру – прошу проверить проблемные документы: всё работает нормально. Пускаю остальных пользователей в базу.

Через час снова ошибка:

Делаем вывод, что выгрузка в *.dt – не панацея. Выгоняем Вежливо просим пользователей выйти и ещё немного потерпеть и тестируем базу с исправлением ошибок в режиме конфигуратора 1С со следующими параметрами

Видим, что всё ОК

Пускаем обратно пользователей в 1С и идём молиться настраивать планы обслуживания баз данных.

Иногда мне на почту приходят письма, где пользователи пишут, что внедрив план обслуживания базы 1С (MS SQL) вдруг замечают, что в базе ошибки.

Конечно, данная тема также подымается и на курсе: Администратор 1С!

И происходит это, как правило, на этапе проверки целостности базы данных.

date_2015-06-04_1

Проблема вскрывается благодаря плану обслуживания, а конкретно на задаче проверки целостности базы.

Простым языком, проблема с базой есть и ее уже нужно решать!

Иначе в недалеком будущем, база может «сломаться», и работа встанет совсем.

А в лучшем, более оптимистичном варианте, могут наблюдаться «тормоза».

И так быстрый ремонт базы на сервере MS SQL по шагам:

Шаг №0

Обязательно делаем  «Бэкап» перед выполнением любых действий над базой данных.

Шаг №1 (Переводим базу данных в режим “single user”).

И так чтоб перевести базу данных в однопользовательский режим “single user”.

Нужно выполнить следующий скрипт на MS SQL.

ALTER DATABASE MY_BASE

SET SINGLE_USER

WITH ROLLBACK IMMEDIATE;

Шаг №2 (Проверка и ремонт базы).

Проверять физическую целостность БД  мы будем, конечно, средствами MS SQL.

Для проверки нужно выполнить следующую команду:

DBCC CHECKDB («имя_базы», REPAIR_REBUILD)

В процессе работы этой команды: DBCC CHECKDB могут быть обнаружены ошибки, но часть их может быть сразу же исправлена. Ведь мы используем параметр «REPAIR_REBUILD».

Если ошибки останутся и после этого, то это будет означать что их нельзя восстановить без потери некоторых данных. В этом случае нужно запустить команду  DBCC CHECKDB с параметром REPAIR_ALLOW_DATA_LOSS 

То есть так:

DBCC CHECKDB («имя базы», REPAIR_ALLOW_DATA_LOSS)

После выполнения команды, обратно возвращаемся в нормальный режим «MULTI_USER» (выходим  из режима “single user”):

Вот скрипт, который выполняем на сервере.

Шаг №3 (MULTI_USER).

ALTER DATABASE MY_BASE

SET MULTI_USER;

Это должно “отремонтировать вашу базу” Но не забываем в самом начале обязательно сделать «бэкап» базы!

Если Вы хотите больше узнать о технической стороне 1С, тогда регистрируйтесь на первый бесплатный модуль курса: Администратор 1С >>>

Изображение

         
 

�� �������

�������

����

��������


           

������ ���������� (�� ������� House M.D. � ����������� � ������ �������)

  • �-� �����: ����� �������. �������, 26 ���, ����� ���� ��� �������, � �������� �� ��� �������� ����� 6 �����. ��� �������� ��-�� �������������� ��������� � ������
    �-� ����: �����, ��������� ����� ��� ��������� ������������� �� �� ������ ������.
  • �-� ����: �����������, ��� ����� �������� ���������� �� ���� ������� ����������� ������. � �� �������� �������������.
    �������: ������ � ������ ������ ����������� ������? ����� �����, �� ����� ����������� ���-������ � ���������������. ��� ���-�� ������� ������ � ��������� 帅
    �-� ����: ��, ���������. ������������� �������� ����� ������ ����. �������� ������������� �� �� �����������. ��� ������ ������� ������� ���.��������, �������� ��� ������.
    �������:��� ��������.
    ���� � ��������� �������������
    �������: � ���� ������� ��������.
    �-� ����:(����������) ������,����-�������. ������� �� ��������. ���� ������ �������� ��������. ������ �� ��� � �����. ��������� � ������ ����� ������. � ������� � ������ ����������� ������.
  • �-� ����: � �������� �������, ��� ��� ���� ������ ��� �� ����, ��� ������ ����������.
    ��� ���������: � ������, ��� ��� ������� ��������. � ���, �� �������� ��� �������?
    �-� ����: Ÿ ������� � � ��������? ����� ���������.
  • ���� ���������: � �������� �������, ��� ��� ���� ��������� ��� ��������?
    �-� ����: ���, �� � ����������� ����� �������
    �-� �����: �� ����� �������� � � ����?
    �-� ����: ��������, ��� ������� �� � �������. �������, ����� ���������� ������ ��� 1000 ���� ��������.
  • ������: � �� ������� ������������, ����� ��� ����� ������� ��� ������ ���������.

� ���� ������ ������� ������ ����� ��������� ������� ��������������� ��������, ������� ����� ���������� ��� ������ � 1�:����������� 8.1.

������ ������ ����� ���, �� ����� ������� �� ����, � ���� ����� ��������� ����� ������ ���� :))) . ������� ����� ������� ����� ������������, ��� ������ �������� ������� ���� ������ ��� ���������� ��� �����������, � �� ������ ������� ������ ������� � ���������� �������� �� ������. ��� �� ����� ��� ��������, ���������� ����� ������� �� ���� �������� ����� ����������� ��� ������� ����������� �������.

�������� �������

� �������� �������� ����� ���������:

������ 1. ������������ ����������� �� ������������� ������� 1�:�����������.

����� ���������:

«������ ���������� � �������� 1�: ����������� 8.1:
server_addr=App1�:1540=������ �������� ������� � �������
(Windows sockets — 10061(0x0000274D)
No connection could be made because the target machine actively refused it) line =567

������ 2. «���������» ������ � �������������� ����.

����� ���������:

������ ��� ���������� �������� � �������������� �����

Microsoft OLE DB provider for SQL Server: Login failed for user �user1c�

HRESULT=80040E4D, SQLSrvr: Error state=1, Severity=E, native=18456, line=1

������ 3. �������� «�����������» ������.

����� ���������: ���������� ����������� ������ �� ������� 1� ����������� (80010108)�

1. ����������� ������ (����������) ������ � ����������� ��������� �������������

����������� ������

  • ������������ ������ (����� �/��� ������ ����������, ������� ����� ����������� ��� ������� ��������). �������� ����� ����������� � ������� ���������������� �������. �����: ���� �� �� ����������� ��������������� ������ ��� ������ �����, ��������� ��� �� ���������� ��� ���� ������� «����������» (EXCP) � ������������ ������ ������ ������� ���������.
  • ������������ ����� ������������� ������. ��� � ���������� ������� ������������ ����� �������� ��������� �����.
  • �������� ����� ���������, ����������� ����� ������ �������� ������������� �������� �� ����������� ����� ������.
  • ��������� ����� ������� �� ������ ��������� � ��������� ��� � ������ ��������� ��� ���������� ������� ��������.
  • ��, ��� �� ����� �� ���������� �������� ������� � �������� ���������, ������ �� �� �����, ����� ��� ��� ���� ��������� ��� ����������.

����������. ������ 1. ����� � ���� � ������� «��� ����� ����� ������� �������» �� ����������� �� ������ �������� ������ «10061» ������� ����� ���������� ������� � �������: �� ������� ���������� ����������� ������ «����� ������� 1�:����������� 8.1«. �������������� �� ���� ���������, �������� �� ��������� ������:

net start ����� ������� 1�:����������� 8.1

���� ������ ���������� �� ��������, � ��������� ������� �������� ����� ����� C:Program Files1cv81server � ������� ���������� ����� �������� ������.

   

2. ��������������� ������

������������� ������

�� ����������� �������� ��������, ���� ������ ����� �� ���� ��� ������ ������ ����� �������. ������ ����� ������, ���� ������� �� ������� ��� �������� ����������. �� ������ ������ ����������� ��������� �������������� ������, ������� �������-����������� � ������ �������. ����� ��������� ����, � ������������� ��������� ��������� �������, ������������� �� ����.

��� ����������� ��������� ������������ � ����� ��������� �� ������. ���� ��� ����������� ��������� ����������, ���������� ��������� ���������� (���� ��� ��������) ������ �������� ��-������. ��� ����������� ������������-��������� � ���� ������� ���������� ����� ���������� ������� �������� ������� ��������� �� ���������� �������������.

��������������� ������

��������� ��������������� ������ ����� ����������� ��� ��������, ����������� «������» ������-���������� ��������. ���������� � ������ �����, �� ���� ��� ����� ���� ������ �������. ���� �� �� ������������ ��������������� �������� ��� �� ������ — ��� �� ������ ������� � �������� ����������� ����� �������. ��������������� ������ ���������� ������ ��� ������� ���� �����.

����� �������������

�-� ���� (������� � �����): �� ������ ��������� ���?
�-� �������/�-� ���� (������������): ���!
�-� ����: ������� ��������� �������� ���!

���� ���� (Everybody lies) � ����

� ������� ������������� ���� ����������. ���� ������ ����������� ����� ���������, ������ ����� ���� ��� ����� ������������ � ���������������� ��� ������ ��������� ����������. ����� ����, ��� ����� � ������ ����������������� �� ������� ������� �/��� ����������� ������, ���� ���� ����.

��������������� ��������

������ ��������������� ��������� ���� ���������� ����������.

����� ����������� �����-���� «������-����������������� ��������» ����������� �������� �����.

����������. ������ 2. ������� �� ������ �� ��������� �������� �� ��������� ������ ��������� «provider for SQL Server». ��� ��������, ��� �������� �������� ��� �������������� ������� ���������� 1�, ������� �������� �������� ��� SQL Server. ���������� �������� �Login failed for user �user1c�� — ��������� ����������, ��� ������ �������� ��� ��������� ����������� ������������ �user1c�, ������� ������ �� SQL Server.

����� ��������� ������������� ������ ������ ���������� �������������, �������� �� � ��� � ������ ������ �������������� ����. ������������ � ����� ������� ������ ��������, ��� ����� �������� �� �����. ��� � ���� ������� ��������� «����» ���������� ����� 1�:�����������, ��� ��� ����� ������ ���� �� �� ��� � ����.

�������:

��������� Management Studio � ������� ������������ � ������� ��� «user1c». �����������, ������������� ������� ������ ������ ������ «user1c». ��� ���� � ���������� �������������� ���� � �������� �������� ������� «������» ������.

����� ���������� ������ � �������������� ���� � �������� �������� 1�:����������� �������� �������.

   

3. ����� �������

����� �������

  • ����� ������� �������� �� �������� ����� ������� �������� � �������:
    � ����� ���� � ��� ���� ����� � ������� ���������� �� ����? ������� ��� �������� �� ������ � �� ���� :)
  • ��� ������ �������������� ������� �����������.
  • �� ����� ���������, ���������� �� ������ forum.mista.ru � partners.v8.1c.ru (������ ��� ������������� ����������, ��� �� ������ ����� ���������� ��������� �����).
  • ��� ����� ������������� ������� ������������ ��������� ������ «���� ������», «����� ������», «������ � ���������� ������������».

����������. ������ 3. ��������� ������� Google (www.google.ru) ������ ����� ������� �The object invoked has disconnected from its clients�. �.�. �� ����� ������� ���������� ������� 1�:����������� ���� ���������. ��������� ���������� ��������� ������� ���������� ����������: ���������, ��������� �� ����� ������ ������������ � ���� �������������. ������ ��������� �� �������� (�.�. ����� ��������� ����� ����� ��������� ����������). �������, ������ �� ������� ����������, ������ ����� ��������. ���������, ���� �� ��������� � �������, ����������� ����������������� � ����� ����������, ������� �������� ������� � ������ ������� ��������.

��� ���������� ��������, ����� �� ������� �������� ������� ����� ����������������, ������� ����� ������������ ���������� ������� ���������������� ���������� �������.

� ������ ������� «����� ���������� ��������» ����� ��������� «���������� ������» = 20 �����, ��� ������������� � 20 ��������� ��������� ������������� ���� ������.

������ �4. ������ �����.

���������� ����������

� ������, ��� � ��� ���� ��� ��������.

��� ����� ���.

��� ��� ��� ����� ��-�� ����,

��� ���������� ��� �������,

� ��� ���� ���� ���������.

� ����

�������� ������ ������������� � ���������, ������� �������� ����������. ����� ��� ������ �������� ��������������� ������ � ������������ ��������� ������ ������. ���������� ������ ���������� �������� �� ������, �� ��� �� ����������, �������� ���� �������.

��������, ���� ��� ������������� ����� ����������� MS SQL Server 2005 ���� SP3 ��� ������ � 1� v8.1 ���� ����� ������� � ��������� ������� �������� ����� ��-�� ������� ������ � �������� 23:59:59, ����� ������� ������ � ����� �� ��������. ������ ��������� ������������� ���� ��� ��������� ���������� «**.**.** 0:00:00» — ����������� ����������.

(���������� ����� http://social.msdn.microsoft.com/forums/en-US/sqldatabaseengine/thread/b720d8cc-d8c7-419f-8f65-5a4187a26ac2 � http://partners.v8.1c.ru/forum/thread.jsp?id=462620#462620)�������, ���� ���������� �� �����, �� ������� �������� ��� ����� ����� �����. �� �����������, ����� ������� �� �������!

��� ����� ����� ������� �������

� ��������� ����� ����������� ��������������� �������� ���������� ����� ������, ��� ��� �� ��� � ��������� ��������� ������.

���� �������� ������ ����� ��������. ���������� ��������� ����� �� ���� ������ ��� ����� ������ ���������.

��������� � ��������� �� 8.2

�� ���������� ������������� ������ 1�:�����������

�������������������

������SDBL

���������������������������

Windows�Sockets

10061

10106 ������ �������� ������� � �������. (Windows Sockets — 10106(0x0000277A)
10048
������ �������� ������� � ������� (Windows Sockets — 10048(0x00002740)

Windows�Installer

Windows
HRESULT=800708C5
HRESULT=800706BE�
HRESULT=800706BA

800706BA�

HRESULT=8007056B
HRESULT=80070056
HRESULT=80040E4D
HRESULT=80040E31

SQLSTATE=HYT00

native=1222

HRESULT=80040E2F

native=2601

HRESULT=80040E14

native=9002

native=8630

native=8626�

native=8133

native=8124

native=8120

native=319

native=306

native=207

native=130

�� ��� ��� �Microsoft OLE DB Provider for SQL Server: Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.
HRESULT=80040E07
HRESULT=8002000A
HRESULT=80010108�
HRESULT=80010005�
HRESULT=80004005

native=8134

native=601

native=3624

native=1205

native=11

native=102

native=21

�������������������HRESULT=80004005

������ ����:
htype=SQL_HANDLE_STMT hndl=0x20001, line=5387, file=./src/DB2Connection.cpp
SQLSTATE=57011, native=-964, ‘IBMCLI DriverDB2/LINUX SQL0964C The transaction log for the database is full. SQLSTATE=57011

������ ����: htype=SQL_HANDLE_STMT hndl=0x10001, line=2491, file=.srcDB2Connection.cpp SQLSTATE=57011, native=-964, ‘[IBM][CLI Driver][DB2/NT64] SQL0964C ������ ���������� ��� ���� ������ ��������. SQLSTATE=57011’

������ ����:[IBM][CLI Driver][DB2/NT64] SQL0429N

������ ����: htype=SQL_HANDLE_STMT hndl=0x10001, line=2609, file=.SrcDB2Connection.cpp SQLSTATE=42986, native=-750, '[IBM][CLI Driver][DB2/NT] SQL0750N 

�����������������,�����������������������������,������������������������

�������������� ���� �� ����������

�� ����������� ���� ������ � dt

�� ������� ���������� ������ ������

     

���������������8.0

������…

���� ������� ����������������. ��������� ����� �����. �� ��� ���� ������ ������������ ��������. ������, ��� ���� ������������ 1� � � :).

     

������� � ������ ���������� �����

       

Доброго времени суток, уважаемые читатели блога SoftMaker.kz. Сегодня мы поговорим, как побороть ошибку, возникающую в файловой базе 1С при неправильном закрытии системы 1С:Предприятие, например при внезапном отключении света или неправильной работе компьютера (работает и в случае, если 1С:Предприятие 8 установлено на MS SQL Server 2008 R2 Express). Ошибка СУБД: Ошибка SQL: «Таблица не найдена: _Reference76» появлялась, когда производилось тестирование и исправление информационной базы (ТиИ ИБ) при прохождении проверки логической целостности ИБ. При попытке выгрузить ИБ Конфигуратор вылетал.
Проверка физической целостности файла 1Cv8.1CD с помощью утилиты chdbfl.exe показало, что ошибок не обнаружено. Поэтому пришлось идти другим путём и получилось следующее:

  • Определяем как в базе называется таблица _Reference76 с помощью внешней обработки 1С
  • Заменяем справочник «Спецификации номенклатуры» на новый
  • Убираем ссылки со старого справочника «Спецификации номенклатуры» и удаляем его

Определяем как в базе называется таблица _Reference76 с помощью внешней обработки 1С

В случае ошибки СУБД: Ошибка SQL: Таблица не найдена _Reference76 сразу становится ясно, что была удалена таблица «_Reference76» и из названия ясно, что это какой-то справочник. Но как теперь определить, к какому именно справочнику таблица «_Reference76» относится, чтобы попытаться её восстановить? Для этого можно написать небольшую обработку для выяснения названия:

Процедура КнопкаВыполнитьНажатие(Кнопка)
	МассивИменМетаданных = Новый Массив();
	Для каждого Объект Из Метаданные.Справочники Цикл
		МассивИменМетаданных.Добавить(Объект.ПолноеИмя());
	КонецЦикла;
	// Таблица значений, содержащая таблицы указанного объекта.
	Таблицы = ПолучитьСтруктуруХраненияБазыДанных(МассивИменМетаданных);
	Для Каждого Таблица Из Таблицы Цикл
		Сообщить(Таблица.Метаданные + " - " + Таблица.ИмяТаблицыХранения);
	КонецЦикла;
КонецПроцедуры

В результате работы обработки выяснилось, что таблица «_Reference76» относится к справочнику «Спецификации номенклатуры».

...
Справочник.СпецификацииНоменклатуры - Reference76
...

Обработку для поиска соответствия названия справочников конфигурации 1С и их внутренних таблиц можно скачать отсюда.

Заменяем справочник «Спецификации номенклатуры» на новый

Теперь заменим справочник «Спецификации номенклатуры» на новый. Для этого выполним следующие действия:

  • Изменим наименование справочника «СпецификацииНоменклатуры» на «ЯСпецификацииНоменклатуры». Нажмём правой кнопкой мыши на справочнике «СпецификацииНоменклатуры» и в контекстном меню выберем пункт «Свойства» и в поле «Имя» изменим наименование.
  • Теперь отсортируем справочники в дереве метаданных по имени. Нажмём правой кнопкой мыши на справочнике «СпецификацииНоменклатуры» и в контекстном меню выберем пункт «Сортировать…». Cправочник «СпецификацииНоменклатуры» оказался в самом низу, нам это пригодится в дальнейшем.
  • Теперь заменим справочник «Спецификации номенклатуры» на новый. Для этого нужна идентичная конфигурация с неповреждённым справочником «Спецификации номенклатуры». Нужно открыть эту конфигурацию в режиме «Конфигуратор» и выделить справочник «Спецификации номенклатуры» в дереве метаданных и скопировать его (Ctrl+C).

    Справочник «Спецификации номенклатуры» в дереве метаданных 1С

  • Открываем «Конфигуратор» с повреждённой базой и вставляем новый справочником «Спецификации номенклатуры» (Ctrl+V).
  • Теперь снимем с поддержки справочник «ЯСпецификацииНоменклатуры», чтобы затем удалить его. «Конфигурация» | «Поддержка» | «Настройка поддержки». В дереве метаданных выберем справочник «ЯСпецификацииНоменклатуры» и двойным щелчком мыши на справочнике откроем следующий диалог:

    Справочник 1С «Спецификации номенклатуры» снимается с поддержки поставщика

  • В диалоге «Настройка правил поддержки» выберем правило «Объект поставщика снят с поддержки» и поставим флажок «Установить для подчинённых объектов».
  • После снятия с поддержки справочники «ЯСпецификацииНоменклатуры» и «СпецификацииНоменклатуры» в дереве метаданных конфигурации выглядят следующим образом:

    Справочник 1С «Спецификации номенклатуры» после снятия поддержки поставщика

Убираем ссылки со старого справочника «Спецификации номенклатуры» и удаляем его

    • Жмём правой кнопкой мыши на справочнике «ЯСпецификацииНоменклатуры» и в контекстном меню выбираем пункт «Удалить». Появилось сообщение Конфигуратора: «Объект не может быть удален, так как на него имеются ссылки в других объектах!»

      Предупреждение о ссылках на справочник 1С «ЯСпецификацииНоменклатуры» и невозможности его удаления

    • Нажимаем на кнопку «ОК». В окне служебных сообщений видим список объектов, которые содержат в себе ссылки на справочник «ЯСпецификацииНоменклатуры». Этот список поможет быстро заменить ссылки со справочника «ЯСпецификацииНоменклатуры» на справочник «СпецификацииНоменклатуры». Приступим.

      Список объектов 1С, ссылающихся на справочник «ЯСпецификацииНоменклатуры» в окне служебных сообщений Конфигуратора

    • Чтобы заменить ссылки в объектах нажимаем на каждую строку списка двойным кликом. Для примера возьмём первый элемент списка «ПодпискаНаСобытие.ПриУстановкеНовогоКодаСправочника.Источник»
  • После двойного клика на этом элементе, в дереве метаданных откроется объект и в нём мы найдем ссылку на справочник «ЯСпецификацииНоменклатуры».

    Открытие объекта 1С в дереве метаданных, содержащего ссылку на 
	справочник «ЯСпецификацииНоменклатуры»

  • Два раза нажимаем левой кнопкой мыши, чтобы открыть свойство объекта, в котором содержится ссылка на справочник «ЯСпецификацииНоменклатуры».

    Свойства объекта 1С с реквизитом, в котором содержиться ссылка на 
	справочник «ЯСпецификацииНоменклатуры»

  • Как видно из вышеприведённого изображения в поле «Источник» содержится составной тип, в который входит и справочник «ЯСпецификацииНоменклатуры». Заменим ссылку со справочника «ЯСпецификацииНоменклатуры» на справочник «СпецификацииНоменклатуры» в диалоге редактирования составного типа данных. Ссылка заменяется снятием флажка напротив справочника «ЯСпецификацииНоменклатуры» и установкой флажка напротив справочника «СпецификацииНоменклатуры».

    Замена ссылки справочника «ЯСпецификацииНоменклатуры» на справочник «СпецификацииНоменклатуры» 
	в диалоге редактирования составного типа данных объекта 1С

  • Эти же самые действия проделываем для всех элементов вышеприведённого списка.
  • Открываем каждый объект и заменяем в нём ссылки.
  • После замены ссылок объект спокойно удаляется.
  • Сохраняем конфигурацию, нажав, клавишу «F7».

Теперь новый справочник «СпецификацииНоменклатуры» ссылается на новую таблицу в базе 1С — _Reference6845. Если в справочнике были какие-нибудь данные, то они уже уничтожены, поэтому нужно их восстановить. Это можно сделать воспользовавшись советами статьи Как выгрузить данные в идентичную конфигурацию 1С? Если была удалена другая таблица, например _DOCUMENT, тогда нужно изменить обработку для поиска соответствия названия документов конфигурации 1С и их внутренних таблиц, а шаги проделать те же самые.

ПОДПИСКА

Понравилась статья? Поделить с друзьями:
  • Как найти не продвигаемый сайт
  • Как найти диаметр шейки пипетки
  • Как найти нужный канал в телеграмм канале
  • Надпочечный тип телосложения у женщин как исправить
  • Как найти хорошую работу без опыта работы