Форум: "Базы";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];
ВнизПри попытке записи в поле типа DATE выскакивает ошибка Найти похожие ветки
← →
СержК (2004-11-25 16:29) [0]Мастера подскажите - очень нужно.
Возникла необходимость переписать свой старый проект. Но вылетает ошибка:
Translate Error. Value out of bounds.
Эта ошибка вылетает при попытке внесения информации в поле типа Date.
Я давно уже не следил за этим проектом (не было необходимости).
Не поленился сходить к пользователю - у него все работает отлично. Ошибка вылетает при работе с моей рабочей станции.
Что это может быть и как с этим бороться???
← →
Fay © (2004-11-25 16:35) [1]Похоже, у тебя ошибка в программе...
← →
СержК (2004-11-25 16:48) [2]Я не буду утверждать, но похоже нет.
Эта программа написана приблизительно 2 года назад. Все у меня работало отлично. У пользователя до сих пор работает.
Я думаю о другом: я что-то ставил и что-то снес...Но что?
IB уже переустановил не помогло.
← →
Anatoly Podgoretsky © (2004-11-25 16:58) [3]А все таки подумай об [1] самое что есть вероятное, поскольку такой ошибки быть не может.
← →
a3a3ello (2004-11-25 17:15) [4]А не может быть проблема в локальных настройках даты твоей рабочей станции? Типа dd.mm.yyyy или mm.dd.yyyy.
← →
a3a3ello (2004-11-25 17:15) [5]А не может быть проблема в локальных настройках даты твоей рабочей станции? Типа dd.mm.yyyy или mm.dd.yyyy.
← →
СержК (2004-11-26 09:14) [6]Мастера, ничего не получается.
Поле в БД тип Date.
В запросе параметр описан как: AsDate - при выполнении запроса вылетает ошибка.
Если изменяю параметр в запросе на AsDateTime - все прокатывает нормально, но при просмотре в гриде в проекте - естественно DateTime, а нужен Date.
Проект написан на D5. После на машину поставил D7 и MsSQL.
На машине сейчас стоит D5,D7,IB5,MsSQL.
Не могут ли мои проблеммы быть связаны с конфликтом установленного ПО?
← →
Johnmen © (2004-11-26 09:25) [7]>В запросе параметр описан как: AsDate - при выполнении запроса
>вылетает ошибка.
Что такое AsDate ? Где это написано ?
СтОит обратить внимание на TDateTime+TDate+F1
MsSQL тут непричем, ес-но.
Уточню [1] - ошибка (какая, кстати?) в 17 строке.
← →
СержК (2004-11-26 09:37) [8]Вот фрагмент кода:
begin
QueryEdit.ParamByName("updRES").AsInteger:=nRES;
QueryEdit.ParamByName("updDate").AsDate:=DateTimePicker1.Date;
Database1.StartTransaction;
QueryEdit.ExecSQL;
if InTransaction then Database1.Commit;
end;
Вот SQL запрос:
Update Arhiv_zayvka Set Res=:updRES,
Date_zayvl=:updDate
Where Rec=1000
Вот ошибка: Translate Error. Value out of bounds.
Ошибка вылетает после ExecSQL
← →
Johnmen © (2004-11-26 09:54) [9]Ответ прост.
Если бы ты заглянул в справочное руководство по IB5, то узнал бы, что поле типа Date предназначено для хранения дата+время, т.е. а ля datetime. А значит и работать с ним надо соответственно.
← →
СержК (2004-11-26 10:07) [10]Так почему-же на других рабочих станциях (у пользователей) все работает без проблем уже почти два года? Я про них уже почти забыл. И столько бы еще проработало если бы не пришлось переделывать проект под новые задачи.
← →
Johnmen © (2004-11-26 10:17) [11]Ну я же ничего не знаю про другие рабочие станции.
Чем они отличаются от данной ? Какая там версия БДЕ, например ?
← →
СержК (2004-11-26 10:36) [12]Машины разные ОС от Win98 до Win2000 (даже когда-то стояло на NT4). Версия BDE везде одинакова - я создал инсталяху, и ставлю эту программу с ее помощью.
Ну да ладно - пусть это остается тайной. Все равно большое спасибо за советы. Буду переписывать код под DateTime.
Да кстати, нет ли стандартного способа отобразить в гриде DateTime как Date (чтобы не создавать вычисляемого поля для обработки)?
← →
Johnmen © (2004-11-26 10:40) [13]Есть. Напр., TField.DisplayFormat
← →
СержК (2004-11-26 10:55) [14]Попробовал - TField.DisplayFormat все ОК.
Огромное спасибо.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.041 c