powered by simpleCommunicator - 2.0.31     © 2024 Programmizd 02
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / frm-47100 Cannot read image File - цифровое фото JPG
25 сообщений из 27, страница 1 из 2
frm-47100 Cannot read image File - цифровое фото JPG
    #33348078
Фотография Sergey_Evdokimov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть фоты сотрудников с разных цифровых камер в формате JPG.
В forms лежит элемент Image в который читаю файл рисунка.
Часть их читается в Image без проблем, часть нет - на команде Read_Image_File выкидывает белый флаг "Cannot read image File".
Внимание вопрос.... А почему? :(

ПС.: Хелп похоже ничего вразумительного на эту тему не содержит.
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #33348128
FRM-42100
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #33348229
Фотография Sergey_Evdokimov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Снятие галочки Progressive не помогло... Вроде в фотошопе в форматах JPG baseline было... буду копать, Спасибо

JFIF форева! (сделано как всегда в духе формс) :(
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #33982702
Гость1111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет, All!

Подымаю топик ибо теже грабли...
Формы 6i, пробую:

filename := GET_FILE_NAME(File_Filter=> 'GIFF Files (*.jpg)|*.jpg|');
READ_IMAGE_FILE(filename, 'TIFF', 'CONTROLS.IMG');

и тот же FRM 47100, пробовал и tif и jpg.
Результата нет...вернее есть но не тот ;)
Вообще говоря, мне нужно читать не только картинки, это частный случай, но решил начать с него...Где грабли ?

В общем случае подскажите, плз, ответ на вопрос:
как в Forms 6i с клиента сохранить ЛЮБОЙ документ в блоб поле без server side кода ?

Спасибо.
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #33982703
Гость1111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Упс, с картинками норма! ;)

JPG грузит нормально, tif не хочет...
Первый вопрос снят.
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #33982815
Гость1111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хех...
второй вопрос тож снят ;)
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #33983800
Гость1111как в Forms 6i с клиента сохранить ЛЮБОЙ документ в блоб поле без server side кода ?

Ограничение PRO*C версии 8.0.x который использует Forms. (даже 6i на 8.1.x /8i/ клиента не мигрировал). BLOBы\LONG RAW не поддерживаются.

По хорошему (с поддержкой транзакций):
Простой (около 10-20 строк) - server-side пакет
На клиенте - DLL которая читает и пихает в БД через PRO*C в той-же транзакции (сессии), что и Forms.

Другой путь (отдельный коннект/сессия/транзакция):
1) Внешнее приложение (EXE) - которое вполне может идти в БД через OCI/JDBC/ODBC, соответственно "server side" код не нужен.
2) Вместо EXE можно поставить OO4O /Oracle Objects For OLE/ и вызывать его через OLE2 package.
etc... в поиск на sql.ru, google, metalink, otn...
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #33983864
Гость1111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На Forms 6i под oracle 9i выкрутился использованием long_raw:

filename := GET_FILE_NAME(File_Filter=> 'File Name (*.*)|*.*|');
Initialize_Container(BLOB_OLE_LONG_RAW.OLE', filename);

при дабл клике на контейнере вроде нормально открывает...
пока только не уловил какой код впихнуть в кнопочку чтобы открыть документ из оле контейнера...
нужно решение именно без сервер сайд и стандартными средствами формс...
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #33984533
авторпока только не уловил какой код впихнуть в кнопочку чтобы открыть документ из оле контейнера

см. DO_VERB (или EXEC_VERB) build-ins

Гость1111....нужно решение именно без сервер сайд и стандартными средствами формс...

А про возможные глюки от использования OLE подумали? чем настолько плох server-side, что из-за него нужно связываться с OLE?

В 9 и 10 Oracle Forms OLE нет уже напрочь.

P.S.
Если тебе удастся в OLE Item не только ПОЛОЖИТЬ (сохранить) файл, но и ИЗВЛЕЧЬ его оттуда - я буду считать тебя гением.
Если ты мне сможеш ответить ЗАЧЕМ нужна фича в которую можно ТОЛЬКО сохранять информацию, без возможности ее извлечь - буду очень сильно благодарен, т.к. сам этого понять не могу.
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #33984742
Гость1111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Глюки разумеется могут быть, куда ж без них ;)

Гений тут не причем - файл ложится в базу и извлекается без вопросов.

Создан дата блок на таблицу с long_raw, ложатся данные туда выше приведенным кодом, загрузка документа из базы также стандартно, отркытие и активация документа дабл-кликом на iteme дата блока (ole-контейнер),
при этом в базу успешно ложится и считывается txt, rar, xls, doc, tif, jpg что успел опробовать ;) может я не уловил сути Вашего P.S. ?

не совсем ясно при чем тут оле...ибо формс, как я понял, просто осуществляет запуск ассоциированного приложения...

по "см. DO_VERB (или EXEC_VERB) build-ins" - не подскажете как открыть rar архив полученный из БД из поля lang_raw используя данный синтаксис?
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #33984953
1. Советую положить AVI, сохранить в БД, удалить AVI с диска, прочитать из БД. (для прикола текущем приложением для AVI должен быть Windows Media Player)
2. Задача с otn.oracle.com:
"Есть прадакшен БД, в ней 50 000 документов в OLE Item'е, нужно провести upgrade системы на Forms 9i."

Если извлекаются это "..дабл-кликом..", то конечно назвать это "без вопросов" можно, а вот "без ответов" - это уже никак... Дабы 50 000 дабл-кликов - это сила! M$ фореве!

Гость1111не совсем ясно при чем тут оле...ибо формс, как я понял, просто осуществляет запуск ассоциированного приложения...[/qout]
RTFM.
Я не смогу внятно изложить, дабы полностью и сам не знаю.

Как я понимаю очень упрошенное функционирование OLE:
1) Из данного файла создается OLE-документ
Очень утрировано: Определяется какой OLE Server сопоставлен данному типу файлов в системе. Запускается данный сервер с данным файлом.
2) Получившийся OLE-документ сохраняется в БД

При дабл-клике:
1) Создается сохраненный OLE-документ (читать про всякие моникеры, как все это работают - я не понимаю).
2) Ему выдается команда "показаться" на экране. (DO_VERB)

Если в системе данному типу файлов ничего не сопоставлено, в MS Windows XP (в 95 этого точно не было) используется OLE-сервер, который сохраняет в себе документ (спасибо хоть на том), а для обработки сохраненного файла использует нечто похожее на "запуск ассоциированного приложения".

Соответственно проблемы:
1) Формат хранения в БД - это OLE Document, НЕ исходный файл
2) Для некоторых серверов (например Windows Media Player) - OLE Document это просто ссылка на файл, соответственно в БД собственно содержимое файла ни в каком виде не попадет.
3) Приобразование файл -> OLE Document сушествует, стандартного обратное приобразование - нет. (для Word,Excel,PDF есть WorkAround'ы)
4) Исходный файл - в большинстве случае НЕ сохраняется.
Например: графические файлы, сохраненные через MS Paint, храняться раздутыми в виде METAFILE + BMP (на Windows 3.11 было 2-х кратное превышение по сравнению с просто BMP). Востановить 100% исходный файл (например Exif /Jpeg после фотоаппарата/) - невозможно. Максимум, сохранить на диске, потом обратно перепаковать в JPG.
5) Использующийся OLE сервер зависит от настроек клиента. Что будет, если типу файлов на разных клиентах назначены разные OLE сервера - не знаю (например для PDF - Acrobat Exchange / Acrobat Reader)

и т.д., набирать я уже устал...

[quot Гость1111]по "см. DO_VERB (или EXEC_VERB) build-ins" - не подскажете как открыть rar архив полученный из БД из поля lang_raw используя данный синтаксис?
Не знаю.

Нужно посмотреть какой OLE-Server и какие VERB данный сервер поддерживает.
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #33984997
1. Советую положить AVI, сохранить в БД, удалить AVI с диска, прочитать из БД. (для прикола текущем приложением для AVI должен быть Windows Media Player)
2. Задача с otn.oracle.com:
"Есть прадакшен БД, в ней 50 000 документов в OLE Item'е, нужно провести upgrade системы на Forms 9i."

Если извлекаются это "..дабл-кликом..", то конечно назвать это "без вопросов" можно, а вот "без ответов" - это уже никак... Дабы 50 000 дабл-кликов - это сила! M$ фореве!

Гость1111не совсем ясно при чем тут оле...ибо формс, как я понял, просто осуществляет запуск ассоциированного приложения

RTFM.
Я не смогу внятно изложить, дабы полностью и сам не знаю.

Как я понимаю очень упрошенное функционирование OLE:
1) Из данного файла создается OLE-документ
Очень утрировано: Определяется какой OLE Server сопоставлен данному типу файлов в системе. Запускается данный сервер с данным файлом.
2) Получившийся OLE-документ сохраняется в БД

При дабл-клике:
1) Создается сохраненный OLE-документ (читать про всякие моникеры, как все это работают - я не понимаю).
2) Ему выдается команда "показаться" на экране. (DO_VERB)

Если в системе данному типу файлов ничего не сопоставлено, в MS Windows XP (в 95 этого точно не было) используется OLE-сервер, который сохраняет в себе документ (спасибо хоть на том), а для обработки сохраненного файла использует нечто похожее на "запуск ассоциированного приложения".

Соответственно проблемы:
1) Формат хранения в БД - это OLE Document, НЕ исходный файл
2) Для некоторых серверов (например Windows Media Player) - OLE Document это просто ссылка на файл, соответственно в БД собственно содержимое файла ни в каком виде не попадет.
3) Приобразование файл -> OLE Document сушествует, стандартного обратное приобразование - нет. (для Word,Excel,PDF есть WorkAround'ы)
4) Исходный файл - в большинстве случае НЕ сохраняется.
Например: графические файлы, сохраненные через MS Paint, храняться раздутыми в виде METAFILE + BMP (на Windows 3.11 было 2-х кратное превышение по сравнению с просто BMP). Востановить 100% исходный файл (например Exif /Jpeg после фотоаппарата/) - невозможно. Максимум, сохранить на диске, потом обратно перепаковать в JPG.
5) Использующийся OLE сервер зависит от настроек клиента. Что будет, если типу файлов на разных клиентах назначены разные OLE сервера - не знаю (например для PDF - Acrobat Exchange / Acrobat Reader)

и т.д., набирать я уже устал...

Гость1111по "см. DO_VERB (или EXEC_VERB) build-ins" - не подскажете как открыть rar архив полученный из БД из поля lang_raw используя данный синтаксис?
Не знаю.

Нужно посмотреть какой OLE-Server и какие VERB данный сервер поддерживает.
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #33985192
Гость1111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сопоставил avi windwos media player, загрузил файл в базу, закрыл форму, удалил файл, открыл форму, кликнул на контейнере, авишка успешно открылась в медиа плеере.
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #33985264
1) Спасибо за ответ. С OLE игрался давно, года 2-3 назад.

2) Я же не настаиваю :=). О возможных проблемах предупрежден, что использовать решать тебе :=).

p.s.
Если передумаеш, могу кинуть исходные тексты (C+stored package) и DLL для записи/чтения файла в/из БД. Работает в продакшен системе (> 100 заказчиков, у некоторых в БД от 10 до 60 тыс. изображений, т.ч. код оттестирован).
Мой личный e-mail Tigralen AT mail.ru, проверяю почтовый ящик очень редко, на быстрый ответ не расчитывай :=).
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #33985316
Гость1111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, Леонид, за интерес и внимание ;)
Закинь, плз, на ora_dev@bk.ru
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
frm-47100 Cannot read image File - цифровое фото JPG
    #38951015
Фотография Gabit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С помощью Forms 6i можно сохранить на клиентскую машину данные из BLOB ?

Модератор: Тема перенесена из форума "Oracle".
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #38951447
Алымов Анатолий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно только определенные блобы: изображения и звуковые файлы. Через соответствующие процедуры WRITE_IMAGE_FILE, WRITE_SOUND_FILE.
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #38951529
Les
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GabitС помощью Forms 6i можно сохранить на клиентскую машину данные из BLOB ?

Модератор: Тема перенесена из форума "Oracle".


Да, можно
Если положишь в папку еще одну dll и pll
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #38955551
Фотография Gabit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какой dll и pll ?
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #38956555
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если нужно, напиши на tigralen собака mail.ru

В почте старые архивы от 2006 г. валяются. Перешлю по e-mail. Насколько я помню, компилировал PRO*C v. 8.0.7, и с forms 6.0 и с 6i + патч 16 работало
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #38956574
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кусок архива от ныне не работающего сайта:

В архиве:

blobdll.zip - скомпилированная DLL
blobfmb.zip - какой-то пример на формсах (х.з. у меня формсов уже нет).
bloblib.zip - исходники для DLL под какую-то старую Visual Studio

index.htm - собственно, кусок с сайта (сорри за мой английский)

formmod.txt - исходники DLL на Pro*C
spec.txt body.txt - пакет для Forms'ов
db_blob.txt - пакет для Сервера (должен быть на стороне сервера, что бы все работало)
ex.txt - пример вызова
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #38956576
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev...компилировал PRO*C v....
ошибочка, использовал MS VC 6.0 SP 5 и Pro/C v.8.0.3
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #38956755
Les
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сорри, тоже сейчас на машине не осталось формсов, но использовал те вещи, про которые пишет Леонид и оно работало
Если не поможет, то попробую развернуть и поискать в архивах
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #38958142
Фотография Gabit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevКусок архива от ныне не работающего сайта:

В архиве:

blobdll.zip - скомпилированная DLL
blobfmb.zip - какой-то пример на формсах (х.з. у меня формсов уже нет).
bloblib.zip - исходники для DLL под какую-то старую Visual Studio

index.htm - собственно, кусок с сайта (сорри за мой английский)

formmod.txt - исходники DLL на Pro*C
spec.txt body.txt - пакет для Forms'ов
db_blob.txt - пакет для Сервера (должен быть на стороне сервера, что бы все работало)
ex.txt - пример вызова
Выходит ошибка.
...
Рейтинг: 0 / 0
frm-47100 Cannot read image File - цифровое фото JPG
    #38958699
Les
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gabit,

а ты пакеты и таблицу создал?
...
Рейтинг: 0 / 0
25 сообщений из 27, страница 1 из 2
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / frm-47100 Cannot read image File - цифровое фото JPG
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]