Конвертация: перенести (с заменой) только один реквизит табличной части

1. ANDRU48DOP 5 21.04.15 11:43 Сейчас в теме
Есть документ в источнике и такой же документ в приемнике (по ид).
Нужно перенести его ещё раз с заменой только одного реквизита в строке табличной части.

С реквизитом документа получается так сделать (ставлю поиск по ид, ставлю галку не создавать если не найден) и во всех реквизитах шапки ставлю галку отключить обработку правила, а на нужный реквизит, чтобы заместил реквизит в приемнике снимаю галку, так прокатывает.

С табличной частью не прокатывает, если на всю папку (ПКГС) ставлю галку отключить обработку правила, он тогда не переносит всю папку и ничего не замещает, если я с папки снимаю галку, на ненужные реквизиты в папке ставлю галки отключить обработку правила, а на нужные снимаю (чтобы перелетели в приемник и заместили, которые в приемнике), тогда нужные реквизиты замещаются, а остальные реквизиты табличной части затираются и становятся пустыми.

Все галки в ПКГС попереставлял, но все равно так не работает, как с реквизитами шапки.

Как сделать так, чтобы в приемнике, только поменялся определенный реквизит табличной части, а все остальное осталось нетронутым?
SharipovaG; +1 Ответить
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. xFoG 21.04.15 12:08 Сейчас в теме
(1) ANDRU48DOP, в ПКС на вкладке "Основная" есть галка "Не замещать значение свойства у существующих объектов в приемнике". Пробовали?
5. AlexO 135 21.04.15 12:34 Сейчас в теме
(1) ANDRU48DOP,
Нужно перенести его ещё раз с заменой только одного реквизита в строке табличной части.
Вам делать нечего - это через КД?!
COM - и меняйте, что хотите.
КД - она для прямых перегрузок (ИЗ и в КУДА, один тип данных, в идеале - еще и единое название полей источника и приемника), и когда много-много полей.
15. over_07 03.09.19 16:47 Сейчас в теме
(1) ПКГС ->
НеОчищать = Истина;
3. ANDRU48DOP 5 21.04.15 12:09 Сейчас в теме
Да

Почитал конференцию 1с, там пишу, что данный функционал с галочками для пкгс не катит, потому что нет уникального соответствия строк источника, строкам приемника.

Остается вариант после загрузки сравнить объект с объект.ссылка как-то и проставлять реквизит в табличную часть пока такие мысли.
4. tusv 212 21.04.15 12:09 Сейчас в теме
Интересный вопрос.

В приемник передаем параметр Замещаемые реквизиты ТЧ. Тип Строка. Идентификаторы колонок через запятую.
В обработчике "При загрузке" Выгружаем ТЧ в Таблицу значений: Тз=Объект.Ссылка.Товары.Выгрузить();
Сравниваем ТЗ с Объект.Товары, Изменям нужное и загружаем в Объект.Товары: Объект.Товары.Загрузить(ТЗ);
6. ANDRU48DOP 5 21.04.15 15:56 Сейчас в теме
пишу, значит галочки действуют в случае, если в табличной части есть поле поиска (на пкгс (группу/папку) нужно галку (отключить обработку правила) снять, на нужные реквизиты галку (отключить обработку правила) снять, на ненужные поставить галку (отключить обработку правила), дальше нужно поставить галку (поиск объекта при загрузке по свойству) на реквизит, по которому будет осуществляться поиск строки в табличной части, на это реквизит обязательно должна быть снята галка (отключить обработку правила).

Ещё есть вариант в ПослеВыгрузки сравнивать объект и объект.ссылка (который загружаем и тот, который уже есть в базе), сравниваем там строки (! но опять же по какому-то идентификатору). ИД у строки ТЧ нет, вот в этом вся трудность механизма в конвертации, на конференции есть темы.
7. ANDRU48DOP 5 21.04.15 16:00 Сейчас в теме
Про ПКО: на документ галку поставить поиск по ИД и галку не создавать, если не найден.
8. Melius 21.04.15 16:02 Сейчас в теме
Используй обработчики, Люк!
9. ANDRU48DOP 5 21.04.15 16:04 Сейчас в теме
(8) пример в данной ситации?
10. AlexO 135 21.04.15 16:05 Сейчас в теме
(8) Melius,
Используй обработчики, Люк!
Я бы, минимум, ввел промежуточную базу для хранения реквизита. В трех экземплярах, с электронной подписью.
11. ANDRU48DOP 5 21.04.15 16:12 Сейчас в теме
(10) нет промежуточной базы, есть две источник и приемник.
12. Melius 21.04.15 16:57 Сейчас в теме
(10) AlexO, зачем такой изврат? Перевести на sql и настроить грамотные копии с шифрованием на разные носители.
(9) ANDRU48DOP, ПослеЗагрузки
Для каждого Товар из Объект.Товары Цикл Товар.НашРеквизит = НашеЗначениеРеквизита; КонецЦикла;
- один из многих возможных вариантов.
13. ANDRU48DOP 5 22.04.15 10:22 Сейчас в теме
(12) как вы определите, что это наша строка и откуда вы возьмете наш реквизит, если он может быть разный
14. Melius 22.04.15 11:21 Сейчас в теме
(13) ANDRU48DOP, ну наверное напишу код, который проверит, наша ли это строка. А реквизит могу взять из парамтеров или входящих данных, да мало ли откуда еще.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот