Каталог решений - Как я делал таймер обратного отсчета в динамическом списке на старой платформе

Как я делал таймер обратного отсчета в динамическом списке на старой платформе

Как я делал таймер обратного отсчета в динамическом списке на старой платформе

В наличии

В данной статье пойдет речь о том, как на практике я реализовал колонку с обратным отсчетом времени без использования обработчика «ПриПолученииДанныхНаСервере».
Платформа в режиме совместимости 8.3.1, управляемые формы (не Такси).

Категория:

Описание

Выражаю безмерную благодарность автору публикации

//sale.itcity.ru/public/331805/

Итак, задача тривиальная — сделать счетчик обратного отсчета времени от текущей до указанной даты вида "2д. 8ч. 43 мин."

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

Поэтому мы пошли дорогой проктолога другим путем.

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

1. Получим разницу в секундах

ВЫБОР
    КОГДА РАЗНОСТЬДАТ(&ТекущаяДата, &КрайнийСрок, СЕКУНДА) > 0
    ТОГДА РАЗНОСТЬДАТ(&ТекущаяДата, &КрайнийСрок, СЕКУНДА)
    ИНАЧЕ 0
КОНЕЦ

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

 

has been added to your cart:
Оформление заказа