|   |   | 
| 
 | Обработка КонвертацияОбъектовИнформационныхБаз и отладка обработчиков | ☑ | ||
|---|---|---|---|---|
| 0
    
        formista2000 23.04.25✎ 16:18 | 
        Привет!
 У кого есть опыт отладки обработчиков КД при использовании обработки КонвертацияОбъектовИнформационныхБаз? Поделитесь пожалуйста советом, как реализовать сие. А то обработка не пригодна для интерактивного использования. Спасибо! | |||
| 1
    
        mikecool 23.04.25✎ 16:36 | 
        если ты про КД2, то проще Сообщить() вставлять в проблемных местах     | |||
| 2
    
        formista2000 23.04.25✎ 16:41 | 
        (1) Казалось бы да, но есть свои сложности с загрузкой - она происходит фоновым заданием с использованием этой обработки.     | |||
| 3
    
        formista2000 23.04.25✎ 16:43 | 
        (1) + стандартная обработка универсальный обмен хмл не подходит.     | |||
| 4
    
        AneJIbcuH 23.04.25✎ 21:02 | 
        (2) Тогда пиши в текстовый файл     | |||
| 5
    
        timurhv 23.04.25✎ 21:22 | 
        Добавляете общий модуль и процедуру в расширение.
 Из правил вызываете ее (зависит от того это выгрузка или загрузка - не перепутайте где добавлять расширение). В процедуру передаете параметрами что нужно, какие объекты и переменные используются в коде как обычно пишете при написании кода в КД2. В коде процедуры пишите логику, отлаживаете и после того как ОК копируете из расширения в КД2. | |||
| 6
    
        timurhv 23.04.25✎ 21:26 | 
        Условно (1) можно написать:
 ОбщегоНазначения.СообщитьПользователю(Текст) Вот и по такой же логике в КД2 пишите: https://infostart.ru/upload/iblock/5ad/5ad64e9b92df3bb49c4ff965296aa513.png ИмяМодуляРасширения.ВашаПроцедураОтладки(Объект, Валюта_Руб) И в отладке уже смотрите что не так | |||
| 7
    
        craxx 23.04.25✎ 21:58 | 
        (6)  ОбщегоНазначения.СообщитьПользователю(Текст) тогда уж в журнал регистрации писать события, там можно ссылки на объекты вставлять | |||
| 8
    
        d4rkmesa 24.04.25✎ 08:35 | 
        (0) Если запустить с параметром "РежимОтладки", в e1cib/app/Обработка.РегламентныеИФоновыеЗадания есть кнопка "Запустить не в фоне" в вашей конфе? Так то обработка отлаживается вполне.     | |||
| 9
    
        formista2000 24.04.25✎ 08:54 | 
        Обработчик "Поля поиска" выполняется на стороне базы-приёмника ведь, да?     | |||
| 10
    
        formista2000 24.04.25✎ 09:50 | 
        + У меня сложилось такое впечатление, что в обработчик "Поля поиска" программа вообще не заходит.
 Почему такое может быть? В настройках "Искать объект приемника по внутреннему идентификатору объекта источника" галка стоит, "Продолжить поиск по полям поиска, если по идентификатору объект приемник не найден" галка стоит. ЧЯДНТ? | |||
| 11
    
        d4rkmesa 24.04.25✎ 10:18 | 
        (10) В онлайн-обменах НЯП поиск срабатывает только при первом обмене. В регистре "Соответствия объектов информационных баз"  есть запись с найденной ссылкой? Там несколько иная логика поиска объектов. По-хорошему, такие объекты нужно было предварительно сопоставить (т.е. "ручками" в форме), а далее уже синхронизировать по УИДу.
 https://forum.infostart.ru/forum15/topic227376/ тут пишут, что можно отключить поиск по УИД-у в таких случаях, но не проверял. Просто нужно понимать, что все что вы знаете про универсальный обмен и КД2, здесь (синхронизации через БСП) работает [несколько] иначе и, возможно, не нужно. | |||
| 12
    
        formista2000 24.04.25✎ 10:13 | 
        (11) Есть.
 ЗЫ: Вариант поиска на закладке "Поиск объектов в приёмнике" надо вариант поиска делать? | |||
| 13
    
        formista2000 24.04.25✎ 10:17 | 
        (11) + я в обработчике "Поля поиска" и хочу искать по этому регистру.     | |||
| 14
    
        mikecool 24.04.25✎ 10:25 | 
        (10) так может по УИД надходит?     | |||
| 15
    
        formista2000 24.04.25✎ 10:30 | 
        (14) В приёмнике <Объект не найден> (54:b2828a5174c21d0548b934ccbcef0b13)
 В журнале регистрации моих записей из обработчика нет. Складывается впечатление, что не попадает в обработчик. | |||
| 16
    
        d4rkmesa 24.04.25✎ 11:36 | 
        (15) Удалите запись и попробуйте снова.     | |||
| 17
    
        d4rkmesa 24.04.25✎ 11:52 | 
        (13) Зачем? Если записи в регистре нет, обмен и должен поискать и создать эту запись. Т.е. обработчик с поиском по полям уже подразумевает, что записи нет.     | |||
| 18
    
        scanduta 24.04.25✎ 13:47 | 
        (0) Про обработчик поля поиска есть неочевидный нюанс, кстати.
 В этом обработчике можно использовать только те поля, которые проставлены для поиска в ПКО галочками. | |||
| 19
    
        formista2000 24.04.25✎ 13:59 | 
        (18) Да, у меня помечено.
 В обработчике использую ПараметрыОбъекта.Получить("УИД_Синхронизации") или СвойстваПоиска.Получить("УИД_Синхронизации") - всё один хрен в обработчик не заходит. (( | |||
| 20
    
        formista2000 24.04.25✎ 16:41 | 
        Оказывается, надо так: ПродолжитьПоискПоПолямПоискаЕслиПоИдентификаторуНеНашли, а в обработке КонвертацияОбъектовИнформационныхБаз так: ПродолжитьПоиск.     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |