Конвертация справочника с несколькими верхними уровнями
Добрый день. Конвертация данных (2.1.7.1). Создаю правила для переноса документа из бух 8 в нетиповую бух 7.7. Нужно элемент спр."номенклатура" перенести в группу (наименование этой группы - есть наименование переносимого элемента), далее из этого же элемента у этой группы создать элемент (то есть у него родитель - группа "<наименование переносимого элемента из 8>"). Плюс у этой группы должен быть родитель "группа 2" (наименование к примеру "Товары"), а у этой группы - родитель "группа 3" (наименование к примеру "номенклатура"). ТО есть структура:
группа "Номенклатура"
группа "Товары"
группа "<наименование переносимого элемента из 8>"
элемент "Какой-то"
У меня получается реализовать
группа "<наименование переносимого элемента из 8>"
элемент "Какой-то"
но вот выше уровни не создает...
данную реализацию получаю с помощью ИсходящихДанных. В ПКО для элемента в родителе указываю Исходящие данные и для наименования указываю наименование источника, в ПКО для родителя в ПКС "наименование" ставлю "получить из входящих данных". Пробовала аналогично и для верхних уровней, не получается. Отдельно для каждого уровня создала ПКО родителя. И в значении ПКС "Наименование" указывала моё наименование. Тоже не вышло... Не очень ясно наверно выяснилась, но если кто понял и знает как мне помочь, ответьте, пожалуйста...
группа "Номенклатура"
группа "Товары"
группа "<наименование переносимого элемента из 8>"
элемент "Какой-то"
У меня получается реализовать
группа "<наименование переносимого элемента из 8>"
элемент "Какой-то"
но вот выше уровни не создает...
данную реализацию получаю с помощью ИсходящихДанных. В ПКО для элемента в родителе указываю Исходящие данные и для наименования указываю наименование источника, в ПКО для родителя в ПКС "наименование" ставлю "получить из входящих данных". Пробовала аналогично и для верхних уровней, не получается. Отдельно для каждого уровня создала ПКО родителя. И в значении ПКС "Наименование" указывала моё наименование. Тоже не вышло... Не очень ясно наверно выяснилась, но если кто понял и знает как мне помочь, ответьте, пожалуйста...
По теме из базы знаний
- Под капотом управляемых форм
- Работа со схемой запроса
- Конвертация 2.0. Перенос элементов и групп справочника, имеющих различный вид иерархии (пример).
- Пример переноса справочников, документов и движений через Эксель и "Конвертацию данных 2" из оптовой учетной системы 1С 7.7 Комплексной 4.2 и розничной учетной системы Рарус Торговый комплекс -> в 1С 8.3 ЕРП 2.4 (расширение и дополнительные реквизиты)
- Правила работы с транзакциями 1С
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(9) adva, количество уровней не ограничено. (9) немного не поняла, как в ИсходящиеДанные передать Родителя??? У меня в ПКОэлемента в ПКС родитель написано:
ИсходящиеДанные = Новый Структура;
ИсходящиеДанные.Вставить("Наименование", Источник.НаименованиеПолное);
ИмяПКО = "Номенклатура";
Но в этом ПКС не указано ПКОгруппаэлемента в поле "Правило"
ИсходящиеДанные = Новый Структура;
ИсходящиеДанные.Вставить("Наименование", Источник.НаименованиеПолное);
ИмяПКО = "Номенклатура";
Но в этом ПКС не указано ПКОгруппаэлемента в поле "Правило"
(10) надо так:
ИсходящиеДанные = Новый Структура;
ИсходящиеДанные.Вставить("Наименование", Источник.НаименованиеПолное);
ИсходящиеДанные.Вставить("Родитель", ЗначениеРодителя);
ИмяПКО = "Номенклатура";
Здесь ЗначениеРодителя это:
Если по правилу ПКОноменклатура выгружается только один родитель, то можно указать к примеру 1 (или нужное наименование родителя). Иначе можно попробовать указать "Новый Структура("Наименование, Родитель", ..., ...)
ИсходящиеДанные = Новый Структура;
ИсходящиеДанные.Вставить("Наименование", Источник.НаименованиеПолное);
ИсходящиеДанные.Вставить("Родитель", ЗначениеРодителя);
ИмяПКО = "Номенклатура";
Здесь ЗначениеРодителя это:
Если по правилу ПКОноменклатура выгружается только один родитель, то можно указать к примеру 1 (или нужное наименование родителя). Иначе можно попробовать указать "Новый Структура("Наименование, Родитель", ..., ...)
Еще раз. Имеем (может чего-то упущу, но примерно так):
ПКОноменклатура
ПКС.Наименование
ПКС.ЭтоГруппа (ПередВыгрузкой: Значение = Истина)
ПКОтовары
ПКС.Родитель - ПКОноменклатура (ПередВыгрузкой Значение = Новый Структура("Наименование", "Номенклатура"))
ПКС.Наименование
ПКС.ЭтоГруппа (ПередВыгрузкой: Значение = Истина)
ПКОгруппаэлемента
ПКС.Родитель - ПКОтовары (ПередВыгрузкой Значение = Новый Структура("Наименование", "Товары"))
ПКС.Наименование
ПКС.ЭтоГруппа (ПередВыгрузкой: Значение = Истина)
ПКОэлемента
ПКС.Наименование
ПКС.Родитель - ПКОгруппаэлемента(ПередВыгрузкой: Значение = Новый Структура("Наименование", Источник.Наименование))
ПКС.ЭтоГруппа (ПередВыгрузкой: Значение = Ложь)
ПКОноменклатура
ПКС.Наименование
ПКС.ЭтоГруппа (ПередВыгрузкой: Значение = Истина)
ПКОтовары
ПКС.Родитель - ПКОноменклатура (ПередВыгрузкой Значение = Новый Структура("Наименование", "Номенклатура"))
ПКС.Наименование
ПКС.ЭтоГруппа (ПередВыгрузкой: Значение = Истина)
ПКОгруппаэлемента
ПКС.Родитель - ПКОтовары (ПередВыгрузкой Значение = Новый Структура("Наименование", "Товары"))
ПКС.Наименование
ПКС.ЭтоГруппа (ПередВыгрузкой: Значение = Истина)
ПКОэлемента
ПКС.Наименование
ПКС.Родитель - ПКОгруппаэлемента(ПередВыгрузкой: Значение = Новый Структура("Наименование", Источник.Наименование))
ПКС.ЭтоГруппа (ПередВыгрузкой: Значение = Ложь)
(17) adva, если пишу Значение = Новый Структура("Наименование", Источник.Наименование), то ругается уже на этапе выгрузки из 8. А на исходящие данные не ругается. Может в ПКОэлемента указать родителя. Я вот не оч поняла, какое ЗначениеРодителя вы имели ввиду в (12)...
(22) Natalito, поняла в чем ошибка. написала вместо НаименованиеПолное - ПолноеНаименование. Теперь так ругается Начало выгрузки: 20.11.2013 17:39:15
Ошибка получения значения свойства объекта (по имени свойства источника)
ПКО = Номенклатура (Справочник: Номенклатура)
ПКС = 5 (БазоваяЕдиницаИзмерения --> ЕдиницаИзмерения)
Объект = Структура (Структура)
СвойствоПриемника = ЕдиницаИзмерения (СправочникСсылка.ЕдиницыИзмерений)
ОписаниеОшибки = Поле объекта не обнаружено (БазоваяЕдиницаИзмерения)
ПозицияМодуля = Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(8284)
КодСообщения = 13
Ошибка при выгрузке данных: {Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1694)}: Ошибка получения значения свойства объекта (по имени свойства источника)
ПКО = Номенклатура (Справочник: Номенклатура)
ПКС = 5 (БазоваяЕдиницаИзмерения --> ЕдиницаИзмерения)
Объект = Структура (Структура)
СвойствоПриемника = ЕдиницаИзмерения (СправочникСсылка.ЕдиницыИзмерений)
ОписаниеОшибки = Поле объекта не обнаружено (БазоваяЕдиницаИзмерения)
ПозицияМодуля = Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(8284)
КодСообщения = 13
Как понимаю в структура надо добавить ещё значения для единицы измерения
Ошибка получения значения свойства объекта (по имени свойства источника)
ПКО = Номенклатура (Справочник: Номенклатура)
ПКС = 5 (БазоваяЕдиницаИзмерения --> ЕдиницаИзмерения)
Объект = Структура (Структура)
СвойствоПриемника = ЕдиницаИзмерения (СправочникСсылка.ЕдиницыИзмерений)
ОписаниеОшибки = Поле объекта не обнаружено (БазоваяЕдиницаИзмерения)
ПозицияМодуля = Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(8284)
КодСообщения = 13
Ошибка при выгрузке данных: {Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1694)}: Ошибка получения значения свойства объекта (по имени свойства источника)
ПКО = Номенклатура (Справочник: Номенклатура)
ПКС = 5 (БазоваяЕдиницаИзмерения --> ЕдиницаИзмерения)
Объект = Структура (Структура)
СвойствоПриемника = ЕдиницаИзмерения (СправочникСсылка.ЕдиницыИзмерений)
ОписаниеОшибки = Поле объекта не обнаружено (БазоваяЕдиницаИзмерения)
ПозицияМодуля = Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(8284)
КодСообщения = 13
Как понимаю в структура надо добавить ещё значения для единицы измерения
Сделала КлючВыгружаемыхДанных, но вот с верхним уровнем никак не получается. Создает верхнюю группу, хоть убей!!! Хотя загружает всё в уже существующую, но вот при каждой загрузке всё равно пустая верхняя группа... Уважаемый adva может вы всё же посмотрите правила?
Комментарии к файлу:
ПКО Партии
ПКС.Наименование (поиск) (Значение = "/Нет/Стронг")
ПКО.ЭтоГруппа (поиск)
ПКО.Родитель (здесь не нужно задавать КлючВыгружаемыхДанных).
т.к. для всех партий реквизиты происка одинаковы, то при выгрузке они будут сливаться в один элемент (только если в первый раз были выгружены все партии одновременно, возможен вариант, что они будут искаться по ссылкам, а не по реквизитам поиска, но это только при использовании правил для планов обмена)
КлючВыгружаемыхДанных задается в событии ПередВыгрузкой ПКО, а не ПКС (смотрите "Информация по обработчикам", там это указано)
ПКО Партии
ПКС.Наименование (поиск) (Значение = "/Нет/Стронг")
ПКО.ЭтоГруппа (поиск)
ПКО.Родитель (здесь не нужно задавать КлючВыгружаемыхДанных).
т.к. для всех партий реквизиты происка одинаковы, то при выгрузке они будут сливаться в один элемент (только если в первый раз были выгружены все партии одновременно, возможен вариант, что они будут искаться по ссылкам, а не по реквизитам поиска, но это только при использовании правил для планов обмена)
КлючВыгружаемыхДанных задается в событии ПередВыгрузкой ПКО, а не ПКС (смотрите "Информация по обработчикам", там это указано)
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот