|
v7: Определить зимнее или летнее время | ☑ | ||
---|---|---|---|---|
0
hovnokoder
04.11.14
✎
16:27
|
В кратце такая ситуация.
Из вне получаю некую информацию, где указано дата/время в UNIX формате (UNIX-время) Для правильного преобразования в дату и время нужно знать какое сейчас локально зимнее или летнее время. Для этого я установил константу: ЛетнееВремя. Но менять её вручную 2 раза в год можно забыть. Может кто-то уже писал код для проверки когда меняется летнее на зимнее время и обратно? |
|||
1
Xapac
04.11.14
✎
16:30
|
(0)а когда время меняют в следующий раз?
|
|||
2
Defender aka LINN
04.11.14
✎
16:36
|
(0) Вот у своего вна и спрашивай
|
|||
3
hovnokoder
04.11.14
✎
16:38
|
(1) У нас ещё переводят
|
|||
4
hovnokoder
04.11.14
✎
16:39
|
(2) у "вна" все правильно. Дата в Юних формате не зависит от летнего/зимнего времени
|
|||
5
shag008
04.11.14
✎
16:42
|
Последнее воскресенье октября и марта вроде. Попробуй дату вычислить.
|
|||
6
hovnokoder
04.11.14
✎
16:43
|
(5) когда менять понятно. Но как вычислить последнее воскресенье в месяце?
|
|||
7
hovnokoder
04.11.14
✎
16:45
|
+(6) много букв получится в коде... (или есть более простой вариант?)
|
|||
8
KRV
04.11.14
✎
16:46
|
Забить.. не?
|
|||
9
hovnokoder
04.11.14
✎
16:47
|
(8) Вариант.. Но хочется сделать красиво....
|
|||
10
Fragster
гуру
04.11.14
✎
16:51
|
тебе в 1с? а то в жабаскрипте, например, просто.
|
|||
11
hovnokoder
04.11.14
✎
16:53
|
(10) в 1С. (причём в 7.7)
|
|||
12
KRV
04.11.14
✎
16:53
|
(9) )) ну так воткни на период возможного перехода на другое время вопрос в "ПриНачалеРаботыСиситемы" "А не наступило ли уже летне-зимнее время, мать его?" ))) и пусть константу меняют..
|
|||
13
hovnokoder
04.11.14
✎
16:55
|
(12) Некрасиво
|
|||
14
Fragster
гуру
04.11.14
✎
16:57
|
(11) а пофиг, заюзай жабаскрипт все равно. там у new Date(ms) параметром как раз милисекунды в Unixtime, которое от UTC считается
|
|||
15
hovnokoder
04.11.14
✎
17:07
|
(14) с "жабой" вообще не дружу.
|
|||
16
hovnokoder
04.11.14
✎
17:09
|
Придётся в очередной раз писать hovnokod с перебором в цикле дат месяца (в обратном порядке и искать первое воскресенье...
|
|||
17
lavalit
05.11.14
✎
14:17
|
(16) зачем перебирать? да еще и в обратном порядке?
Есть замечательная штука НомерДняНедели(<Дата>) Берешь номер дня от первого числа, получаешь например 4 (четверг) ну понятное дело, что +3 т.е. (7-4) будет как раз 4 число первое воскресение месяца.... зачем усложнять? |
|||
18
DigitalDolphin
05.11.14
✎
18:21
|
ТекМесяц = ДатаМесяц(ТекущаяДата());
Если (текМесяц = 3) или (текМесяц = 10) Тогда КвоДнейПервойНедели = 7 - НомерДняНедели(НачМесяца(ТекущаяДата())) + 1; ПослДеньМесяца = ДатаДень(КонМесяца(ТекущаяДата)); КвоОстальныхНедель = Цел((ПослДеньМесяца - КвоДнейПервойНедели) / 7); ДатаПерехода = КвоДнейПервойНедели + КвоОстальныхНедель * 7; КОнецЕсли; Держи программист :-) |
|||
19
DigitalDolphin
05.11.14
✎
18:24
|
Только там не ДатаДень(), а ДатаЧисло() функция
|
|||
20
DigitalDolphin
05.11.14
✎
18:26
|
А нафига тебе это в 1С. Никогда не видел в таком потребности?
|
|||
21
Fragster
гуру
05.11.14
✎
19:01
|
(16)(17)(18)(19) вы издеваетесь? такое надо делать средствами ОС, а то очередное постановление выйдет. ну, или в соседнем часовом поясе должно будет работать - и все.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |