|
Конвертация. Номенклатура, ХранилищеДополнительнойИнформации |
☑ |
0
Хранитель Совести
21.06.12
✎
11:00
|
Здравствуйте!
Это мое первое сообщение на форуме, поэтому не судите строго, если случайно попал не в ту ветку или еще чего нибудь не так..
Суть вопроса: при переносе данных из самописной конфигурации в УПП (1.3.26.1) с помощью Конвертации Данных (2.1.5.1) некорректно переносится справочник Номенклатура.
Элемент справочника создается, НО при попытке его открыть выскакивает сообщение "Ошибка при установке значения атрибута контекста (Картинка)". Указана также причина - Несоответствие типов.
В Процедуре ПередОткрытием() формы элемента справочника, в первой строке, переменной должно присваиваться значение типа Картинка, а там - ДвоичныеДанные.
Вот эта строка:
мТекущееОсновноеИзображение = ОсновноеИзображение.Хранилище.Получить();
В обеих конфигурациях справочники ХранилищеДополнительнойИнформации идентичны. В ПКС при конвертации всем свойствам и реквизитам автоматически проставляются корректные соответствия.
Помогите пожалуйста разобраться, что не так?
Если информации не достаточно, спрашивайте.
Заранее спасибо)
|
|
1
andrewks
21.06.12
✎
11:25
|
сохрани содержимое хранилища в файл, вместе посмотрим, чё там внутри
|
|
2
Хранитель Совести
21.06.12
✎
11:54
|
Нашел в чем несоответствие.
В конфигурации-источнике, перед присвоением реквизиту ОсновноеИзображение значения типа Картинка, из Хранилища вытаскиваются двоичные данные и конвертируются в картинку. Вот фрагмент этого кода:
Картинка = Новый Картинка(Объект.ОсновноеИзображение.Хранилище.Получить());
ОсновноеИзображение = ПоместитьВоВременноеХранилище(Картинка, ЭтаФорма.УникальныйИдентификатор);
|
|
3
Хранитель Совести
21.06.12
✎
11:58
|
А в конфигурации-приемнике в Хранилище хранятся данные типа картинка.
Поэтому предполагается, что метод Получить() должен возвращать картинку.
Вопрос следующий: как прописать ПКО Хранилища доп. информации так, чтобы в приемнике все было как надо?
ЗЫ: сообщения на форуме можно редактировать?
|
|
4
Хранитель Совести
21.06.12
✎
12:50
|
Есть решение!!!
В ПКО справочника Хранилище Дополнительной Информации в обработчике события "После загрузки" написал следующее
ДвДанные = Объект.Хранилище.Получить();
Картинка = Новый Картинка(ДвДанные);
Объект.Хранилище = Новый ХранилищеЗначения(Картинка);
Проверил в УПП (это приемник), все корректно. ФормаЭлемента открывается, картинки отображаются))
Спасибо, andrewks, что откликнулся)
|
|