Имя: Пароль:
1C
1С v8
Конвертация субконто в КД2
0 strange2007
 
27.12.09
18:35
Здравствуйте, уважаемые гуру в "Конвертация данных". Подскажите как или что написать, что бы сконвертировать субконто. Есть ПКО для счетов, для всех справочников и для ПВХ. Только для ПВХ указаны связи между предопределенными свойствами (конвертация значений). Как быть, если у меня счет источник имеет 2-е субконто "РешенияДиректоров", а в приемнике "Субконто" (универсальное субконто в УПП) с текстовыми значениями. При чем текстовые значения отличаются от источника.
ПКО для связи справочника "Субконто" с "Субконто" есть и работает прекрасно. Как мне указать это ПКО для конвертации субконто?
1 Jaap Vduul
 
27.12.09
18:37
Текстовое субконто - это зло. Я б убивал за такие.
2 strange2007
 
27.12.09
18:39
(1) А я бы убивал тех, кто вклинивается в стандартную конфу. Млин... писаки ёмаё... Из-за таких потом про всех программистов плохо отзываются.
А по существу? Может подскажете?
3 Jaap Vduul
 
27.12.09
18:56
(2)
В обработчиках Перед/ПриВыгрузке есть параметры ИмяПКО и ИмяПКОВидСубконто. Через них конкретное ПКО и указывается.
4 strange2007
 
27.12.09
19:07
(3) Ну да, для ИмяПКОВидСубконто я указал нужное ПКО "ВидыСубконтоХозрасчетные". Как мне в этом ПКО указать как надо конвертировать описанное выше субконто?
Что-то день уже сижу и не могу сообразить
5 strange2007
 
28.12.09
04:01
up
6 strange2007
 
28.12.09
06:32
У меня идеи кончились, а начальство говорит, что оставит без НГ. ПАМАГИТЕЕЕЕЕ!!!!!!!
7 strange2007
 
28.12.09
08:13
Может кто подскажет?
8 kai17
 
28.12.09
08:59
Если нужно выполнять сопоставление по наименованиям , причем наименование в   некоторых случаях различно , можно использовать Обработчик "Правила конвертации свойств" - Перед выгрузкой  для  сопоставления  по наименованиям .
Например код для реквизита "наименование" перед выгрузкой :
Если Источник = "Имя субконто РешенияДиректоров" Тогда
Значение = "Имя субконто универсальное"  ;
КонецЕсли ;
9 kai17
 
28.12.09
09:03
^(8)При выгрузке :
Если Источник = "Имя субконто РешенияДиректоров" Тогда
ИмяПКО  = "НужноеПравилоКонвертации" ;
КонецЕсли ;
10 strange2007
 
28.12.09
09:36
Я в ПКС кода для ПВХ в "ПередВыгрузкой" вставил код:

Сообщить("Субконто источник: " + ТипЗнч(Источник) + " " + Источник);
Сообщить("Субконто ОбъектКоллекции: " + ТипЗнч(ОбъектКоллекции) + " " + ОбъектКоллекции);
Для Каждого ЭлементСтруктуры Из Источник Цикл
   Сообщить("Ключ структуры: " + ЭлементСтруктуры.Ключ + ". Значение: " + ЭлементСтруктуры.Значение);
КонецЦикла;

Что бы проверить, что там передается. Оно не отрабатывает! Хотя в ПКС выгружаемых остатков указал
ИмяПКОВидСубконто = "ВидыСубконтоХозрасчетные";

Вот поэтому и не знаю что делать
11 strange2007
 
28.12.09
09:41
Хм, в ПриВыгрузке все работает. Спасибо большое. Пошел кодить
12 strange2007
 
28.12.09
09:49
Уважаемый kai17, но ведь источник имеет тип Структура (структуры всегда про субконто), как оно тогда может равняться строке?
13 kai17
 
28.12.09
09:50
(12) Имелось ввиду ПКС реквизита "наименование" а не пко субконто .
14 kai17
 
28.12.09
09:53
(12)  поправка - для субконто аналогично ,  только необходимо редактировать саму структуру а не строку . к сожалению для структуры  пример не приведу .
15 Andy13
 
28.12.09
09:55
Хм, а правило для конвертации СубконтоКотороеЕсть->СубконтоКотороеНадо не судьба?
16 kai17
 
28.12.09
10:04
(13) "текстовые значения приемника отличаются от источника."   В любом случае их придется перечислить  в коде ,   в коде выгрузки объекта ,  или для каждого случая создавать правило  "СубконтоКотороеЕсть->СубконтоКотороеНадо".
17 strange2007
 
28.12.09
10:10
(14) У структуры есть ключ и значение. Ключ="Код", а Значение="0000056". Так вот эта информация о ПВХ. Все нормально. А теперь значения этого ПВХ сопоставить как? Т.е. там как раз есть в источнике элементы справочника "Решения Директоров", а в приемнике справочник "Субконто". Мне бы только указать ПКО где то... не вкупаюсь, где написать. По идее для каждой строки структуры надо ПКО писать
18 strange2007
 
28.12.09
10:11
(15) Да, я написал ПКО для конвертации этих 2-х справочников. Теперь куда его указать?
19 Andy13
 
28.12.09
10:25
Ну, ПКО "ВидыСубконтоХозрасчетные" как я понимаю уже есть. Значит делай ещё ПКО "ВидыСубконтоХозрасчетныеЕщёОдинВариант". И там ставь соответствия как душе угодно. Ну и при конвертации в нужном месте указывай это ПКО.
20 strange2007
 
28.12.09
10:28
(19) Ок. Сделаю. А что в нем писать? В смысле оно зачем? Ведь в ПКО "ВидыСубконтоХозрасчетные" проставляются все соответствия в "Конвертация значений" предопределенные.
Я не знаю как в этом ПКО прописать не предопределенные элементы. Если бы знал, тогда и не надо было бы ни чего думать
21 Andy13
 
28.12.09
10:42
Забавно....
Если субконто текстовое, т.е. не является элементом справочника и т.д. то зачем конвертировать? Зачем ПКО для этого? Я бы при выгрузке написал Значение = СокрЛП(Источник) и не указывал никакого правила.
22 strange2007
 
28.12.09
10:44
(21) Я не так выразился вначале. В УПП есть тип субконто справочник "Субконто". Оно универсальное. Вот его я и пытаюсь совместить с самописанными источниками
23 Andy13
 
28.12.09
10:44
(22) Это справочник?
24 strange2007
 
28.12.09
10:45
(23) да
25 strange2007
 
28.12.09
10:45
Тут уже политический вопрос: как в ПКО ПВХ прописывать ПКО для каждой строки? Создал я в источнике новую строку в ПВХ "Контрагенты" и в приемнике так же. Как мне теперь их скрестить? Куда подставить ПКО "МояКонвертацияКонтрагентов"?
26 strange2007
 
28.12.09
10:47
В (0) фраза "а в приемнике "Субконто" (универсальное субконто в УПП) с текстовыми значениями" ключевая часть "универсальное субконто в УПП". Наверное это и ввело многих в заблуждение
27 Andy13
 
28.12.09
10:50
(25) Ну это перебор... Такие соответствия создаются в в "параметры" перед конвертацией и юзаются потом при выгрузке.
28 strange2007
 
28.12.09
11:01
(27) Хм, а чуть-чуть поподробней можно? Просто именно этот раздел как-то мне не знаком.
29 strange2007
 
29.12.09
07:16
Решил задачу. В КЗ ПКО субконто можно добавлять любые значения!!!!!!!!! Решение на поверхности, а я не видел :(
Всем спасибо