|
|
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Добрый день. Подскажите, пожалуйста, как правильным образом отображать значение поля типа datetime в гриде, я в свойстве Displayformat поля ставлю dd.mm.yyyy hh:MM:ss, при работе приложения всё отображает правильно, но при входе в режим редактирования поля, значение отображается в каком-то непонятном виде, если установить Editmask, то тоже показывается ввод по маске, а мне хотелось, чтобы при переходе в этот режим корректно отображалась дата и время. Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2017, 11:57:17 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
patrick1968чтобы при переходе в этот режим корректно отображалась дата и время А сейчас как отображается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2017, 12:08:25 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
И какие компоненты используются (что за грид)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2017, 12:11:20 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
при отображении 09.11.2017 14:06:50 - это правильно, а при входе в редактирование становится 2017-11-09 14:06:50 14:06:50 (почему-то время дважды) и формат даты сменился ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2017, 12:16:43 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
сравни DisplayFormat и EditFormat у "проблемного" поля. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2017, 15:03:32 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
У поля ADOQuery, также как и у Columns[i] грида нет такого свойства как EditFormat ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2017, 15:43:28 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Компонент dbgrideh ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2017, 15:50:19 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
13.11.2017 15:43, patrick1968 пишет: > нет такого свойства как EditFormat ну значит EditMask, или что-то подобное. чЮдес на свете не бывает. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2017, 16:12:23 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Там у dbgrideh вообще-то DateEdit-контрол должен появляться с выбором из календаря (а не обычное текстовое поле с вводом по маске). Может тип колонки неправильно определился в датасете? Надо щелкнуть по датасету, выбрать Fields, выбрать нужное поле (если нет, то добавить в список все поля через add all fields), после чего посмотреть класс у поля -- он должен быть TDateField быть. Вот так: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2017, 16:49:29 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Если в EditMask вписать шаблон даты, то при в ходе в редактирование вместо даты я вижу 10.__.__, но это также не интересно, может шаблон какой другой долженн быть а не !99.99.00;1;_ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2017, 16:53:04 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Удали колонку (Column) из грида и добавь заново. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2017, 17:08:42 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Что только не перепробовал - бесполезно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2017, 17:54:38 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Чудес не бывает. Выкладывай архив с проектом. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2017, 19:33:13 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Проблемы с форматом даты надо решать на уровне SQL-запроса, а не приложения. Надо в SQL-запросе установить нужный формат функцией DATEFORMAT (или подобной - не знаю какой диалект SQL используется в БД, но в любом есть функция форматирования даты)... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2017, 19:57:15 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
patrick1968при входе в редактирование становится 2017-11-09 14:06:50 14:06:50 в настройках системы небось такой формат впилил. Проверь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2017, 20:05:44 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
не думаю, что запрос здесь как-то влияет, вот его вид: SET DATEFORMAT dmy; SELECT sh.ShiftID, CAST(sh.OutTime as DATETIME) OutTime, sh.CarID, c.RegNum, sh.OutDriverID, (d.FirstName + ' ' + SUBSTRING(d.LastName, 1,1) + '.' + SUBSTRING(d.SecondName, 1, 1) + '.') as OutDriverName, sh.OutUser, u.USERNAME as OUTUSERNAME, sh.OutRun, CAST(sh.InTime as DATETIME) InTime, sh.InDriverID,(d1.FirstName + ' ' + SUBSTRING(d1.LastName, 1,1) + '.' + SUBSTRING(d1.SecondName, 1, 1) + '.') as InDriverName, sh.InRun, sh.InUser, u1.USERNAME as INUSERNAME, sh.ShiftCash, sh.CashUser, u2.USERNAME as CASHUSERNAME, sh.ShiftOnBoard FROM dbo.Shifts sh left outer join dbo.Cars c on (c.CarID = sh.CarID) left outer join dbo.Drivers d on (d.DriverID = sh.OutDriverID) left outer join dbo.Drivers d1 on (d1.DriverID = sh.InDriverID) left outer join dbo.USERS u on (u.USERID = sh.OutUser) left outer join dbo.USERS u1 on (u1.USERID = sh.InUser) left outer join dbo.USERS u2 on (u2.USERID = sh.CashUser ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 09:45:30 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
d7iПроблемы с форматом даты надо решать на уровне SQL-запроса, а не приложения. Надо в SQL-запросе установить нужный форматОга, конечно. А на клиенте конечно же выкусывать дату из строки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 09:56:41 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
patrick1968SET DATEFORMAT dmy; SELECT sh.ShiftID, CAST(sh.OutTime as DATETIME) OutTime OutTime - строковое поле в формате dmy? Прикольно. Но проблема, скорей всего, всетаки в системном формате даты на клиенте, как kdv уже писал. Если проверишь его и ничего не заметишь необычного - смени на другой, и посмотри на результат. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 10:02:04 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Почему это строковое поле? CAST(sh.OutTime as DATETIME) OutTime, просто если в запросе написать sh.OutTime, то при открытии ADOQuery будет ошибка, в связи с этим и приходится таким образом извращаться (поле типа datetime еще раз преобразовывать в datetime), хотя в данном запросе set dateformat никак не влияет, он так остался с предыдущего запроса ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 10:12:12 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
а настройки формата на клиенте самые обыкновенные, вот Модератор: Вложение удалено. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 10:17:16 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
patrick1968> если в запросе написать sh.OutTime, то при открытии ADOQuery будет ошибка Текст ошибки какой ? Проверь на новом (чистом) проекте - увидишь, что всё работает правильно. И скриншоты научись прикладывать правильно (обрезать лишнее). Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 11:03:57 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Сейчас уже точный текст ошибки не воспроизведу, но что-то вроде "Неверный тип поля, ожидался widestring а в реалиях datetime"после того как в запросе вместо поля поставил преобразование CAST ошибка исчезла ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 11:28:14 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Зачем вспоминать, когда можно убрать cast и проверить? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 11:32:05 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
patrick1968Сейчас уже точный текст ошибки не воспроизведу, но что-то вроде "Неверный тип поля, ожидался widestring а в реалиях datetime"после того как в запросе вместо поля поставил преобразование CAST ошибка исчезлаЭто потому, что поле на форме оформлено как TDateTimeField, а в базе оно - строка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 12:52:07 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
d7iПроблемы с форматом даты надо решать на уровне SQL-запроса, а не приложения.Что за чушь? А в приложении вызывать StrToDateTime если опять понадобится дата? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 15:54:21 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_d7iПроблемы с форматом даты надо решать на уровне SQL-запроса, а не приложения.Что за чушь? А в приложении вызывать StrToDateTime если опять понадобится дата? Да, именно так. В БД дата хранится в формате даты. При выдаче преобразовывается в строку. В приложении делайте с ней что угодно, при записи в БД опять преобразовываете в строку... И нет никаких проблем. Потому что формат даты (числовой) в БД совсем не обязательно совпадает с таковым в приложении (в т.ч. и в самой ОС). Поэтому прием-передачу даты в БД надо делать в строковом формате. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 16:49:30 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
d7i> В БД дата хранится в формате даты. d7i> ... при записи в БД опять преобразовываете в строку... d7i> Поэтому прием-передачу даты в БД надо делать в строковом формате. Жесть какая-то... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 16:54:24 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
d7i...формат даты (числовой) в БД совсем не обязательно совпадает с таковым в приложении (в т.ч. и в самой ОС)... А должен совпадать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 16:56:37 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустамd7i> В БД дата хранится в формате даты. d7i> ... при записи в БД опять преобразовываете в строку... d7i> Поэтому прием-передачу даты в БД надо делать в строковом формате. Жесть какая-то... Никакая не жесть... Я 20 лет работаю с SQL-базами и не имею никаких проблем с датами, используя данный принцип. А в приложении надо немного ручками и головой поработать, а не просто тащить в проект чужие компоненты и потом удивляться что там что-то странно работает. Есть проблемы с календарем - напиши свой. Календарь (DatePicker) использую самописный и не имею с ним никаких проблем. P.S. Впрочем я не дельфист, а работаю на С++... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 18:43:25 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
14.11.2017 18:43, d7i пишет: > Я 20 лет работаю с SQL-базами и не имею никаких проблем с датами дай угодаю, МыСКЛ? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 18:47:13 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
d7iПри выдаче преобразовывается в строку. В приложении делайте с ней что угодно, при записи в БД опять преобразовываете в строку... И нет никаких проблем. Счастливые люди. Проблем не имеют. И, главное, работы не боятся. Труд - дело благородное. Да и любой владелец облэнерго тебе спасибо скажет за сжигание лишней электроэнергии при конвертации сюда-туда-туда-сюда-сюда-туда-сюда-туда (извиняюсь, если какую-то итерацию упустил) полей DATETIME каждой записи. Всем хорошо. Жаль, так трудиться на благо всем не для меня - мне лень. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 18:47:23 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Справедливости ради надо сказать, что тот же SQLite даты в виде строк хранит в базе, а потом на лету преобразует из строки в реальную дату и обратно. Самая популярная база данных в мире, в т.ч. поголовно на смартфонах используется. И никто не жалуется на производительность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 18:52:01 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
14.11.2017 18:52, JaDi пишет: > Справедливости ради надо сказать, что тот же SQLite даты в виде строк хранит в базе он вообще ВСЁ хранит в виде строк. ибо govno ist. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 18:54:30 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
JaDi...SQLite даты в виде строк хранит в базе, а потом на лету преобразует из строки в реальную дату и обратно... Кто-кто на лету преобразует? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 18:58:22 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий14.11.2017 18:43, d7i пишет: > Я 20 лет работаю с SQL-базами и не имею никаких проблем с датами дай угодаю, МыСКЛ? Не угадал. WATCOM, SyBase. Предки MSSQL, кстати... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 18:59:06 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
14.11.2017 18:59, d7i пишет: > Не угадал. > WATCOM не знаю такой СУБД Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 19:05:26 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
JaDiСправедливости ради надо сказать, что тот же SQLite даты в виде строк хранит в базе, а потом на лету преобразует из строки в реальную дату и обратно. Самая популярная база данных в мире DBF тоже даты в виде строк хранил, если память не изменяет. И тоже "самой популярной базой данных в мире" был ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 19:06:04 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
14.11.2017 19:06, YuRock пишет: > DBF тоже даты в виде строк хранил, если память не изменяет. он изначально вообще ВСЁ так хранил. это уже гораздо позжеЕ, в эпоху ВижуалФоксПро ввели нативные типы. но от поддержки старого формата не отказались и поныне. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 19:08:56 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
d7i...Я 20 лет работаю с SQL-базами... ... P.S. Впрочем я не дельфист, а работаю на С++... 20 лет назад никакого Watcom уже не было... шел бы ты ... Страуструпа читать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 19:09:42 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
d7i> Я 20 лет работаю с SQL-базами и не имею никаких проблем с датами, используя данный принцип. Я ж говорю - жесть... Просто ради интереса - я всё правильно понял - Вы в запросе делаете cast(sstringdatefield as datetime)? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 19:31:36 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамПросто ради интереса - я всё правильно понялЯ так понял, что он делает наоборот d7iВ БД дата хранится в формате даты. При выдаче преобразовывается в строку. Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 19:47:03 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
14.11.2017 18:59, d7i пишет: > WATCOM, SyBase. > Предки MSSQL, кстати... И давно это Watcom стал предком M$SQL ;) ? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 19:50:29 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_> В БД дата хранится в формате даты. При выдаче преобразовывается в строку. А, ну да. AsString туда, и cast(field as varchar) (или Format) оттуда. 20 лет... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 19:54:51 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам20 лет...20 тысяч МегаВатт... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 20:06:35 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
чччДJaDi...SQLite даты в виде строк хранит в базе, а потом на лету преобразует из строки в реальную дату и обратно... Кто-кто на лету преобразует? :) Библиотека, работающая с базой. Конечный разработчик их, конечно, в виде дат видит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 20:17:05 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
Dim200014.11.2017 18:59, d7i пишет: > WATCOM, SyBase. > Предки MSSQL, кстати... И давно это Watcom стал предком M$SQL ;) ? Ну, не прямые, но крестные точно. WATCOM - SyBase ----------------------- Initially created by Watcom as Watcom SQL. Version 3: 1992 Watcom acquired by Powersoft in 1993; Watcom SQL shipped with their visual programming environment PowerBuilder Version 4: 1994 (Stored procedures, triggers) PowerSoft and Sybase merged in 1995: Watcom SQL was renamed SQL Anywhere. Version 5: 1995 (SQL Remote data replication; graphical administration tools) Version 6: 1998. Renamed Adaptive Server Anywhere. (multi-processor support, Java objects in the database) ..... Исторически первым и самым известным продуктом Sybase является реляционная СУБД SQL Server, впоследствии получившая наименование Adaptive Server Enterprise. Выпущенный в 1988 году продукт SQL Server 1.0 был создан совместно с Microsoft и Ashton-Tate (англ.) для платформы OS/2, на основе кодов Sybase SQL Server для Unix и VAX/VMS. Ashton-Tate после поглощения компанией Borland в 1991 году прекратила сотрудничество, а Sybase и Microsoft совместно выпускали новые версии продукта, реализуя их, соответственно, под именами Sybase SQL Server и Microsoft SQL Server. Sybase и Microsoft в 1996 году приняли решение прекратить совместное развитие продукта, и самостоятельно развивать каждый свою ветку. Таким образом, появились две различных СУБД с общим наследием в виде процедурного языка Transact-SQL и архитектуры обработки данных: Sybase Adaptive Server Enterprise и Microsoft SQL Server. ---------------------------------------- Итого: WATCOM сделал WATCOM SQL - SyBase выкупил и переименовал в SQL Anywhere 5.0 (кстати, в файле БД SyBase SQL Anywhere 5.5 так и осталась подпись Copyright (c) 1987, 1994 WATCOM International Corp.). Затем вел с Microsoft совместную разработку (используя наработки WATCOM), что впоследствие превратилось в Sybase Adaptive Server Enterprise и Microsoft SQL Server... Такая вот история. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 20:21:29 |
|
||
|
Неверное отображение значения
|
|||
|---|---|---|---|
|
#18+
14.11.2017 20:21, d7i пишет: > Ну, не прямые, но крестные точно. Максимум - соседи по лестничной клетке. А историю можно было не писать, я её и так прекрасно знаю ;). > International Corp.). Затем вел с Microsoft > совместную разработку (используя наработки WATCOM), что впоследствие > превратилось в Sybase Adaptive Server Enterprise и Microsoft SQL Server... А вот это глупость. ASE/MSSQL - это совсем другой продукт, исторически никак не связанный с SA. Собственно, это прекрасно заметно, если хоть немного поработать с ними обоими... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2017, 21:53:54 |
|
||
|
|

start [/forum/topic.php?all=1&fid=58&tid=2041589]: |
0ms |
get settings: |
4ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
418ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 222ms |
| total: | 734ms |

| 0 / 0 |
