v7: конвертация реквизита из шапки в табличную часть #696811


#0 by Soul771
Доброго времени суток. Переношу данные из ПУБ 7, ред. 2.8 в УНФ 8, использую КД. В 7 документ ВыпускПродукцииРазделка, у него реквизиты Материал, КоличествоМатериалов. Переношу в 8 документ СборкаЗапасов , нужно, чтобы эти реквизиты(Материал и КоличествоМатериалов) попали в табличную часть Продукция, в Номенклатура и Количество соответственно. Создала ПКО, в ПКС создала группу с пустым источником, приемником указала Продукция. Поставила галочку "Получить из входящих данных".Внутри группы создала 2 реквизита с пустыми источниками, галочки не ставила. В ПКГС в перед обработкой прописала: Сохранила, пытаюсь выгрузить данные из 7, ругается: "Функция не обнаружена(ПКГС_ПередОбработкойВыгрузки_ВыпускПродукцииРазделка_Продукция_ТабличнаяЧасть17) Ошибка выбора объектов коллекции" Подскажите, пожалуйста, что не так делаю.. Пробовала переносить только количество, результат тот же. Замучалась уже, в конвертации новичок, куда копать?...
#1 by m-serg74
модуль то в обработке меняла?
#2 by Soul771
Пропустила букву, пишу еще раз, чтобы не запутать.. В 7 документ ВыпускПродукцииРазделка надо перенести в 8 в документ СборкаЗапасов. У шапки документа ВыпускПродукцииРазделка есть реквизиты Материал, КоличествоМатериалов. У документа СборкаЗапасов есть табличная часть Продукция с реквизитами Номенклатура, Количество. Нужно перегрузить из ВыпускПродукцииРазделка.Материал-> СборкаЗапасов.Продукция.Номенклатура и из ВыпускПродукцииРазделка.КоличествоМатериалов->СборкаЗапасов.Продукция.Количество
#3 by Soul771
про модуль уже встречала, но как поменять не знаю((( подскажите, пожалуйста..
#4 by Soul771
это моя первая конверташка, не кидайтесь тапками, если туплю))) help..
#5 by m-serg74
когда жмешь сохранить правила где то галка есть Выгружать модуль обработки, потом берешь 7шную обработку открываешь в конфигураторе и весь текст меняешь на то что выгрузилось
#6 by m-serg74
или я делаю, сразу в начале кода обработки пишу #ЗагрузитьИзФайла Модуль.txt и сохраняю соответственно в файл с таким названием, главное не забывать обработку переоткрывать после сохранения Правил+Модуль
#7 by Soul771
m-serg74, большое ,большое спасибо! сделала, как вы написали, все выгрузилось и загрузилось. Ура :-)
#8 by m-serg74
пжл :)
#9 by Soul771
После переноса и Номенклатура, и Количество отобразились в документе, но документ не проводится, выдает ошибку "Преобразование значения к типу Число не может быть выполнено". Подозреваю, что это связано с тем, что в ПКС, внутри группы, у реквизита Количество тип источника не указан.. Если в перенесенном документе удалить строку с номенклатурой и количеством и выбрать их же вручную, документ проводится без ошибок. В конвертации для Номенклатуры я указала правило переноса, а как быть с Количеством? Тип приемника у него - число.
#10 by m-serg74
/Преобразование значения к типу Число не может быть выполнено/ Отладчик на проведение и смотреть на какое именно значение ругается, а не угадывать...
#11 by Godofsin
Коэффициент мб
#12 by m-serg74
кстати вполне может быть, но чем гадать быстрее посмотреть
#13 by Soul771
Ругается... Ошибка при выполнении обработчика - 'ОбработкаПроведения' по причине: {Документ.СборкаЗапасов.МодульМенеджера}: Преобразование значения к типу Число не может быть выполнено Смотрю в табло,СтрокаРапределения.Количество имеет null, насколько я понимаю, в это поле попадает переносимое значение КоличествоМатериалов.. И вот еще проблема, не знаю, связаны ли они, может, кто-то сталкивался.. Другие документы проводятся, но в движения попадает количество не по всем товарам. Контроль остатков отключен, карточки номенклатуры на вид абсолютно идентичны, не могу понять, что же я не так сделала, в конвертации ли вообще дело...
#14 by Soul771
Другие документы - я имела ввиду перемещения, реализация, их тоже переносила через конвертацию, только в них реквизит количество из табличной части в табличную переносится.
#15 by Soul771
И еще один вопросик) чтобы уж сразу, набраться уму-разуму)) Если часть реквизитов табличной части в документе-приемнике должны заполнится соответствующими реквизитами  ТЧ  документа-источника, а один из реквизитов ТЧ в приемнике заполняется реквизитом из шапки источника, как сделать, чтобы при конвертации все реквизиты ТЧ заполнялись? По отдельности это работает, а вместе нет. Т.е. либо переносятся реквизиты ТЧ источник-ТЧ приемник, а реквизит ТЧ приемника, который должен браться из шапки источника, остается незаполненным, либо наоборот. Экспериментировала с галочками "не замещать значение свойства у существующих объектов в приенике", не помогло..Подскажите, пожалуйста..
#16 by m-serg74
сделай вообще перед выгрузкой документа заполнение таблицы значений данными из ТЧ документа в 7ке, добавь колонку в которой будет значение из шапки, заполни всю ее этим значением и напиши ВыгрузитьПоПравилу(.......  ну и т.д. в в ПКСах поставь получать данные из входящих...
#17 by Soul771
Т.е. в ПКО переносимого документа я пишу в перед выгрузкой КоллекцияОбъектов = СоздатьОбъект("ТаблицаЗначений"); КоллекцияОбъектов.НоваяКолонка("КоличествоПродукции"); У переносимого документа есть реквизиты в ТЧ КоличествоПродукции, Элемент, Норма. В приемнике в ТЧ Состав есть реквизиты Номенклатура, Количество, и в шапке реквизит Количество... Что-то не нравится мне код.. недопонимаю....
#18 by m-serg74
/В приемнике в ТЧ Состав есть реквизиты Номенклатура, Количество, и в шапке реквизит Количество/ это все проприемник?
#19 by Soul771
Ой, напутала я....В источнике есть шапка и табличная часть. В шапке реквизит Количество, в ТЧ реквизиты Элемент, Норма. В приемнике есть ТЧ Состав с реквизитами КоличествоПродукции, Номенклатура, Количество. И надо сопоставить: Источник.Количество -> Приемник.Состав.КоличествоПродукции Тогда бы надо написать: Только поймет ли конвертация, из какой строки ТЧ источника брать Номенклатуру и Количество, т.е. пойдет ли выгрузка-загрузка построково, или это надо как-то прописать циклом?.... В источнике в ТЧ и в примнике в ТЧ есть еще и реквизит с типом перечисление, для которого я прописывала соответствие в конвертации значений. Как его запихать в данном случае совсем не представляю, но пока хотя бы без него разобраться..
#20 by m-serg74
нет надо создавать ТЗ с такой структурой как в приемнике
#21 by m-serg74
#22 by m-serg74
типа такого что то
#23 by Soul771
Блин :-) я что-то совсем как во сне пишу.... Третий день уже сижу над несколькими документами и поля плывут) спасибо большое!
#24 by m-serg74
носите на здоровье :)
#25 by Soul771
:-) Тыкните носом еще, пожалуйста, ВыгрузитьПоПравилу - это в ПВД указать для выгрузки этого документа, где способ выборки, заменить "стандартная выборка" на "произвольный алгоритм"?
#26 by m-serg74
смотря что делаешь если так как в то не надо ВыгрузитьПоПравилу, просто ТЧ Источника пустую оставь и все, а в обработчик ПередОбработкой этот код, а спсоб выборки вообще к этому не имеет отношения
#27 by m-serg74
а тим вивера нету, что то сбила с толку и я фигню уже какую то понес... и там и там есть ТЧ значит вообще никакие Коллекции не надо формировать
#28 by m-serg74
Источник.Норма - Применик.Количество Пусто - Применик.КоличествоПродукции, и перед выгрузкой в последнем Значение = Источник.Количество
#29 by Soul771
тимик есть :-) сейчас попробую, напишу о результатах) спасибо!!
#30 by m-serg74
#31 by Soul771
Все получилось очень хорошо :-) Даже перечисления перенеслись и не пришлось с ними возиться) А галочку "получить из входящих данных " не нужно ставить у реквизита, который из шапки переносится?
#32 by Soul771
на скрине увидела, что галочки нет, а я поставила и тоже перенеслось) вот стало интересно, когда ее ставить, когда не надо)
#33 by m-serg74
нет
#34 by m-serg74
ставить надо когда брать неоткуда и значения есть только в ВходящиеДанные
#35 by m-serg74
прямое присвоение Значение = ... заменяет в большем приоритете все что прилетело до этого
#36 by Soul771
поняла, спасибо. От всей души благодарю вас за помощь :-) хороших выходных!:-)
#37 by m-serg74
и Вам того же
#38 by Soul771
:-)благодаря вам это осуществится)))))
#39 by m-serg74
обращайтесь, чем смогу...
#40 by Soul771
:-) можно еще один вопрос)) проблема обнаружилась большая... во всех документах, которые бы я не переносила, 8-ка как будто бы не видит количество... и в источнике и в приемнике количество - это реквизит ТЧ, переношу как число-число, без какого-либо правила. в 8-ке количество в ТЧ отображается, но при перепроведении документа по регистрам количество не проходит.. может, это как-то связано с представлением числа в 7 и в 8? Длина и точность совпадает, если в конфигураторе смотреть у свойства реквизита. А в пользовательском режиме в 8 будет так: 1 150,50  , а в 7 то же самое число: 1,150.50 Раньше с таким не сталкивалась, влияет ли это на что-то и где еще посмотреть, что может не так быть?....
#41 by m-serg74
консоль запросов есть?
#42 by Soul771
теперь есть)
#43 by m-serg74
сразу после переноса в ней посмотри что куда в документах перенеслось
#44 by m-serg74
так долго отвечаешь что можно уснуть :)
#45 by Soul771
:-) вроде вижу нормальные данные.. в количестве - числа, в таком же представлении, как и в документах
#46 by m-serg74
может уже тим вивер и по домам :)
#47 by Soul771
сейчас запущу)пароли в личку пришлю)
#48 by Soul771
постучалась в асю)
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям

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