![]() |
![]() |
![]() |
|
v8: Правила конвертации для предопределенных элементов справочника. | ☑ | ||
---|---|---|---|---|
0
Said_We
14.02.08
✎
15:44
|
Сел тут посмотреть чем конвертация данный занимается.
Релиз "Конвертация данных", редакция 2.0 (2.0.20.1) Есть простая задача. Из БП в УПП перенос всего всего, но остановимся на простом справочнике "ТерриториальныеУсловия". В этом справочние есть 7 предопределенных элементов. По коду и т.д. в УПП и в БП они совпадают. Если рисовать отдельное правило для этого справочника, то при переносе вопросов нет, если же для всех оббъектов, то при переносе терряются два элемента "МКС" и "РКС". Т.е. эти элементы отсутствуют при выгрузке данных и выдается сообщение вида: "Не найдено соответствие для значения Источника" - выдается столько раз сколько элементов потерялось. Для других справочников оно может быть другим. например из 43 только 32 и.т.д. Посмотрел в чем причина - не правильно XML разбирается. Проглатывает часть веток и в итоге соответствие получается не полное, хотя в самом XML все есть. Если для территориальных условий завести еще один не пердопределенный элемент справочника, то он тоже не выгружается в выгрузку с той же ошибкой. Хотя для него и не должно быть задано правило, так как это не предопределенный. Даже если правило отдельно состовлять. Даже если справочник выгружать отдельно. У меня такое впечатление, что я что-то сильно упустил. |
|||
1
ТелепатБот
гуру
14.02.08
✎
15:44
|
||||
2
Said_We
15.02.08
✎
10:42
|
Сделал еще одни эксперемент.
из БП 1.5.20.2 в УПП 1.2.11.1 Создал единственное правило переноса справочника "Склады". При этом зачем-то зоздался следующий узел. <Правило Отключить="false"> <Код>ТерриториальныеУсловия</Код> <Наименование>ТерриториальныеУсловия</Наименование> <Порядок>50</Порядок> <СпособОтбораДанных>СтандартнаяВыборка</СпособОтбораДанных> <ОбъектВыборки>СправочникСсылка.ТерриториальныеУсловия</ОбъектВыборки> </Правило> Если его удалить, то все ок. А зачем он создается? При этом его видно только когда правила в универасальной выгрузке загружаешь, а в КД его не видно. |
|||
3
Господин ПЖ
15.02.08
✎
10:48
|
насчет выгрузки предопределенных + непредопределенных вместе - была такая проблема возможно её решили в 2.0.21.1
|
|||
4
Said_We
15.02.08
✎
11:46
|
(3) Если решили, то это радует. Сейчас попробую.
Ну у меня и глупый вопрос. Если значений перечислений в Источнике больше чем в приемнике, как отказаться от переноса того или иного значения в справочниках и документах. Т.е. что бы это значение просто не заполнялось. Подозреваю что это в каких-то событиях рисуется. |
|||
5
Господин ПЖ
15.02.08
✎
11:51
|
(4) Событие ПередВыгрузкой:
Если Источник.Перечисление = Перечисления.Блабла.Блабла Тогда Отказ = 1; // или Отказ = Истина, если 8->8 КонецЕсли; |
|||
6
Said_We
15.02.08
✎
12:09
|
Это в каждом справочнике и документе прописать или на всем правиле можно сразу?
|
|||
7
Defender aka LINN
15.02.08
✎
12:17
|
(6) В ПередКонвертациейОбъекта можно написать.
|
|||
8
Господин ПЖ
15.02.08
✎
12:19
|
(6) Не понял о чем речь. У тебя в каждом справочнике есть одно и тоже перечисление как реквизит чтоли? Можно создать Группу правил - то что пишется в группе выполняется для всех правил входящих в группу.
|
|||
9
Said_We
15.02.08
✎
16:12
|
(8) Нет не в каждом. Но там где есть необходимо если нет соответствия в УПП, то не заполнять реквизит вовсе. Т.е. что бы не в каждый раз прописывать, а только один раз для всех правил.
(7) Сейчас поробую. Спасибо. |
|||
10
Said_We
17.02.08
✎
19:16
|
Прописал в правеле конвертации объектов у перечисления ВидыСобытийОС в "Перед выгрузкой объекта"
Если Источник = Перечисления.ВидыСобытийОС.НачислениеАмортизации Или Источник = Перечисления.ВидыСобытийОС.ПринятиеКУчетуСВводомВЭксплуатацию Тогда //Сообщить(Источник); Отказ = Истина; КонецЕсли; |
|||
11
Said_We
17.02.08
✎
20:31
|
Нарисовал правило выгрузки справочника "СпособыОтраженияЗарплатыВРеглУчете".
Создал все по умолчанию. Вылетает ошибка: " {Обработка.УниверсальныйОбменДаннымиXML(5796)}: Ошибка при получении значения атрибута контекста (Имя): Выполнение операции невозможно, т.к. строка была удалена. ИмяПКО = ПКОСвойств.Имя; по причине: Выполнение операции невозможно, т.к. строка была удалена. " При этом заметил следующее в правилах выгрузки присутствуют справочники при этом в двойном экземпляре на закладке выгрузка в обработке: БанковскиеСчета БанковскиеСчета БланкиСтрогойОтчетности БланкиСтрогойОтчетности ...и т.д. ЦенныеБумаги ЦенныеБумаги Зачем в двойном-то? В самом Файле XML все в одном экземпляре. Глюк? |
|||
12
Said_We
17.02.08
✎
22:26
|
Хорошо что данный справочник в данном конкретном случае можно не переносить.
|
|||
13
Said_We
18.02.08
✎
11:49
|
У меня вопрос.
Кто нибудь вообще занимался переносом из БП в УПП? |
|||
14
Shutov
18.02.08
✎
12:14
|
(13) Занимаюсь переносом из БП в УТ (Конвертация данных 2.0.20.1), глюков тоже ловлю.
Скажи, у тебя (10) сработало? |
|||
15
Said_We
18.02.08
✎
12:30
|
(14) Да. Но только на "Конвертация данных", редакция 2.0 (2.0.21.1)
|
|||
16
Said_We
18.02.08
✎
12:33
|
План счетов придется только сами счета перегнать и заполнять ручками, так как КД не чего не знает про то что счет подчинен какому-то другому счету и про то что те аналитики, которые не синхронизированы надо просто пустое значение заполнить. Т.е. как только начинаешь заполнять ПКЗ, то должен заполнить все или не заполнять вовсе. Странно это. То что заполнено, то ок, то что не заполнено то по моему и не надо.
|
|||
17
Said_We
18.02.08
✎
13:05
|
(14) на 2.0.20.1 не работает совсем...
|
|||
18
Said_We
18.02.08
✎
14:00
|
Так что с ПС.
|
|||
19
Said_We
18.02.08
✎
14:45
|
(14) Ну что на 2.0.21.1 попробовал?
Только надо все ПКЗ грохать или все соответствия устанавливать. Т.е. либо все либо не чего. И сразу грохать во всех правилах галочку связь по IDD. Пусть ищет по тому по чем искать сказали. При обмене может IDD и нужен, а при разовом переносе к чему он. |
|||
20
Shutov
18.02.08
✎
16:49
|
(19) Только прислали 21.1, сейчас распакую, оттестю и отпишусь тут.
Связь по IDD - это по внутренним идентификаторам? А какая разница даже если эта фишка будет, ведь база Приемник пустая? |
|||
21
Said_We
18.02.08
✎
17:57
|
(20) Фишка в предопределённых элементах справочников и значениях перечислений.
Ошибка вылазиет при переносе, если будет указана ПКЗ. Их кстате тоже надо грохать или не создавать. |
|||
22
Said_We
19.02.08
✎
09:00
|
К (21) Или создавать правила для каждого и не забыть не про одного предопределенного из Источника.
|
|||
23
Said_We
19.02.08
✎
12:01
|
Повторюсь.
Кто нибудь вообще занимался переносом из БП в УПП? |
|||
24
FanatToNight
19.02.08
✎
12:08
|
23. я всё таскал по ОЛЕ. Когда применяешь этот метод, то думаешь не над тем "КАК Перенести", а над тем, "ЧТО Перенести". Половина забот отпадает..
Каждый сам решает для себя.. |
|||
25
Said_We
19.02.08
✎
14:24
|
(24) По OLE это понятно. Но евсли у тебя есть только *.cf, то узнать что проблематично. Единственное что я на растоянии смог предварительно определить - какие типы объектов в принципе тянуть не надо, так как они пустые, т.е. нет записей совсем. По ОЛЕ хорошо тянуть когда есть реальная база.
|
|||
26
Shutov
19.02.08
✎
19:39
|
(21) Правильно ли понял, чтобы не было ошибки при конвертации не идентичных (отличающихся в Приемнике и Источнике) значений (для предопределенных элементов справочников и значений перечислений) нужно убрать у объекта все правила конвертации значений (ПКЗ)? То есть тогда поиск уже будет осуществляться в соответствии с конвертацией свойств - для справочников, и по своим правилам прописанным в коде - для перечислений?
|
|||
27
Shutov
19.02.08
✎
21:28
|
(26) Ну да, что-то типа того...
|
|||
28
Said_We
20.02.08
✎
09:20
|
(26) Я Думаю что изначально ПКЗ делались для того, что бы заменять конкретное значение на конкретное вне зависимости от ПКС.
Т.е. нашли в ПКЗ и ПКС уже не смотрят. Но реальность такова, что работает ... точнее не работает сейчас в этом режиме. А работает как описано выше. Я думаю, что это глюк. Могу конечно ошибаться, но на мой взгляд было бы логичнее именно так. |
|||
29
Said_We
21.02.08
✎
10:17
|
(24) Вы знаете, я тоже решил кое-что по ОЛЕ дернуть, так как проще будет.
Часть данных с помощью конвертации, те что тащаться сами, а те что "выпендриваются" те по ОЛЕ. |
|||
30
Said_We
22.02.08
✎
09:15
|
В общем мои впечатления от КД остались такие же как и шесть лет назад о КД на 7.7. Ну может чуть лудше стало, а как было сырым так и осталось.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |