Вниз
Скачать: CL | DM;

TOracleDataSet.CanModify   Найти похожие ветки 

 
False   (2003-01-15 17:18) [0]

Есть процедура (ниже), но в ней не получается поставить dsBlob в состояние Insert.
Проблема в том, что мой OracleDataSet.CanModify=false и Delphi 5 ругается, что мол нада мне свойство "CanModify" DataSet"а в true.
В справке Delphi, написано, что это свойство только для чтения и что оно всегда равно true для TDataSet!
Но у меня именно TOracleDataSet и поменять енто свойство не могу, что делать???

{--Сохранение документа из программы в Blob-поле с именем BlobField таблицы dsBlob под ID равным полю ID, выбранной записи таблицы ds--}
procedure SaveBlobFromOle(OleContainer: TOleContainer; ds,dsBlob: TOracleDataSet; BlobField: string);
var
BlobExist: boolean;
begin
with dsBlob do
begin
Close;
SetVariable("ID",ds.FieldByName("ID").asInteger);
Open;
end;
BlobExist:=dsBlob.Locate("ID",ds.FieldByName("ID").asInteger,[]);
if NOT BlobExist then
begin
dsBlob.Insert;
dsBlob.FieldByName("ID").asInteger:=ds.FieldByName("ID").asInteger;
end
else
if NOT (dsBlob.State in [dsEdit,dsInsert]) then dsBlob.Edit;
(dsBlob.FieldByName(BlobField) as TBlobField).Clear;
try
OleContainer.SaveToFile(GetTempDir+"\tmp#$#$.doc");
(dsBlob.FieldByName(BlobField) as TBlobField).LoadFromFile(GetTempDir+"\tmp#$#$.doc");
if ds.State in [dsEdit,dsInsert] then ds.Post;
dsBlob.Post;
OleContainer.Modified:=false;
OleContainer.Close;
finally
DeleteFile(GetTempDir+"\tmp#$#$.doc");
end;
end;

P.S.
dsBlob.SQL.Text="select ID, LETTER_TEXT from LET_BLOB where ID=:ID"


 
Big_Rom ©   (2003-01-15 17:54) [1]

по пробуй вот так
select ID, LETTER_TEXT,let_blob.rowid from LET_BLOB where ID=:Id



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
1-4939
Alex
2003-01-26 12:40
2003.02.03
MDI-формы


14-5164
Lapuh
2003-01-14 21:10
2003.02.03
Что за директива class of ?


3-4816
Oleg__
2003-01-17 10:01
2003.02.03
Запрос из dll


1-4832
qwerty2
2003-01-24 12:28
2003.02.03
Как узнать текущий формат системной даты?


6-5098
kalishenko stas
2002-11-27 18:53
2003.02.03
Какой мой IP в Интернете?




   Наверх