-
6ruse (09.08.10 09:37) [0]Доброго времени суток! я пишу
Frmmain.TBL_MAIN.Open();
Frmmain.TBL_MAIN.Insert ;
Frmmain.TBL_MAIN.FieldByName('PERIOD').Value := FrmMain.DateTimePicker1.Date ;
Frmmain.TBL_MAIN.FieldByName('CALLSSUM').Value := 1000
Frmmain.TBL_MAIN.FieldByName('CALLSCOUNT').AsInteger := 1000 Frmmain.TBL_MAIN.FieldByName('LINESCOUNT').Value := 1 ; Frmmain.TBL_MAIN.FieldByName('FILENAME').Value :='XЗ' ;
if (FrmMain.TBL_MAIN.State in [dsEdit, dsInsert]) then
FrmMain.TBL_MAIN.Post();
if FrmMain.TBL_MAIN.UpdateTransaction.Active then
FrmMain.TBL_MAIN.UpdateTransaction.Commit();
FrmMain.TBL_MAIN.Close ;
а он мне говорит что поле CALLSSUM не найдено! помогите пожалуйста разобраться -
Что за компоненты доступа?
В списке полей CALLSSUM присутствует?
Зачем проверка после явного инсерта? -
6ruse (09.08.10 10:33) [2]- FibPlus;
- да;
- я привык так писать. -
> [2] 6ruse (09.08.10 10:33)
> - FibPlus;
TBL_MAIN - это Table или DataSet? Судя по имени первое. Почему? Если попробовать второе что будет? Если создать заново то-же самое в пустом проекте - работает? -
6ruse (09.08.10 11:29) [4]Нет это второе, я разобрался все работает, спасибо
-
Anatoly Podgoretsky © (09.08.10 11:59) [5]
> Зачем проверка после явного инсерта?
> - я привык так писать.
Очень плохо, поскольку скрывает ошибку, а так делать нельзя. -
6ruse (09.08.10 15:40) [6]всмысле? какую ошибку?
-
Anatoly Podgoretsky © (09.08.10 16:06) [7]То, что пост не прошел, а пользователь уверен, что он ввел данныеif (FrmMain.TBL_MAIN.State in [dsEdit, dsInsert]) then
FrmMain.TBL_MAIN.Post(); -
Виталий Панасенко (09.08.10 17:10) [8]а почему бы раз коммитишь сразу, не выставить у датасета AutoCommit=True?
> if FrmMain.TBL_MAIN.UpdateTransaction.Active then
> FrmMain.TBL_MAIN.UpdateTransaction.Commit();
это тогда не нужно вообще