Банки России

Сбой программы 1с. Наиболее частые ошибки «1С» и методы их исправления. С, восстановление конфигурации информационной базы с использованием MS SQL

Вряд ли кто-то поспорит, что 1С:Підприємство в общем программа неплохая. Ведь плохая программа вряд ли стала бы такой популярной. И Вы как пользователь наверное привыкли к ней и знаете ее достаточно хорошо, со всеми плюсами и минусами. Но любой программе, хорошей или плохой все-таки как правило присущи глюки.

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

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

Кстати, зачастую покупая компьютер, мы не задумываемся, какой в нем стоит блок питания. А зря. Большинство аппаратных сбоев связаны с дешевым и как следствие плохим блоком питания. Ведь недаром, средний корпус с блоком питания стоит порядка 30-40 долларов, а хороший блок питания отдельно стоит от 40. А хороший источник бесперебойного питания тоже недешев, также как и хороший сетевой фильтр. Но это лирическое отступление от основной темы.

Личный опыт показывает, что 1С:Підприємство лучше работает на хорошей аппаратуре, а особенно на терминальных серверах высокого класса. Это связано с тем, что дорогие сервера стоят так дорого не только из-за того, что они собраны на быстрых процессорах и жестких дисках, а еще и по той причине, что в серверах применяют, в первую очередь, надежные блоки питания, процессоры, память, жесткие диски.

На таких компьютерах редко случаются вылеты с ошибками во время работы.

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

На самом деле распространенных и известных глюков в 1С:Підприємство немного. Все-таки программе уже больше 7 лет и за этой время разработчики выпустили аж 25 релизов, таким образом исправив большинство ошибок.

Ну собственно, давайте посмотрим на глюки:

  • Одной из частых ошибок является следующая. При работе в 1С:Підприємство она вдруг ни с чего вылетает с ошибкой. «Программа выполнила недопустимую ошибку и будет завершена». Из-за чего произошла такая ошибка как правило непонятно, поскольку носят они единоразовый характер.

Решение: если же ошибка повторяется при определенной ситуации, то нужно передать информацию о ней предприятию, которое обслуживает вашу фирму. Такие ошибки как правило связаны с аппаратными сбоями или сбоями операционной системы.

  • Невозможность сохранения архивной копии (из конфигуратора) на внешние носители (флеш-память, магнитооптические диски и т.д.). Проявляется следующим образом. При сохранении прямо на внешний носитель по окончании процесса выдает ошибку «Ошибка определения свободного места на диске» и соответственно ничего не сохраняет. Ошибка также возникает при выгрузке данных, а также при выгрузке для обмена с базами, при использовании УРИБ. В последнем релизе платформы ошибка исправлена, однако иногда по-прежнему возникает с некоторыми операционными системами.

Решение: сохранять вначале на жесткий диск (сеть), а затем копировать на внешний носитель. Неудобно, но деваться некуда.

  • «Зависание» при тестировании и исправлении ИБ. Если вы запускали процедуру тестирования/исправления из конфигуратора, то могли обратить внимание, что стоит переключиться из конфигуратора в другую программу, а потом назад, то мы больше уже не видим, что происходит. Программа вроде как зависает. На самом деле она продолжает работать, но мы не видим прогресса. Объяснения общественной организации САБ по этому не смертельному, но неприятному глюку напоминают объяснения главного героя фильма «Люди в черном», позволю себе примерно процитировать: «Лунный свет отразился от Венеры, что вызвало взрыв болотного газа». Т.е. нормальному человеку эти объяснения непонятны. Они в общем непонятны и компьютерному специалисту. 1С:Підприємство говорит так, цитирую: «Это связано с особенностями взаимодействия библиотека mfc32.dll с Windows». Ошибка возникает в версия Windows начиная с Windows XP.
Решение: терпеливо ждать пока процесс не будет закончен.
  • «Вылетание» 1С:Підприємство с ошибкой при старте. Собственно тут сама программа не виновата. Тут возможные разные варианты, но как правило связано это с тем, что на диске компьютера есть ошибки. Как правило, это потерянные кластеры.

Решение: В этом случае пробуем сделать следующее - выполняем проверку диска, если это не помогло, то заходим через Мой компьютер в папку базы. В ней находится папка SYSLOG. Удаляем эту папку. Таким образом мы теряем журнал регистрации, но зато 1С:Підприємство будет работать. Если это не помогло, то нужно искать проблему в другом месте. Эта ошибка пожалуй самая противная и опасная поскольку благодаря ей, можно потерять полдня, а то и день работы.

  • Потеря данных при восстановлении последовательности. А вот это уже очень противная ошибка. Возникает она в конфигурациях, в которых нет компоненты «Оперативный учет», т.е. «Бухгалтерський облік для України», «Бюджетная для Украины», «Пiдрядник будiвництва», «Рарус громадське харчування» и др. Если пользователь запускает восстановление последовательности или проведение документов, через Действия - Проведение документов, и проведение не завершается успешно, то все дальнейшие действия, выполненные пользователем в базе не будут сохранены при выходе! Т.е. запустили мы, проведение, не через Сервис-Обработка документов, а через Действия-Проведение документов, и какой-то из документов не провелся. Предположим мы его исправили. Так вот, если мы выйдем из программі, то все исправления будут потеряны. Ошибка не возникает в конфигурациях «ПУБ», «Комплексная», «Торговля и склад», т.е. там, где присутствует компонента «Оперативный учет».

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

Ошибка также отлично известна разработчикам.

Решение: Не пользоваться Проведением документов из меню Действия. Или при ошибке, при таком проведении, выполнять выход из 1С:Підприємство, вход в нее а уже потом вносить изменения.

  • Следующая ошибка возникает уже, когда мы пользуется Сервис - Обработка документов. Ошибка наблюдалась только в Windows 2003 Server. Заключается в следующем: при переносе документа из списка проводимых в список не проводимых (кнопки -> и =>>), возникает ошибка «Invalid argument encountered». При нажатии кнопки ОК программа наглухо зависает, хотя делает вид, что что-то делает. Ошибка в принципе повторяемая, но возникает не регулярно, т.е. не обязательно она возникнет с первого нажатия, но бывает и так. Информация об ошибке также передавалась разработчикам.

Решение: Собственно решения нет. Надеяться, что ошибка не возникнет.

  • Теперь пожалуй наиболее известная ошибка платформы. Невозможность сохранения в Excel отчетов большого размера. Суть ошибки в том, что при попытке сохранить большой отчет в из 1С:Підприємство в формате Excel, программа просто зависает. Причем это не выглядит так, как будто время сохранения в Excel зависит напрямую от размера файла. Просто при достижении определенного размера файлы больше не сохраняются. В формат mxl (внутренний формат таблиц программы) файл сохраняется успешно. Но попытка открыть его в Excel (с помощью поставляемого отдельно конвертера mxl2xls) также не увенчивается успехом, и ведет к зависанию Excel. Ошибка обнаружена очень давно и отличная известна разработчикам. Самое противное, что в версии 8.0 она уже исправлена, следовательно ошибка не настолько критичная, что не поддается исправлению, но разработчики почему-то не хотят исправлять.

Решение: решения здесь нет. Или формировать отчет кусочками или попросить программиста, чтобы он переписал отчет таким образом, чтобы он сразу формировался в Excel. Правда, во втором случае Excel обязательно должен быть установлен на компьютере.

  • Следующая ошибка достаточно не серьезная и страдают от нее в основном программисты. Суть ее состоит в том, что если мы копируем текст, или таблицу через буфер обмена Windows и при этом в той программе, из которой мы копируем сейчас стоит английский язык, то в ту программу, в которую мы копируем русский (украинский) текст будет вставлен как символы расширенной латиницы.

Решение: Не забывать переключать язык не русский.

В заключение хочу сказать, что несмотря на все ошибки, 1С:Підприємство программа все-таки неплохая и со своей задачей справляется. Если бы еще разработчики более оперативно реагировали на информацию об ошибках...Впрочем их тоже можно понять. Как ни крути, а 7.7. - уже прошлое, которое поддерживается по инерции, Сейчас 1С:Підприємство вплотную занята 8.2. Но это уже другая программа и совсем другие глюки.

Эта статья является продолжением цикла статей «Первые шаги в 1С». В ней рассмотрены типовые приемы восстановления базы 1С на платформе «1С:Предприятие 8» после сбоев. Предполагается, что база работает в файловом режиме работы. Восстановление базы в клиент-серверном режиме работы не рассматривается, т.к. данный вопрос явно выходит за рамки “первых” шагов начинающего специалиста.

Материал статьи детально раскроет ответы на следующие вопросы:

  • Что нужно делать до начала всех работ по восстановлению? (копию, Карл!)
  • Какие тонкости есть при использовании утилиты проверки?
  • Какие средства для восстановления есть в конфигураторе?
  • Когда и зачем нужно делать выгрузку/загрузку в формат *.dt?
  • Если все вышеописанное не помогло, что можно еще попробовать?

Применимость

Статья написана для платформы «1С:Предприятие» версии 8.3.4.496, но не переживайте, если вы работаете с более старшей версией! Весь материал является абсолютно актуальным.

Как в 1С восстановить поврежденную базу «1С:Предприятие 8»

Порой для новичка данная задача кажется просто нереальной. Хотя, на самом деле, есть ряд нехитрых штатных средств тестирования баз 1С и приемов исправления возникающих ошибок.

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

Причины возникновения критических ошибок бывают разнообразными. Чаще всего проблемы возникают из-за сбоев электропитания.

С уверенностью можно сказать, что при клиент-серверном режиме работы база более устойчива к возникновению ошибок.

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

Итак, главное не пугаться и перед попыткой восстановления базы сделать ее копию .

Например, можно сначала скопировать всю папку, в которой размещена база, а затем в этой папке оставить только файл 1Cv8.1CD (файл базы) и папку 1Cv8Log (журнал регистрации событий).

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

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

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

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

Первым делом удалите все файлы и папки, которые в заданной директории окружают файл базы (1Cv8.1CD). Да, это некие служебные файлы, обеспечивающие полноценную работу, но точно отмечено, что иногда в работе этих файлов возникает некоторое рассогласование.

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

Теперь используем самое эффективное, но еще далеко не последнее, средство. В директории C:\Program Files\1cv82 (для платформы 8.3 – 1cv8)\(далее номер релиза платформы)\bin запустите утилиту chdbfl.exe.

Внимание! В каждом релизе платформы есть своя утилита chdbfl.exe. Целесообразно использовать утилиту из того релиза платформы, с которым использовалась данная база. В большинстве случаев – это последний установленный релиз платформы.

Здесь стоит сказать об одной особенности, если момент повреждения базы примерно совпадает с моментом обновления платформы, то утилита chdbfl.exe предыдущей платформы зачастую дает лучшие результаты в поиске и исправлении ошибок.

Особенность данной утилиты – если при первом проходе исправленных ошибок не было (утилита не смогла исправить ни одной ошибки), то повторно ее запускать, можно сказать, бесполезно.

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

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

Сами параметры тестирования и исправления, если Вы абсолютно четко не понимаете, что именно делаете, лучше не трогать.

Улучшение результатов тестирования при повторном использовании данного средства не отмечено.

Следует еще сказать о средстве проверки конфигурации. По опыту, ошибки, отмечаемые данным средством, не отличаются особой критичностью. Скорее они просто замедляют работу самой базы. Что, по сути, для баз размером свыше 4 Гб пользователем может расцениваться тоже как повреждение базы.

4 Гб – это максимально допустимый размер не самой базы, а таблицы в базе. Но какой-нибудь регистр может быть значительно больше остальных и занимать большую часть размера базы.

В данной форме также без абсолютно четкого понимания никаких настроек менять не стоит.

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

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

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

Выгрузка производится в конфигураторе через меню Администрирование, пункт Выгрузить информационную базу .

Появится диалоговое окно, в котором нужно будет указать направление выгрузки. Название создаваемого файла можно использовать по умолчанию – 1Cv8.dt.

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

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

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

Дополнительные параметры можно не заполнять и нажать на кнопку Готово . Будет создана информационная база без конфигурации.

Еще пару моментов. Если неисправности в работе базы отмечаются только на одном компьютере, следует попробовать поменять компьютер. Если неисправности проявляются только у одного пользователя, то следует попытаться пересоздать пользователя.

Иногда помогает удаление базы из списка в окне информационных баз с последующим добавлением в список той же существующей информационной базы (восстановление пути к ней).

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

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

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

В информационных базах на платформе 1С могут возникнуть множество различных ошибок:

нарушение логической/физической целостности базы, ошибки пользователей, «кривой» код разработчика и многое другое.

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

Во-первых, стоит задать несколько уточняющих вопросов пользователю:

1) Релизы платформы/конфигурации.

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

3) Как давно возникла и при каких обстоятельствах появляется. Не воспроизводимые ошибки, которых мы ранее не встречали, мы наврядли сможем исправить.

4) Возникает ли если запустить 1с с другого компьютера/от другого пользователя? Это даст нам пищу для размышлений - сможет ли помочь очистка кэша, настройка прав, или очистка настроек пользователя.

Теперь немного о самих ошибках и том как их решать.

Общее:
Часть ошибок возникает при использовании нелицензионного ПО (windows, 1C и т.д.).

Распространенный пример - ломаная платформа. Один из патчей взламывает конкретную версию платформы, поэтому после установки новой версии платформы и попытке зайти в базу можно увидеть окно «Не обнаружено свободной лицензии».

Если Вы встретили ошибку в первый раз - возможно, кто-то уже ее встречал -

поищите в google, возможно кто-то уже с этим сталкивался и решил проблему, и Вы не потратите лишних пару часов своего времени.

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

Актуальный релиз платформы - у каждой конфигурации написано, какой релиз платформы рекомендован для работы с этой конфигурацией.

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

!!!ВАЖНО

Перед любыми действиями с базой - сделать архивную копию!

Если база не открывается в конфигураторе - скопировать папку с базой и выполнять все операции на копии!

1) База вообще не открывается ни в пользовательском режиме, ни в конфигураторе.

  • Самое быстрое, что можно сделать - очистить временные файлы (удалить базу из списка баз и подключить заново)

    Это действие не удалит временные файлы (кэш), а создаст новую папку для временных файлов базы, удалить файлы можно:
    В Windows 7 в C:\Users\Имя_Пользователя\AppData\Roaming\1C\1Cv8x
    В Windows XP C:\Documents and Settings\Имя_Пользователя\Application Data\1C\1Cv8х

  • Также можно попытаться зайти в базу от другого пользователя.
  • Если база файловая, то стоит запустить утилиту для тестирования физической целостности базы chdbfl. Она находится в папке:
    C:\Program Files (x86)\1cv8\8.x.x.xxx\bin\chdbfl.exe
  • Если база sql-ная то тестирование средствами sql.
  • Если ни то ни другое не помогло, то можно обновить платформу (см. под какой платформой работает релиз)
  • Если не получилось ничего из перечисленного, можно воспользоваться программкой Tool_1CD.

2) Если база при запуске уходит в дамп.

  • Отключить аппаратное ускорение видеокарты:
  1. Откройте свойства экрана. Это можно сделать через Панель управления, или просто щелкнув правой кнопкой мыши по любому месту рабочего стола, свободному от окон и значков, и выбрав пункт контекстного меню «Свойства».
  2. В открывшемся окне настройки дисплея перейдите на закладку «Параметры» и нажмите кнопку «Дополнительно».
  3. В открывшемся окне свойств видеокарты перейдите на вкладку «Диагностика».
  4. Передвиньте движок «Ускорение» в крайнюю левую позицию («нет») и нажмите «Применить» или «Ок». Аппаратное ускорение отключено. Изменения вступят в силу после перезагрузки системы.
  1. Откройте Панель управления (Пуск — Панель управления).
  2. Найдите и откройте элемент «Экран».
  3. В левой части открывшегося окна щелкните по ссылке «Настройка параметров экрана».
  4. В открывшемся окне нажмите на ссылку «Дополнительные параметры».
  5. Перейдите на вкладку «Диагностика» и нажмите кнопку «Изменить параметры».
  6. В открывшемся окне передвиньте движок в крайнее левое положение («нет») и нажмите «Ок». Если UAC включен, придется подтвердить, что изменения санкционированы пользователем. Аппаратное ускорение отключено. Изменения вступят в силу после перезагрузки системы.

В Windows 7 в некоторых случаях кнопка «Изменить параметры» будет неактивна. В этом случае отключить аппаратное ускорение невозможно, так как видеокарта и ее драйвер не поддерживают манипуляции аппаратным ускорением.

  • Если антивирус Касперский, то можно попробовать отключить самозащиту и переименовать файлы kloehk.dll и mzvkbd3.dll в папке Касперского. (Ошибка возникала на старых версиях 2011 года, но еще иногда встречается)
  • Проверить соответствие релиза платформы/конфигурации.
  • Попробовать зайти в базу с другой платформы.

3) База открывается в конфигураторе, но не хочет заходить в пользовательский режим.

  • Очистка временных файлов
  • Попытка зайти за другого пользователя
  • chdbfl / тестирование средствами sql
  • Тестирование и исправление ИБ:
    В конфигураторе Администрирование-Тестирование и исправление - галочки в зависимости от ситуации.
  • Попробовать создать др. пользователя с полными правами и зайти от него.
  • Попробовать перенести на другой ПК и открыть там, может что-то с ПК.

4) При каком-то действии выкидывает на код в конфигуратор.

  • Для проверки стоит очистить кэш.
  • Если не помогло то скорей всего ошибка в коде - особенно актуально для нетиповых и самописных конфигураций, но встречается иногда и в типовых.

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

Если типовая, то возможно ошибка в релизе.

В любом случае стоит пробежать в отладчике и посмотреть что не так.

5) Под одним пользователем дает что-то сделать, под другим нет.

  • Настройки прав пользователей.
  • Настройки пользователя.
  • Очистка кэша.

6) С одного ПК заходит, с другого нет.

  • Проверить в проводнике видит ли базу - может к папке с базой не предоставлен общий доступ.
  • Очистка кэша.
  • Зайти под другим пользователем.

7) Я ничего не делал/делала но у меня все сломалось

  • Если смогут подсказать что именно «не делали» и когда, то можно воспользоваться
  • журналом регистрации с отборами и возможно узнать, в чем проблема.
  • Журнал регистрации можно найти в конфигураторе:
  • Администрирование - журнал регистрации.

    Либо в пользовательском режиме - расположение зависит от конфигурации.

8) Недостаточно памяти.

Был у меня случай, пришел клиент, говорит, при закрытии месяца вылетает ошибка "Недостаточно памяти". Взялся я за эту проблему. Думал, что легко, сначала добавил оперативки - ошибка. Было 2 гигабайта, стало 4, а все равно 1с-ке мало. Размер файла подкачки менял - ошибка, переустановка системы (поставил Windows 7) дало только временный результат, где-то на неделю. Перепробовал все. Спустя некоторое время решение было найдено.

Решение

На клиентском компе запустить командную строку от имени администратора, прописать там следующее:

BCDEdit /set increaseuserva xxxx - вместо хххх пишите объем виртуального адресного пространства в мегабайтах, т.е. сколько нужно памяти под работу приложений. По умолчанию 2 гига. Вообще в 32-разрядных операционных системах выделяется 4 гигабайта: 2 - на приложения и 2 на нужды самой ОС. Я выбрал 3000 (т.е. CDEdit /set increaseuserva 3000 ). Однако система может подглючивать. Особенно, если у вас 2 гига оперативки, как у меня. Это для ОС семейства Windows Vista, 7, Windows 2008.

Для Windows XP \ Windows 2003 пишем
/3GB /userva=xxxx (xxxx в МБ в диапазоне 2048 - 3072) в файле boot.ini, рекомендуемый максимум значений userva 2900-3030.

9) Элементы форм налезают друг на друга и имеют неправильное расположение.

  • Очистка кэша.

10) Ошибка СУБД Внутренняя ошибка компоненты dbeng8

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

Решение: обновиться до актуального релиза на всех рабочих местах.

Если не помогло, тогда делаем следующее:

  • Тестирование и исправление

11) Ошибка в платформе 8.3.4.428

  • В версии 8.3.4.428 платформы "1С:Предприятие" обнаружена критичная ошибка, возникающая при реструктуризации данных. Данная ошибка локализована и будет исправлена в следующей версии платформы.

12) Конфликт блокировок при выполнении транзакции:


Microsoft OLE DB Provider for SQL Server: Could not continue scan with NOLOCK due to data movement.
HRESULT=80040E14, SQLSrvr: SQLSTATE=42000, state=3, Severity=C, native=601, line=1

"Как проверить (восстановить) базу на MS SQL Server средствами сервера
Проверку логической целостности нужно выполнять штатными средствами 1С:Предприятия (Тестирование и исправление ИБ). В случае, если такую проверку не удается выполнить, следует проверить физическую целостность БД средствами MS SQL. Для проверки целостности средствами MS SQL нужно выполнить следующую команду:
Код:
DBCC CHECKDB ("",REPAIR_REBUILD)
Перед выполнением этой команды нужно базу данных перевести в режим "single user":
Код:
sp_dboption "","single user",true
В процессе работы DBCC CHECKDB могут быть обнаружены ошибки и часть может быть сразу же исправлена. Если ошибки остались, то по всей видимости их нельзя восстановить без потери некоторых данных. В этом случае нужно запустить DBCC CHECKDB с параметром REPAIR_ALLOW_DATA_LOSS (перед запуском желательно сделать копию файлов базы данных).
Код:
DBCC CHECKDB ("",REPAIR_ALLOW_DATA_LOSS)
После выполнения DBCC CHECKDB нужно не забыть вернуться в нормальный режим (выйти из режима "single user"):
Код:
sp_dboption "","single user",false" (Взято с сайта )

Конечно список далеко не полный, так что буду рад, если его дополнят в комментариях.

Песочница

авторитет 18 сентября 2013 в 15:24

1С, восстановление конфигурации информационной базы с использованием MS SQL

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

Как выяснилось позднее – произошло разрушение хранилища конфигурации и при обновлении конфигурации из хранилища слетела и конфигурация БД. Подобная ошибка возникала прежде при динамическом обновлении ИБ.

Т.к. данная проблема возникала не однократно решил поделится вариантом лечения.

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

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

Вариант 1 (при наличии бэкапа SQL c копией с идентичной конфигурацией):

Разворачивается копия ИБ, и выполняется запрос следующей конструкции:
USE GO DELETE FROM .. GO INSERT INTO .. SELECT * FROM .. GO
При этом пере заливается таблица в которой хранится конфигурация ИБ. Желательно после данной операции выполнить тестирование и исправление ИБ.

Вариант 2 (при отсутствии бэкапа):

К данному варианту обратились как к последней соломинке. Т.к. конфигурация была в стадии разработки и про бэкап немного позабыли понадеясь на хранилище.
В базе удаляются две записи из таблицы «Config» по значению в столбце «FileName» - dbStruFinal и commit

Выполняется следующий запрос:
USE GO DELETE FROM . WHERE FileName = "dbStruFinal" GO DELETE FROM . WHERE FileName = "commit" GO
Как ни странно база оживает.

Теги: 1с предприятие 8.2, SQL, восстановление конфигурации

Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит

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

Алгоритм действия при обнаружении неполадок должен выглядеть следующим образом:

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

Ошибки в работе 1С можно классифицировать так:

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

2. Программные ошибки. Наиболее распространённые сбои этой категории:

  • Ошибки при запуске программы могут быть вызваны отсутствием ключа защиты, сбоями локальной сети или нарушением структуры конфигурации.
  • Ошибки при установке чаще всего являются следствием неверно введённого ключа.
  • Ошибки при обновлении – наиболее распространённые программные ошибки, вызванные несвоевременным обновлением компонентов программы.

Для решения программных ошибок необходимо воспользоваться услугами специалиста по работе с продуктами 1С.

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