Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.02.2015, 16:10   #1
Melisare
Новичок
Джуниор
 
Регистрация: 04.02.2015
Сообщений: 2
По умолчанию Ошибка Incompatible types: 'TIntegerField' and 'Real'

Добрый день!
Столкнулась с проблемой и не могу решить, надеюсь на вашу помощь!
На следующий кусок кода компилятор ругается "[Ошибка] UnitSelling.pas(56): Incompatible types: 'TIntegerField' and 'Real'". Я понимаю, что компилятор меня тыкает в несовместимые типы данных, но поправить так и не смогла. Конкретно ругается на строчку "DataBase.TSellingSum_Selling:=resu lt;"

Код:
procedure TFormSelling.Button1Click(Sender: TObject);
var
kol_vo, cena: integer;
result: real;
begin
DataBase.TSelling.Append;
DataBase.TSelling.Edit;
DataBase.TSellingAmount.Value := kol_vo;
DataBase.TProductPrice.Value := cena;
result := kol_vo*cena;
DataBase.TSellingSum_Selling:=result;
DataBase.TSelling.Post;
DataBase.TProduct.Edit;
DataBase.TProductAmount.Value:=DataBase.TProductAmount.Value-DataBase.TSellingAmount.Value;
DataBase.TProduct.Post;
Заранее спасибо!
Melisare вне форума Ответить с цитированием
Старый 04.02.2015, 19:06   #2
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию

Код:
DataBase.TSellingSum_Selling.тут_должно_быть_еще_что-то_видимо
ZuBy вне форума Ответить с цитированием
Старый 04.02.2015, 19:49   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

DataBase.TSellingSum_Selling.Value: =чего-то
и это чего-то должно быть типа приводимого к Integer, а не Real
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 04.02.2015, 23:24   #4
Melisare
Новичок
Джуниор
 
Регистрация: 04.02.2015
Сообщений: 2
По умолчанию

Спасибо большое!
Решение нашлось переписыванием кода)
Melisare вне форума Ответить с цитированием
Старый 06.02.2015, 12:14   #5
IliaIT
Форумчанин
 
Аватар для IliaIT
 
Регистрация: 17.03.2009
Сообщений: 977
По умолчанию

и вообще real нужен очень редко и чаще всего и лучше использовать double.
Интуитивно понятный интерфейс - это такой интерфейс, для работы с которым нужна недюжинная интуиция.
IliaIT вне форума Ответить с цитированием
Старый 06.02.2015, 12:33   #6
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Дык real эквивалентен double что в D7, что в XE
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка Incompatible types: 'Byte' and 'Extended' Nightway Общие вопросы Delphi 7 03.04.2014 21:15
Incompatible types MetR Помощь студентам 4 22.12.2011 18:31
Ошибка: Incompatible types: 'Dynamic array' and 'TCaption' TotKtoNado Общие вопросы Delphi 2 10.07.2011 17:51
Incompatible types "HDC" and "Real" savinkoff9090 Помощь студентам 14 05.03.2010 22:37
Ошибка [Error] UPER.pas(57): Incompatible types: 'Integer' and 'Pointer' Pirotexnik Общие вопросы Delphi 4 27.03.2009 11:04