Форум: "Базы";
Текущий архив: 2004.01.16;
Скачать: [xml.tar.bz2];
ВнизПроблема с отображением даты Найти похожие ветки
← →
shnurok (2003-12-17 16:11) [0]Уважаемые мастера, помогите!
Возникла такая проблема - есть таблицы Paradox, а там поле Date.
Даты есть как прошлого века(до 2000) так и этого.
Так вот, в приложении пытаюсь сделать отображение года в четыре цифры(способы использовала : задание для поля DisplayFormat dd.mm.yyyy, меняла региональные настройки на дд.мм.гггг) - тогда даты прошлого века превращаются в "будущие", типа 2098.
Пробовала настроить сам BDE - картина такая: в приложении даты все равно остаются в формате дд.мм.гг - т.е. местные региональные, а если открыть таблицу в database Desktop - там нормально выглядит все, что до 2000г., все что позднее - опять только две цифры в году.
Посоветуте, что тут можно сделать? Или придется насильно переписать все даты в правильном формате?
главное, что из-за этой ерунды, неверно производится сортировка.
Ведь в самой таблице дата хранится верная, например, DataBase WorkShop все показывает правильно.
← →
Anatoly Podgoretsky (2003-12-17 16:17) [1]Переписать, но что то меня смущает, неужели Парадокс может хранить даты с двумя цифрами в годе, не верю.
← →
Johnmen (2003-12-17 16:23) [2]Не могёт такого быть...:)
Как видно, что "превращаются" ?
← →
Vint (2003-12-17 16:32) [3]а не пробовал поменять FOURDIGITYEAR на true?
← →
Shnurok (2003-12-17 16:33) [4]Вот-вот... нутром чую, что хранятся то они в нужном формате, но как мне заставить в DBGride отображать год в 4-ре цифры? Никак не получается. Либо 2(тогда есть такие записи 12.12.98 и 12.12.03), либо 4-ре, но все "старые" даты становятся например 12.12.2098. -(
← →
Shnurok (2003-12-17 16:34) [5]FOURDIGITYEAR уже давно выставлено в true, в самом приложении при этом все равно 2 цифры в году
← →
Johnmen (2003-12-17 16:36) [6]DisplayFormat dd.mm.yyyy достаточно, чтобы показывалось нормально.
← →
Shnurok (2003-12-17 16:39) [7]DisplayFormat dd.mm.yyyy дает дату из 12.12.98 в 12.12.2098 -(
← →
Vint (2003-12-17 16:43) [8]>Shnurok (17.12.03 16:33) [4]
либо 4-ре, но все "старые" даты становятся например 12.12.2098. -(
попробуй
TwoDigitYearCenturyWindow := скажем 90;
← →
Johnmen (2003-12-17 16:43) [9]Значит в этой записи в этом поле прописана дата 12.12.2098
Видимо, когда заполняли, били 2 знака...
← →
Hawk2 (2003-12-17 16:44) [10]Только что пробовал, таблица Paradox 7.0 правда у меня D5.
Во-первых при заполнении поля типа Date, даже при введении значения типа 10.08.98 после перехода на другую запись (или поле) автоматом дописывается 19, тоесть получается 10.08.1998, а из этого следует что Парадокс хранит дату в формате "dd.mm.yyyy". При этом что интересно, если ввести к примеру 15.08.52, то записывается 15.08.2052, а если 15.08.53, то дописывается 20 - тоесть 15.08.2052.
Во-вторых в Гриде все нормально отображается.
← →
Johnmen (2003-12-17 16:46) [11]>Hawk2 © (17.12.03 16:44)
>При этом что интересно...
Ничего интересного. Идешь в региональные настройки, Даты. Там ответ.
← →
Hawk2 (2003-12-17 16:46) [12]Малость ошибся после 53 записывается 19, например 15.08.53, то получается 15.08.1953, а до этого 20 - 15.08.2052.
← →
Shnurok (2003-12-17 16:48) [13]Проблема действительно наверное в том, что когда вводили указывали два знака. Но все равно какая-то мистика получается - смотрю таблице в стороннем менеджере баз данных(в том же DataBase WorkShop) ВСЕ даты выглядят нормально.
← →
Hawk2 (2003-12-17 16:49) [14]>Johnmen © (17.12.03 16:46) [11]
А нет там ничего!
← →
Johnmen (2003-12-17 16:55) [15]>Hawk2 © (17.12.03 16:49)
Есть. "При вводе двух цифр года воспринимать их как год между."
← →
Hawk2 (2003-12-17 17:00) [16]>Johnmen © (17.12.03 16:55) [15]
Эта опция не активна, а поля пустые!
Да впрочем это как говорится: "На скорость не влияет", у авторки вопроса всеравно ничего не выходит.
← →
Shnurok (2003-12-17 17:01) [17]Ага, и вот у меня эти самые региональные настройки воспринимают год введенный сейчас как 12.12.45 как 2045, хотя границы годов стоят с 1930 по 2029 ????
Придется все-таки переписывать значения в базе.
← →
mfender (2003-12-17 20:24) [18]
> Anatoly Podgoretsky © (17.12.03 16:17) [1]
> Переписать, но что то меня смущает, неужели Парадокс может
> хранить даты с двумя цифрами в годе, не верю.
Я видел такие таблицы (а может подобные). Там дата в виде string написана. И ее надо парсить.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.01.16;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.009 c