Зарегистрированные ошибки 1с где посмотреть

Обновлено: 06.07.2024

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

К сожалению, сталкиваясь с ошибками платформы, большинство людей попросту не обращают на них внимания. Они вспоминают об 1С недобрым словом, и с мыслями “та они уже в курсе, в следующей версии поправят” продолжат работать. Надеюсь, после прочтения статьи таких программистов станет меньше. :)

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

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

1. Указать версию платформы.

2. Кратко описать сценарий воспроизведения ошибки, и на каких устройствах она воспроизводится.

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

Рассмотрим несколько примеров обращений в тех. поддержку.

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


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


А так - на мобильной:


Думаю, ошибка очевидна.

Начнем с подготовки базы. Может возникнуть вопрос - зачем, неужели недостаточно скриншотов? Давайте не забывать о том, что в 1С тоже работают люди. И учитывая то, что вы далеко не единственный разработчик, который к ним обращается, будет не очень культурно заставлять сотрудников самим создавать базу и воспроизводить вашу ошибку.

Создаем пустую базу, создаем форму в Общих формах. На форме рисуем простейший пример - 2 страницы с одной кнопкой на каждой из них.


Запускаем базу на мобильном устройстве, делаем скриншоты. Выгружаем базу в dt.

Теперь перейдем к написанию письма. Вот пример моего обращения:

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

Спустя полчаса получаем ответ:





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

Ссылка “Включить подписку” нужна для удобного отслеживания ошибки. Чтобы каждый раз не искать по словам, можно “подписаться” на ошибку, после чего она будет отображаться в разделе “Подписки”. Так этот раздел выглядит у меня:



Но это просто неудачный пример. В любом случае, рано или поздно ошибка будет опубликована и исправлена.

Рассмотрим еще один пример обращения.


Исходный код модуля:


Идем на сервис публикации ошибок, ищем нашу ошибку:


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


Поменьше вам ошибок!

Вадим Невзоров, Одесса

Специальные предложения

Electronic Software Distribution

Интеграция 1С с системой Меркурий

Алкогольная декларация

Готовые переносы данных

54-ФЗ

Управление проектом на Инфостарте

Траектория обучения 1С-разработчика

Вторая моя попытка была отписаться по ошибкам в тестовой платформы. (Не работали критерии отбора в обычных формах журнала на 8.3.5.924). На что через 8 дней я получил ответ

Если проблема проявляется только в тестовой версии 8.3.5, то обращаться нужно на testplatform

P,S, А ошибку с отборами они к финальному релизу 8.3.5 исправили

(1) Aleksey_3, вот видите - даже демо базы могут отличаться. Поэтому старайтесь сразу отправлять им копию базы, чтобы у них не было другого выхода, кроме как признать ошибку. :)
Спасибо за замечание, статью уточнил. Прочитал. На первый взгляд очень интересно. Вот для платформы было бы лучше какая-то автоматическая регистрация ошибок. Разработчик на платформе не будет ждать и надеяться что исправят.
Другое дело нужен какой-то простейший механизм чтоб регистрировалась информация при ошибке в конфигурации при работе пользователя. Как было бы хорошо (90% проблем можно сразу диагностировать): свернулось окно у пользователя, не туда нажал, не там запустил. Кто-то тут уже публиковал подобный механизм отсылки скриншотов экрана по почте с доп. информацией об ошибке.
Как бы на новой платформе 8.3.5 (с проверкой в коде версии, конечно) реализовать даже если выпустил простую обработку или отчет подобный функционал? Или это уже сильно осложнит первостепенную задачу? Как то очень давно еще на версии 8.0 имел дело с их системой поддержки. Все, мне хватило. Их же баги исправляешь, как бесплатный бета-тестер, так все нервы выматают, пока признают, что ошибка есть. Rustig; www2000; alest; WildFire; Prog1CZUP31; Дмитрий74Чел; Yashazz; j_rubin; nihfalck; Йожкин Кот; + 10 – Ответить (3) bulpi, для этого и написана эта статья - чтобы выматывание нервов свести к минимуму. Самый полезный совет - это отправлять копию базы с ошибкой. Увеличивает скорость ответа и вероятность регистрации ошибки в разы.

Надо сразу приготовиться к отпискам и нервотрепке при написании письма на v8. Там у первой линии тех.поддержки задача отсеять максимум писем, чтобы даже не беспокоить разработчиков. Им не важна значимость проблемы, они не разработчики и даже не пользователи, они вообще про 1С слышали только то, что они в нем работают. Им до лампочки, партнер Вы или конечный пользователь. Их задача - Вас не услышать.
Например указания кода партнера им не достаточно, чтобы прочитать Ваше письмо, хотя партнеры, на мой взгляд, должны быть в приоритете. Узнать номер подписки партнера они и сами могут и её активность, им это - два щелчка мышкой. Они же все равно потом проверяют активность подписки, для них это повод отшить вопрошающего.

Реальный пример:
В типовом отчете ЗУП 3.0 есть список для отбора по сотрудникам. Начиная с определенного релиза появилась след. фигня (до обновления работало):
Если туда добавлять сотрудника добавляя строчки командой из контекстного меню - падает с ошибкой и вообще закрывается 1С. По кнопке подбор - все ОК, но по кнопке "подбор" открывается форма списка, которая лагает, хочется использовать ввод по строке.
Ответ из 1С:
"Это не ошибка, не надо пользоваться контекстным меню, пользуйтесь кнопкой "подбор"" - ****** ***** (много мата) как так? Это же первое правило - любые действия пользователя не должны приводить к критическим ошибкам. Ну отключите вы там контекстное меню, раз Вы так считаете.

Политика 1С по минимуму признавать свои ошибки.

Выход новых версий и редакций = сильный поток ошибок и большая нагрузка на разработчиков, а сейчас 1С не перестает нас удивлять сырыми новинками. У них и так полно работы. Такое отношение вызвано нехваткой ресурсов у 1С, но ***** ***** (очень много мата) как так, они заставили всех подписаться на ИТС и гребут помимо продаж коробок еще и абон плату со всей страны. 1С само виновато, что выпускает новинку за новинкой, надо было предвидеть такой поток вопросов и не оставлять партнеров у разбитого корыта.

AllexSoft; www2000; WildFire; Razlagutt; logdog; t278; Дмитрий74Чел; + 7 – Ответить

(9) monkbest, не соглашусь. Вы сам, как разработчик, наверняка сталкивались с подобными ситуациями (когда Вас атакуют, как поддержку).
У меня очень большой опыт переписки со всеми инстанциям 1С, очень важную роль играет детальность описания проблемы и ее воспроизведение (вплоть до видео на приложеной базе).

Причем, это справедливо как для платформы, так и для конфигураций. Во всяком случае, порядка 95% обращений были приняты, 5% - это либо я проморгал (не ошибка), либо признано проектным поведением (с записью об неудобстве).

Но, конечно, времени на сие может уйти достаточно много. Что делать, таковы риски.

очень важную роль играет детальность описания проблемы и ее воспроизведение
Судя по тому, что и как monkbest пишет, он этого не понимает и, возможно, не поймёт. (13) sergei2k, не поймешь ты, а я детально излагаю свои проблемы и с картинками. (11) BabySG, не соглашайтесь, дело Ваше. Я рассказал про свой опыт, Вы про свой. но Ваши слова как-то не конкретны.
Через сколько времени Вам отвечал в первый раз специалист, не бот, который говорил, что Ваше письмо принято, а специалист? Хотя бы в среднем? Сколько раз из скольки он задавал уточняющие вопросы? Через сколько времени приходила наконец помощь?

(14) monkbest, скорость ответа зависит от адреса (их минимум три, напоминаю, а еще есть другие адреса, которые совсем оперативные :)) ).
На КОРП поддержке ответ очень быстрый, затем тестподдержка, потом общая. Собственно, как и обещали :)
Пользуюсь КОРП поддержкой, т.к. "оплачена" :)
Либо находился способ обхода (кстати, весьма критическая проблема в кластере 1С), либо в приемлимые сроки выпускали обновление. Пока (тьфу-тьфу-тьфу) с критичекими проблемами, которые невозможно обойти, не сталкивались.

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

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

Узнать номер подписки партнера они и сами могут и её активность, им это - два щелчка мышкой. "Это не ошибка, не надо пользоваться контекстным меню, пользуйтесь кнопкой "подбор"
А есть точное описание письма в техподдержку и их ответ? Не похоже Ваше описание ситуации на реальную.

(12) sergei2k, вот кусок письма. Раз для Вас тех.поддержка 1С - святые, никогда больше не пользуйтесь контекстным меню)))

Необходимо использовать кнопку "Подбор" а не контекстное меню для добавление строк в список элементов.

Как диагностировать ошибки платформы «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-формате

Станьте экспертом по оптимизации 1С, изучив наш курс
«Ускорение и оптимизация систем на 1С:Предприятие 8.3 (2016). Подготовка на 1С:Эксперт по технологическим вопросам»

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

Комментарии / обсуждение (3):

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

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

Данная статья - текстовый вариант свежего видеоролика по теме.

Содержание

Введение ^

На чём мы это будем делать? Естественно, на 1С! И начнём прямо сейчас.

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


Теперь нам нужно добавить новый шаблон URL. Назовём его ПолучитьИнформацию. И в шаблоне укажем "/getInfo". Добавим в шаблон новый метод POST-метод с таким же названием и сразу создадим для него обработчик.



Публикация сервиса ^

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

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


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


Мы сейчас находимся в отладке на методе "ПолучитьИнформацию" ("getInfo"). Давайте посмотрим, что нам пришло в запросе. Для этого выполним метод Запрос.ПолучитьТелоКакСтроку().


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

Разработка метода getInfo() ^

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

Теперь создадим структуру ДанныеОтвета. В неё будем помещать передаваемые в качестве ответа данные. Комментарии к свойствам я буду брать из ИТС.

needSendReport - Булево.

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

UserMessage - Строка

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

"Чем быстрее разработчик узнает об ошибке, тем скорее она будет исправлена =)"

Так же есть ещё свойство dumpType - это тип дампа, который необходимо приложить к отчету об ошибке. Его мы сейчас рассматривать не будем.

Метод getInfo готов.

Обновим базу и снова сымитируем ошибку.

Мы в отладке. Посмотрим, как выглядят данные, которые мы даём в качестве ответа.


И её строковый вариант в формате JSON.


Смотрим метод pushReport() ^

В окне об ошибке мы видим нашу мотивирующую строку. Это значит, что метод getInfo сработал корректно и 1С готова к отправке отчета об ошибке.




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


Это и есть необходимый нам файл. И, фактически, наша цель достигнута - мы создали сервис, который получает отчёты об ошибках пользователей. Но пока что никак их не обрабатываем.

Разработка метода pushReport() ^

Для начала добавим регистр сведений. Каждый отчёт об ошибке будет сохранён в отдельную запись регистра. Добавим измерение. Значение в нём должно быть максимально уникальным, ведь запросы могут происходить часто. Поэтому сделаем его типом "УникальныйИдентификатор". Можно, конечно, сделать строковый тип с длиной достаточной для идентификатора, но мы же делаем просто прототип и сейчас не будем заморачиваться в таких тонкостях.


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


Теперь создадим методы для работы с регистром. Перейдём в его модуль менеджера. Вставим для красоты "стандартный" БСПшный текст с директивами и областями.

А так же процедуру по удалению записи регистра. Она нам понадобится позднее

Теперь обновим базу и зайдём в неё. У нас появился регистр, записей в нём пока нет.



Хорошо, перейдём в сервис регистрации. Вот наша запись регистра.


Посмотрим как он будет заполняться в отладке. Для этого поставим точку останова и снова вызовем ошибку в демо-базе.

В ресурсе "Содержимое" находится ХранилищеЗначения. Попробуем извлечь его методом Получить(). Видно, что данные там есть.


Отпускаем отладку. Запись в регистр добавилась.



Если сейчас нажать на неё повторно, то она снова отправит тот же самый отчёт об ошибке. И мы видим, что в регистре уже три записи.


Постобработка данных ^

Теперь у нас есть быстрый сервис, который просто пишет входящие данные в регистр. И нам нужно их как-то обрабатывать.

В нашем прототипе сервиса регистрации сделаем новый вид документов "ОтчетыОбОшибках". В них будут превращаться двоичные данные из нашего буферного регистра. В качестве прототипа нам будет достаточно получать содержимое основного текстового файла из архива. Выделим для него реквизит ТекстОтчета с неограниченной строкой.


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


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


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

Логика выполнения такая:

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

Сама обработка записи будет заключаться в следующем. Сначала мы извлечём двоичные данные во временный файл. Затем откроем чтение Zip-файла и извлечём его содержимое в специально подготовленный временный каталог. Как только удалось это сделать, мы откроем в текстовом документе файл "report.json". Этот файл содержит основные данные отчета об ошибке. Содержимое этого файла и есть наш отчёт.

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

Если запись регистра успешно была обработана, то удалим её тоже. Она нам больше не нужна.

Под капотом код с прототипа:

У нас создались три документа. В каждом хранится содержимое файла report.json. И теперь такую обработку можно поставить на регламентное выполнение и она будет превращать накопленные в регистре отчёты об ошибках в документы.


Выводы ^

Мы разработали простой сервис регистрации ошибок и теперь понимаем, как работать с новым механизмом от 1С.

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

А далее мы рассмотрим более подробно извлечение содержимого из архива с отчётом об ошибке.

Понравилась статья? ^

Не будьте равнодушными! Поставьте лайк плюс, оставьте комментарий.

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

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

Где находится журнал регистрации ошибок в 1С?

Проверять работу коллег можно разными методами. Например, для этого используется меню «Администрирование». Именно оно содержит пункт «Обслуживание», перейдя в которое пользователь обнаружит «Журнал регистрации»:

Журнал регистрации 1С

Также можно зайти из общего меню, воспользовавшись опцией «Все функции»:

Журнал регистрации 1С

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



Но намного разумнее использовать функцию «Избранное». Что ускорит нахождение (открытие) журнала. Поэтому данную опцию рекомендуется использовать при частых проверках действий сотрудников.



Кстати, файл с записанными данными может располагаться в каталоге «1Cv8Log» или отдельной папке на сервере. Это зависит оттого, какой тип баз используется. Первое обычно характерно для файловых систем. Второе – для клиент-серверных баз.

Как открыть журнал регистраций в 1С?

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



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

• Список событий;
• Перечень пользователей;
• Приложения;
• Компьютеры;
• Завершенные сеансы.

А вот в разделе «Данные» обычно выставляется список документов, которые нужно отслеживать. В «Транзакциях» можно просматривать записанные операции. Пункт «Прочие» позволяет искать информацию по серверам.



Как выключить журнал регистраций?

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

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



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



Как выгрузить журнал регистраций

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



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

Как восстановить журнал регистраций

Если оборудование, программное обеспечение или сам журнал работает некорректно, приходится выполнять восстановление данных. В большинстве случае помогает простой перенос содержимого папки 1Cv8Log в другой каталог ИБ. Иначе нужно обращаться к логам и искать причину возникших проблем.

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

Как сократить журнал регистраций?

Даже располагая мощным сервером и запасом места на диске, необходимо оптимизировать объем журнала. Иначе уже через пару лет он разрастется до внушительных размеров. Но делать это нужно аккуратно и через конфигуратор.

Для начала следует отыскать опцию «Настройка журнала регистрации», которая расположена в меню «Администрирование»:



Затем необходимо выполнить приведенную ниже инструкцию:

• Удаляем данные, которые устарели и не нужны;
• Устанавливаем период разделения журнала. Оптимально выставлять значение «День». Это позволит перемещать или архивировать неактуальные сведения без лишних усилий.



Как выполнить очистку журнала регистраций?

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

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

Как добавить программно запись в журнал?

Иногда требуется записать в текущий журнал не только действия сотрудников, но и иные значимые события. Сделать это можно при помощи специальных команд, встроенных в функционал 1С. Для чего отлично подойдет опция «ЗаписьЖурналаРегистрации()» с набором параметров:

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

Как вернуть старый формат журнала регистраций?

Необходимость возврата к старой версии журнала может появиться, если сервер слабый. Ведь пользователи со временем обязательно начнут замечать, что обновленная программа 1С работает медленнее. А все из-за наличия файла lgd в каталоге 1Cv8Log, но огорчаться не стоит.

Вернуть старый формат не проблема. Достаточно выполнить следующие действия:

1. Отыскать, открыть 1Cv8Log;
2. Удалить скопившиеся файлы;
3. Создать файл типа 1Cv8.lgf.

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

Как перенести журнал регистраций в отдельную базу?

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

Конечно, перенос 1Cv9Log тоже имеет нюансы. Например, при файловом варианте достаточно скопировать вышеуказанный объект и добавить его в соответствующую директорию на новом сервере. Это самый простой способ.

В случае если используется клиент-серверная база, придется немного повозиться. Сначала необходимо отыскать на сервере 1Cv8Reg, затем открыть этот файл. В нем следует вписать правильный идентификатор ИБ (с указанием ID), сохранить изменения. Только после выполнения данных действий папку 1Cv8Log можно перетаскивать в новую директорию.

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

Читайте также: