Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.22;
Скачать: CL | DM;

Вниз

translate error. value out of bounds - не могу забороть.   Найти похожие ветки 

 
yurez   (2003-09-01 15:43) [0]

вот такая штука есть
with dmCB.qCommon do begin
SQl.Clear;
SQL.Add("select max(Rec_Num) from Record_List (:DateB, :DateE) where Mark is NULL");
if DCMode = dcmDebit then SQL.Add("and Rec_Sum > 0")
else SQL.Add("and Rec_Sum < 0");
Params[0].asDate := Settings.Period.DateB;
Params[1].asDate := Settings.Period.DateE;
Close; Open;
end;

ошибка вылетает после OPEN.
ставил watcher на Settings.Period.DateB и Settings.Period.DateА, говорит, что там (не мопню но примерно так) 37446 и 37332.
в запрос передаются 2 даты,исходя из которых берется промежуток, в котором ищется максимальное значение по полю.

ей богу, уже все в зад возвращал
и базу месячной давности брал, и сорсы старые компилил
ну хоть ты тресни
и еще деталь
если запускать софт на сервере, то ошибка не выскакивает
если на клиенте, то выскакивает
как объяснить, не пойму.
а бухгалтерия уже чуть ли ни кипятком писает
люди, помогите разобраться

в жисть не трогал этих дельфей, да жисть заставляет


 
GRAND ©   (2003-09-01 15:50) [1]

А зря не трогал, рулезная это штука, должен сказать! :)
Ладно, это все лирика...

Попробуй вот так написать:

Params[0].asDate := QuotedStr(DateToStr(Settings.Period.DateB));
Params[1].asDate := QuotedStr(DateToStr(Settings.Period.DateE));

А потом скажи, проедет иль нет...


 
Mike Kouzmine ©   (2003-09-01 15:51) [2]

prepare?


 
GRAND ©   (2003-09-01 15:53) [3]

Упс, прогнал я...

Params[0].asString := QuotedStr(DateToStr(Settings.Period.DateB));
Params[1].asString := QuotedStr(DateToStr(Settings.Period.DateE));

Вот так должно покатить!


 
DenK_vrtz ©   (2003-09-01 15:55) [4]

ParamByName("DateB").AsDate := Settings.Period.DateB;
ParamByName("DateE").AsDate := Settings.Period.DateE;


 
yurez   (2003-09-01 15:59) [5]

general sql error
conversion error from string """30.09.2003"""


 
yurez   (2003-09-01 16:01) [6]

это был ответ на
> Params[0].asString := QuotedStr(DateToStr(Settings.Period.DateB));
> Params[1].asString := QuotedStr(DateToStr(Settings.Period.DateE));

а по поводу

> ParamByName("DateB").AsDate := Settings.Period.DateB;
> ParamByName("DateE").AsDate := Settings.Period.DateE;

та же ошибка


 
stone ©   (2003-09-01 16:07) [7]

Что это за конструкция такая?

... from Record_List (:DateB, :DateE) where ...

что эти параметры делают в этом месте?


 
GRAND ©   (2003-09-01 16:10) [8]

>yurez (01.09.03 15:59) [5]

Значит, у тебя дата сервером в нашем национальном виде не хавается... Надо тогда глобальной переменной ShortDateFormat присвоить строку "mm/dd/yy", типа такого. Такой формат даты сервер должен понять.


 
yurez   (2003-09-01 16:14) [9]


> что эти параметры делают в этом месте?

могу только догадываться, что они отдаются процедуре
почему именно тут, не знаю
ой. так это же просто тест запроса, который потом выполняется


 
DenK_vrtz ©   (2003-09-01 16:26) [10]

stone ©, согласен с тобой. Хотя я и не спец в IB, станно все это!


 
Nikolay M. ©   (2003-09-01 16:30) [11]

1) SQL.Add("and Rec_Sum > 0") - поставь пробел перед and.
2) тип параметра Params[0].ParamType (так, кажется) попробуй указать, все-таки запрос на лету генеришь.
3) Record_List (DateB, DateE) - это хранимая процедура?


 
Nikolay M. ©   (2003-09-01 16:32) [12]

4) да, и лучше сделай Close ДО, а Open ПОСЛЕ манипуляций с текстом запроса. А то нелогично как-то получается: правишь запрос, закрываешь его, открываешь...


 
yurez   (2003-09-01 16:43) [13]

сделал все, как вы говорите
не помогает

рассказываю. звонит бухгалтер . говорит - спасибо что починил. я в шоке. я не перекомпиливал программу. тем более ей не давал обновленный ЕХЕшник.

с мего компутера не запукается
с сервера запускается. (и у меня, и на сервере вин2000 сервер англ)
у бухгалтера вин2000 рус.

копировал себе idapi32.cfg от бухгалтера - не помогло. ещебы, я же ей свой отдавал :)
> Record_List (DateB, DateE) - это хранимая процедура?

да, в базе болтается

в общем,сижу, втыкаю по-полной. пытаюсь докопаться до причины

везде на машинах формат даты одинаковый стоит...


 
starik30   (2003-09-01 17:19) [14]

может Close надо после Clear, а не перед Open (или это очепатка)?...



Страницы: 1 вся ветка

Текущий архив: 2003.09.22;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.03 c
1-71599
mrcat
2003-09-09 14:49
2003.09.22
Манифест XP vs. TListView.OwnerDraw


1-71659
NiX
2003-09-08 17:35
2003.09.22
Доступ к свойству компонента


14-71889
Карлсон
2003-09-03 18:06
2003.09.22
книга про Windows для ну совсем чайников.


7-71971
sashak
2003-07-10 10:30
2003.09.22
String - тип Byte


3-71530
Boss
2003-08-31 13:28
2003.09.22
INNER JOIN