Ошибка приложения Float actual.. Помогите плиз

IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.

Модератор: kdv

Ответить
Студент
Сообщения: 11
Зарегистрирован: 16 мар 2006, 18:15

Ошибка приложения Float actual.. Помогите плиз

Сообщение Студент » 11 янв 2007, 14:20

Доброго дня!

Сразу извинюсь, может вопрос совсем не сюда, но может кто знает...

вообщем ситуация такая есть приложение
юзающее IBQuery. При переносе на другую машинку
начал ругаться: Type mismath for field 'KS', expecting: Float actual...

При смене типа и компиляции приложения ошибка исчезает.
Не подскажете как избежать подобных сообщений при переносе
на другие машинки и операционки??

Да забыл сказать юзаю делфи 7 и его же стандартные компоненты

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Сообщение Dimitry Sibiryakov » 11 янв 2007, 14:28

Машины и операционки тут ни при чем. Эта ошибка может появиться только в одном случае: используются статически определенные поля в TDataset сотоварищи и изменилась структура базы. Избавься от любого из этих условий и будет тебе счастье.

Студент
Сообщения: 11
Зарегистрирован: 16 мар 2006, 18:15

Сообщение Студент » 11 янв 2007, 14:43

Dimitry Sibiryakov писал(а): Эта ошибка может появиться только в одном случае: используются статически определенные поля в TDataset сотоварищи и изменилась структура базы. Избавься от любого из этих условий и будет тебе счастье.
Есть такое дело, структура БД не менялась больше чем полгода
прилодение то же. Ошибка появляеться при переносе на др раб.место.
если на 98ю то как правило появлется, а на ХР невсегда. БД лежит на сервере и естественно не переноситься....

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Сообщение Dimitry Sibiryakov » 11 янв 2007, 15:04

Студент писал(а):на 98ю то как правило появлется, а на ХР невсегда
Звучит неубедительно. Кстати, неплохо было бы услышать и actual тип...

Студент
Сообщения: 11
Зарегистрирован: 16 мар 2006, 18:15

Сообщение Студент » 11 янв 2007, 15:49

Был integer хочет Float

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Сообщение Dimitry Sibiryakov » 11 янв 2007, 16:02

Такое впечатление что меняется диалект либо базы либо подключения.

Студент
Сообщения: 11
Зарегистрирован: 16 мар 2006, 18:15

Сообщение Студент » 11 янв 2007, 16:15

Dimitry Sibiryakov писал(а):Такое впечатление что меняется диалект либо базы либо подключения.
База лежит на 2003 сервере с InterBase 7.5, диалект используется 3.
и в компанентах явно указо что 3.

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Сообщение Dimitry Sibiryakov » 11 янв 2007, 16:20

Ну так и посмотрите на реальный тип этого поля. А потом думайте каким он должен быть - float или integer. И с чего вдруг мутирует. Телепатов тут нет.

Большинство плавающих ошибок (как ваши) вызвано грязными (неинициализированными) переменными. А есть еще вариант, что у вас текст запроса меняется, что поле KC есть разных типов в разных таблицах и т.д. и т.п. В-общем, если не умеете отлаживать программы - позовите программиста, который умеет.

Студент
Сообщения: 11
Зарегистрирован: 16 мар 2006, 18:15

Сообщение Студент » 11 янв 2007, 18:00

Dimitry Sibiryakov писал(а):Ну так и посмотрите на реальный тип этого поля. А потом думайте каким он должен быть - float или integer. И с чего вдруг мутирует. Телепатов тут нет.
Про телепатов я знаю :)
Спасибо за подсказку. Программу писал не я, приходится разбираться
самому. И спросить не кого.

DS
Сообщения: 41
Зарегистрирован: 17 фев 2005, 16:54

Сообщение DS » 11 янв 2007, 18:25

а мож проблемы с DecimalSeparator в проге?

Ответить