@animr

Почему выходит ошибка о несоответствии типов?

Подскажите пожалуйста почему у меня ошибка несоответствие типов, при выполнении следующего кода?

c7b97e8533d14d3eb3d30324292b702a.png

Именно когда значение Integer.

procedure TForm1.SpeedButton1Click(Sender: TObject);
var
varCounter : Integer;
varVariablePole : String;

varP_visible : Integer;
varP_date : TDate;
varP_article : String;

const
CRLF = #13#10;

begin
ExcelApp := CreateOleObject('Excel.Application');
ExcelApp.Workbooks.Open(vargPathFileProduct);

dmContanierIcon.quProductAll.Close;

dmContanierIcon.quProductAll.SQL.Clear;
varCounter := 0;
while ExcelApp.ActiveSheet.UsedRange.Rows.Count do
begin
varCounter := varCounter + 1;
varVariablePole := ExcelApp.Range['I'+IntToStr(varCounter)];
if varVariablePole = '' then Break else
begin
varP_article := varVariablePole;

varVariablePole := ExcelApp.Range['A'+IntToStr(varCounter)];
varP_visible := StrToInt(varVariablePole);

varP_date := Date;

dmContanierIcon.quProductAll.SQL.Text := 'INSERT INTO dbt_ProductAll(p_visible, p_date, p_article)' + CRLF +
'VALUES(:_varP_visible, :_varP_date, :_varP_article)';

//Ошибка при добавлении этой строки
dmContanierIcon.quProductAll.ParamByName('_varP_visible').AsInteger := varP_visible;
//-----------------------------------
dmContanierIcon.quProductAll.ParamByName('_varP_date').AsDate := varP_date;
dmContanierIcon.quProductAll.ParamByName('_varP_article').AsString := varP_article ;
end;
dmContanierIcon.quProductAll.ExecSQL;
end;

ExcelApp.ActiveWorkbook.Close;
ExcelApp.Application.Quit;
end;
  • Вопрос задан
  • 214 просмотров
Пригласить эксперта
Ответы на вопрос 2
@vilgeforce
Раздолбай и программист
Отладчик УЖЕ не помог?
Ответ написан
@kalapanga
Предположу, что в таблице dbt_ProductAll поле p_visible не целого типа, а булево какое-нибудь.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы