Конвертация УТ-БП #699870


#0 by alex-ander-777
Господа, затупил. Есть односторонняя конвертация УТ-БП on-line. Уже и редактировал правила, и свои создавал, но тут споткнулся. Надо после выгрузки документа сделать записи в некоторый регистр сведений (без регистратора) базы-приемника. Одно из измерений - данный документ, то есть как минимум он должен быть записан. 1. То есть наверное надо написать что-то в обработчике ПКО "после выгрузки в файл"? Вообще, в случае on-line этот обработчик когда срабатывает? 2. Как обратиться к базе-приемнику из обработчика? Какая переменная? Какая-нибудь Параметры.Объект подключения? Большая просьба знающим ответ подсказать...
#1 by zmaximka
а чего обработчик после загрузки не устраивает?
#2 by alex-ander-777
Не хочу трогать БП. Хочется всё на стороне УТ сделать.
#3 by zmaximka
ну ссылка то у тебя есть так что можно и после выгрузки в файл.
#4 by alex-ander-777
Пока допустим. А что по поводу второго пункта?
#5 by zmaximka
а зачем? нужно ПКО которое будет делать запись в регистр и в ПослеВыгрузкиВфайл делать ВыгрузитьПоПравилу(бла,бла,бла);
#6 by zmaximka
в хелпе по обработчику пример есть
#7 by alex-ander-777
Типа ПКО Документ-Регистр? Ну... может быть. Завтра буду пробовать.
#8 by alex-ander-777
Всё-таки не въехал. В базе приемнике надо сделать запись в независимом регистре сведений. Одно из измерений - ссылка на созданный документ в базе-приемнике, другие измерения зависят от реквизитов документа в базе-источнике. У документа в базе-приемнике соответствующих реквизитов нету. Вот как это сделать?
#9 by Godofsin
Читай еще раз
#10 by alex-ander-777
Да читал. Как ссылку на объект в базе-приемнике-то получить?
#11 by Godofsin
Зачем? в ПКО по твоему реквизиту, где ссылка нужна, указываешь ПКО этого документа и передаешь туда ссылку из источника
#12 by Godofsin
))) во написал )))
#13 by alex-ander-777
Да... ну попробую разобраться, как до работы доеду...
#14 by SleepyHead
> Да читал. Как ссылку на объект в базе-приемнике-то получить? Открой в ПКО обработчик "После загрузки", нажми кнопку "Информация по обработчикам". Если память не изменяет, он так и называеся - Объект.
#15 by floody
Решение в .
#16 by SleepyHead
В обработчике "После загрузки" документа есть ссылка на объект-документ, Объект.Ссылка - это уже ссылка на документ, вот в этом обработчике и прописывай код записи в регистр сведений. В конце обработчика не забудь прописать чтобы не выполнялась повторная запись объекта системой конвертации данных.
#17 by alex-ander-777
Это уже на стороне базы-приемника? Но там другая сложность: =========================== Одно из измерений - ссылка на созданный документ в базе-приемнике, другие измерения зависят от реквизитов документа в базе-источнике. У документа в базе-приемнике соответствующих реквизитов нету. =========================== вот для этих других измерений информации в базе-приемнике не существует. Или я словами не понимаю - нужна схема, а здесь её не нарисуешь..
#18 by alex-ander-777
Ладно, видимо, вопрос сырой, поковыряюсь - созрею для более внятного.
#19 by SleepyHead
Тогда создавай ПВД с произвольным алгоритмом для переноса этого регистра, значения измерений будут конвертироваться штатными средствами КД, правила конечно пропишешь.
#20 by SleepyHead
Что конкретно надо переносить в тот регистр, можешь накапливать в параметрах конвертации, а потом в ПВД этот параметр использовать. Примерно так: 1. В обработчике "Перед конвертацией" создать параметр конвертации (допустим, таблица значений) 2. В обработчиках выгрузки документов добавлять в эту таблицу значений нужные значения (ссылки на стороне базы-источника) 3. к моменту выгрузки ПВД этого регистра таблица значений будет заполнена, в ПВД ставишь тип алгоритма - произвольный, в переменную ВыборкаДанных приписываешь ссылку на эту коллекцию, а в ПКС измерений прописываешь правила конвертации объектов исходной базы
#21 by alex-ander-777
Ага, уже что-то дельное! Спасибо, буду думать.
#22 by SleepyHead
В марте открывается очередной поток курса по конвертации у Гилева, автор, записывайся, не пожалеешь.
#23 by alex-ander-777
А в апреле общероссийская выставка по тематике нашей фирмы. Не будет времени.
#24 by Aleksey
А он разве работает при онлайн обмене?
#25 by SleepyHead
С чего бы ему не работать? Возьмите правила УТ11-> БП.30, к примеру документ ввода начальных остатков, вот текст обработчика "После загрузки" Для Каждого СтрокаТаблицы Из Объект.БухСправка Цикл
#26 by Aleksey
А ничего что это не онлайн обмен?
#27 by Aleksey
у меня есть правило в котором после загрузки прописано Выполнить(Алгоритмы.ПровестиДокументы); Если я выгружаю через файл - то алгоритм отрабатывает Если делаю онлайн-обмен - то алгоритм не работает
#28 by SleepyHead
Возможно, у вас корпоративный обмен, и обработчики выгружены в отдельную обработку и встроены в план обмена.
#29 by SleepyHead
Ну и можно же сообщений навтыкать, пред вызовом алгоритма, после вызова, посмотреть что в алгоритме. Опять же, режим совместимости с БСП надо смотреть.
#30 by 13_Mult
Имхо при онлайн обмене правила лежат в макете плана обмена. И не помню что и где но не всё при онлайн обмене работает и наоборот. Что то можно посмотреть в Конвертации.
#31 by SleepyHead
> Имхо при онлайн обмене правила лежат в макете плана обмена Не совсем так, в менеджере плана обмена есть функция, которая возвращает имя обработки с обработчиками событий. Но применяется это только в режиме, когда обработчики выгружаются отдельно, правила отдельно. Обычно применяется при передаче сведений не внутри локальной сети, а через интернет.
#32 by 13_Mult
Если надо бороться за безопасность и в сообщении не было ни каких обработчиков, то да, можно только так. ))
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С