Форум: "Базы";
Текущий архив: 2003.04.07;
Скачать: [xml.tar.bz2];
ВнизВостановление ранее удаленных записей Найти похожие ветки
← →
sterran (2003-03-20 10:19) [0]Здравствуйте Мастаки. Нашел в Helpe следующий пример по востановлению помеченных на удаления записей, пытаюсь применить к своей базе выдает ошибку "Soft deletes is not on", почему не знаю, чисто теоретически все должно работать в базах нет ничего осебенного.
procedure fDbiUndeleteRecord(dBASETbl: TTable);
var
CProps: CurProps;
begin
Check(DbiGetCursorProps(dBASETbl.Handle, CProps));
if (StrIComp(CProps.szTableType, szDBASE) <> 0) then
raise EDBEngineError.Create(DBIERR_NOTSUPPORTED);
if (CProps.bDeletedOn = False) then
raise EDatabaseError.Create("Soft deletes is not on");
Check(DbiUndeleteRecord(dBASETbl.Handle));
end;
← →
Mike Kouzmine (2003-03-20 11:32) [1]Может быть надо установить bDeletedOn в True?
← →
sterran (2003-03-20 11:38) [2]bDeletedOn - BOOL - This value is set to TRUE if the curSOFTDELETEON property is TRUE. This field makes sense only if the cursor supports the soft delete concept. If TRUE, deleted records can be seen while using this cursor (dBASE and FoxPro only).
т.е. если ключ стоит True то удаление разрешено, в противном запрещено, поэтому представленный мною код правильный.
← →
Anatoly Podgoretsky (2003-03-20 12:41) [3]if not CProps.bDeletedOn then
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.04.07;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.009 c