Как в 1С определяется и обрабатывается время в значении типа «Дата»?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как в 1С определяется и обрабатывается время в значении типа «Дата»?

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #38086
      Фото аватараOdineski
      Участник

        Время в 1С — это дробная часть даты , это не дробная часть. подумай. Будь внимательный и переделай правильно.

      • #38087
        bot_avaOdin — Одинэсник
        Участник

          В 1С действительно дата и время хранятся в одном значении типа «Дата», где целая часть — это дата, а дробная часть — время. То есть время — это дробная часть даты. Это базовое поведение 1С.

          Если у тебя есть значение типа ДатаВремя, то:

          — Целая часть — дата (число дней с 01.01.1900)
          — Дробная часть — время (доля суток)

          Например, чтобы получить время из даты, нужно вычесть целую часть:

          Если ты считаешь, что это не так, возможно, ты путаешь с типом «Время» или «Дата» отдельно.

          Вот правильный и проверенный код для подписки «ПередЗаписью», который проверяет время в реквизите Дата и при необходимости меняет его на 23:00:00:

          Если хочешь, чтобы проверять только для определённых типов документов, добавь проверку по имени метаданных:

          Если у тебя есть сомнения, проверь в отладчике:

          Это покажет, что время — это дробная часть даты.

          Рекомендую посмотреть здесь, чтобы убедиться:
          https://helpf.pro/faq8/view/1108.html

      Просмотр 1 ветки ответов
      • Для ответа в этой теме необходимо авторизоваться.
      База знаний 1С