Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Вывод даты / 20 сообщений из 20, страница 1 из 1
18.01.2019, 12:13
    #39761390
wsnet
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
Коллеги, не много не допер.

Есть MSSQL, там поле date, при значении null в базе в cxDateEdit выводится '30.12.1899', а мне бы нужно '00.00.0000'

при попытке в MSSQL isnull(date1, '0000-00-00') вылетает ошибка преобразования даты. Как быть не могу сообразить.
...
Рейтинг: 0 / 0
18.01.2019, 12:25
    #39761403
goldmi45
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
wsnet,

преобразовывай на клиенте.
...
Рейтинг: 0 / 0
18.01.2019, 12:29
    #39761407
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
wsnetвыводится '30.12.1899'
Это 0, стартовая дата. Можно у поля назначать обработчик OnGetText и выдавать любой текст для грида.
...
Рейтинг: 0 / 0
18.01.2019, 12:30
    #39761409
wsnet
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
goldmi45, имхо, а как бы это сделать ? Не могу найти событие, по которому оно преобразовываться будет
...
Рейтинг: 0 / 0
18.01.2019, 12:32
    #39761412
wsnet
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
wadman, я не вижу данное событие у cxDateEdit
...
Рейтинг: 0 / 0
18.01.2019, 12:35
    #39761418
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
wsnetя не вижу данное событие у cxDateEdit
А я про поле писал, а не про редакторы и гриды. :)
...
Рейтинг: 0 / 0
18.01.2019, 12:40
    #39761423
wsnet
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
wadman, а тьфу ну да.
...
Рейтинг: 0 / 0
18.01.2019, 12:43
    #39761426
wsnet
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
wsnetwadman, а тьфу ну да.

Но я не использую db-компоненты.

Просто в поле вывожу результат запроса.
...
Рейтинг: 0 / 0
18.01.2019, 12:46
    #39761429
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
wsnetПросто в поле вывожу результат запроса.
Что мешает перед выводом проверить на null?
...
Рейтинг: 0 / 0
18.01.2019, 12:51
    #39761433
zinpub
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
А в DateEdit вообще можно вывести "00.00.0000" ?
...
Рейтинг: 0 / 0
18.01.2019, 12:54
    #39761436
wsnet
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
wadman,

Хорошо если пришел null, то как мне отобразить значение '00.00.0000' ?

Не догоняю.
...
Рейтинг: 0 / 0
18.01.2019, 12:59
    #39761444
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
wsnetХорошо если пришел null, то как мне отобразить значение '00.00.0000' ?
Понимаю, пятница...

if field.isnull then somedot.text := '00.00.0000'

это если сам редактор такое позволяет. Либо разбираться с ним, раз он с чего-то решается отображать null кривым образом.
...
Рейтинг: 0 / 0
18.01.2019, 13:13
    #39761458
wsnet
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
wadman, да все и свелось к редактору(
В лоб не получается.
...
Рейтинг: 0 / 0
18.01.2019, 16:24
    #39761606
Valery_B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
wsnetпри попытке в MSSQL isnull(date1, '0000-00-00') вылетает ошибка преобразования даты. Как быть не могу сообразить.
Попробуй так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
DECLARE @ADate Date = NULL
--SET @ADate = GETDATE()
SELECT
ADate =  CASE 
          WHEN @ADate IS NULL THEN '0000-00-00'
          ELSE CONVERT(VARCHAR(10), @ADate)
         END
...
Рейтинг: 0 / 0
18.01.2019, 16:45
    #39761626
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
Valery_BПопробуй так:
cxDateEdit не поддерживает sql. :(
...
Рейтинг: 0 / 0
19.01.2019, 09:16
    #39761800
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
zinpubА в DateEdit вообще можно вывести "00.00.0000" ?

Можно ввести просто 0
...
Рейтинг: 0 / 0
19.01.2019, 09:21
    #39761801
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
wsnetа мне бы нужно '00.00.0000'

Код: pascal
1.
2.
cxDateEdit1.properties.NullString := '00.00.0000';
cxDateEdit1.properties.UseNullString := True;



TcxCustomTextEditProperties
--------------------------------------------------------------------------------

Specifies whether the custom text will be displayed if the editor is empty.
...
Рейтинг: 0 / 0
19.01.2019, 10:57
    #39761815
wsnet
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
X11, каким образом просто вывести 0 ?
...
Рейтинг: 0 / 0
24.01.2019, 09:49
    #39763987
Beltar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
Я не знаю за cxDateEdit, но для стандартного TDateTimePicker есть извращенский способ отображать пустое значение.

Код: pascal
1.
DateTime_SetFormat(DTP.Handle,' ');



Может быть у этого компонента есть что-то подобное. А может быть даже то же самое, о чем намекает то, что DateTime_SetFormat принимает THandle. Если нет, то я бы руками переписал на стандартный DTP быстрее, чем разбирался, как работать с посторонней свистелкой.
...
Рейтинг: 0 / 0
24.01.2019, 09:52
    #39763989
Beltar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод даты
Правда, после этого надо на изменение прописывать что-то вроде.
Код: pascal
1.
DateTime_SetFormat(DTP.Handle,PChar('dd.MM.yyyy'));
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Вывод даты / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]