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

DbiDoRestructure   Найти похожие ветки 

 
SS1 ©   (2002-06-28 08:46) [0]

Подскажите как избавиться от ошибки "Table is busy" при
выполнении функции DbiDoRestructure (Exclusive:=True; это установлено, в дизайн тайм таблица закрыта и даже Дельфи
не загружен). Что еще может быть нужно?(D6, Paradox)


 
Alexandr ©   (2002-06-28 08:50) [1]

код приведи


 
SS1 ©   (2002-06-28 09:28) [2]

procedure TMainForm.ProcPackTable(PackDataSet: TDataSet);
var
Props: CURProps;
hDb: hDBIDb;
TableDesc: CRTblDesc;
begin
if (PackDataSet is TTable) then
begin
PackDataSet.Close;
(PackDataSet as TTable).Exclusive:=True;
PackDataSet.Open
end
else exit;
Check(DbiGetCursorProps((PackDataSet as TTable).Handle, Props));
FillChar(TableDesc, sizeof(TableDesc), 0);
Check(DbiGetObjFromObj(hDBIObj((PackDataSet as TTable).Handle),objDATABASE,hDBIObj(hDb)));
StrPCopy(TableDesc.szTblName, (PackDataSet as TTable).TableName);
StrPCopy(TableDesc.szTblType, Props.szTableType);
TableDesc.bPack:=True;
PackDataSet.Close;
Check(DbiDoRestructure(hDb, 1, @TableDesc, nil, nil, nil, False));
(PackDataSet as TTable).Exclusive:=False;
PackDataSet.Open;
end;


 
Viewer   (2002-06-28 10:02) [3]

Попробуй так

DatabaseAlias:TDatabase;
function packParadoxTable(TableName:string{Table:TTable}):DBIResult;
TblDesc:CRTblDesc;
begin
FillChar(TblDesc, sizeof(CRTblDesc), #0);
StrCopy(TblDesc.szTblType, szParadox);
StrPCopy(TblDesc.szTblName, TableName{Table.TableName});
TblDesc.bPack := TRUE;
Result := DbiDoRestructure(DatabaseAlias.Handle, 1, @TblDescs, nil,
nil, nil, FALSE);
end;


 
SS1 ©   (2002-06-28 12:23) [4]

этот код ошибки не выдает, но и с таблицей, насколько я понял,
ничего не делает. размер файла не изменился.


 
SS1 ©   (2002-07-01 13:32) [5]

?



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

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



Память: 0.46 MB
Время: 0.009 c
3-70640
TAN_K
2002-07-01 14:51
2002.07.22
РАБОТА С БАЗАМИ ДАННЫХ


3-70636
Explorer
2002-07-01 13:00
2002.07.22
try...except при коннекции


6-70843
Fox Molder
2002-05-07 10:57
2002.07.22
а про IPX кто-нить знает, а то server - Novel3 :( TCP IP-нету.


14-70861
Teas
2002-06-23 20:11
2002.07.22
TForm


6-70845
yastal
2002-05-14 12:15
2002.07.22
Как узнать размер файла на удаленном хосте, используя TIdFTP




   Наверх