|
|
|
Левая дата в dbf
|
|||
|---|---|---|---|
|
#18+
всем HI! Вопрос. Ни у кого небыло такой ситуации: Есть dbf с полем date. Там стоит "20.02.2007". По независящим от нас причинам (не из фокса) файл бъется и в поле теперь там "30.02.2007". Как отреагирует фокс если попытаться открыть этот файл? Откажется вообще или в поле покажет звездочки (как в случае числового поля в аналогичной ситуации)? Сейчас разбираюсь с таким случаем, но там битых дат нет вроде. А надо на перспективу... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2007, 12:46 |
|
||
|
Левая дата в dbf
|
|||
|---|---|---|---|
|
#18+
Ну так открой dbf любым текстовым редактором и исправь дату. Лично у меня после таких издевательств - показывает пустую дату ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2007, 12:56 |
|
||
|
Левая дата в dbf
|
|||
|---|---|---|---|
|
#18+
залезть то можно, но интересно найти программно и обезвредить :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2007, 13:01 |
|
||
|
Левая дата в dbf
|
|||
|---|---|---|---|
|
#18+
Интересно как такое могло получится - насколько я помню поле типа Date содержит количесво секунд с какого начального момента. Так что в нем по определению неправильной даты быть не может. А если поле символьное то можно писать и править как захочется Фокс и слова не скажет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2007, 13:32 |
|
||
|
Левая дата в dbf
|
|||
|---|---|---|---|
|
#18+
Количество секунд хранится для поля типа DateTime, а для поля типа Date хранится строка в формате YYYYMMDD. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2007, 13:49 |
|
||
|
Левая дата в dbf
|
|||
|---|---|---|---|
|
#18+
BurnИнтересно как такое могло получится - насколько я помню поле типа Date содержит количесво секунд с какого начального момента. Так что в нем по определению неправильной даты быть не может. А если поле символьное то можно писать и править как захочется Фокс и слова не скажет Неправильно помните... То, что Вы сказали - справедливо для DateTime поля. Стандартное же поле Data в DBF-файле содержит символьные данные в виде строки вида YYYYMMDD. Так что, можно (при соответствующем желании) подправить дату и в текстовом редакторе... Только надо быть осторожным, чтобы лишним символом не произвести смещение остальных данных, так как данные различных полей следуют друг за другом без разделителей... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2007, 13:57 |
|
||
|
Левая дата в dbf
|
|||
|---|---|---|---|
|
#18+
Точно. Запамятовал:( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2007, 13:58 |
|
||
|
Левая дата в dbf
|
|||
|---|---|---|---|
|
#18+
Как-бы там данные не хранились, вирь или еще что может их запортить... Так как програмно отловить невалидную дату? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2007, 14:12 |
|
||
|
Левая дата в dbf
|
|||
|---|---|---|---|
|
#18+
стандартными средствами - думаю никак можно конечно написать свою прогу для разбора "внутренностей" и сравнивать данные полученные 2 способами. Кстати - случай замены на "левую" дату не так страшен , как вариант замены например "20.02.2007" на "21.02.2007" - тут уже никак не выловить ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2007, 14:26 |
|
||
|
Левая дата в dbf
|
|||
|---|---|---|---|
|
#18+
Гурантзалезть то можно, но интересно найти программно и обезвредить :) Дак уже обезврежено. фокс такую дату пустой показывает и обрабатывает как пустую А если тебе для другого софта надо пустую, то Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2007, 17:39 |
|
||
|
Левая дата в dbf
|
|||
|---|---|---|---|
|
#18+
Проскочил этот пост ГурантКак-бы там данные не хранились, вирь или еще что может их запортить... Так как програмно отловить невалидную дату? Структура DBF ( тынц ) довольно простая, читай DBF как файл и если прочитанное в число через CTOD() не преобразуется в дату, то значит дата "нереальная" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2007, 17:45 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=34532108&tid=1589325]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
235ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 205ms |
| total: | 533ms |

| 0 / 0 |
