Delphi /Visual Components Formula One Spreadsheet OCX as a Database BLOB field
I have just sussed out the answer to my own question!!!
It involved using Win32 API memory functions GlobalLock,GlobalSize to get a pointer to and size of the F1
memory BLOB and TBlobStream.Write to save memory BLOB to a database field.
Then to copy from database BLOB field to memory BLOb and finally to F1 OCX, using GlobaAlloc to get new memory
and a handle to it, GlobalLock to lock and get a pointer, Tblobstream.Read to copy from BLOB field to memory
BLOB variable, and finally F1's ReadFromBlob to get memory BLOB into workbook.
This is a lot faster than saving the workbook to a temporary disk file and then loading the file into the
database field.
If anyone else needs help saving or loading a Formula One OCX Workbook as a BLOB field in a database, then
email me. This is useful in an app that requires storing a lot of free structure (spreadsheet format) data
sets in an organised way in a database.
--
=======================================================================
IronRod :)
Rodney Hoskinson
Actuary
FAI Insurance
77 Pacific Highway
North Sydney NSW 2065
AUSTRALIA
+61 2 9936 2369
+61 2 9929 7486
+61 041 2142 875
rodn...@magna.com.au
http://www.magna.com.au/~rodneyh
========================================================================