Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.20;
Скачать: CL | DM;

Вниз

Как передать в процедуру ИЗОБРАЖЕНИЕ?   Найти похожие ветки 

 
yuli ©   (2003-02-04 14:40) [0]

Задача - учет сотрудников на фирме. Не могу сделать Изменение анкеты. Чтоб изменить карточку, выставить новую фотку и ПОСЛЕ нажатия кнонки ОК данные занеслись в Базу. Помогите, очень надо, уже дымлюсь! Спасибо.


 
D   (2003-02-04 14:46) [1]

В какую проц-ру?

После нажатия кнопки - Dataset.Post.


 
yuli ©   (2003-02-04 14:49) [2]

нужно передать Image.Picture.Bitmap в базу как параметр UDF, но вылазит ошибка несовпадения данных либо ничего не передается. Поле типа BLOB.
И обратная задача - из поля, возвращаемого UDF скопировать данные в Image.Picture.Bitmap

То есть нужно хранить картинки в базе и показывать их в Image.

Дайте пример плиз!


 
Digitman ©   (2003-02-04 15:04) [3]


> нужно передать Image.Picture.Bitmap в базу как параметр
> UDF


А зачем UDF-то ? Каково назначение UDF в этой цепочке ?

Клиент на своей стороне может создать объект класса TBlobStream, ассоциированный с Blob-полем, предназначенным для хранения картинки (см. метод CreateBlobStream)

Поскольку класс TBitmap имеет методы SaveToStream/LoadFromStream, ничто не мешает передать в эти методы параметром тот самый экз-р объекта TBlobStream.



 
yuli ©   (2003-02-04 16:05) [4]

а можно пример, как из Image.Picture.Bitmap передать битмап в IBStoredProc.Param[0], ну не получается...


 
Digitman ©   (2003-02-04 16:31) [5]

ну что-то типа такого :


var stream: TMemoryStream;
..

stream := TMemoryStream.Create;
try
Image.Picture.Bitmap.SaveToStream(stream);
stream.Position := 0;
IBStoredProc.Prepare;
IBStoredProc.Param[0].LoadFromStream(stream, ftBlob);
// старт транзакции
try
IBStoredProc.ExecProc;
// подтверждение транзакции
except
// откат транзакции
raise;
end;
finally
stream.Free;
end;




 
D   (2003-02-04 16:41) [6]

Param[0].Assign(BitMap) ?


 
yuli ©   (2003-02-04 17:28) [7]

Вроде что-то жужжит, в базу пишет, осталось работы два локтя по карте, спасибо большое. Будем ковырять дальше. ОГРОМАДНОЕ спасибо!


 
yuli ©   (2003-02-05 10:21) [8]

еще один глупый вопрос - а как из параметра процедуры считать данные в Image.Picture.Bitmap?
SaveToStream у TParam нету


 
Digitman ©   (2003-02-05 11:14) [9]

var stream: TMemoryStream;
..

stream := TMemoryStream.Create;
try
stream.Size := IBStoredProc.Param[..].GetDataSize;
IBStoredProc.Param[..].GetData(stream.Memory);
..
Image.Picture.Bitmap.LoadFromStream(stream);
finally
stream.Free;
end;



Страницы: 1 вся ветка

Текущий архив: 2003.02.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.02 c
3-63512
KAA
2003-02-02 15:29
2003.02.20
2000 Размножить строки в запросе


6-63696
don-do
2002-12-27 11:41
2003.02.20
Как расшифровать русский Subject news


14-63849
Cranium
2003-02-02 19:40
2003.02.20
Куплю шаманский бубен для настройки сети!


14-63805
hatchy
2003-01-20 19:12
2003.02.20
У меня системе поврежден драйвер ASPI???


3-63594
Step[B.M.]
2003-02-04 11:07
2003.02.20
Поиск ближайшего соответствия через IBTable