|
v8: Конвертация Данных. Прировнять ТЧ к фиксированному значению при загрузке. | ☑ | ||
---|---|---|---|---|
0
Кукалёв Анатолий
04.12.11
✎
21:37
|
Юзаю конфу КонвертацияДанных. Выгрузку делаю для документа ПоступленияТУ. Выгружая ТабЧасть документа, надо заменить всю номенклатуру на единственную, которую задаю при загрузке. Т.е. что бы на приемнике был документ ПоступленияТУ в ТабЧасти которого была всего лишь 1а строка с 1й номенклатурой, не зависимо от того сколько строк было в Источнике. Поле Количество плюсуются, а Цена фиксирована = 100руб.
Задавать значения при загрузке я научился. Как сделать равенство введенного Параметр.Номенклатура с загруженными и как свернуть потом конечный вариант до 1й строки ? |
|||
1
Rie
04.12.11
✎
21:39
|
(0) Выгрузил в таблицу значений, заменил, свернул, выгрузил в КоллекцияОбъектов.
|
|||
2
Кукалёв Анатолий
04.12.11
✎
21:44
|
Примерчик низя, хотябы краткий ?
|
|||
3
Кукалёв Анатолий
04.12.11
✎
21:49
|
Как создать ТЗ и в каком разделе. Как поместить в ТЗ из какого раздела ? "выгрузил в КоллекцияОбъектов" - это как ? Как потом загрузить в документ ?
|
|||
4
Rie
04.12.11
✎
21:52
|
Делаешь группу правил для табличной части. Для неё задаёшь обработчик ПередОбработкой. В нём что-то вроде
КоллекцияОбъектов = Источник.ТвояТаблЧасть.Выгрузить(); КоллекцияОбъектов.Свернуть("ТвоиКолонки","Сумма,Количество,Прочее"); КоллекцияОбъектов[0].Номенклатура = Параметры.Номенклатура; |
|||
5
Кукалёв Анатолий
04.12.11
✎
22:16
|
ок попробую спс
|
|||
6
Кукалёв Анатолий
04.12.11
✎
23:14
|
что то смотрел, смотрел ... Где найти ПередОбработкой ?
|
|||
7
Кукалёв Анатолий
04.12.11
✎
23:16
|
в какой обработчик вставить КоллекцияОбъектов = Источник.ТвояТаблЧасть.Выгрузить(); ?
|
|||
8
Кукалёв Анатолий
04.12.11
✎
23:49
|
Не думал что так сложна на практике КД ))
|
|||
9
Кукалёв Анатолий
05.12.11
✎
00:49
|
все, уже залипаю, но так и не разобрался куда это все вставлять.
|
|||
10
Кукалёв Анатолий
05.12.11
✎
03:59
|
Создал правило для номенклатуры. В нем написал (Перед загрузкой): Объект = Параметры.НоваяНом;
Но почему-то в документе старая номенклатура. Как заменить на новую номенклатуру? |
|||
11
Rie
05.12.11
✎
05:31
|
(10) Не надо правило для номенклатуры. Речь о документе? Вот и работаешь с ПКО документа. К этому ПКО идут правила конвертации свойств. Создаёшь группу ПКС - которая и будет отвечать за конвертацию твоей табличной части - и этой группы ПКС задаёшь обработчик ПередОбработкой, в котором пишешь так, как в (4).
|
|||
12
Кукалёв Анатолий
05.12.11
✎
05:43
|
Так не прокатывает. Дело в том что параметр Номенклатура задается при загрузке. тут же идет вызов при выгрузке. Как быть ?
|
|||
13
Rie
05.12.11
✎
05:45
|
(12) Задавай параметр при выгрузке. И при выгрузке всё это и проделывай.
Чем меньше делаешь при загрузке - тем лучше. |
|||
14
Кукалёв Анатолий
05.12.11
✎
05:45
|
Так не получиться, т.к. номенклатура из базы приемника.
|
|||
15
Кукалёв Анатолий
05.12.11
✎
05:46
|
Как я могу задать параметр из базы приемника, находясь в источнике ?
|
|||
16
Кукалёв Анатолий
05.12.11
✎
05:46
|
:)
|
|||
17
Rie
05.12.11
✎
05:47
|
(14) Ну и что? У неё же есть Код, Наименование - или по чему там у тебя поиск идёт?
Задай специальное ПКО для такой номенклатуры. По нему и конвертируй номенклатуру в той табличной части того документа, который тебе нужен. |
|||
18
Rie
05.12.11
✎
05:48
|
(15) Легко - если сообразишь, как работают правила (для этого полезно читать умные книжки и думать).
|
|||
19
Кукалёв Анатолий
05.12.11
✎
05:50
|
Я так понимаю вариант задать конкретный код находясь в источнике ? - это точно не вариант, т.к. он может и поменяться ...
|
|||
20
Кукалёв Анатолий
05.12.11
✎
05:51
|
(18) - как ?
|
|||
21
Кукалёв Анатолий
05.12.11
✎
05:51
|
Дай ссылку на умную книжку
|
|||
22
Кукалёв Анатолий
05.12.11
✎
05:52
|
Я люблю читать такой минуал. Проблема в том что его трудно найтить ))
|
|||
23
Rie
05.12.11
✎
05:57
|
(19) Если очень хочешь выбирать номенклатуру в приёмнике - то сверни свою ТЧ в источнике, а в приёмнике ПослеЗагрузки _документа_ - пройдись по уже созданной ТЧ и замени номенклатуру на ту, которая тебе нужна.
(21) Например, Бояркин В.Э., Филатов А.И. "1С:Предприятие 8. Конвертация данных. Обмен данными между прикладными решениями". |
|||
24
Кукалёв Анатолий
05.12.11
✎
06:01
|
1) Легко сказать, пройдись - еще бы знать как ?
2) это авторы а не ссылки :) |
|||
25
Кукалёв Анатолий
05.12.11
✎
06:03
|
(23) Давай опустим свертку. Как вообще заменить параметр в таблице источнике на нужное значение при загрузке в приемник ?
|
|||
26
Rie
05.12.11
✎
06:03
|
(23)
1. Как? Да точно так же, как проходишься по ТЧ объекта в программе :-) ПослеЗагрузки у тебя уже готовый ДокументОбъект - что хочешь с ним, то и делай. 2. Это - ссылка. Но не гиперссылка :-) |
|||
27
Rie
05.12.11
✎
06:05
|
(25) Вот представь себе - надо поменять в документе одну номенклатуру на другую номенклатуру. Например, в подписке на событие ПриЗаписи документа.
Вот точно так же делаешь и в КД ПослеЗагрузки (разве что параметр называется Объект, а не Источник). |
|||
28
Кукалёв Анатолий
05.12.11
✎
06:17
|
1) - все получилось. замещает на нужную из параметра.
2) - ужо скачал |
|||
29
Кукалёв Анатолий
05.12.11
✎
06:17
|
осталось тока свернуть таблицу. ну я так понимаю сдесь же и можно свернуть?
|
|||
30
Rie
05.12.11
✎
06:24
|
(29) Можешь здесь же.
Но чем больше сделаешь при выгрузке, а не при загрузке, - тем лучше. |
|||
31
Кукалёв Анатолий
05.12.11
✎
06:49
|
Согласен. Но только эту выгрузку надо подготовить для "бабулек" )) Если бы для себя, я бы сделал все при загрузке на источнике.
Все работает. Спасибо. |
|||
32
Rie
05.12.11
✎
06:51
|
(31) И "для бабулек" - никакой разницы. Конвертация для них - чёрный ящик.
|
|||
33
Кукалёв Анатолий
05.12.11
✎
07:13
|
Они не будут вводить код номенклатуры)
|
|||
34
Rie
05.12.11
✎
07:20
|
(33) Код им вводить и не обязательно. Правила поиска можно настроить не только по коду. Можно настроить даже так, что бабушкам надо будет ввести "моя любимая номенклатура". Или вообще ничего не вводить (обработчики, срабатывающие при выгрузке, сами за них всё сделают).
|
|||
35
Кукалёв Анатолий
05.12.11
✎
07:31
|
Это как ?
|
|||
36
Кукалёв Анатолий
05.12.11
✎
07:32
|
Тут проблема одна, найти нужную номенклатуру на приемнике. Т.к. бабульки не одни, выгрузка для некоторых клиентов, то задать жестко номенклатуру низя. Соответственно тока при загрузке данных.
|
|||
37
Rie
05.12.11
✎
07:44
|
(36) Принцип простой: "Работает? Не трогай!" :-)
Можно было бы сделать иначе? Скорее всего да. Нужно ли было делать иначе? ХЗ. Сделал так и работает - ну и пусть себе работает! |
|||
38
Кукалёв Анатолий
05.12.11
✎
07:46
|
Согласен. Еще раз спс
|
|||
39
Кукалёв Анатолий
05.12.11
✎
07:47
|
пошел ка я ... спать ))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |