#0
by Ymryn
Мое почтение. Итак, цель: выгрузить объект с заранее установленным UID'ом (отличным от UID'а объекта). Понимаю что лучше всего будет сделать через Структуру, но уже под конец рабочего дня торможу и никак не могу понять какой должен быть параметр. Заранее ответ на вопрос: "А на фейхоа?" Была выгрузка номенклатуры из Базы А в базу Б. Выгрузка шла через ком соединение со связью через регистр соответствий. Сейчас планируется сделать иной обмен из базы А в базу У. Причем в базе У номенклатура из базы А (точнее совпадает по UID'ам). Хочется сделать через xml, подрубаться в базу A получать объект, его UID и выгружать уже номенклатуру из базы Б, с UID'ом базы А. Вот как-то так. Теперь можно возмущаться, писать, что я криворукий прог и пытаюсь выстрелить себе в ногу и прочее. За предложения по оптимизации или непосредственно по решению проблемы - признателен. :)
#1
by Ymryn
поправка. Уже устал и косячу. :( Причем в базе У номенклатура из базы Б (точнее совпадает по UID'ам). Хочется сделать через xml, подрубаться в базу Б получать объект, его UID и выгружать уже номенклатуру из базы А, с UID'ом базы Б. Вот как-то так.
#5
by Ymryn
а я правильно понимаю, получается, что com-объекты можно в качестве источников для выгрузки использовать?
#6
by Йохохо
я не видел) можно ТЗ заполнять структурами идентичными номенклатуре запросом через ком, можно гуид передавать параметром в поляпоиска и создавать объект
#8
by К_Дач
У тебя есть база А. Из нее ты хочешь выгружать номенклатуру в базу У, но так, чтобы при этом ГУИД у элемента подставлялся из базы Б? Верно? Если так, то перед такой выгрузкой заполни сначала в базе А регистр сведений СоответствияОбъектовИнформационныхБаз. Там есть поле УникальныйИдентификаторПриемника. Напиши предварительно загрузку из базы Б в базу А, которая найдет номенклатуру по полям поиска (код, наименование, артикул и т.д.) и заполнит этот регистр, а потом уже из базы А пиши выгрузку в базу У, в обработчике ПКО "после выгрузки" пиши запрос к регистру и подменяй значение ссылки...
#9
by Ymryn
я правильно понимаю, что предложение выгружать в параметр структуру соответсвий uid базы Б - код базы А. И уже перед записью в базе У вычислять по этой таблице необходимый объект?
#10
by Ymryn
я не хочу заполнять регистр в базе А. Он уже заполнен в базе Б и там ведется. Менять место его ведения не хочется, хочется решить вопрос хитрой системой обмена и оставить текущий обмен А - Б неизменным.
#11
by Ymryn
+ но за предложение спасибо, в иной ситуации действительно считал бы самым наилучшим решением.
#12
by Ymryn
вот параметр для полей поиска, если честно не совсем понял. Это закладка "Поиск объектов в приемнике"? (К сожалению мало ей пользовался, поэтому не совсем представляю, как воспользоваться. Если решение именно там, достаточно сказать да, остальную макулатурку на почитать, уже сам найду :) ).
#13
by К_Дач
Ну хорошо, вот тебе еще вариант. Заполни это регистр в базе У и подменяй ссылку на этапе загрузки... Если не хочешь трогать регистр, рассчитывая его задействовать в других ситуациях - то вот еще один вариант (сам как раз сейчас делаю такой обмен). Источник - Приемник. В Приемнике хранится таблица соответствия объектов. Объект А: ссылка, поля поиска ----> Объект Б, ссылка, поля поиска. Таблица хранится в виде таблицы значений в ресурсе любого объекта метаданных с типом ХранилищеЗначения. Модифицируем обработку загрузки, добавляем получение этой таблицы и ее загрузку в ТЗ в оперативную память. Далее во всех обработчиках загрузки можешь обращаться к этой ТЗ по имени объявленной переменной, искать вхождения и делать подмены. Вуаля.
#14
by К_Дач
Обработчик "Поля поиска": СсылкаНаОбъект - ссылка на результирующий объект. Если в обработчике установить данную ссылку (не пустую) то программа ее запомнит и поиск на этом будет считать успешно завершенным
#15
by Ymryn
в У тоже не хочу. Не хочу ничего дополнительно заполнять. Все уже заполнено. Хочу научиться это объединять и использовать в базе А :) Второй вариант мне чем-то . О! Интересно, покопаюсь в этом направлении. Можно ли ссылку на несуществующий объект (т.е сугубо UID) так установить. Спасибо большое.
#17
by К_Дач
У меня сейчас аналогичная (только более сложная) задача. Есть Источник и Приемник. В Приемнике есть ряд объектов и элементов, имеющих другие отличные от элементов Источника реквизиты (по которым производится поиск), но имеющие абсолютно тот же самый прикладной и практический смысл. То есть нужно при загрузке научить программу Иванова Иван Иваныча конвертировать в Иванова И.И., а "хлеб мягкий вкусный" в "хлеб свежий вкусный". Сделал так: предварительно выгружаю из Источника все такие объекты, НЕ СОЗДАЮ их в Приемнике, а заполняю ими (всеми, которые не нашлись! по полям поиска) таблицу соответствия. Далее пользователь открывает формочку и проставляет соответствия Иван Иванычей и хлебов, жмет записать и рапортует мне, что все готово. Далее дело техники, загружаем, ловим, подменяем.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- УФ. Получить значение из выбранной строки ТЗ.
- Среднее значение в СКД
- значение не является значением объектного типа (получить)
- v7: V7 Слетает галочка "Устройство включено" в настройках сканера
- v7: Как скопировать таблицу значений один в один, штатными средствами?
- создание заказа поставщику из расчета потребностей УНФ 8.2
- Отбор на форме СКД не УФ
- КД. Как заполнить счет, если в источнике его нет?
- Как в ЗУП убрать вычет в мат. помощи у внешнего совместителя?
- Скорость СКД приблизить к скорости запроса
- v7: Раскраска кнопок
- Менеджер контактов на андроид
- Трактиръ 2.0 Back Office не раскладывать полуфабрикат до ингредиентов
- mxl в ТЗ через ПостроительЗапроса - как указать формат колонок ?
- БП 3.0 - "Переход на раздельный учет НДС"
- Платформа 1С 8.3 и персональные данные
- 1С 8.3 Не совпадает версия временного файла
- 1с ут 11.1.6.17 КонтрольНеСогласованныхИзменений
- Перенос базы из БП 2 в БП 3
- В запросе выбрать первые записи