Имя: Пароль:
1C
1С v8
Отладка COM
0 sergdi
 
26.03.12
09:31
Если 1С вызвана как com
Есть ли возможность задействовать отладчик ? Какие есть средства для отладки.
1 Новиков
 
26.03.12
09:33
извращенец, может для начала отладить все внутри эко-системы, а потом уже стучаться туда снаружи?
2 sergdi
 
26.03.12
09:37
(1) так может снаружи неверно стучишься. Внутри работает
3 Галахад
 
гуру
26.03.12
09:49
Ну простые-то вещи можно посмотреть.
Наименование, номер, дату, и т.д.
4 vmv
 
26.03.12
09:51
(26) в серверных вызовах - любые, в клиентских - никаких
5 sergdi
 
26.03.12
09:52
А как подключиться отладчиком. 1C вызывается как com под определенным пользователем
6 vmv
 
26.03.12
09:53
(5) в момент "работы" ком открыть отладчик в конфе и подключить сеанс этого юзера в отладку - тока родился?
7 Jolly Roger
 
26.03.12
09:56
(0) Кури Отладка/Подключение/Автоматическое подключение
8 sergdi
 
26.03.12
10:25
(7) (6) пользователь com не появляется в списке пользователей
9 БибиГон
 
26.03.12
10:26
(8) значит нет подключения
10 Человечкин
 
26.03.12
10:28
(0) Можно, но некоторые типы просто так не доступны в отладчике, к примеру перечисления.
11 sergdi
 
26.03.12
10:29
(9) подключение есть - создаются документы
12 sergdi
 
26.03.12
10:32
1C работает в режиме сервера предприятия
13 sergdi
 
26.03.12
11:49
(6) Я раньше не использовал такой вариант отлаживался под собой. Пробывал на локальной базе в варианте файл-сервер. Все равно нет в списке пользователей для подключения. В параметрах базы стоят флажки  Устанавливать режим подключения отладки и начинать отладку при запуске.
Подскажите в чем может быть причина.
14 vudo
 
26.03.12
12:04
Запуск сервера с ключом -debug

Или правим в реестре HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.2 Server Agent
и обращаем внимание на ключ

ImagePath:
Должен быть с -debug

Либо в Службах изменить строку запуска (опять таки добавить -debug)
15 sergdi
 
26.03.12
12:13
(14) Я для начала взял базу в локальном варианте. Администратором зашел в конфигуратор.  В окне подключения для отладки нет в списке еще одного запущенного сеанса. Там нет ни одного сеанса.
16 Sasha_H
 
26.03.12
12:15
(14) не забываем, что при старте сервера 1С с режимом отладки серверных процедур есть замедление в работе, так что после отладки необходимо установить обратно.
17 vudo
 
26.03.12
12:20
(16) +100

(15)Еще раз:
Отладка->Подключение Кноспка "Автоматическое подключение..." Стоит галочка напротив "Клиентские и внешние соединения"?
18 sergdi
 
26.03.12
12:30
(17) В локальном еще ставится голочка у пользователя Разрешить отладку. Тогда он появляется в списке. В серверном стоит галочка Клиентские и Внешние соединения. Но список пользователей пустой. Наверно нужно послк установки режима отладки ку сервера его перезапускать
19 vudo
 
26.03.12
12:32
(18)"Наверно нужно послк установки режима отладки ку сервера его перезапускать"
Ты сам это предложил ;) +100
20 sergdi
 
26.03.12
12:50
(19) Но возращаясь к com соединению Если будет локальный вариант а не серверный. То где выполнить настройку, чтобы com процесс появился списке отладки ? Где у com соединения галочка <Разрешить отладку>
21 n koretsky
 
26.03.12
13:13
(0)
Для указания внешнему соединению или web-сервису необходимости запуска в отладочном режиме используют настройки, размещенные в xml-файлах (comcntrcfg.xml и webservicecfg.xml соответственно), которые должны располагаться в подкаталоге CONF каталога исполняемого файла 1С:Предприятия 8.2 (BIN). Если файл не найден, приложение открывается в обычном режиме.

Пример файла comcntrcfg.xml:

<config xmlns="http://v8.1c.ru/v8/comcntrcfg">


   <debugconfig debug="true"

   debuggerURL="tcp://localhost:1560"/>


</config>

Атрибут debug="true" указывает необходимость запуска в отладочном режиме

Атрибут debuggerURL="tcp://localhost:1560" указывает адрес отладчика, к которому нужно автоматически подключиться для отладки, где «localhost» указывает на поиск на на локальном компьютере, «1560» – номер IP-порта. Если порт не указан, то будут проверяться все порты в диапазоне портов 1560 – 1591; указание "tcp://" эквивалентно "tcp://localhost". Если адрес отладчика не указан, в процессе исполнения кода на встроенном языке отладка производиться не будет.
22 sergdi
 
26.03.12
14:11
Большое всем спасибо за помощь
23 sergdi
 
26.03.12
18:19
Еще вопрос возник
подключение по Com вызывает функцию из модуля внешнего соединения. Я так понимаю  что она выполняется на сервере в соответствии с модулем. Процедура создает документы. При подключении отладки  в конфигураторе почему-то два процесса. Один уже подключен. Если подключаешь для отладки второй, что внешнее приложение подвисает если убираешь из отладки то начинает снова работать. При этом точка останова в процедуре не работает.