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

Вниз

MSSQL2000. Возврат значения поля даты - мм.дд.гггг   Найти похожие ветки 

 
Vlad Oshin ©   (2007-04-12 14:42) [0]

Локальные настройки правильные.дд.мм.гггг
На сервере() время правильно(системное)

Как начинаю сравнивать
     if ADOQueryDa.FieldByName("DateOff").AsDateTime > tdatetime(now)
        then ttemS:="<img src="../images/new3.gif" border="0">"
        else ttemS:="";
так и выясняется, что он принимает дату иначе чем дд.мм.гггг

Надо сказать чтоб было дд.мм.гггг
как?


 
Desdechado ©   (2007-04-12 15:22) [1]

Йо! Ты давно уже вопросы задаешь, а все как в детсаду...
И где у тебя тут "он принимает дату иначе чем дд.мм.гггг"? Кто "он"? Кому "Надо сказать"?


 
Ega23 ©   (2007-04-12 15:26) [2]


> tdatetime(now)


Зачем???


>  if ADOQueryDa.FieldByName("DateOff").AsDateTime > tdatetime(now)


Чему равно значение ADOQueryDa.FieldByName("DateOff").AsDateTime?


 
stone ©   (2007-04-12 15:51) [3]


> так и выясняется, что он принимает дату иначе чем дд.мм.
> гггг

Естественно, дата она вообще-то число с плавающей точкой. Все эти дд.мм.гггг лишь графическое отображение. Соответственно, либо сравнивай число с чилом (не забывай, что она еще и время содержит полсе запятой), либо приводи к одинаковому формату.


 
Vlad Oshin ©   (2007-04-12 16:04) [4]


> Чему равно значение ADOQueryDa.FieldByName("DateOff").AsDateTime?

04.12.2007, т.е. мм.дд.ггггг
12.04.2007 должно быть, т.е дд.мм.гггг


> Desdechado ©   (12.04.07 15:22) [1]
> 1где у тебя тут "он принимает дату иначе чем дд.мм.гггг"?
>  2Кто "он"? 3Кому "Надо сказать"?

1 наверное, сервер sql, может и ado гдето внутри, не знаю, потому и спрашиваю
потому как равенство на сегодняшнюю дату не выполняется
ADOQueryDa.FieldByName("DateOff").AsDateTime > tdatetime(now)
2 наверное он же
3 наверное ему же

Йо! Что ж непонятного: ответ приходит не в том формате - не дд.мм.гггг, а мм,дд,гггг. Надо гдето что-то прописать или в программе или на сервере, или еще гдето.
ну, я так думаю.

не, правда, неужели непонятно написан был вопрос?
тогда, да,  надо мне поучится задавать вопросы..


 
Vlad Oshin ©   (2007-04-12 16:16) [5]


> stone ©   (12.04.07 15:51) [3]

да это понятно,
вот и спрашиваю, как?
как привести к
> к одинаковому формату.


сначала заносил - insert into .. values ( ..,datetime(now), ..)

теперь сравниваю
if ADOQueryDa.FieldByName("DateOff").AsDateTime > tdatetime(now)

может есть что-то типа ADOQueryDa.formatdate(формат)?

PS
Да я бы не спрашивал, сделал бы
> число с чилом

придумал бы какие-нибудь, типа, datetofloat

но хочется по-человечески, наглядно. Чтоб открыть таблицу, и видно было - это тогда было занесено, это тогда и т.п.
Если что - ручками чтоб мог человек, далекий от всего этого, переправить в дбгриде.


 
Johnmen ©   (2007-04-12 16:17) [6]


> Vlad Oshin ©   (12.04.07 16:04) [4]
> > Чему равно значение ADOQueryDa.FieldByName("DateOff").AsDateTime?
> 04.12.2007, т.е. мм.дд.ггггг

Каким образом численное значение м.б. равно строковому?


 
stone ©   (2007-04-12 16:22) [7]


> Vlad Oshin ©   (12.04.07 16:16) [5]

Давай мухи отдельно - котлеты отдельно.

> if ADOQueryDa.FieldByName("DateOff").AsDateTime > tdatetime(now)

Во-первых, не надо tdatetime(now), достаточно просто now.
Во-вторых, не забывай что DateTime содержит и время, соответственоо если у тебя в ("DateOff").AsDateTime просто дата без времени(например сегодня), то она всегда будет меньше now.


> но хочется по-человечески, наглядно. Чтоб открыть таблицу,
>  и видно было - это тогда было занесено, это тогда и т.п.
>
> Если что - ручками чтоб мог человек, далекий от всего этого,
>  переправить в дбгриде.

Для этого у поля существуют свойства DisplayFormat и EditFormat


 
Vlad Oshin ©   (2007-04-12 16:37) [8]


> Во-первых, не надо tdatetime(now), достаточно просто now.
>  

по идеи да, и так и было, это я потом привел


> Во-вторых, не забывай что DateTime содержит и время, соответственоо
> если у тебя в ("DateOff").AsDateTime просто дата без времени(например
> сегодня), то она всегда будет меньше now.

log(floattostr(ADOQuery1.FieldByName("DateOff").Asdatetime)+" "+floattostr(tdatetime(now)));

39420 > 39183,6869014005


> Johnmen ©   (12.04.07 16:17) [6]

выше, если числа приводить


 
Плохиш ©   (2007-04-12 16:44) [9]


> Vlad Oshin ©   (12.04.07 16:04) [4]
>
> > Чему равно значение ADOQueryDa.FieldByName("DateOff").
> AsDateTime?
>
> 04.12.2007, т.е. мм.дд.ггггг
> 12.04.2007 должно быть, т.е дд.мм.гггг

Есть подозрение, что какой-то горе-программист в базу вальнул эти даты в виде текста в запросе, а о форматах представления дат понятия не имел.


 
SlymRO ©   (2007-04-12 16:46) [10]

Int(Now)?


 
Desdechado ©   (2007-04-12 16:46) [11]

Тогда остается выяснить тип поля DateOff, которое содержится в наборе данных. Если оно у тебя строковое, тогда могут быть проблемы.

ЗЫ А вопросы ты задавать не умеешь, так же как и отвечатьна наводящие. Не все на твоей волне гуляют.


 
SlymRO ©   (2007-04-12 16:47) [12]

Плохиш ©   (12.04.07 16:44) [9]
даты в виде текста

FieldByName("DateOff").Asdatetime


 
Johnmen ©   (2007-04-12 16:53) [13]


> SlymRO ©   (12.04.07 16:47) [12]
>> Плохиш ©   (12.04.07 16:44) [9]
>> даты в виде текста
>FieldByName("DateOff").Asdatetime

Это ничего не значит.


 
SlymRO ©   (2007-04-12 16:59) [14]

if not (ADOTable1.FieldByName("DateOff").DataType in [ftDate, ftTime, ftDateTime]) then raise exception.cre...


 
Плохиш ©   (2007-04-12 17:03) [15]


> SlymRO ©   (12.04.07 16:47) [12]
> Плохиш ©   (12.04.07 16:44) [9]
> даты в виде текста
> FieldByName("DateOff").Asdatetime

Это уже читают результат работы того горе-программиста.


 
Vlad Oshin ©   (2007-04-12 18:24) [16]

спасибо, разобрался. Перегнал все таблицы


 
Desdechado ©   (2007-04-12 18:27) [17]

> Перегнал все таблицы
В сибирь?


 
Vlad Oshin ©   (2007-04-12 19:13) [18]

:)
во временные, потом назад более корректно

Спасибо еще раз,
и извинения :)



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

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

Наверх




Память: 0.51 MB
Время: 0.046 c
15-1175743774
iZEN
2007-04-05 07:29
2007.04.29
Квас Никола.


2-1176110871
Steep
2007-04-09 13:27
2007.04.29
Размер формы


15-1175512484
Kot Andrei
2007-04-02 15:14
2007.04.29
MSDN offline


2-1176182269
zhurik
2007-04-10 09:17
2007.04.29
Динамический массив как параметр в процедуре ?


2-1175754669
_max_
2007-04-05 10:31
2007.04.29
tcp &amp; peerport