Конвертация данных: выгрузка документа "ОперацияБух" с проводками #784890


#0 by Mr_Best
Доброго дня Коллеги! Задача: перенести документ "ОперацияБух" из БП 2.0.65.45 в БП 3.0.44.140 Имеем: Конвертация данных, редакция 2.1 (2.1.8.1) и <ВерсияФормата>2.01</ВерсияФормата> Что сделал: выгрузил метаданные с установленным флагом "Не выгружать движения документов" и снятым флагом "Не выгружать регистры бухгалтерии" в обоих базах. Создал правила, включил один документ "ОперацияБух", конвертация предложила по ссылкам создать правила автоматически, я согласился. Создал единственное правило выгрузки для документа "ОперацияБух". Выгрузил, проверил, движения не выгрузились. Логично, подумал я и повторил операцию, но на этот раз я установил дополнительно флаг "Выгружать движения только у документов без проведения", а точнее с запрещенным проведением. Посмотрел в конфигурацию, у документа "ОперацияБух" режим проведения установлен в: Запретить. Наверное мой случай (?) снова подумал я и создал правила, и повторил выгрузку, и снова болт. В поисках дальнейшего пути, я выбрал три направления: 1. Найти причину, из-за которой не выгружаются движения автоматически (так как описано выше) 2. Передать данные в параметр 3. Записать данные непосредственно в узел 4. Использовать функции ВыгрузитьПоПравилу или ВыгрузитьРегистр Так как мне необходимо не сломать механизм регистрации изменений, я решил воспользоваться функцией ВыгрузитьРегистр. Логика работы функции проста, если ошибся, поправьте. Мы в некотором произвольном алгоритме формируем данные и выгружаем их по правилу, например "ХозрасчетныйЗапись". Автоматически правило не создалось, поэтому я его создал в ручную с именем "ХозрасчетныйЗапись". Конвертация предложила автоматически создать правила для свойств и значений, я согласился. Правило выгрузки я не делал. Теперь есть правило, осталось только отобрать записи по нужным мне регистраторам и по очереди передать в функцию "ВыгрузитьРегистр". Я выбрал событие ПКО ОперацияБух "После выгрузки в файл" и вставил: А в ПКО "ХозрасчетныйЗапись" вот такие поля: Активность ВалютаДт ВалютаКт ВалютнаяСуммаДт ВалютнаяСуммаКт КоличествоДт КоличествоКт НеКорректироватьСтоимостьАвтоматически Организация Период ПодразделениеДт ПодразделениеКт Регистратор Содержание СубконтоДт СубконтоКт Сумма СуммаВРДт СуммаВРКт СуммаНУДт СуммаНУКт СуммаПРДт СуммаПРКт СчетДт СчетКт Конечно же я получил ошибку, и конечно же связанную с субконто: Ошибка при загрузке данных: {Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(5995)}: Ошибка записи объекта     ТипОбъекта             =  Операция     Объект                 =  Операция 00000000560 от 31.10.2016 10:58:16     ОписаниеОшибки         =  Ошибка при вызове метода контекста (Записать): Запись не верна! Вид субконто "Движения целевых средств" не доступен для данной записи! (Регистр бухгалтерии: Журнал проводок (бухгалтерский и налоговый учет); Номер строки: 2) Т.е. в запросе не хватает СубконтоДт, СубконтоКт. Вот тут я и завис. Как хранятся данные в регистре бухгалтерии? Субконто в отдельной таблице? Тогда как в правилах их перенести ?
#1 by Господин ПЖ
читать книжку по кд. там целая глава и код в демобазе тоже вроде пример есть
#2 by vicof
"Т.е. в запросе не хватает СубконтоДт, СубконтоКт" "Вид субконто "Движения целевых средств" не доступен для данной записи!" как-то не сочетается
#3 by Cyberhawk
В ПКО должны быть ТЧ-движения
#4 by Cyberhawk
А раз ты структуру метаданных загружал в КД без этих ТЧ-движений, то и обломись
#5 by Mr_Best
Спасибо за хороший совет. Выше запрос, выборка не из виртуальной таблицы регистра, в ней поля отсутствуют, а в конвертации присутствует. Не могу понять как конвертация их подтянула, ведь в метаданных этих поле нет !
#6 by Mr_Best
Структуру я загружал с движениями, но не для всех документов, а для тех которым проведение отключено в конфигурации (в метаданных). ОперацияБух относится как раз к такому документу.
#7 by Mr_Best
Но табличной части Хозрасчетный в ПКО ОперацияБух нет, значит она все равно не загрузилась ? (т.е. настройка в выгрузки метаданных не сработала)
#8 by Cyberhawk
Должна быть. В демке посмотри уже
#9 by Господин ПЖ
>а для тех которым проведение отключено в конфигурации (в метаданных) это с наличием движений не связано жестко
#10 by Mr_Best
есть, уже посмотрел. Спасибо что обратил на это внимание. Но движения все равно не переносятся, попробую выгрузить в регистр из ТЧ, отпишусь я ошибся, табличные части движений у этого документа создались ( я только что узнал, что движения оформляются в виде ТЧ объекта :) )
#11 by Mr_Best
В ПКО ОперацияБух "После выгрузки в файл" заменил код обработчика на: КонецЦикла Ошибка изменилась: Ошибка при загрузке данных: {Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(5995)}: Ошибка записи объекта     ТипОбъекта             =  Операция     Объект                 =  Операция 00000000560 от 31.10.2016 10:58:16     ОписаниеОшибки         =  Ошибка при вызове метода контекста (Записать): Запись не верна! Вид субконто "Движения целевых средств" не доступен для данной записи! (Регистр бухгалтерии: Журнал проводок (бухгалтерский и налоговый учет); Номер строки: 2) Вероятно, это уже связанно не с конвертацией, а с разницей настроек субконто в двух базах
#12 by Mr_Best
Спасибо всем за помощь ! Все получилось. Сами по себе движения не выгружались, но это помогло: КонецЦикла А ошибка постом выше была связана не с конвертацией. Тему можно закрывать.
#13 by h-sp
а для видов субконто настроил правило? и есть там такое субконто в 3.0?
#14 by Mr_Best
дополнительно не настраивал ничего, только в ручную правило создал "ХозрасчетныйЗапись" и в ПКО ОперацияБух после выгрузки в файл это: КонецЦикла Но оказалось, что бухгалтера создали счет в источнике (не предопределенный) и он перенесся пустой (субконто не заполнились). После заполнения субконто в приемнике все шикарно загрузилось :)
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям