Получение точного времени через Яндекс.Время

17.08.17

Интеграция - WEB-интеграция

В данное время Росалкогольрегулирование активно отрабатывает все случаи продажи спиртного после 22-00. И даже законопослушные компании периодически попадают под санкции, вследствие банального несоответствия времени на компьютере с реальным, т.к. данные для отправки в ЕГАИС фиксируются по времени компьютера. Как одно из решений проблемы перед пробитием чека предлагаю сверять время на компьютере и время с сервера точного времени. Алгоритм, естественно, можно использовать и любым другим образом.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Получение точного времени через Яндекс.Время:
.epf 5,93Kb
2 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Получать время будем с сервера Яндекс.Времени. У меня все объекты находятся в одном часовом поясе, поэтому я получаю данные только по нему. Иначе придется этот параметр также определять.

Для того, чтобы получить код нужного региона в сервисе Яндекс.Времени, добавляю новые часы.

После этого нужно зайти в настройку часов и в меню выбрать "Информер на сайт". В коде информера параметр geoid это и есть наш код региона. Далее в коде в строке "АдресСкрипта" меняем параметр geo на нужный (в примере Томск).

Попытка                                
	ИмяФайлаОтвета = ПолучитьИмяВременногоФайла("json");
	АдресСервера = "yandex.com";    
	АдресСкрипта = "/time/sync.json?geo=67";
		
	НТТР = Новый HTTPСоединение(АдресСервера, 443,,,,,Новый ЗащищенноеСоединениеOpenSSL());
	Ответ = НТТР.Получить(Новый HTTPЗапрос(АдресСкрипта), ИмяФайлаОтвета);
		
	ЧтениеОтвета = Новый ЧтениеJSON;
	ЧтениеОтвета.ОткрытьФайл(ИмяФайлаОтвета);
			
	ДанныеОтвета = ПрочитатьJSON(ЧтениеОтвета, Истина);
	ЧтениеОтвета.Закрыть();
		
	ВремяСтрокой = Формат(ДанныеОтвета.Получить("time"), "ЧГ=0");
	ДатаВремя = ПрочитатьДатуJSON("new Date(" + ВремяСтрокой + ")", ФорматДатыJSON.JavaScript);
	Сообщить(ДатаВремя);
  Исключение
	Сообщить(ОписаниеОшибки());
КонецПопытки;

Вступайте в нашу телеграмм-группу Инфостарт

сервер точного времени обработка яндекс

См. также

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь 1С:Предприятие 8 1C:Бухгалтерия 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM / LOGICSTARS. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM / LOGICSTAR разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    22205    32    24    

26

SALE! 15%

WEB-интеграция Программист Бизнес-аналитик 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Оптовая торговля, дистрибуция, логистика ИТ-компания Платные (руб)

Модуль "Экспортер" — это расширение для 1С, предназначенное для автоматизации процессов выгрузки данных. Оно позволяет эффективно извлекать, преобразовывать и передавать данные из систем 1С в интеграционную платформу Spot2D. Подсистема упрощает настройку, снижает количество ручных операций и обеспечивает удобный контроль данных.

17280 14688 руб.

20.12.2024    4385    22    4    

23

WEB-интеграция Программист Руководитель проекта 1С:Предприятие 8 1C:Бухгалтерия 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки. Основные преимущества: 1. Документация API создаётся автоматически. Удобна для программной обработки. 2. Изменить API столь же просто как настроить отчёт. Можно опубликовать существующий вариант отчёта. 3. Отчёты в API поддерживают параметры (Период, ДатаНачала и др.) 4. При создании простых методов не требуется изменять конфигурацию. 5. Поддерживается работа с планами обмена.<br/> 6. Возможно настроить отправку из 1С данных корреспондирующей системе, для случаев когда 1С сама "знает" какие данные нужно отправить. 7. После записи в 1С Ле Мурр может возвращать соответствие полученных идентификаторов созданным в 1С объектам данных.

36000 руб.

27.09.2024    10155    7    5    

11

WEB-интеграция Программист 1С:Предприятие 8 1С:Бухгалтерия 3.0 Бытовые услуги, сервис Платные (руб)

Внешняя обработка разработана для автоматизации передачи данных между сервисом Vetmanager с 1С: Бухгалтерия 3.0. Решение позволяет загружать документы и справочники из Ветменеджер в 1С:Бухгалтерию, сокращая время на ручной ввод данных и минимизируя ошибки.

12000 руб.

02.02.2021    20959    61    52    

38
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Altair777 648 18.08.17 12:23 Сейчас в теме
Время должно получаться с компьютера, а тот синхронизироваться с контроллером домена. А тот уже с серверами точного времени.
Все остальное - от лукавого
2. kot26rus 18.08.17 14:16 Сейчас в теме
(1)а если домена нет? не везде он нужен.
3. ipoloskov 165 18.08.17 14:24 Сейчас в теме
(1) в Мухосранском ООО "Бухнём" контроллера домена может банально не быть.
4. spacecraft 18.08.17 14:51 Сейчас в теме
(3) даже если один единственный компьютер, то и он может синхронизироваться с сервером точного времени напрямую.
5. Requiem 36 21.08.17 06:43 Сейчас в теме
(3) Игорь все правильно понял, именно для этого решение и сделано
6. Altair777 648 21.08.17 10:15 Сейчас в теме
(5) учите кoманды DOS!
net time
7. markers 278 20.11.17 07:40 Сейчас в теме
Код без использования временных файлов:
Функция ПолучитьТекущееВремяИзИнтернета(КодЧасовогоПоясаЯндекс = 65) Экспорт

	Попытка
		
		АдресСервера = "yandex.ru";    
		АдресСкрипта = "/time/sync.json?geo=" + КодЧасовогоПоясаЯндекс;
		
		НТТР = Новый HTTPСоединение(АдресСервера, 443,,,,,Новый ЗащищенноеСоединениеOpenSSL());
		Ответ = НТТР.Получить(Новый HTTPЗапрос(АдресСкрипта));
		
		Если Ответ.КодСостояния <> 200 Тогда
			
			Возврат Неопределено;
			
		КонецЕсли;
		
		ЧтениеОтвета = Новый ЧтениеJSON;
		ЧтениеОтвета.УстановитьСтроку(Ответ.ПолучитьТелоКакСтроку());
		
		ДанныеОтвета = ПрочитатьJSON(ЧтениеОтвета, Истина);
		ЧтениеОтвета.Закрыть();
		
		ВремяСтрокой = Формат(ДанныеОтвета.Получить("time"), "ЧГ=0");
		Возврат ПрочитатьДатуJSON("new Date(" + ВремяСтрокой + ")", ФорматДатыJSON.JavaScript);
		
	Исключение
	КонецПопытки;	
	
	Возврат Неопределено;

КонецФункции // ПолучитьТекущееВремяИзИнтернета()
Показать
8. gufadmin 6 12.03.20 12:19 Сейчас в теме
Пробовал менять параметр geo. Все равно выдает одно и то же время Москвы.
Для отправки сообщения требуется регистрация/авторизация