Страница 1 из 1

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

Добавлено: 11 янв 2007, 14:20
Студент
Доброго дня!

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

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

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

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

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

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

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

Добавлено: 11 янв 2007, 15:49
Студент
Был integer хочет Float

Добавлено: 11 янв 2007, 16:02
Dimitry Sibiryakov
Такое впечатление что меняется диалект либо базы либо подключения.

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

Добавлено: 11 янв 2007, 16:20
Dimitry Sibiryakov
Ну так и посмотрите на реальный тип этого поля. А потом думайте каким он должен быть - float или integer. И с чего вдруг мутирует. Телепатов тут нет.

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

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

Добавлено: 11 янв 2007, 18:25
DS
а мож проблемы с DecimalSeparator в проге?