Страница 1 из 1
Сохранить графический файл в Blob поле Database
Добавлено: 24 Май 2014, 17:57
Developer
Привет Всем!
Clarion 9 (9.0.10376) Windows 7 SP1 Русский
Как сохранить графический файл в Blob поле базы данных без отображения на экране прямым перемещением информации?
Есть функция FileToBLOB. При её использовании ошибка: Unresolved External FILETOBLOB@FsbBb
Как применить данную функцию для сохранения графического файла в BLOB поле базы данных?
Пожалуйста, подскажите какие практические решения существуют для данной задачи?
Необходим работающий исходник.
С Уважением, Developer,
cfwdeveloper@gmail.com
Re: Сохранить графический файл в Blob поле Database
Добавлено: 24 Май 2014, 18:28
Дед Пахом
Смотрите хелп оп FILETOBLOB, там всё написано и работает - подтверждаю.
Re: Сохранить графический файл в Blob поле Database
Добавлено: 24 Май 2014, 19:54
Developer
Спасибо за отклик, help смотрел, результата нет.
Unresolved External FILETOBLOB@FsbBb
Необходим рабочий пример проекта (clw, prj, sln)
Re: Сохранить графический файл в Blob поле Database
Добавлено: 24 Май 2014, 21:51
Дед Пахом
может наоборот - пример от Вас, который не работает? clw, prj, sln...
Re: Сохранить графический файл в Blob поле Database
Добавлено: 24 Май 2014, 22:29
Developer
Вот пример:
Код: Выделить всё
PROGRAM
MAP
INCLUDE('CWUTIL.INC'),ONCE
END
Products FILE,DRIVER('TopSpeed'),PRE(PRO),CREATE,BINDABLE,THREAD
KeyProductNumber KEY(PRO:ProductNumber),NOCASE,OPT,PRIMARY
PictureImage BLOB,BINARY !
Record RECORD,PRE()
ProductNumber LONG
END
END
FileName STRING(254)
CODE
Filename = 'D:\Picture.bmp'
CREATE (Products)
OPEN (Products)
FILETOBLOB(Filename, PRO:PictureImage ) ! Ошибка Unresolved External FILETOBLOB@FsbBb
ADD(Products)
IF ERRORCODE() THEN STOP(ERROR()).
PUT(Products)
CLOSE (Products)
Re: Сохранить графический файл в Blob поле Database
Добавлено: 24 Май 2014, 23:32
Дед Пахом
надо в проекте указать _ABCLinkMode_=>1
Re: Сохранить графический файл в Blob поле Database
Добавлено: 24 Май 2014, 23:47
Developer
Дед Пахом огромное спасибо!
Ошибка Unresolved External FILETOBLOB@FsbBb решена!
Подскажи пожалуйста, где почитать об директивах компилятора в связи с данной темой?
Re: Сохранить графический файл в Blob поле Database
Добавлено: 25 Май 2014, 0:05
Дед Пахом
посмотри в хелпе #pragma, там общие сведения.
Re: Сохранить графический файл в Blob поле Database
Добавлено: 26 Май 2014, 10:42
Yufil
Есть ещё тонкость. Дело в том, что кларионовские драйвера, как правило, не видят модификаций поля Blob. Поэтому если сохранение идёт в форме и ни одно другое поле, кроме блоба, не менялось, нажатие кнопки OK может и не сохранить запись. Record же не изменилась,и Memo-поля тоже... Поэтому если есть Блоб в записи, желательно добавить ещё поля Дата-время записи или что-то подобное.
И, кстати, много раз рассылал класс CSTR, в котором делается с полпинка.
S Cstr
....
S.LoadFromFile(filename)
S.SaveToBlob(blobfield)
и процедуру PackBlob-UnpackBlob для утрамбовки данных