Просто у меня есть база access(mdb), при попытке добавить запись в таблицу через adoquery выскакивает ошибка "Несоответствие типов данных в выражении условия отбора".
Код:
SQL.Text:=' insert into Platej ( Nom_dogovor,'+' date_platejaReal, Summa_Ostatok, Summa_plateja,'+'Penya, Prosrochka, date_platejaOsn,'+' Summa_Procent, Kolvo_platejei,'+' Summ_Osndolg, Sum_KonPlat)'+#13+
'values (:ParNomDog,:ParDateplatejei,:ParSummOst,'+':ParSummPlateja,:ParPenya,'+ ':ParProsrochka,:ParDatePlatOsn,:ParSummProc,:ParKolPlatej,:ParSummOsnDolg,
:ParSummKonPlat )';
Parameters.ParamByName('ParNomDog').Value :=StrToInt(ComboBoxNomDog.Text);
Parameters.ParamByName('ParDateplatejei').Value:=DatePlatej.DateTime;
Parameters.ParamByName('ParSummOst').Value:=SummaOst;
Parameters.ParamByName('ParSummPlateja').Value:=StrToCurr(SummaPlateja.Text);
Parameters.ParamByName('ParPenya').Value:=0;
Parameters.ParamByName('ParProsrochka').Value:=0;
Parameters.ParamByName('ParDatePlatOsn').Value:=DatePlatOsn;
Parameters.ParamByName('ParSummProc').Value:=0;
Parameters.ParamByName('ParKolPlatej').Value:=KolPlatejei;
Parameters.ParamByName('ParSummOsnDolg').Value:=StrToCurr(SummaPlateja.Text);
Parameters.ParamByName('ParSummKonPlat').Value:=PerPlat1(SummaOst,KolPlatejei);
ExecSQL;
В последнем параметре PerPlat1-функция типа currency. С типами данных самой базы вроде бы все совпадает.... может есть какие различия в вещественных числах, ну там количество цифр после запятой. Хотя, как мне кажется это не должно влиять. Так что прошу помощи?
Кстати преобразование ascurrency не выскакивает в подсказке только value.