КД 2.0: Объект загружается при отказе
Всем привет,
надо перенести присоединенные файлы к РТУ между двумя БП;
сами РТУ уже есть, их переносить не надо, переносим только файлы.
Тестирую ситуацию: а если в источнике есть РТУ и файл к ней, а в приемнике этой РТУ нет - тогда создавать РТУ не надо и элемента справочника РеализацияТоваровУслугПрисоединенныеФайлы тоже не надо, ну и пару связанных регистров сведений тоже не надо.
РТУ в приемнике не создается, ок.
Если выгружать и загружать только файлы - то они не создаются, ок.
А если выгружать РеализацияТоваровУслугПрисоединенныеФайлы и РС ХранилищеФайлов, в котором измерением является файл, - то файл создается, хотя не должен. В этом и вопрос. Видимо, этот связанный объект влияет.
У РС ХранилищеФайлов в ПКС в обработчике ПослеЗагрузки:
Отладка заходит в этот обработчик, отказу присваивается истина, но это не помогает(
Что еще можно проверить?
Или я еще вообще не с той стороны к вопросу подхожу?
надо перенести присоединенные файлы к РТУ между двумя БП;
сами РТУ уже есть, их переносить не надо, переносим только файлы.
Тестирую ситуацию: а если в источнике есть РТУ и файл к ней, а в приемнике этой РТУ нет - тогда создавать РТУ не надо и элемента справочника РеализацияТоваровУслугПрисоединенныеФайлы тоже не надо, ну и пару связанных регистров сведений тоже не надо.
РТУ в приемнике не создается, ок.
Если выгружать и загружать только файлы - то они не создаются, ок.
А если выгружать РеализацияТоваровУслугПрисоединенныеФайлы и РС ХранилищеФайлов, в котором измерением является файл, - то файл создается, хотя не должен. В этом и вопрос. Видимо, этот связанный объект влияет.
У РС ХранилищеФайлов в ПКС в обработчике ПослеЗагрузки:
Если НЕ ОбщегоНазначения.СсылкаСуществует(Объект.Файл.ВладелецФайла) ИЛИ Объект.Файл.ВладелецФайла.Пустая() Тогда
Отказ = ИСТИНА;
КонецЕсли;
Отладка заходит в этот обработчик, отказу присваивается истина, но это не помогает(
Что еще можно проверить?
Или я еще вообще не с той стороны к вопросу подхожу?
По теме из базы знаний
- Опыт проведения сложных переносов данных на 1С
- RabbitMQ + Конвертация Данных 3.0
- Механизмы и транспорт обмена данными. Пример создания в КД 2.1 правил обмена данными ЗУП 2.5 -> БП 3.0. Выгрузка ведомостей и банковских счетов. Передача параметров обмена из Источника в Приемник. ВыгрузитьПоПравилу(). ПередатьОдинПараметрВПриемник().
- Настройка обмена с любой устаревшей конфигурацией на базе 8.2 через обработку "Универсальный обмен данными в формате XML" и "Конвертацию данных 2.0"
- Обмен по правилам Конвертации данных 2.1 для ERP, КА, УТ 11, БП 3, ЗУП 3, Розница 2.3
Найденные решения
Нашла решение:
1) Создаю ПКО на справочник РТУПрисоединенныеФайлы, в котором разрешаю создавать новые объекты.
Это ПКО указываю в ПВД.
2) Создаю ПКО на этот же справочник, в котором запрещаю создавать новые объекты.
Этот ПКО указываю в ПКС Файл у регистра сведений ХранилищеФайлов.
3) Идентификаторы ПКО у этих ПКО разные, поэтому все норм.
Идея в том, что вообще в справочнике РТУФайлы можно создавать элементы, но уж если в приемнике нет владельца и в справочник РТУФайлы ничего не создаем, то и в РС запись создавать не надо, и пусть РС ориентируется - найден элемент справочника РТУФайлы или нет.
1) Создаю ПКО на справочник РТУПрисоединенныеФайлы, в котором разрешаю создавать новые объекты.
Это ПКО указываю в ПВД.
2) Создаю ПКО на этот же справочник, в котором запрещаю создавать новые объекты.
Этот ПКО указываю в ПКС Файл у регистра сведений ХранилищеФайлов.
3) Идентификаторы ПКО у этих ПКО разные, поэтому все норм.
Идея в том, что вообще в справочнике РТУФайлы можно создавать элементы, но уж если в приемнике нет владельца и в справочник РТУФайлы ничего не создаем, то и в РС запись создавать не надо, и пусть РС ориентируется - найден элемент справочника РТУФайлы или нет.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
5.
MissionOnly
27
19.06.26 10:18
Сейчас в теме
(3) Возможно, "отказ" правильнее выставлять "перед выгрузкой" (а не в момент, когда объект уже создан в памяти).
8.
MissionOnly
27
19.06.26 11:20
Сейчас в теме
(6) Остается взять обработку, которой Объект пишется и проверить ее на проверку "отказа" перед записью.
Вот такая функция еще должна отрабатывать:
Вот такая функция еще должна отрабатывать:
Процедура УдалитьИзСтекаНеЗаписанныхОбъектов(Нпп, ГНпп)
НомерДляСтека = ?(Нпп = 0, Гнпп, Нпп);
мГлобальныйСтекНеЗаписанныхОбъектов.Удалить(НомерДляСтека);
КонецПроцедуры
Нашла решение:
1) Создаю ПКО на справочник РТУПрисоединенныеФайлы, в котором разрешаю создавать новые объекты.
Это ПКО указываю в ПВД.
2) Создаю ПКО на этот же справочник, в котором запрещаю создавать новые объекты.
Этот ПКО указываю в ПКС Файл у регистра сведений ХранилищеФайлов.
3) Идентификаторы ПКО у этих ПКО разные, поэтому все норм.
Идея в том, что вообще в справочнике РТУФайлы можно создавать элементы, но уж если в приемнике нет владельца и в справочник РТУФайлы ничего не создаем, то и в РС запись создавать не надо, и пусть РС ориентируется - найден элемент справочника РТУФайлы или нет.
1) Создаю ПКО на справочник РТУПрисоединенныеФайлы, в котором разрешаю создавать новые объекты.
Это ПКО указываю в ПВД.
2) Создаю ПКО на этот же справочник, в котором запрещаю создавать новые объекты.
Этот ПКО указываю в ПКС Файл у регистра сведений ХранилищеФайлов.
3) Идентификаторы ПКО у этих ПКО разные, поэтому все норм.
Идея в том, что вообще в справочнике РТУФайлы можно создавать элементы, но уж если в приемнике нет владельца и в справочник РТУФайлы ничего не создаем, то и в РС запись создавать не надо, и пусть РС ориентируется - найден элемент справочника РТУФайлы или нет.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот