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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.07.2009, 12:04   #1  
Poleax is offline
Poleax
Модератор
Аватар для Poleax
MCP
MCBMSS
Злыдни
 
1,353 / 595 (22) +++++++
Регистрация: 17.02.2005
Адрес: msk
Записей в блоге: 34
? Вопрос о таблицы CompanyImage
В таблице \Data Dictionary\Tables\CompanyImage есть поле Image
EDT у него Bitmap.
В БД на SQL Server у этого поля тип image
Цитата:
CREATE TABLE [dbo].[COMPANYIMAGE](
[REFTABLEID] [int] NOT NULL,
[REFRECID] [int] NOT NULL,
[IMAGE] [image] NULL,
[HASIMAGE] [int] NOT NULL,
[REFCOMPANYID] [varchar](3) NOT NULL,
[DATAAREAID] [varchar](3) NOT NULL,
[RECID] [int] NOT NULL,
[RECVERSION] [int] NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
Была написана хранимая процедура в БД, чтоб для каждого сотрудника вытаскивать его фотографию.

Фото были добавлены в : Расчет с персоналом\Карточка сотрудника\ кнопка Резюме\ кнопка Фотография.

Тема из инета https://community.dynamics.com/blogs...nts/18166.aspx намекает, что в поле image фотка запакована.

Похоже проблема в том, что Axapta хранит изображения в компрессированном виде. Компрессию можно отключить?
Или как можно средствами SQL Server ее распаковать?

P.S. По первым 10 байтам можно определить тип картинки. На данный момент с этим сложности.
Старый 28.07.2009, 12:17   #2  
Alexx7 is offline
Alexx7
Сам.AX
Аватар для Alexx7
Самостоятельные клиенты AX
1C
 
305 / 28 (1) +++
Регистрация: 22.07.2009
А в чем идея? Чтобы фотки из AX были доступны через SQL другой СУБД?
Старый 28.07.2009, 12:24   #3  
Poleax is offline
Poleax
Модератор
Аватар для Poleax
MCP
MCBMSS
Злыдни
 
1,353 / 595 (22) +++++++
Регистрация: 17.02.2005
Адрес: msk
Записей в блоге: 34
Цитата:
Сообщение от Alexx7 Посмотреть сообщение
А в чем идея? Чтобы фотки из AX были доступны через SQL другой СУБД?
Типа да. Фотки должны быть выложены на Sharepoint. Проблемка разобрать это поле image. Есть подозрение на компрессию. Так ли это в действительности?
Старый 28.07.2009, 12:45   #4  
Alexx7 is offline
Alexx7
Сам.AX
Аватар для Alexx7
Самостоятельные клиенты AX
1C
 
305 / 28 (1) +++
Регистрация: 22.07.2009
Я не совсем в курсе насчет упаковки. Попробовал открыть в SQL поле image там присутствуют шеснадцетиричные данные. Чем посмотреть? Назнаю.
Старый 28.07.2009, 13:34   #5  
Poleax is offline
Poleax
Модератор
Аватар для Poleax
MCP
MCBMSS
Злыдни
 
1,353 / 595 (22) +++++++
Регистрация: 17.02.2005
Адрес: msk
Записей в блоге: 34
:)
Ситуация немного прояснилась. Картинка не сжимается, но дописываются несколько байт в начале и в конце.
1) Посмотрел более внимательно содержимое в image.


2) Посмотрел в WinHex как выглядит картинка:


3) Попробывал создать новый файл в WinHex и набрать там ту строку 16-ных кодов, что вижу в поле image 0x072B69130000FFD8FFE000104A46494600010200006400640000FFEC001144756…..


4) Отклонение в байтах = 6. Что то служебное оно добавляет.

На счет конца содержимого в поле image
Имеем набор байтов ….C5F8BFCDD2D994DF33D4FE4EFF3F8F7AFFFD9FF


Окончание показывает отличие в FF

P.S. Теперь ясно с каким смещением по байтам определять тип картинки.
Может кто еще что добавит?
Старый 28.07.2009, 14:16   #6  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Картинка хранится в поле типа container
поэтому 0х07 вначале и FF вконце.
После 0х07 идет еще информация о типе хранимом - 2В, наксколько я понимаю (у меня нет возможности сейчас проверить)

Кстати, получение картинок/файлов уже обсуждалось ранее - сообщение от AndyD ищите с описанием хранимого формата для контейнеров
За это сообщение автора поблагодарили: belugin (2).
Старый 28.07.2009, 21:01   #7  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5798 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Axapta и BLOB поля
Еще было более подробное описание на infostore, но оно, к сожалению, сейчас недоступно
Старый 29.07.2009, 13:19   #8  
Poleax is offline
Poleax
Модератор
Аватар для Poleax
MCP
MCBMSS
Злыдни
 
1,353 / 595 (22) +++++++
Регистрация: 17.02.2005
Адрес: msk
Записей в блоге: 34
Цитата:
Сообщение от kashperuk Посмотреть сообщение
Картинка хранится в поле типа container
поэтому 0х07 вначале и FF вконце.
После 0х07 идет еще информация о типе хранимом - 2В, наксколько я понимаю (у меня нет возможности сейчас проверить)

Кстати, получение картинок/файлов уже обсуждалось ранее - сообщение от AndyD ищите с описанием хранимого формата для контейнеров
Где нибудь в стандартной документации это описано?

Собственной вопрос уже решен на счет картинки.
P.S. Спасибо за линку на тему Axapta и BLOB поля
Теги
blob, container, image, контейнер

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Пересоздание таблицы при синхронизации Serg16 DAX: Администрирование 1 26.08.2009 13:55
Вопрос по динамическому обращению к полям таблицы. Hidden DAX: Программирование 4 09.11.2007 17:56
Вопрос про Cache Nic DAX: Администрирование 0 07.08.2006 16:10
Получение из поля Map кода поля реальной таблицы, к ней привязанной (Mappings) vey DAX: Функционал 5 16.03.2005 11:16
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

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