Разность дат в пользовательских полях

1. djek2305 27.06.22 13:40 Сейчас в теме
Добрый день!
Стандартный отчет Движение товаров по складам.
Подскажите, как в пользовательском поле вычесть две даты?

У серии товара есть доп. свойство ДатаОкончания
Нужно что бы в отчете показывалось на сколько дней просрочена дата относительно текущей
На сколько я понимаю, нужно составить формулу ДатаОкончания - ТекущаяДата, результат количество дней.
Если просто вычитать одно поле из другого пустой результат.
По теме из базы знаний
Найденные решения
4. Zevzm 27.06.22 14:14 Сейчас в теме
(3) Кавычки не забыли?
Пример:
РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2002, 10, 12, 10, 15, 34),
ДАТАВРЕМЯ(2002, 10, 14, 9, 18, 06), "ДЕНЬ")
djek2305; +1 Ответить
7. spacecraft 27.06.22 14:30 Сейчас в теме
(3) В пользовательских полях используется Язык выражений системы компоновки данных
Из справки:

РазностьДат (DateDiff)
Функция предназначена для получения разницы между двумя датами.
Синтаксис:
РазностьДат(Выражение1 , Выражение2 , ТипРазности)
Параметры:
Выражение1 - тип Дата. Вычитаемая дата;
Выражение2 - тип Дата. Исходная дата;
ТипРазности - тип Строка. Содержит одно из значений:
Секунда;
Минута;
Час;
День;
Месяц;
Квартал;
Год.
Пример:
РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2002, 10, 12, 10, 15, 34),
ДАТАВРЕМЯ(2002, 10, 14, 9, 18, 06), "ДЕНЬ")
Результат:
2
Показать

Следовательно выражение должно быть таким:
:
РАЗНОСТЬДАТ([Серия.Дата окончания ], [Параметры.Текущая дата], "ДЕНЬ")
djek2305; +1 Ответить
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. ignorant 27.06.22 13:45 Сейчас в теме
РАЗНОСТЬДАТ(>Дата1>, <Дата2>, <ЕдиницаВремени>)
3. djek2305 27.06.22 14:03 Сейчас в теме
(2) Такое уже пробовал
РАЗНОСТЬДАТ([Серия.Дата окончания ], [Параметры.Текущая дата], ДЕНЬ)

Получаю ошибку
Поле не найдено "ДЕНЬ"

Если
РАЗНОСТЬДАТ(Серия.Дата окончания, Параметры.Текущая дата, ДЕНЬ)

Неверные параметры "РазностьДат"

Если
РАЗНОСТЬДАТ(Серия.ДатаОкончанияДействияСертификата, Параметры.ТекущаяДата, ДЕНЬ)

Поле не найдено "Серия.ДатаОкончания"

Возможно, я не правильно обращаюсь к доп. свойствам?
4. Zevzm 27.06.22 14:14 Сейчас в теме
(3) Кавычки не забыли?
Пример:
РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2002, 10, 12, 10, 15, 34),
ДАТАВРЕМЯ(2002, 10, 14, 9, 18, 06), "ДЕНЬ")
djek2305; +1 Ответить
8. djek2305 27.06.22 14:36 Сейчас в теме
(4) (7) Спасибо, кавычки я забыл.
5. lmnlmn 68 27.06.22 14:15 Сейчас в теме
(3) Неясно где вы пишете выражение. Если в запросе, то надо ДЕНЬ без кавычек. А ежели в выражениях СКД, то "ДЕНЬ" в кавычках ибо строка.
6. djek2305 27.06.22 14:20 Сейчас в теме
(5) В пользовательских полях отчета.
См. скрин во вложении.
Прикрепленные файлы:
7. spacecraft 27.06.22 14:30 Сейчас в теме
(3) В пользовательских полях используется Язык выражений системы компоновки данных
Из справки:

РазностьДат (DateDiff)
Функция предназначена для получения разницы между двумя датами.
Синтаксис:
РазностьДат(Выражение1 , Выражение2 , ТипРазности)
Параметры:
Выражение1 - тип Дата. Вычитаемая дата;
Выражение2 - тип Дата. Исходная дата;
ТипРазности - тип Строка. Содержит одно из значений:
Секунда;
Минута;
Час;
День;
Месяц;
Квартал;
Год.
Пример:
РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2002, 10, 12, 10, 15, 34),
ДАТАВРЕМЯ(2002, 10, 14, 9, 18, 06), "ДЕНЬ")
Результат:
2
Показать

Следовательно выражение должно быть таким:
:
РАЗНОСТЬДАТ([Серия.Дата окончания ], [Параметры.Текущая дата], "ДЕНЬ")
djek2305; +1 Ответить
9. N0t_F0und 10 27.06.22 14:42 Сейчас в теме
10. djek2305 27.06.22 14:43 Сейчас в теме
(9) Не обращайте внимания, я сократил.
Решение найдено.
Ответы 4, 7.

РАЗНОСТЬДАТ([Серия.Дата окончания ], [Параметры.Текущая дата], "ДЕНЬ")
Я кавычки забыл поставить.
Тему можно закрывать.
11. insurgut 207 25.04.23 13:04 Сейчас в теме
На всякий случай... добавил поле как тут прописано - а в отчете какая-то ерунда выводилась, остаток дней был гораздо больше срока годности.
Помогло это:
МАКСИМУМ(РАЗНОСТЬДАТ(ТЕКУЩАЯДАТА(), [Серия.Дата окончания ], "ДЕНЬ"))
Оставьте свое сообщение
Вакансии
1С-Программист (интегратор Битрикс24)
Санкт-Петербург
зарплата от 150 000 руб. до 250 000 руб.
Полный день

Разработчик 1С
Москва
зарплата от 100 000 руб.
Временный (на проект)

Разработчик 1С
Москва
зарплата от 150 000 руб.
Полный день

Программист
Санкт-Петербург
зарплата от 180 000 руб. до 240 000 руб.
Полный день

Разработчик 1С
Москва
зарплата от 150 000 руб. до 250 000 руб.
Полный день