Ошибка взаимодействия с платформой 1с предприятия
Любая программа, установленная на компьютер, может время от времени работать неправильно. Периодические сбои, которые приводят к невозможности использования ПО, называются ошибки. Чтобы суметь диагностировать и устранять ошибки в 1С, пользователь должен хотя бы немного разбираться в особенностях работы программ. Наличие минимальных знаний позволяет решать проблемы самостоятельно.
Прежде чем рассматривать основные разновидности ошибок, стоит заметить, что они отличаются между собой по происхождению. Приложение может привести к физическому или логическому сбою. В результате 1С просто не запускается или начинает работать в режиме «Конфигуратор». Пользовательский режим бывает недоступен или, при использовании определенных команд, будет появляться сбой.
Чтобы научиться быстро исправлять ошибки в 1С необходимо изначально их проанализировать. Часто во всплывающем окне написана суть некорректного поведения, что помогает решить проблему.
Причины появления ошибки в 1С
Разберем основные моменты, связанные с частым появлением сбоев при работе с базой данных. Они возникают в разных ситуациях, и определить их истинную причину не всегда возможно.
Одна из самых частых причин нарушение работы связанна с компьютером, на который установлена база данных 1С. Рабочая область может автоматически закрываться из-за нехватки оперативной памяти на сервере. Все возникающие неисправности должны быстро устраняться. В противном случае есть вероятность потери данных.
Часто возникающие ошибки 1С
Все имеющиеся сбои выводят на экран разные уведомления. Одинакового текста не бывает. Чтобы проще ориентироваться, разделим существующие ошибки 1С на следующие пункты:
- Недостаточно памяти.
- Ошибка доступа.
- Ошибка формата потока.
- Ошибка СУБД: Файл базы данных поврежден.
- Неправильное отображение блоков формы.
- Внутренняя ошибка компоненты dbeng.
- Dump при запуске.
- Неверный формат хранилища.
- Ничего не работает.
Для того, чтобы научиться исправлять возникающие ошибки, рассмотрим каждый пункт по отдельности.
Недостаточно памяти
Подобный сбой проявляется только в том случае, если на выполнение операций с программой выделено мало оперативной памяти. Приложение не может обрабатывать большие объемы информации, поэтому выдает «Недостаточно памяти 1С». Это случается при формировании отчета, обработки «тяжелого» файла, обновлении конфигурации и т.д. Причина – мощности компьютера недостаточно.
Пользователь может самостоятельно решить проблему с памятью. По умолчанию операционная система выделят фиксированное значение гигабайт на обслуживание приложения: 32 bit ОС – 2 Гб, 64 bit – 4 Гб.
Увеличить размер выделенной памяти можно вручную. Для этого запускается адресная строка (Пуск – Выполнить, вводиться фраза cmd). После нажатия «Ентер» достаточно ввести фразу bcdedit /set increaseuserva 4096 и подтвердить действие (клавиша «Enter»). Цифра 4096 – новый выделяемый объем «оперативки». Выполняется перезагрузка системы. Проблема должна быть устранена.
Ошибка доступа
Она возникает, если учетная запись не имеет достаточно прав. Проявляется при выполнении определенного действия, которое доступно только ограниченному кругу пользователей. Для исправления ситуации достаточно изменить роль выбранного профиля в конфигураторе (вкладка «Администрирование – Пользователи»). В некоторых случаях это увеличивает безопасность базы данных, если необходимо защитить файлы от изменения сторонними людьми.
Ошибка формата потока
Когда пользователь только запускает программу, на экране может появиться окно сбоя. Оно предлагает завершить работу или перезапустить. Причиной выступает некорректное завершение работы приложения.
Устранение подобной ошибки 1С выполняется простой чисткой кэша. Для этого необходимо перейти в папку, где хранятся временные файлы. В Windows 7 и выше она находится по адресу C:\Users\Username\AppData\Local\1C или C:\Users\Username\AppData\Roaming\1C. Для Windows ХР другой путь – Local Settings\Application Data\1C\. Все файлы, начинающиеся на 1cv8, кроме «1Cv8.1CD» полностью удаляются.
Если «Ошибка формата потока» возникает в процессе работы, то нужно провести тестирование (Администрирование – Тестирование и исправление), выбрать первые 2 галочки и запустить процесс.
Ошибка СУБД: Файл базы данных поврежден
Если всплывает информационное окно с подобной надписью, неисправность базы данных решается тестированием файла и всей информационной базы. Такое мероприятие может проводиться 2 способами:
- Запуск утилиты chdbfl.exe. Эта программа предназначена для того, чтобы проверять целостность базы данных при совместном ее использовании с информационной базой. Данный метод хорош тем, что дает возможность решать сбои даже в тех ситуациях, когда конфигуратор запустить невозможно. Сначала выполняется резервное копирование информации. В папке, где установлен 1С (директория bin) находится файл chdbfl.exe. Он запускается, в окне прописывает путь к файлу базы данных и ставится галочка, чтобы провести исправление ошибок. Нажимается кнопка «Выполнить». После завершения процесса все должно заработать. Если нет – используется конфигуратор.
- Через конфигуратор. Нужное окно вызывается после нажатия «Администрирование – Тестирование и исправление». На экране появляется форма, где выставляются галочки на следующе строчки: «Реиндексация таблиц…», «Проверка логической целостности…», «Проверка ссылочной…», «Реструктуризация таблиц…», «Тестирование и исправление» и 2 раза «Создать объекты». Нажимается кнопка «Выполнить». После завершения процедуры сбой устраняется.
Неправильное отображение блоков формы
Такая неисправность возникает от разных факторов. Чтобы привести программу к нормальной работоспособности, пользователю необходимо последовательно выполнить несколько команд. После проведения каждой проверяется устранение сбоя:
Если приведенные методы не помогают, рационально будет провести обновление платформы.
Внутренняя ошибка компоненты dbeng
Dump при запуске
Возвращение 1С в рабочее состояние проводится простым обновлением MS Visual Studio (Visual C++) и дополнительными манипуляциями. Чтобы отследить конкретный файл, в котором возникает ошибка, открывается «Просмотр событий». Для этого пользователь переходит в «Панель управления – Система и безопасность – Администрирование». С левой стороны раскрывается «Журнал Windows – Приложение».
На экране появляется список ошибок и точное расположение поврежденного файла. После установки новой версии MS Visual Studio (Visual C++) с папки System32 копируется одноименный файл dll и вставляется в папку платформы 1С. Проблема решилась.
Неверный формат хранилища
Ничего не работает
Если программа перестала нормально работать без видимых причин, значит пользователю придется самостоятельно искать неисправность. Для восстановления работоспособности базы данных проводятся следующие мероприятия:
- чистится кэш;
- открывается файл chdbfl.exe из папки установки приложения и выполняется исправление;
- выполняется запуск «Конфигуратора» для тестирования и исправления сбоев;
- обновление «1С».
Если это не критичная ошибка, она должна исправляться при установке актуальной версии программного комплекса. В остальных ситуациях необходимо пользоваться помощью профессиональных мастеров, которые отлично понимают принцип подобных продуктов.
Хотите получать подобные статьи по четвергам?
Быть в курсе изменений в законодательстве?
Подпишитесь на рассылку
Статья рассчитана в первую очередь на тех, кто недостаточно много работал с 1С и не успел набить шишек при встрече с часто встречающимися ошибками. Обычно можно определить для себя несколько действий благодаря которым можно определить решится ли проблема за несколько минут или же потребует дополнительного анализа. В первое время сталкиваясь с простыми ошибками тратил уйму времени на то, чтобы с ними разобраться. Конечно, интернет сильно помогает в таких вопросах, но не всегда есть возможность им воспользоваться. Поэтому надеюсь, что эта статья поможет кому-нибудь сэкономить время.
В информационных базах на платформе 1С могут возникнуть множество различных ошибок:
нарушение логической/физической целостности базы, ошибки пользователей, «кривой» код разработчика и многое другое.
Причин может быть множество: отключили свет, и не было источника бесперебойного питания, или вечер пятницы удался, и пользователь уже и не может вспомнить в понедельник, что он натворил такого.
Во-первых, стоит задать несколько уточняющих вопросов пользователю:
1) Релизы платформы/конфигурации.
4) Возникает ли если запустить 1с с другого компьютера/от другого пользователя? Это даст нам пищу для размышлений – сможет ли помочь очистка кэша, настройка прав, или очистка настроек пользователя.
Теперь немного о самих ошибках и том как их решать.
Общее:
Часть ошибок возникает при использовании нелицензионного ПО (windows, 1C и т.д.).
Распространенный пример – ломаная платформа. Один из патчей взламывает конкретную версию платформы, поэтому после установки новой версии платформы и попытке зайти в базу можно увидеть окно «Не обнаружено свободной лицензии».
Если Вы встретили ошибку в первый раз - возможно, кто-то уже ее встречал -
поищите в google, возможно кто-то уже с этим сталкивался и решил проблему, и Вы не потратите лишних пару часов своего времени.
Релиз конфигураций должен быть актуальным (в первую очередь для конфигураций из которых сдается регламентированная отчетность), неспроста на линии консультаций практически всегда предлагают вначале обновиться, а потом уже смотреть дальше.
Актуальный релиз платформы - у каждой конфигурации написано, какой релиз платформы рекомендован для работы с этой конфигурацией.
Технологический журнал позволяет протоколировать все события 1С:Предприятия (или часть, используя фильтр).
Про него можно прочитать здесь и здесь.
. ВАЖНО
Перед любыми действиями с базой - сделать архивную копию!
Если база не открывается в конфигураторе - скопировать папку с базой и выполнять все операции на копии!
1) База вообще не открывается ни в пользовательском режиме, ни в конфигураторе.
-
Самое быстрое, что можно сделать - очистить временные файлы (удалить базу из списка баз и подключить заново)
- Также можно попытаться зайти в базу от другого пользователя.
- Если база файловая, то стоит запустить утилиту для тестирования физической целостности базы chdbfl. Она находится в папке:
C:\Program Files (x86)\1cv8\8.x.x.xxx\bin\chdbfl.exe
- Если база sql-ная то тестирование средствами sql.
2) Если база при запуске уходит в дамп.
- Откройте свойства экрана. Это можно сделать через Панель управления, или просто щелкнув правой кнопкой мыши по любому месту рабочего стола, свободному от окон и значков, и выбрав пункт контекстного меню «Свойства».
- В открывшемся окне настройки дисплея перейдите на закладку «Параметры» и нажмите кнопку «Дополнительно».
- В открывшемся окне свойств видеокарты перейдите на вкладку «Диагностика».
- Передвиньте движок «Ускорение» в крайнюю левую позицию («нет») и нажмите «Применить» или «Ок». Аппаратное ускорение отключено. Изменения вступят в силу после перезагрузки системы.
- Откройте Панель управления (Пуск — Панель управления).
- Найдите и откройте элемент «Экран».
- В левой части открывшегося окна щелкните по ссылке «Настройка параметров экрана».
- В открывшемся окне нажмите на ссылку «Дополнительные параметры».
- Перейдите на вкладку «Диагностика» и нажмите кнопку «Изменить параметры».
- В открывшемся окне передвиньте движок в крайнее левое положение («нет») и нажмите «Ок». Если UAC включен, придется подтвердить, что изменения санкционированы пользователем. Аппаратное ускорение отключено. Изменения вступят в силу после перезагрузки системы.
В Windows 7 в некоторых случаях кнопка «Изменить параметры» будет неактивна. В этом случае отключить аппаратное ускорение невозможно, так как видеокарта и ее драйвер не поддерживают манипуляции аппаратным ускорением.
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
Конечно список далеко не полный, так что буду рад, если его дополнят в комментариях.
Специальные предложения
В случае, когда база открывается только в Конфигураторе, может помочь выгрузка данных с последующей загрузкой в новую "нулевую" базу. Не панацея, конечно, но иногда выручало.
При любой непонятной фигне чистить кэш потом разбираться.
У меня пользователи уже научены что сначала давят Сервис\Очистить кэш и перезапустить программу а потом уже звонить и жаловаться.
Хорошая статья! По первому пункту могу добавить. Если не получилось ничего из перечисленного, можно воспользоваться программкой Tool_1CD и с ее помощью удалить записи в таблице configsave. Только это мне и помогло в свое время.
1 пункт. Как же можно выгрузить в *.dt, если по условию не загружается конфигуратор?
8. пункт это не решение. Увеличение до 3Гб памяти под процесс зачастую не помогает. Решение - это 64-разряда для клиента и для сервера.
Вообще в 32-разрядных операционных системах выделяется 4 гигабайта: 2 - на приложения и 2 на нужды самой ОС.
Строго говоря, 4 гигабайта это адресное пространство 32-разрядных систем, а не "выделяется". Из которых MS еще что-то резервирует под аппаратную часть, плюс еще ограничивает каждый процесс 2 Гигами.
9. Проще сделать "Восстановить положение окна Alt-Shift-R"
Многократно повторенный совет использовать chdbfl.exe довольно сомнителен. Утилита известна тем, что зачастую добивает базу окончательно.
(6)(9) - присоединяюсь. С программными лицензиями проблемы возникают гораздо чаще.
Статья классная, я плюсанул. Одно но "Часть ошибок возникает при использовании нелицензионного ПО (windows, 1C и т.д.)." - очень сомнительное предложение.
Terve!R; user705520_admin; roman8115; virtmon; Sophus; Bukaska; JesteR; buganov; for-elenak; plmshka; Sergafan10; + 11 – 1 Ответить
(9) Aspire1C,
Скорее это относится к карявым патчам в которых "что-то не учли"
(0)
Статья хорошая, хотя у нас с одним клиентом, в клиент-серверном варианте, возникла ошибка, которая не была описана ни где в интернете (по крайней мере я не нашёл):
При попытки открыть форму справочника или сделать запрос хотя бы к одному его полю - рабочий сервер 1С 8.3 падает и перезапускается. Тут ни чиска кешев, ни dt, ни чекдб в скуле, ни выгрузка-загрузка через файловую базу (с проверкой chdbfl и тестированием-исправлением) не помогают :-) Хотя в файловом варианте всё работало отлично.
Там учитывать нечего.
Но из за повального спроса, их часто снабжают дополнительным потребительским сервисом - троянами.
Если в процессах висит что-то типа rundll32 C:\windows\temp\pagefile.sys - это вот оно.
(26) Aspire1C, да, часто это ошибка, возникшая вследствие незнания администратором специфики механизмов лицензирования 1С/HASP.
Это не статья. Это перечень условно известных проблем с не всегда корректными рекомендациями по их решению.
Далее по пунктам:
0) Кэш (и Local, и Roaming) чистим в первую очередь. И при возможности перезапускаем серверы приложения и СУБД.
1) Правильное решение - технологический журнал.
2) Приведена только одна из возможных причин, к тому же не самая частая. (проверьте в системном логе ошибок GDI). И даже в этом случае лучшее решение - обновлять драйвера видео. Наблюдается это только со старыми дровами встроенного видео Intel. А вообще правильное решение - технологический журнал.
3) Правильное решение - технологический журнал
4) Не нужно гадать - сразу идем в отладчик.
5) Верно.
6) Скорее всего, это какая-то проблема связи либо авторизации. В случае с файловой базой первичная рекомендация верная, а при клиент-серверной помогут всяческие пинги, телнеты, анализ системных логов и опять же - технологический журнал.
7) Не забыть написать служебку о саботаже рабочего процесса пользователем. В следующий раз пользователь будет помнить, что он делал. А так да, ЖР, минимальный ТЖ (excp, excpcntx) и логи.
8) Вообще-то в современных конфигурациях механизмы, требовательные к памяти, обычно выполняются на сервере. Может помочь оптимизация проблемных запросов. А в некоторых случаях поможет только сервер x64. Ну и о фрагментации адресного пространства памяти не забываем, спасет плановый перезапуск рабочих процессов.
9) Не факт. В УФ может быть виноват браузер, в ОФ - кривые привязки элементов формы.
10) Тоже не факт. Сбойная база к такой ошибке может приводить.
11) Версия платформы отозвана. Решение - только поднимать базу из бэкапа.
12) С чего вы вообще взяли, что конфликт блокировок - это ошибка? Это показатель некорректной работы СУБД или логики конфигурации, и dbcc checkdb Вас от этого не спасет.
"Конфликт блокировок" бывает двух видов:
а) таймаут - тут нужно выяснять, почему не удалось наложить блокировку за отведенное время.
б) дедлок - тут нужно анализировать порядок наложения блокировок, и далеко не всегда эту проблему удается решить "малой кровью".
Созинов; dutlovva; Serg O.; nnn123; roman8115; Ikarus; mms76; pallid; meuses; ojiojiowka; gigabyte_artur; quNas; anchovy; CratosX; warrior1985; mr.Kot; Bukaska; ВРедная; Yashazz; lesna; Redokov; JesteR; suggestive; TrinitronOTV; EmpireSer; + 25 – Ответить
Эта статья продолжает цикл «Первые шаги в разработке на 1С». Прочитав ее, вы узнаете:
- Куда обращаться в случае подозрения на ошибку платформы, 1C.EDT и PostgreSQL 1C?
- Что и как писать в вашем обращении?
- Где и как посмотреть существующие ошибки?
Применимость
В статье рассматривается порядок регистрации ошибок платформы «1С:Предприятие» 8, 1C.EDT и PostgreSQL 1C. Информация актуальна для текущих релизов указанных продуктов.
Как в 1С регистрировать ошибки
Сегодня речь пойдет об ошибках. Но не о тех, которые допускают программисты в коде, а об ошибках самой платформы, среды разработки 1C.EDT и отдельной сборки PostgreSQL 1C.
К сожалению, сталкиваясь с ошибками в указанных продуктах, большинство программистов не обращают на них внимания. Они вспоминают 1С недобрым словом, и с мыслями «да они уже в курсе, в следующей версии поправят» продолжают работать. Надеемся, после прочтения статьи таких программистов станет меньше.
В этой статье мы рассмотрим несколько реальных ошибок, примеры обращений в фирму 1С, а также то, как можно отслеживать исправление ошибки.
Примеры будут рассмотрены для мобильной платформы. Впрочем, порядок регистрации для настольной платформы практически не отличается.
Для регистрации ошибок существует три адреса:
Для отправки писем на этот адрес нужно иметь действующую подписку ИТС.
Скорость ответа через данный канал на порядок выше – на письмо, отправленное в будний день, в течение часа приходит ответ и регистрируется ошибка.
Для обращения по этому адресу нужно выполнить следующие действия:
Также отметим, что при регистрации ошибок через любой из этих трех каналов важно соблюдать принцип: «одна ошибка – одно обращение». Не следует в одном письме описывать сразу несколько ошибок, на такое обращение Вы получите отказ.
Кроме того, выше речь шла о платформе, но ровно то же самое справедливо и для 1С:EDT и PostgreSQL 1C. Обращения по указанным каналам регистрируются по тем же самым правилам.
Нам кажется, что будет уместно дать еще один небольшой совет по этой теме в ключе планирования перехода с одной версии платформы на другую.
Допустим, ваш продуктовый контур работает на платформе 8.3.14, а вы планируете в недалеком будущем поднять версию платформы до актуальной. На момент написания этой статьи финальная версия платформы 8.3.16, а версия для ознакомления (тестовая) 8.3.17. На какой версии тестировать переход? На финальной 8.3.16 или на ознакомительной 8.3.17?
Примеры обращений в тех. поддержку 1C
Рассмотрим несколько примеров обращений в тех. поддержку.
Пример 1. В управляемых формах есть возможность группировать элементы на разных страницах. На мобильной платформе это работает в точности, как и на настольной:
На скриншоте заголовки страниц размещены сверху. Однако если разместить их, например, слева, то начинаются проблемы.
Вот, как это выглядит на настольной платформе:
А так – на мобильной:
Думаю, ошибка очевидна.
Начнем с подготовки базы. Делается это для того, чтобы не вынуждать сотрудников 1С самих создавать базу и воспроизводить указанную ошибку. Ведь нужно учитывать, что Вы далеко не единственный разработчик, который к ним обращается.
Создаем пустую базу, создаем форму в Общих формах. На форме рисуем простейший пример – 2 страницы с одной кнопкой на каждой из них.
Запускаем базу на мобильном устройстве, делаем скриншоты. Выгружаем базу в dt.
Теперь перейдем к написанию письма. Вот пример моего обращения:
Тема: Мобильная платформа: неверное отображение вкладок
Текст письма:
Мобильная платформа: 8.3.5.52
В мобильной платформе не корректно отображаются страницы с вариантом отображения «Закладки слева». Воспроизводится на Samsung Galaxy S2 и S4.
Во вложении – пример базы, в которой возникает ошибка.
—
С уважением, Вадим Невзоров
Не забудьте в письме указать версию мобильной платформы. Также не лишним будет указать устройство, на котором воспроизводится ошибка.
Спустя полчаса получаем ответ:
Например, в предыдущих версиях мобильной платформы на моем телефоне Samsung Galaxy S4 была неприятная ошибка – при попытке сделать фото с помощью метода СредстВамультимедиа.СделатьФотоснимок(), устройство полностью уходило в перезагрузку.
Попробуем найти ошибку по строке «Galaxy S4».
Обратите внимание на ссылки внизу. Первые две предназначены для определения приоритетов – чем больше человек сообщит о важности ее исправления, тем быстрее (теоретически) она будет исправлена.
Ссылка «Включить подписку» нужна для удобного отслеживания ошибки.
Чтобы каждый раз не искать по словам, можно «подписаться» на ошибку, после чего она будет отображаться в разделе «Подписки».
Так этот раздел выглядит в нашем случае:
Видим, что ошибка с таким номером не найдена. Такое бывает, так как информация об ошибках появляется не сразу.
Но это просто неудачный пример. В любом случае, рано или поздно ошибка будет опубликована и исправлена.
Рассмотрим еще один пример обращения.
Делается это так:
Исходный код модуля:
Идем на сервис публикации ошибок, ищем нашу ошибку:
Теперь ошибка есть на сайте, и мы можем отслеживать ее статус. В дальнейшем, при выходе следующих версий мобильной платформы, мы сможем отследить, в какой из версий он была исправлена.
Возможно, после прочтения статьи у Вас возникнет вопрос – зачем это все? Ведь у фирмы 1С есть свой отдел тестировщиков, и рано или поздно ошибку выявят и исправят.
За день до написания этой статьи вышла новая версия мобильной платформы – и вот результат:
- Гарантированно ответят специалисты фирмы «1С»
- Совместно с вами подготовят всю нужную информацию для прояснения и диагностирования ситуации
- В случае признания ошибки направят ваше обращение разработчикам для исправления ошибки.
Но никакие ошибки не смогут помешать нам продолжать знакомство с возможностями платформы «1С:Предприятие 8», и в следующей статье мы вернемся к изучению управляемых форм. :)
PDF-версия статьи для участников группы ВКонтакте
Если Вы еще не вступили в группу – сделайте это сейчас и в блоке ниже (на этой странице) появятся ссылка на скачивание материалов.
Статья в PDF-формате
Если Вы уже участник группы – нужно просто повторно авторизоваться в ВКонтакте, чтобы скрипт Вас узнал. В случае проблем решение стандартное: очистить кеш браузера или подписаться через другой браузер.
Как диагностировать ошибки платформы «1С:Предприятие 8»
- Способы диагностики некорректной работы платформы «1С:Предприятие 8»
- Алгоритм действий при аварийном завершении 1С
- Настройку технологического журнала для анализа «падений» процессов кластера серверов
Не секрет, что платформа «1С: Предприятие 8», как и любое другое программное обеспечение, содержит ошибки. Некоторые из них являются настолько серьезными, что вызывают аварийное завершение процессов сервера приложений 1С.
Последствия бывают весьма серьезными, к примеру, простои учетной системы в больших организациях обходятся достаточно дорого. Причем понять природу возникновения такой ошибки бывает сложно, но все же возможно.
С чего начать?
Представьте, что именно сегодня у Вас «вылетает 1С», то есть происходит самопроизвольная выгрузка из памяти процессов сервера приложений 1С. К тому же у части пользователей наблюдается аварийное завершение сеанса.
В данной ситуации для начала необходимо настроить технологический журнал (далее – ТЖ).
Даже если Вы не наблюдаете проблем, рекомендуется настроить сбор логов. Для чего?
1. При возникновении проблем у Вас уже будут данные для анализа причин плохого поведения системы.
2. Вполне вероятно, что проблемы все-таки есть, но Вы о них ничего не знаете. К примеру, процессы сервера «падают» раз в 3-4 месяца, но пользователи не сообщают Вам об этом, предпочитая просто перезапуститься.
Файл настроек logcfg.xml технологического журнала должен выглядеть так:
Рассмотрим более подробно, что в нем содержится.
Первая и последняя строка открывают и закрывают xml-файл настроек.
Вторая строка включат запись дампа: при крахе одного из процессов наш дамп будет записан в указанный каталог и может помочь разработчикам платформы найти причину возникновения ошибки. При этом необходимо понимать, что дамп создается только при падении одного из процессов.
Таким образом, наличие файлов в указанном каталоге c:\v82\dumps говорит о наличии проблем со стабильностью работы.
Третья строка включает запись логов ТЖ: логи будут храниться в указанном каталоге в течении 48 часов. Событие EXCP будет зафиксировано в случае возникновения исключения, это нужно, чтобы узнать, какой код выполнялся в момент ошибки.
События PROC и ADMIN вполне могут пригодиться разработчикам платформы для анализа проблем.
Вы должны учитывать, что сами логи могут занимать достаточно много места на диске. Хотя, в приведенной настройке ТЖ логи не должны сильно расти – благодаря ограничению по времени хранения логов.
Что делать, если появится дамп?
Рассмотрим пример: в каталоге dumps появился файл: rphost_8.2.18.102_7c938235_20131025162441_3348.mdmp
Его имя построено по шаблону: ИмяПроцесса_Релиз_АдресОшибки_ГГГГММДДЧЧММСС_PIDПроцесса.mdmp
В котором ГГГГММДДЧЧММСС – это дата и время падения.
Каждая ошибка, из-за которой происходит падение, имеет свой уникальный АдресОшибки.
Причем если у двух дампов одинаковый процесс, релиз и адрес ошибки, то причина падения одна и та же. Исходя из названия файла дампа мы определяем время падения системы. Осталось узнать, что происходило в системе в указанное время, и тут нам пригодятся логи ТЖ.
ТЖ записывается для каждого процесса в свой отдельный каталог, имя которого задается по шаблону ИмяПроцесса_PIDПроцесса.
Имя файла лога задается следующим образом: ГГММДДЧЧ.log
Для определения причины падения системы переходим в каталог с логами аварийно завершившегося процесса. Это можно сделать по имени файла, в котором присутствуют имя и PID-процесса. В нашем случае это каталог rphost_3348.
Далее в искомом каталоге нужно взять тот лог, в который была записана информация в момент падения системы: определяем время падения из имени дампа и находим необходимый файл лога. В нашем случае это файл 13102516.log.
Затем открываем файл лога и находим строку rphost_8.2.18.102_7c938235_20131025162441_3348.
В моем логе отражено следующее:
0,EXCP,3,process=rphost,p:processName=Test,t:clientID=2,t:applicationName=1CV8C,t:computerName=AND-SERVER,t:connectID=196,SessionID=4,AppID=1CV8C,OSException=rphost_8.2.18.102_7c938235_20131025162441_3348,Context=’Форма.Вызов : ВнешняяОбработка.ВнешняяОбработка1.Форма.Форма.Модуль.Крах
Форма.Форма.Форма : 5 : Крах();
Форма.Форма.Форма : 5 : Крах();
Форма.Форма.Форма : 5 : Крах();
Форма.Форма.Форма : 5 : Крах();
……
Рассмотрим информацию данной строки:
EXCP – данное событие означает, что в системе возникло какое-либо исключение. Через запятую перечислены свойства этого события, приведем основные из них:
- Process – имя процесса, где возникло исключение
- processName – имя информационной базы
- applicationName – клиент с которого пришел вызов, приведший к падению, в данном случае это тонкий клиент
- computerName – имя компьютера, на котором был запущен клиент
- Context – код, который выполнялся в момент падения, это самое важное для нас событие
Иногда с помощью контекста удается установить причину возникновения ошибки. В нашем случае причина падения достаточно очевидна – бесконечная рекурсия.
Рассмотрим другой пример
В версии 8.2.13 платформы «1С:Предприятие» присутствует очень популярная ошибка при работе с объектом «СистемнаяИнформация». При этом контекст ТЖ выглядит следующим образом:
Context=’Инфо = Новый СистемнаяИнформация;
Текст = «Версия 1С » + Инфо.ВерсияПриложения;’
Заметим, что ошибки, проявляющиеся в при одновременном обращении к одному объекту нескольких пользователей, встречаются достаточно часто, и если образовалось несколько дампов, и в контексте указан один и тот же объект (в данном примере «СистемнаяИнформация»), то, скорее всего, это как раз тот случай.
Проблема решается тривиально: нужно закомментировать обращение к объекту. В нашем случае это не проблема, так как без системной информации можно обойтись.
Что делать, если понять причину падения по логам самостоятельно не удается?
Прежде всего, Вы можете обратиться в техническую поддержку фирмы «1С». Но это не самый быстрый способ.
Это лучше, чем обращение через техническую поддержку или решение проблемы методом «научного тыка». На партнерском форуме Вам, возможно, ответят не только специалисты, которые, скорее всего, уже сталкивались с подобной проблемой, но и сами разработчики платформы. При обращении на форум обязательно указывайте следующую информацию:
- Версию и разрядность серверной ОС
- Разрядность сервера 1С
- Количество серверов в кластере
- Количество запущенных рабочих процессов на сервере 1С
- Версию используемой СУБД
- Ссылки на архив с дампом и логами для скачивания
Следует отметить, что этот вариант доступен только сотрудникам фирм-партнеров компании «1С».
PDF-версия статьи для участников группы ВКонтакте
Если Вы еще не вступили в группу – сделайте это сейчас и в блоке ниже (на этой странице) появятся ссылка на скачивание материалов.
Статья в PDF-формате
Если Вы уже участник группы – нужно просто повторно авторизоваться в ВКонтакте, чтобы скрипт Вас узнал. В случае проблем решение стандартное: очистить кеш браузера или подписаться через другой браузер.
35 учебных часов, подготовка к 1С:Эксперт, правильная настройка серверной части, оптимизация кода, мониторинг загруженности оборудования и прочие взрослые вещи.
Для Windows зайдите в каталог c:\program files\1c\1cv82\srvinfo, если Linux - то файлы лежат в домашнем каталоге пользователя от имени которого запускается сервис: usr1cv8/home/.1cv8/1C/1cv8 .
Запустите службу «Агент сервера 1С:Предприятие».
Через Администрирование серверов 1С Предприятия по новой создать кластер 1С и добавить информационные базы
3. Переименовали сервер на котором служба агента 1С
После переименования сервера Windows Server 2008 с установленным 1С:Предприятие 8.2, перестала работать служба «Агент сервера 1С:Предприятие 8.2». Она запускается, работает несколько секунд и останавливается. Если подключаться к серверу 1С:Предприятие 8.2 через консоль серверов, то возникает ошибка:
Ошибка соединения с сервером 1С:Предприятие 8.2 server_addr=tcp://SERVER:1540 descr=Ошибка сетевого доступа к серверу (Windows Sockets - 10061(0x0000274D). Подключение не установлено, т.к. конечный компьютер отверг запрос на соединение.) line=590 file=.\Src\DataExchangeTcpClientItmpl.cpp
При подключении к базе на этом сервере имеем следующую ошибку:
Не запущен ни один рабочий процесс. Соединение с базой невозможно.
Данная проблема связана с тем, что настройки кластера серверов 1С:Предприятие хранятся в файлах в каталоге srvinfo (путь к нему указывает параметр -d в свойствах службы «Агент сервера 1С:Предприятие»). Поэтому после изменения имени компьютера надо выполнить дополнительно следующие действия:
Для Windows зайдите в каталог c:\program files\1c\1cv82\srvinfo, если Linux - то файлы лежат в домашнем каталоге пользователя от имени которого запускается сервис: usr1cv8/home/.1cv8/1C/1cv8 .
Отредактируйте в любом текстовом редакторе два файла: srvinfo\srvribrg.lst и srvinfo\reg_1541\1CV8Reg.lst. Замените в этих файлах старое имя сервера на новое.
Запустите службу «Агент сервера 1С:Предприятие».
После выполнения указанных действий - Все будет
если вдруг нет - повторите пункт 2 !
Похожие FAQ
10060 (0x0000274C): Попытка установить соединение была безуспешной 19
Установили новый терминальный сервер, на нем подняли 1С, терминальные пользователе неописуемо довольны, все просто летает :) И вот же надо было такому случиться, главному бухгалтеру не понравилось работать через терминал, а еще у нее свой ноутбук и 1C: Enterprise Development Tools 50
И вот случилось долгожданное: Вышел 1C: Enterprise Development Tools - это среда для разработки конфигурации в IDE Eclipse. С сайта 1С: « 1C:Enterprise Development Tools » – это инструмент нового поколения для разработчиков бизнес-приложений систем Cодержимое указанного ниже веб-сайта в этом приложении блокируется. Aboutsecurity_1cv8c.exe 1
Проблема: После обновления на 1С:Бухгалтерию предприятия 3-й версии, при нажатии на закладку командного интерфейса 1С:предприятие, выскакивает ошибка: Aboutsecurity_1cv8c.exe или Aboutsecurity_1cv8.exe «Содержимое указанного ниже веб-узла в э PostgreSQL: установка, настройка, обслуживание 11
PostgreSQL напрямую "из коробки" применяться для использования с 1С Предприятем не может. Необходима именно адаптированная версия от 1С, превращающая PostgreSQL в блокировочник, причем нужно понимать, что блокировки будут накладываться на всю таблиц Автоматическая архивация баз 1С с использованием Cobian Backup и VBS скриптов 8
Клиент попросил настроить автоматическую архивацию баз 1С раз в три дня и выгрузку архивов на Dropbox и на FTP Сервер. Кроме 1С нужно архивировать папку с рабочими документами. Хочет - так хочет, делаем: Первым делом настроим автоматическую архивац Посмотреть все результаты поиска похожих
Еще в этой же категории
Читайте также: