Главная страница
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.032 c
3-63502
and_sp
2003-02-05 11:06
2003.02.20
Сортировка в DBGridView


3-63550
Kurt_
2003-02-03 10:54
2003.02.20
Люди! как в гриде lookup поле сделать таким чтоб ТОЛЬКО из предла


3-63508
lutikh
2003-02-02 22:31
2003.02.20
FilterOptions


14-63760
radion
2003-02-04 16:11
2003.02.20
ПРОГРАММА ПО PROXY ( сриншот )


14-63845
БРР
2003-02-03 13:19
2003.02.20
Баня