|
Конвертация данных. Из множества документов один | ☑ | ||
---|---|---|---|---|
0
john_ddd
18.03.12
✎
14:49
|
Подскажите, бьюсь второй день.
Две конфигурации нужно из первой за период выгрузить все Реализации, а во вторую загрузить как один документ. Что я делал: 1. Создал ПВД Произвольный алгоритм. Там запрос и все вставляю в Структуру. 2. Создал ПКО поставил галочку получать из входящих данных Только вот чето не получается...может в ПКО нужно еще чего писать в событиях? |
|||
1
Aleksey
18.03.12
✎
14:50
|
ВыгрузитьПоПравилу пробовал?
|
|||
2
john_ddd
18.03.12
✎
14:52
|
да в ПВД написал вот чего...не знаю чего писать в ПКО
Запрос = Новый запрос(); Запрос.текст = "ВЫБРАТЬ | РасходнаяНакладнаяСписокНоменклатуры.Номенклатура, | РасходнаяНакладнаяСписокНоменклатуры.Количество, | РасходнаяНакладнаяСписокНоменклатуры.Цена, | РасходнаяНакладнаяСписокНоменклатуры.Сумма |ИЗ | Документ.РасходнаяНакладная.СписокНоменклатуры КАК РасходнаяНакладнаяСписокНоменклатуры"; Выборка = запрос.Выполнить().Выбрать(); ТоварыНаСкладах = Новый ТаблицаЗначений(); ТоварыНаСкладах.Колонки.Добавить("Номенклатура"); ТоварыНаСкладах.Колонки.Добавить("Количество"); ТоварыНаСкладах.Колонки.Добавить("Цена"); ТоварыНаСкладах.Колонки.Добавить("Сумма"); ДатаВыгрузки = ТекущаяДата(); Пока Выборка.Следующий() Цикл СтрокаТоваров = ТоварыНаСкладах.Добавить(); СтрокаТоваров.Номенклатура = Выборка.Номенклатура; СтрокаТоваров.Количество = Выборка.Количество; СтрокаТоваров.Цена = Выборка.Цена; СтрокаТоваров.Сумма = Выборка.Сумма; КонецЦикла; ИсходящиеДанные = Новый Структура; ИсходящиеДанные.Вставить("Номер", "001"); ИсходящиеДанные.Вставить("Дата", ДатаВыгрузки); ИсходящиеДанные.Вставить("СписокНоменклатуры", ТоварыНаСкладах); ВыгрузитьПоПравилу(, , ИсходящиеДанные,, "РасходнаяНакладная"); |
|||
3
nicxxx
18.03.12
✎
14:53
|
||||
4
john_ddd
18.03.12
✎
14:59
|
nicxxx там про 7.7.....не понятно
|
|||
5
nicxxx
18.03.12
✎
15:06
|
сложно для 8.1 код доработать?
|
|||
6
john_ddd
18.03.12
✎
15:12
|
В этом примере вообще нет ВыгрузитьПоПравилу
В ПКО при загрузке что нужно писать? |
|||
7
patapum
18.03.12
✎
15:14
|
||||
8
patapum
18.03.12
✎
15:14
|
в 26 сообщении то, что тебе должно помочь
|
|||
9
acsent
18.03.12
✎
15:19
|
ВходящиеДанные нужно использовать
|
|||
10
john_ddd
18.03.12
✎
17:00
|
В ПВД Перед обработкой написал, как в 26 сообщении:
Запрос = Новый запрос(); Запрос.текст = "ВЫБРАТЬ | РасходнаяНакладнаяСписокНоменклатуры.Номенклатура, | РасходнаяНакладнаяСписокНоменклатуры.Количество, | РасходнаяНакладнаяСписокНоменклатуры.Цена, | РасходнаяНакладнаяСписокНоменклатуры.Сумма |ИЗ | Документ.РасходнаяНакладная.СписокНоменклатуры КАК РасходнаяНакладнаяСписокНоменклатуры"; Выборка = запрос.Выполнить().Выбрать(); ТаблицаДанные = Новый ТаблицаЗначений; ТаблицаДанные.Колонки.Добавить("Номер", Новый ОписаниеТипов("Строка")); ТаблицаДанные.Колонки.Добавить("Дата", Новый ОписаниеТипов("Дата")); ТаблицаДанные.Колонки.Добавить("ПометкаУдаления", Новый ОписаниеТипов("Булево")); ТаблицаДанные.Колонки.Добавить("СуммаПоДокументу", Новый ОписаниеТипов("Число")); ТаблицаДанные.Колонки.Добавить("СписокНоменклатуры", Новый ОписаниеТипов("ТаблицаЗначений")); СписокНоменклатуры = Новый ТаблицаЗначений(); СписокНоменклатуры.Колонки.Добавить("Номенклатура", Новый ОписаниеТипов("СправочникСсылка.Номенклатура")); СписокНоменклатуры.Колонки.Добавить("Количество"); СписокНоменклатуры.Колонки.Добавить("Цена"); СписокНоменклатуры.Колонки.Добавить("Сумма"); Пока Выборка.Следующий() Цикл СтрокаТоваров = СписокНоменклатуры.Добавить(); СтрокаТоваров.Номенклатура = Выборка.Номенклатура; СтрокаТоваров.Количество = Выборка.Количество; СтрокаТоваров.Цена = Выборка.Цена; СтрокаТоваров.Сумма = Выборка.Сумма; КонецЦикла; НоваяСтрокаДанные = ТаблицаДанные.Добавить(); НоваяСтрокаДанные.Номер = "001"; НоваяСтрокаДанные.Дата = ТекущаяДата(); НоваяСтрокаДанные.ПометкаУдаления = Ложь; НоваяСтрокаДанные.СуммаПоДокументу = 123; НоваяСтрокаДанные.СписокНоменклатуры = СписокНоменклатуры; ВыборкаДанных = ТаблицаДанные; Выдает ошибку при выгрузке: Ошибка получения свойства объекта из входящих данных ПКО = РасходнаяНакладная (Документ: Расходная накладная) ПКС = 2 ( --> Номер) Объект = СтрокаТаблицыЗначений (Строка таблицы значений) СвойствоПриемника = Номер (Строка) ОписаниеОшибки = Получение элемента по индексу для значения не определено ПозицияМодуля = ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(8211) КодСообщения = 68 Ошибка при выгрузке данных: {ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1618)}: Ошибка получения свойства объекта из входящих данных ПКО = РасходнаяНакладная (Документ: Расходная накладная) ПКС = 2 ( --> Номер) Объект = СтрокаТаблицыЗначений (Строка таблицы значений) СвойствоПриемника = Номер (Строка) ОписаниеОшибки = Получение элемента по индексу для значения не определено ПозицияМодуля = ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(8211) КодСообщения = 68 чего неправильно написал? а в ПКО Перед загрузкой надо чего писать? |
|||
11
patapum
18.03.12
✎
18:00
|
у тебя таб часть дока называется СписокНоменклатуры? Имена должны соответствовать именам реквизитов и таб частей
больше нигде ничего писать не надо |
|||
12
patapum
18.03.12
✎
18:07
|
извини, ерунду я написал
у тебя фигня в том, что в ПКСах стоит Получить из вх. данных похоже |
|||
13
john_ddd
18.03.12
✎
18:12
|
patapum спасибо)) так и есть снял галочки все получилось)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |