|
Конвертация - Из двух таблиц Источника в одну таблицу Приемника | ☑ | ||
---|---|---|---|---|
0
55reg
18.07.18
✎
16:37
|
Есть УТ 10.3 БП 3
Нужно перенести Оплаты платежными картами и оплаты сертификатами (руками до меня разделили эти оплаты на 2 табличные части Оплаты - Типовая и Гашение под серт - добавленная). У таблиц Источника разные Типы колонок - Справочники.ВидыОплат и Справочники.Номенклатура, суммы - Число. В БП это все одна таблица - Оплаты Организации. Внимание вопрос - как слить в одну таблицу все это хозяйство ??? Делая по очереди - затирает, НеОчищать не помогает естественно... //КоллекцияОбъектов = Источник.ПогашениеПодарочныхСертификатов.Выгрузить(); //Для Каждого СтрокаТЧ Из Источник.ОплатаПлатежнымиКартами Цикл // НоваяСтрока = КоллекцияОбъектов.Добавить(); // ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаТЧ); // Где определять пкс объектов второй таблицы ??? //КонецЦикла; Это помогает - но мне нужно описать правила конвертации свойств ! Так понял таблицы если их сливать должны быть с одинаковыми Типами ? А так выгружает строки без значений (красные подчеркивания в пустых строках) Или это все не возможно ? Всем заранее спасибо за любую инфу... |
|||
1
hhhh
18.07.18
✎
16:41
|
да, опиши правила конвертации свойств сначала
|
|||
2
xxTANATORxx
18.07.18
✎
16:51
|
емнип два отдельных правила нужно
|
|||
3
hhhh
18.07.18
✎
16:54
|
(2) нет, не нужно. просто одно правило, но в табчасти задается Приемник, а источник пусто.
|
|||
4
55reg
18.07.18
✎
17:01
|
Если кто знает - можете пример кода скинуть ? Т е я в ПКГС первой таблицы описываю пкс для обеих таблиц или как ? Так то на словах все просто - а написать то как ?
|
|||
5
55reg
18.07.18
✎
17:04
|
Например ПКС Под серт -> СуммаОплаты у меня вот такой вот еще ...
Если Строка(ОбъектКоллекции.ПодарочныйСертификат) = "Подарочный сертификат 300" Тогда Значение = 300; КонецЕсли; Если Строка(ОбъектКоллекции.ПодарочныйСертификат) = "Подарочный сертификат 500" Тогда Значение = 500; КонецЕсли; Если Строка(ОбъектКоллекции.ПодарочныйСертификат) = "Подарочный сертификат 1000" Тогда Значение = 1000; КонецЕсли; Если Строка(ОбъектКоллекции.ПодарочныйСертификат) = "Подарочный сертификат 1500" Тогда Значение = 1500; КонецЕсли; |
|||
6
55reg
18.07.18
✎
18:35
|
Выгружает но пустые строки .... Как описать правила для второй таблицы ОплатыПлатежнымиКартами...
|
|||
7
hhhh
18.07.18
✎
18:37
|
(6) наверно просто надо
ПКС -> СуммаОплаты зачем ПодСерт ? |
|||
8
55reg
19.07.18
✎
06:32
|
Кажется понял )) Убрал в ТаблицеИсточника все типы, Прописал там для каждой колонки -
Значение = ОбъектКоллекции.ВидОплаты; Значение = ОбъектКоллекции.СуммаОплаты; а в ПКГС первой таблицы что то типа такого (правда пока не получилось синтаксически оформить правильно запрос, Конвертация думает что это реквизиты шапки, а когда таблицы указываешь ругается на синтаксис, если что двумя запросами сделаю к обеим таб частям и солью в одну коллекцию попробую) ТекущийДокумент = Источник.Ссылка; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ОтчетОРозничныхПродажах.ОплатаПлатежнымиКартами.ВидОплаты, | ОтчетОРозничныхПродажах.ОплатаПлатежнымиКартами.Сумма |ИЗ | Документ.ОтчетОРозничныхПродажах.ОплатаПлатежнымиКартами КАК ОтчетОРозничныхПродажахОплатаПлатежнымиКартами |ГДЕ | ОтчетОРозничныхПродажахОплатаПлатежнымиКартами.Ссылка = &ТекущийДокумент | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | ОтчетОРозничныхПродажахПогашение.ПодарочныхСертификатов.ПодарочныйСертификат, | 1 |ИЗ | Документ.ОтчетОРозничныхПродажах.ПогашениеПодарочныхСертификатов КАК ОтчетОРозничныхПродажахПогашениеПодарочныхСертификатов |ГДЕ | ОтчетОРозничныхПродажахПогашениеПодарочныхСертификатов.Ссылка = &ТекущийДокумент"; Запрос.УстановитьПараметр("ТекущийДокумент", ТекущийДокумент); Выборка = Запрос.Выполнить().Выбрать(); КоллекцияОбъектов = Новый ТаблицаЗначений(); КоллекцияОбъектов.Колонки.Добавить("ВидОплаты"); КоллекцияОбъектов.Колонки.Добавить("Сумма"); Пока Выборка.Следующий() Цикл СтрокаТаблицы = КоллекцияОбъектов.Добавить(); СтрокаТаблицы.ВидОплаты = Выборка.ВидОплаты; СтрокаТаблицыЗП.Сумма = Выборка.Сумма; КонецЦикла; |
|||
9
Optan
19.07.18
✎
06:51
|
(0) В ПВД собери две ТЧ в 1 используя свои преобразования как, например, в (5).
В ПКО для составного реквизита ТЧ в событии "Перед выгрузкой" управляй переменной "ИмяПКО" в зависимости от типа значения. Либо сразу при заполнении ТЧ все преобразовывай единообразно. У тебя для ТЧ=ПогашениеПодарочныхСертификатов в колонке Номенклатура в БП что будет стоять? |
|||
10
55reg
19.07.18
✎
07:03
|
Опять касяк какой то ! Такое ощущение что запрос ничего не выдает ! А как это проверить !? В консоли запросов все формируется
Ошибка в обработчике события ПередОбработкойВыгрузки группы свойств ПКО = ОтчетОРозничныхПродажах (Документ: Отчет о розничных продажах) ПКГС = 46 (--> Оплата) Объект = Отчет о розничных продажах ЗВС00000110 от 18.07.2018 20:03:55 (Документ объект: Отчет о розничных продажах) Обработчик = ПередОбработкойВыгрузкиГруппыСвойств ОписаниеОшибки = Поле объекта не обнаружено (ВидОплаты) ПозицияМодуля = (28) КСообщенияОбОшибках = 48 |
|||
11
55reg
19.07.18
✎
07:09
|
(9) В БП3 - ТипОплатыОрганизации (Это все работает но по отдельности) Да, описывал конечно как нужно конвертировать из УТ Тип Номенклатура в Тип Вид оплат для БП.
У меня все выгружало но затирало друг друга т е или серт или оплаты ) Как описать, без отдельного ПКС, в ПКГС ОДНОЙ таблицы для двух, как нужно конвертировать Номенклатуру в вид оплаты я незнаю в этом и проблема... Увы про ПВД и дальше ничего не понял ... Видимо еще мало опыта. ps Неделя к концу мотивации все меньше и меньше этим заниматься - проще такую же табличную часть в БП добавить ))) |
|||
12
Мимохожий Однако
19.07.18
✎
07:19
|
Попробуй запросом получить одну таблицу из двух в источнике
|
|||
13
55reg
19.07.18
✎
07:23
|
Лучшая работа в мире, лучшая работа в жизни!
Ярость (2014) зы Всем огромное спасибо за поддержку ! Под конец сам себя перемудрил. Да, в итоге запросом получил - и передал в Коллекцию (почти так как описывал выше только синтаксис нужно подправить и логику) Чуть позже отпишу как точно нужно писать, вдруг кому то пригодиться ! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |