Имя: Пароль:
1C
1С v8
Отладка правил обмена
0 soljer1
 
13.11.16
16:36
Добрый вечер, форумчане.

Платформа 8.6

Не могу решить проблему, прошу поделиться опытом. Имеется УТ 11.2 и БП 2.0
Настроен двухсторонний обмен на типовых правилах, через прямое подключение. Встала необходимость изменить типовые правила. С КД и отладкой правил через универсальный обмен( в других случаях), проблем не возникло. Однако в данном случае (типовые правила из конфигураций для планов обмена), я не могу эти правила отладить через универсальный обмен ( ошибки при попытке прочитать правила у обработке универсального обмена.

В УТ 11.2 при настройке синхронизации, есть кнопка "режим отладки" и возможность подключать внешнюю обработку для отладки, но нет кнопки сформировать модуль отладки как в Универсальном обмене через XML.

Как отладить типовые правила?

Заранее благодарен.
4 Cyberhawk
 
13.11.16
19:35
Точку останова в любом задействованном в обмене общем модуле (их там тыща, ибо БСП).
Конкретно в правилах - ОМ "ОбменДаннымиХДТО"
5 soljer1
 
13.11.16
20:24
(4) эм... в общем модуле "обменнданнымихдто", я ищу какую-то процедуру начала обмена... но мне нужно отладить правила и попасть в обработчики правил. Как я попаду в обработчики правил из ОМ БСП?
7 MaxS
 
13.11.16
20:33
(5) Вынести их в тестовый общий модуль.
Сложность отладки КД2 - один из минусов. В КД3 проблем с отладкой нет.
9 soljer1
 
13.11.16
21:22
(7) собственно, а как мне их сформировать?)) П.с. Модет глупый вопрос , но я не гуру КД2 писал только не сложные вещи и с многими тонкостями не сталкивался(
10 Cyberhawk
 
13.11.16
23:01
(5) Так у тебя обмен по правилам КД 2? Ну тогда обработку "ОбменДаннымиХМЛ" и "КонвертацияОбъектовИнформационныхБаз" кури. Правила обмена по КД 2 в конфигурациях на БСП немножко не совместимы с обработкой УниверсальныйОбменХМЛ
11 soljer1
 
14.11.16
00:03
(10) обработка "Обменданнымихмл" отсутствовала в ут 11.2 и скорее всего в ут 11.1  (она на обычных формах) следовательно вообще сомневаюсь что она есть на УФ. Кроме этого я думаю это не даст плодов даже если я криво косо стартану ее на Ут 11.
В Ут 11 в "Настройка синхронизации"->загрузпть правила. Имеется чекбокс "режим отладки" как и в обработке УниверсальныйОбменХМЛ где можно указать обработку отладки. Но нет возможности "Сформировать модуль отладки". Думаю это не просто так, и всетаки есть какой то нативный и правильный способ отладки. Но материалов в документации и в интернетах не нашлось(((.
Неужели ни кто не сталкивался с этим?
12 h-sp
 
14.11.16
00:31
(11) а при выгрузке правил, ты же указываешь, куда грузить обработчики событий.
13 soljer1
 
14.11.16
13:55
(12) что то вообще не получается ничего. Мне нужно попасть в ПКО "После загрузки" на отладке.
1.В КД2. Правила обмена УТ-БП. Нажимаю Отладка обработчиков->Сформировать модуль обработчиков загрузки.
2. БП->Конфигуратор->Создал обработку->В модуль вставил этот текст. (С парой ошибок сохранился)

(ТаблицаДляОтложенногоПроведения = <<?>>ДокументыДляОтложенногоПроведения(); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.НоваяОтладкаЗагрузкиВБП.МодульОбъекта(9536,38)}: Процедура или функция с указанным именем не определена (ДокументыДляОтложенногоПроведения)
)

3. БП->Предприятие->Настройки синхронизации->Загрузить правила конвертации->"Режим отладки" ставлю чек->Подключить внешнюю обработку для отладки загрузки->Указал обработку с сформированным модулем. ->Не останавливать обмен при возникновении ошибок "поставил чек"

4. В обработке к конфигураторе БП ставлю точку останова. но не останавливается не на ней, ни на какой другой (
14 Cyberhawk
 
14.11.16
14:42
(11) Ты написал не ответ, а какую-то дичь. Перечтывай.
15 soljer1
 
14.11.16
15:22
(14) "ОбменДаннымиХМЛ" -  нет в УТ 11.1 такой обработки. "КонвертацияОбъектовИнформационныхБаз"  это обработка через которую работает обмен в БСП. Достаточно абстрактный совет "кури БСП", кроме этого в БП и УТ в окне загрузки правил конвертации имеется чек бокс "режим отладки" как и в "Универсальном обмене ХМЛ" с возможностью подключить обработку в которой сформирован модуль отладки. По совету (12) я смог сформировать модуль. Но... (13)
16 MaxS
 
14.11.16
16:14
(9) Зачем формировать всё?
Тот код, который нужно отладить вручную переместить в общий модуль "ДляОтладки", в правилах вместо этого кода указать вызов процедуры из общего модуля.
17 soljer1
 
14.11.16
18:20
(16) спасибо! Метод работает, но выглядит это диким "костылем" ).

Не ужели все таки нет более удобного и правильного способа?
Зачем разработчики дали возможность использовать "режим отладки" в форме настройки синхронизации тогда?
18 soljer1
 
14.11.16
18:52
П.С. Ошибка в (0) Платформа 8.3.7 у меня, это может быть важным т.к. на 8.3.6 встречал проблему при отладке модулей не останавливалось на точке.
19 MaxS
 
14.11.16
20:00
(18) В конфигураторе базы заходим в меню Сервис / Параметры, на вкладке "Основные" прописываем параметр запуска РежимОтладки.
(17) Правильный способ - в КД 2.1 "Сформировать модуль обработчиков загрузки" и т.п. Но если не работает, то как вариант - костыль. ))
20 soljer1
 
15.11.16
12:42
(19) к (18) параметр запуска РежимОтладки устанавливал, эффекта "0" было, долго с бубном плясал, а потом нашел ветку где ребята тоже сталкивались с этой бедой на 8.3.6.***.