|
Конвертация данных, подчиненный справочник в табличную часть справочника. | ☑ | ||
---|---|---|---|---|
0
Andreyyy
15.07.12
✎
07:26
|
Есть конфигурации УТ11 и Общепит.
В УТ11 есть справочник "Упаковки". В Общепите в справочнике номенклатура табличная часть "ОбщепитЕдиницыИзмерения" Ума не приложу как правило написать , с КД только начинаю. В какую сторону копать ? |
|||
1
Rie
15.07.12
✎
07:32
|
(0) Тебе элементы справочника Упаковки надо в табличную часть преобразовать?
Если так - то в ПКО для Номенклатура ПередВыгрузкой собираешь все её упаковки в таблицу значений - и эта таблица значений будет источником для группы ПКС для табличной части ОбщепитЕдиницыИзмерения. |
|||
2
Andreyyy
15.07.12
✎
07:42
|
(1) Блин, наверно без прочтения мануалов нахрапом не взять, туго понимаю механизм. Пойду читать.
|
|||
3
echo77
15.07.12
✎
08:13
|
(2) Долго будешь читать, долго будешь понимать
|
|||
4
Andreyyy
15.07.12
✎
08:33
|
(3) Ну с голой пяткой на шашку тоже не полезешь.
|
|||
5
Rie
15.07.12
✎
08:44
|
(2) В (1) я неправильно написал - не ПередВыгрузкой, а ПередОбработкой.
Если о данной конкретной задаче - представь себе, что переносится не подчинённый справочник в табличную часть, а табличная часть в табличную часть. Для этого создаётся группа правил конвертации свойств. Точно так же и в твоём случае, только у тебя нет табличной части в исходном справочнике. Но посмотри на параметры события ПередОбработкой для группы ПКС. Там есть параметр КоллекцияОбъектов. Если назначен источник (например, табличная часть) - он и будет этим параметром. В твоём случае - создаёшь сам: КоллекцияОбъектов = Новый ТаблицаЗначений; КоллекцияОбъектов.Колонки.Добавить("..."); // какие там колонки тебе понадобятся. А дальше - заполняешь КоллекцияОбъектов из подчинённого справочника. |
|||
6
Andreyyy
15.07.12
✎
09:40
|
(5) В "ПередОбработкой" группы ПКС написал так:
КоллекцияОбъектов = Новый ТаблицаЗначений; КоллекцияОбъектов.Колонки.Добавить("ЕдиницаПоКлассификатору"); КоллекцияОбъектов.Колонки.Добавить("Коэффициент"); КоллекцияОбъектов.Колонки.Добавить("Точность"); Выборка = Справочники.УпаковкиНоменклатуры.Выбрать(, Источник.Ссылка); Пока Выборка.Следующий() Цикл СтрокаКоллекции = КоллекцияОбъектов.Добавить(); СтрокаКоллекции.ЕдиницаПоКлассификатору = Выборка.ЕдиницаИзмерения; СтрокаКоллекции.Коэффициент = Выборка.Коэффициент; СтрокаКоллекции.Точность = 3; КонецЦикла; По какой-то причине в табличную часть справочника загружается строка без заполненных значений. Может еще как-то нужно укзать явно к СтрокаКоллекции.ЕдиницаПоКлассификатору правило ПКО ? |
|||
7
Rie
15.07.12
✎
09:57
|
(6) А ПКС внутри группы - какие имеются?
|
|||
8
Andreyyy
15.07.12
✎
10:11
|
(7) Неа, тоже что-то прописать нужно ? О_о
|
|||
9
Andreyyy
15.07.12
✎
10:15
|
(7) Для каждого реквизита и галку "Получить из входящих данных" ?
|
|||
10
Rie
15.07.12
✎
10:16
|
(8) Разумеется. Каждому (нужному) реквизиту табличной части справочника-получателя должно соответствовать ПКС, которое сформирует значение этого реквизита.
(9) В данном случае - нет, поскольку не из входящих данных берутся значения, а из источника (которым выступает та самая КоллекцияОбъектов). |
|||
11
Andreyyy
15.07.12
✎
10:20
|
(10) Разрази меня гром ! Чудо конвертация отработала как надо.
Огроменное спасибо ! |
|||
12
Gobseck
15.07.12
✎
10:25
|
Закладка
|
|||
13
Skylark
15.07.12
✎
10:49
|
Конвертация данных это чистый термояд.
Причем говорят, что официальная стратегия 1С, при всех обменах применять технологию КД. |
|||
14
Агент Инфостарта
15.07.12
✎
13:14
|
(13) У вас мозг..., вы просто не умеете её готовить.
|
|||
15
Skylark
15.07.12
✎
15:32
|
(14) Я в положительном смысле - очень мощный инструмент, если вы не поняли.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |