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

Вниз

Проблема с FIBPlus   Найти похожие ветки 

 
guest_Dmitry   (2005-01-28 07:46) [0]

Перевел приложение с FIB3 на FIBPlus4.8. В результате начались глюки на ранее нормально работавшем коде. К примеру, при вызове метода post для датасета возникает ошибка Dataset not in Edit or Insert mode, хотя состояние датасета dsEdit, и более никаких методов post или cancel не применятся. Подскажите, где проявляется кривизна рук.


 
Johnmen ©   (2005-01-28 09:42) [1]

в 17 строке


 
Alexandr ©   (2005-01-28 10:05) [2]

1) а где взял FIBPlus?
2) переход сильно длинный, а значит надо весь код пересматривать, а особенно указанную 17 строку.


 
guest_Dmitry   (2005-01-28 12:39) [3]

гм.. вот код:


procedure TfrDocstring.sbSaveClick(Sender: TObject);
begin
 inherited;
   if srDocstring.DataSet.State <> dsBrowse then
   try
     srDocstring.DataSet.Post;
    except end;
   sbSave.Enabled:=false;
   Close;
end;


и далее onClose:


procedure TfrDocstring.FormClose(Sender: TObject;
 var Action: TCloseAction);
begin
if (srDocstring.DataSet<>nil) and (sbSave.Enabled) and
   (srDocstring.DataSet.State <> dsBrowse) then
      try
       srDocstring.DataSet.Cancel;
     except end;
end;


Вот и весь собственно код.
В выделенной строке дает ошибку, хотя дытасет находится в dsEdit.


 
guest_Dmitry   (2005-01-28 12:42) [4]

извиняюсь, забыл тэг закрыть
ошбка в srDocstring.DataSet.Post;


 
Alexandr ©   (2005-01-28 12:53) [5]

посмотри отладчиков чего в  srDocstring.DataSet.State
сдается мне там что-то отлмчное от browse, insert и edit


 
guest_Dmitry   (2005-01-28 13:02) [6]

смотрел отладчиком, в том то и вся проблема, - dsEdit показывает.


 
Val ©   (2005-01-28 14:11) [7]

Может попробовать все-таки заменить <> dsBrowse на in [dsInsert,dsEdit], скажем?


 
guest_Dmitry   (2005-01-28 14:24) [8]

Поменял - тоже самое...


 
Johnmen ©   (2005-01-29 01:46) [9]

>Поменял - тоже самое...
> возникает ошибка Dataset not in Edit or Insert mode

Враньё, однозначно...


 
guest_Dmitry   (2005-01-29 06:57) [10]

Не было бы так смешно, если бы не было так грустно. Приложение работало без проблем в течении трех лет, пока не перешел на новые фибы. Тем более кода то как кот наплакал. Может фибы криво поставил...


 
Alexandr ©   (2005-01-29 10:12) [11]

а может все-таки отладчиком пройтись и разобраться?


 
guest_Dmitry   (2005-01-29 13:31) [12]

Прошелся отладчиком. Ошибка возникает в модуле FIBDataSet:


procedure TFIBCustomDataSet.Resync(Mode: TResyncMode);
begin
if  vInGotoBookMark then
try
 vInGotoBookMark:=False;
 inherited Resync([])
finally
 EnableControls;
 EnableScrollEvents;  
end
else
 inherited Resync(Mode)
end;


в выделенной строке.


 
Alexandr ©   (2005-01-29 13:57) [13]

ну и...


 
guest_Dmitry   (2005-01-29 14:01) [14]

... не доходит до меня почему так ...


 
guest_Dmitry   (2005-01-30 13:57) [15]

Может все-таки есть у кого-нибудь мысли по данному вопросу, пните в нужную сторону..



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

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

Наверх




Память: 0.49 MB
Время: 0.038 c
14-1107109896
Knight
2005-01-30 21:31
2005.02.27
Как удалить глючные файлы на FAT32?


3-1106901753
denis24
2005-01-28 11:42
2005.02.27
добавление записи в основную и связаные таблицы


4-1105603248
__max__
2005-01-13 11:00
2005.02.27
Как мне отследить изменение числа процессов в системе?


1-1108535945
plotn
2005-02-16 09:39
2005.02.27
Вопрос по TeeChart Pro


1-1108454685
juice
2005-02-15 11:04
2005.02.27
Linker. Генерация C++ object files