|
Преобразование даты с учётом Гринвича и переходом на летние и зимнее время
|
|||
---|---|---|---|
#18+
Добрый день. Возникла проблема. На сервере стоит система, которая пишет дату в оракл по гринвичу (+0) в системных полях. (Это конечно не правильно, но править это долго и сейчас срочно нужен костыль.) Я сначала делал через константу. Т.е. разбивал дату на части, и к часам прибавлял + 4 часа. Но из-за перехода на зимнее и летнее время, это не подошло. Так как постоянно нужно залазить и править с +4 на +3 и т.д. Я хотел сделать следующее, но не знаю как правильно описать. Макросом вытащить дату из системного поля. (к примеру она равна 12:00) И в макросе эту дату преобразовать + 4 часа. Через региональные настройки. Т.е. макрос будет вытаскивать системные региональные настройки машины. (так как макрос запускается на клиентской машине) Далее с учётом этих региональных настроек преобразовывать дату при необходимости +4 часа или +3 часа. Либо как то делать усилием самого оракла, что бы он исправлял дату на правильную. Беря региональные настройки с самого сервера. (Что возможно правильнее.) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.08.2014, 16:50 |
|
Преобразование даты с учётом Гринвича и переходом на летние и зимнее время
|
|||
---|---|---|---|
#18+
alekseich.n, Если дата/время нужны правильные(независимо от локальных настроек) - берите данные о времени с какого-либо сайта. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.08.2014, 21:34 |
|
Преобразование даты с учётом Гринвича и переходом на летние и зимнее время
|
|||
---|---|---|---|
#18+
А чем Вас sysdate не устраивает? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2014, 11:13 |
|
Преобразование даты с учётом Гринвича и переходом на летние и зимнее время
|
|||
---|---|---|---|
#18+
При этом предварительно делать Код: plsql 1.
вы будете получать нужное время . ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2014, 11:22 |
|
Преобразование даты с учётом Гринвича и переходом на летние и зимнее время
|
|||
---|---|---|---|
#18+
Всем спасибо. Через БД Oracl делать нельзя. (Т.е. можно, но нам не положено. В рамках задачи.) В общем выкрутился таким образом: Макросом достал документ, как объект. В строке которого был злосчастный SysTimeStamp во времени UTC. Отправил его в функцию, которую написал. Преобразование даты пришлось делать именно так. Так как Application.Utility.Replace обрезал драгоценные секунды. Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29.
... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2014, 19:46 |
|
|
start [/forum/topic.php?fid=60&gotonew=1&tid=2156234]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
163ms |
get topic data: |
8ms |
get first new msg: |
6ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
others: | 288ms |
total: | 534ms |
0 / 0 |