Справка 1С/Платформа 1С:Предприятие 8/Работа с информационной базой в различных часовых поясах

Работа с информационной базой в различных часовых поясах

Работа с информационной базой в различных часовых поясах

Формат идентификатора часовых поясов [#TimeID]
Часовой пояс информационной базы [#TimeIB]
Часовой пояс сеанса [#TimeSeance]
Текущая дата сеанса [#CurDateSeance]
Оперативная отметка времени [#OperTime]

В случаях, когда используется распределенная информационная база, узлы которой расположены в различных временных поясах, актуальной становится задача обеспечение адекватности получаемых данных при использовании стандартных периодов, стандартной даты начала и других временных показателях.

Система 1С:Предприятие позволяет осуществлять синхронизацию поясного или директивного времени. Для этого в каждом узле распределенной базы временная привязка данных выполняется к текущей дате сеанса, а сам узел описывается значением часового пояса сеанса. А с помощью средств встроенного языка механизмы конфигурации могут осуществить вычисление времени относительно центрального или любого иного узла базы, в том числе с учетом летнего времени.

Введено понятие часового пояса информационной базы, часового пояса сеанса и времени сеанса.

Часовые пояса определяются и идентифицируются в соответствии с перечнем часовых поясов (zoneinfo database), известным как IANA Time Zone Database или tz database. Большинство идентификаторов часовых поясов задаются как <регион>/<город>, например, Europe/Moscow. Подробности на https://data.iana.org/time-zones/tz-link.html [https://data.iana.org/time-zones/tz-link.html].

Идентификаторы часовых поясов GMT могут быть заданы в формате:

GMT{+/-}h[h][:mm]
где hh=0:23, mm=0:59.

Часовой пояс информационной базы:


после создания информационной базы не определен;


может быть установлен из встроенного языка;


сохраняется в базе данных и при выгрузке информационной базы;


доступен из встроенного языка на сервере, толстом клиенте, во внешнем соединении;


используется при начале сеанса для определения часового пояса сеанса;


переносится в новую базу при создании начального образа информационной базы распределенной информационной базы.

Часовой пояс сеанса:


при начале сеанса равен часовому поясу информационной базы, если часовой пояс информационной базы определен, или часовому поясу сервера, если часовой пояс информационной базы не определен;


может быть установлен из встроенного языка;


сохраняется до конца сеанса;


доступен из встроенного языка на сервере, в толстом клиенте, во внешнем соединении;


используется для определения текущей даты сеанса и оперативной отметки времени.

Текущая дата сеанса:


равна дате компьютера, приведенной к часовому поясу сеанса;


доступна из встроенного языка на сервере, в толстом клиенте, во внешнем соединении;


используется при работе с документами, бизнес-процессами, задачами, периодическими регистрами сведений для присвоения даты по умолчанию и проверки текущей даты.

Оперативная отметка времени:


формируется на основе текущей даты сеанса;


возрастающая последовательность дат отдельно для каждого часового пояса сеансов данной информационной базы.

Некоторые алгоритмы работы с часовыми поясами встроены в механизмы системы на уровне платформы. Так при исполнении отчета и работе динамического списка стандартные периоды и стандартные даты начала отсчитываются относительно текущей даты сеанса, при получении текущих дат от стандартного периода и стандартной даты начала на толстом клиенте, сервере и внешнем соединении, даты получаются относительно текущей даты сеанса.

При отработке условного оформления управляемой формы на клиенте используется дата, полученная из текущей даты клиента скорректированной с учетом часового пояса сервера.

Часовой пояс сервера передается в клиентскую часть управляемой формы при создании формы, при условии, что для формы задано условное оформление, и после контекстного вызова, при условии, что в процессе этого вызова условное оформление формы было изменено.