AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.09.2008, 13:30   #1  
_scorp_ is offline
_scorp_
Участник
Аватар для _scorp_
MCBMSS
 
488 / 369 (13) ++++++
Регистрация: 25.07.2007
Адрес: Москва
В 1С для файлов используется тип данных "ХранилищеЗначения", точно так же как в аксапте container. Но в 1С конкретно для изображений есть еще отдельный тип данных "Картинка". Вам нужно:

1. Вытащить из 1С поле в котором хранится файл в переменную типа COM в аксапте.
X++:
Com pic;
;
pic = Choose.();
2. Создать элемент типа Картинка.
X++:
COM kart;
;
kart = comConnection.NewObject("Картинка");
kart = pic.Get();
где comConnection - Ваше подключение к 1С.

3. А вот тут самое интересное. Вроде бы у типа "Картинка" в 1C есть метод "ПолучитьДвоичныеДанные" или англ. аналог "GetBinaryData", но метод все равно возвращает COM объект. Поэтому я нашел только один выход. Сохранять картинку на диск, а потом забирать её аксаптой. То есть:
X++:
BinData binData;
container con;
;
kart.write("d:\\tmp.jpg");
binData = new BinData();
binData.loadFile("d:\\tmp.jpg");
con = bind.getData();
Вот теперь картинка уже в контейнере. Согласен что не совсем красиво получается, но другого способа не нашел. Если найдете - поделитесь.

Последний раз редактировалось _scorp_; 25.09.2008 в 13:41.
Старый 25.09.2008, 15:34   #2  
niktata is offline
niktata
Участник
 
17 / 10 (1) +
Регистрация: 23.07.2008
Адрес: Санкт-Петербург
Пришлось сделать немного по-другому:
X++:
pic = Choose.();
pic = pic.(); // Пришлось добавить эту строчку, иначе вылетало на Получить()
kart = con.NewObject("Картинка");
kart = pic.Get();
kart.Write("C:\tmp.jpg");
binData = new BinData();
binData.loadFile("C:\\tmp.jpg");
cont = binData.getData();
Но теперь вылетает на kart = pic.Получить(); - говорит, что COM объект не имеет метода Получить().
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Стандартный импорт данных. Обновление sparur DAX: Функционал 0 24.03.2008 19:07
Тормозит Экспорт/Импорт данных st_msav DAX: Администрирование 28 01.08.2006 15:52
Импорт данных из ODBC источника JohNick DAX: Программирование 4 09.04.2004 10:17
Импорт на данных из 2.5 в 3.0 ddadream DAX: Прочие вопросы 14 10.06.2003 20:28
Импорт данных Swetik DAX: Функционал 2 30.01.2003 01:52

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 22:40.