Страница 1 из 1

Добавлено: 26 Апрель 2004, 14:23
Гость
Привет!

Возможно ли хранение документа MS Word в поле базы данных, чтобы для
редактирования открывать его в Word, а при сохранении записывать обратно
? Если да, то тип поля и средства для таких манипуляций ?

База MS SQL
C5 ШВС

Ищенко Ростислав

(Добавление)

всё возможно, поле в БД - IMAGE, со стороны клиента, C5 BLOB'ы не поддерживает, надо через любой открытый файл на базу получить параметры соединения

PROP:HENV EQUATE (7203H)
PROP:HDBC EQUATE (7204H)

и далее самому через ODBC API используя функции SQLGetData получать данные из поля во временный (.DOC) файл, далее серез ShellExecute его загружать в WinWord, а с помощью SQLPutData сохранять в поле БД.

Andrew Myalin
andrew@arsis.ru
http://mavcla.arsis.ru (MAV Direct ODBC)
ICQ: 10659412
Yahoo group: clarion@yahoogroups.com

Привет!

У нас есть такие же задачи для MS SQL,
мы используем MAV Direct, там реализовано это для Clarion 5 и 5.5 и 6

С уважением, Толмачёв И.Л.
Написал: ClaList(2)

Добавлено: 27 Апрель 2004, 9:44
Гость
А где можно посмотреть на МАВ 5.0, а то я на сайте нашёл только 5.5?

С уважением, Валентин.
Написал: ClaList(2)

Добавлено: 18 Сентябрь 2006, 10:44
SSTA
Anonymous писал(а):...всё возможно, поле в БД - IMAGE, со стороны клиента, C5 BLOB'ы не поддерживает, надо через любой открытый файл на базу получить параметры соединения

PROP:HENV EQUATE (7203H)
PROP:HDBC EQUATE (7204H)

и далее самому через ODBC API используя функции SQLGetData получать данные из поля во временный (.DOC) файл, далее серез ShellExecute его загружать в WinWord, а с помощью SQLPutData сохранять в поле БД....
А для CW 6 так же? Или какие-то шаги уходят? Как будет выглфдеть связка Fil:Blob - Image для 6.1? Если можно, кратенький примерчик.

У меня 6.1, ABC

Добавлено: 18 Сентябрь 2006, 10:48
Andrew™
Anonymous писал(а):А где можно посмотреть на МАВ 5.0, а то я на сайте нашёл только 5.5?

С уважением, Валентин.
Написал: ClaList(2)
всё для ознакомления тут же
http://www.clarionlife.net/component/op ... ,/gid,396/

там же в файловом архиве есть примеры, где юзаются BLOBы для храннеия картинок, MS Word документ это по сути тажа картинка - бинарный файл, как сохранить в БД и вытащить там есть, а далее через PROP:Document юзать его в OLE контроле

Добавлено: 18 Сентябрь 2006, 10:53
Andrew™
SSTA писал(а):
Anonymous писал(а):...всё возможно, поле в БД - IMAGE, со стороны клиента, C5 BLOB'ы не поддерживает, надо через любой открытый файл на базу получить параметры соединения

PROP:HENV EQUATE (7203H)
PROP:HDBC EQUATE (7204H)

и далее самому через ODBC API используя функции SQLGetData получать данные из поля во временный (.DOC) файл, далее серез ShellExecute его загружать в WinWord, а с помощью SQLPutData сохранять в поле БД....
А для CW 6 так же? Или какие-то шаги уходят? Как будет выглфдеть связка Fil:Blob - Image для 6.1? Если можно, кратенький примерчик.

У меня 6.1, ABC
ODBC API к версии Clarion никак не привязано, краткого примера не получится, надо делать много препарирований - SQLAllocHandle, SQLExecDirect, SQLGetData, SQLPutData...

с точки зрения MAV, когда у нас есть BLOB поле, делается это примерно так:

Код: Выделить всё

file  MAVReadWrite
 CODE
 IF file._Open(WinWordDoc)
   RETURN
 END
 len# = file._Bytes()
 MAVFile.BlobField.Reset(ALL('<0>',len#))
 file._Read(MAVFile.BlobField.S,len#)
 file._Close()

 IF MAVUPDATE(MAVFile)
  MAVSHOEERROR
  RETURN
 END