Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Конвертация данных УНФ -> Бухгалтерия
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование обычных форм 1С 8.2 и не интерфейсной логики
vokinsel
Добрый день.
В документе УНФ "Расходная накладная" есть две табличные части (вторая табличная часть нетиповая), строки которых нужно выгрузить в одну табличную часть документа "Реализация товаров и услуг" Бухгалтерии

УНФ и Бухгалтерия на платформе 8.2

Делаю таким образом:

Источник: Табчасть1_УНФ -------------------- Приемник: Табчасть_Бух
Источник: Табчасть2_УНФ -------------------- Приемник: Табчасть_Бух

В итоге получается, что Табчасть2_УНФ перезаписывает то, что было выгружено из табличной части Табчасть1_УНФ.

А как сделать так, чтобы записи не затирались, а добавлялись???

Бьюсь уже долго. Заранее, благодарен за ответы
Flexy
А что вы в условиях связей таблиц задаете?
По моему еще как вариант можно использовать МенеджерВТ для второй таблицы.
Vofka
А где код?
vokinsel
В ПКО пишу:
ВходящиеДанные = Новый Структура("Запасы");
    ВходящиеДанные.Запасы = Новый ТаблицаЗначений;
    ВходящиеДанные.Запасы.Колонки.Добавить("Номенклатура");
    ВходящиеДанные.Запасы.Колонки.Добавить("Количество");
    ВходящиеДанные.Запасы.Колонки.Добавить("ЕдиницаИзмерения");
    ВходящиеДанные.Запасы.Колонки.Добавить("Цена");
    ВходящиеДанные.Запасы.Колонки.Добавить("Сумма");
    ВходящиеДанные.Запасы.Колонки.Добавить("СтавкаНДС");
    ВходящиеДанные.Запасы.Колонки.Добавить("СуммаНДС");
    Для Каждого Ист Из Источник.Запасы Цикл
        СтрокаВходящихДанных = ВходящиеДанные.Запасы.Добавить();
        СтрокаВходящихДанных.Номенклатура = Ист.Номенклатура;
        СтрокаВходящихДанных.Количество = Ист.Количество;
        СтрокаВходящихДанных.ЕдиницаИзмерения = Ист.ЕдиницаИзмерения;
        СтрокаВходящихДанных.Цена = Ист.Цена;
        СтрокаВходящихДанных.Сумма = Ист.Сумма;
        СтрокаВходящихДанных.СтавкаНДС = Ист.СтавкаНДС;
        СтрокаВходящихДанных.СуммаНДС = Ист.СуммаНДС;
    КонецЦикла;


В ПКГС ставлю галочку "Получить из входящих данных"
Irina_
Для конвертации 2 табличных частей в одну используем переменную "НеОчищать", которая позволяет отключить очистку табличной части приемника перед загрузкой второй табличной части источника.

В ПКГС второй табличной части в обработчике Перед обработкой укажем

Если Источник.[Ваша табличная часть].Количество() > 0 Тогда
НеОчищать = Истина;
КонецЕсли;


Бояркин В. Э., А. Филатов А. И. - 1С Предприятие 8. Конвертация данных. Обмен данными между прикладными решениями, страница 147 wink.gif
vokinsel
Цитата(Irina_ @ 13.02.12, 20:24) необходимо зарегистрироваться для просмотра ссылки
Для конвертации 2 табличных частей в одну используем переменную "НеОчищать", которая позволяет отключить очистку табличной части приемника перед загрузкой второй табличной части источника.

В ПКГС второй табличной части в обработчике Перед обработкой укажем

Если Источник.[Ваша табличная часть].Количество() > 0 Тогда
НеОчищать = Истина;
КонецЕсли;


Бояркин В. Э., А. Филатов А. И. - 1С Предприятие 8. Конвертация данных. Обмен данными между прикладными решениями, страница 147 wink.gif


Спасибо за ответ, но не получилось. Продел эти операции, а результат тот же. В табличной части приемника остаются записи только второй табличной части (
vokinsel
Спасибо за участие. Тема закрыта
MATEVI
Цитата(vokinsel @ 23.02.12, 10:27) необходимо зарегистрироваться для просмотра ссылки
Спасибо за участие. Тема закрыта

По правилам хорошего тона огласите решение проблемы smile.gif
vokinsel
Решение проблемы:
В ПКО в обработчике "ПередВыгрузкой" создаем таблицу значений, которую в свою очередь заполняем данными двух табличных частей источника.
Затем в ПКГС Коллекции объектов присваиваем сформированную нами таблицу значений.

Источник ПКГС - пустой
Приемником является табличная часть, в которую нужно записать данные двух табличных частей

Собственно все.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.