1с режимотладки параметр запуска

Обновлено: 04.07.2024

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

1. ВойтиВОбластьДанных. При работе в модели сервиса позволяет выполнить вход в указанную область данных информационной базы. Например, «ВойтиВОбластьДанных; 3».

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

3. ЗапуститьОбновлениеИнформационнойБазы.
Принудительно запускает обновление вспомогательных данных и выполняет обработчики обновления, имеющие версию «*» (звездочные). Требуется, например, при изменении в метаданных конфигурации без увеличения номера версии.

4. ЧислоПотоковОбновления.

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

5. ОтключитьЛогикуНачалаРаботыСистемы.

Только для автоматического тестирования (требуется право Администрирование).

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

6. РежимОтладки.
Упрощает отладку кода. В частности:

● все длительные операции выполняются сразу, без запуска фонового задания;

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

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

8. ЗавершитьРаботуПользователей.
Запрещает подключение к информационной базе пользователей. Завершает уже запущенные сеанса. После завершения всех сеансов предлагает завершить сеанс, запущенный с этим ключом. Для клиент-серверной базы, если установлены параметры администрирования кластера, то их необходимо передать, указав через точку с запятой имя администратора кластера и пароль администратора кластера. Например, для администратора кластера Администратор и пароля 1 строка запуска будет ЗавершитьРаботуПользователей;Администратор;1.

Отладка - это основной инструмент которым должен овладеть начинающий программист. Без отладки написание любой более менее сложной функции и\или объекта превратиться в настоящую муку. Сам я выбираю такой способ, хорошо себя зарекомендовавший себя: пишу блок кода в 50-100 строк не останавливаясь и не проверяя отладчиком. Затем идет первый запуск, обязательно предварительно ставлю точку останова на первой написанной строке. Затем однократно полностью прохожу весь код построчно, останавливаясь на каждой переменной и сверяю ее "тип значения", а также ее "значение" с тем что было спланировано перед доработкой.

Крайние важные особенности отладки в 1С

  • Если необходимо быстро перейти к строке, на которой платформа "вываливается" с ошибкой, то необходимо установить флаг "Останавливаться по ошибке":

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

  1. В конфигураторе нажать "Сервис - Параметры" и задать имя пользователя на вкладке "Запуск 1С:Предприятия":

Отладка в клиент-серверном режиме

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

Как включить отладку на сервере. Все очень просто необходимо изменить параметры запуска службы 1С-сервера:

  1. Открываем реестр (на ПК где крутится сервер 1С:предприятия) - пуск - regedit
  2. После правки реестра перезапускаем службу через панель управления - .. службы.
  3. Готово! Теперь отладчик будет заходить внутрь серверных модулей\процедур.

У пользователя проблема, как к нему подключиться и отладить кусок кода

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

  1. В запущенной программе пользователя поставить флаг разрешающий отладку в этом сеансе. В меню - сервис - параметры - отладка в текущем сеансе.

Подключение к web-сервису, подключение к фоновому заданию

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


Форма подключения и настройки отладки в Конфигураторе 1С

Форма подключения и настройки отладки в Конфигураторе 1С

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

Итак, при настройке отладки в конфигураторе 1С надо учесть два момента.

Первое, если вы запустили Конфигуратор не на сервере 1С, то для поиска предметов отладки надо указать имя или IP адрес сервера 1С (если хотим отлаживать не серверный, а клиентский сеанс другого пользователя, то соответственно клиентского компьютера). Для этого ставим флажок «Искать предметы отладки на удалённом компьютере» и рядом в поле вводим имя компьютера, например – srv1c.

Настройка поиска отладки на удаленном компьютере в Конфигураторе 1С

Второе. Бывают случаи, когда сервер 1С (тестовый к примеру) запущен не на типовых портах по умолчанию из диапазона 1560-1591, а, например, на портах 1660-1691. Тогда надо по кнопке «Настройка» в форме настройки отладчика указать тот диапазон портов для поиска предметов отладки который был задан в строке запуска службы сервера 1С. В моем случае ставим диапазон 1560-1900, это потому что у меня есть еще запущены тестовые сервера 1С на диапазонах портов 1760-1791 и 1860-1891. После этого нажимаем в правом верхнем углу значок «Обновить» и видим появившиеся предметы отладки. Видно что у серверного сеанса порт указан 1660, это как раз тот сеанс который подключен к тестовому серверу 1С, запущенному на диапазоне портов 1660-1691.

Настройка портов для поиска предметов отладки в Конфигураторе 1С

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

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

Точка останова при отладке в строке кода 1С

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

Доступ к настройкам параметров в клиентском приложении 1С

Настройка параметров отладки в клиентском приложении 1С

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


Теперь нам не надо вручную искать предмет отладки и нажимать кнопку «Подключить». Система сама подключиться к запущенному сеансу и сработает точка останова поставленная на строке кода.



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

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

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

Для того чтобы изменить строку запуска службы сервера 1С придётся зайти в реестр Windows. Для редактирования реестра используется программа regedit. Проще всего найти и запустить ее можно через быстрый доступ по комбинации клавиш Win+R.

Консоль запуска программ в Windows

В поле вводим regedit, нажимаем ОК, на вопрос системы безопасности отвечаем ДА и запускаем программу. Открываем ветку HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\ services и там ищем что то похожее на 1C:Enterprise 8.3 Server Agent. Имя может отличаться в зависимости от версии установленного сервера 1С.

Включаем отладку сервера 1С 8.3 в реестре Windows

Настройка службы сервера 1С 8.3 в реестре Windows

Заходим в это раздел и находим параметр ImagePath. Открываем его на редактирование двойным кликом мыши. В поле «Значение» в конце добавляем ключ -debug и сохраняем.

Ключ -debug в строке запуска сервера 1С в реестре

Ключ -debug в строке запуска службы сервера 1С

После проверки перезапускаем службу. После этого можно проверять работу отладчика в конфигураторе 1С. Здесь можно почитать как настроить отладку в конфигураторе 1С. Если после включения отладки на сервере 1С, у вас все равно не получилось подключиться к серверным сеансам, смотрим возможные причины здесь.

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