Имя: Пароль:
1C
1С v8
Как для ФорматДатыJSON.Microsoft добавить смещение зоны?
0 Ivan_495
 
04.07.22
16:31
ФорматДатыJSON.Microsoft – Формат вида: “/Date(123456000000)/”
1 Ivan_495
 
04.07.22
16:33
ПИшу

НастройкиСериализации = Новый НастройкиСериализацииJSON;
НастройкиСериализации.ФорматСериализацииДаты = ФорматДатыJSON.Microsoft;
НастройкиСериализации.ВариантЗаписиДаты = ВариантЗаписиДатыJSON.УниверсальнаяДата;

а смещение для moscow +3.00 как добавить?
2 Aleksey
 
04.07.22
16:33
зачем? пиши в гринвичи если так хочешь
3 Ivan_495
 
04.07.22
16:38
нужно четко
4 Галахад
 
гуру
04.07.22
16:39
Универсальное оно и есть универсальное. Какое еще смещение?
5 Ivan_495
 
04.07.22
16:43
2022-07-03T21:00:00+03:00
6 Галахад
 
гуру
04.07.22
16:45
Это же локальная.
7 Ivan_495
 
04.07.22
16:48
вот идет сериализация дт1="04.07.2022  0:00:00"

НастройкиСериализации = Новый НастройкиСериализацииJSON;
    НастройкиСериализации.ФорматСериализацииДаты = ФорматДатыJSON.Microsoft;

    НастройкиСериализации.ВариантЗаписиДаты = ВариантЗаписиДатыJSON.УниверсальнаяДата;

Period_m=Новый Соответствие;
    Period_m.Вставить("Begin",дт1);
    Period_m.Вставить("End",дт2);
    Json_Об.Вставить("Period",Period_m);

    
    ЗаписьJSON = Новый ЗаписьJSON;
    ЗаписьJSON.УстановитьСтроку();
    ЗаписатьJSON(ЗаписьJSON, Json_Об,НастройкиСериализации);
8 Ivan_495
 
04.07.22
16:49
как передать смещению +3 для запросов из мск?
9 arsik
 
гуру
04.07.22
16:53
(8) Тебе же объяснили, Универсальная дата не имеет смещений.
Ну сделай
Period_m.Вставить("Begin",дт1-10800);
Period_m.Вставить("End",дт2-10800);
Хотя в платформе есть приведение к разным поясам, не охота искать.
10 arsik
 
гуру
04.07.22
16:57
Нашел
УниверсальноеВремя(<МестноеВремя>, <ЧасовойПояс>)
11 Галахад
 
гуру
04.07.22
16:57
(8) НастройкиСериализации.ВариантЗаписиДаты = ВариантЗаписиДатыJSON.ЛокальнаяДатаСоСмещением;
12 Ivan_495
 
04.07.22
17:04
(10) благодарю
13 Ivan_495
 
04.07.22
17:18
дт1+10800
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.