Прибавление дней к определённой дате

Все вопросы/проблемы по установке и использовании.
aik
Сообщения: 480
Зарегистрирован: 12 апр 2017, 10:09
Имя: Антон
Откуда: земля

Прибавление дней к определённой дате

Сообщение aik »

Здравствуйте!
Помогите решить такую задачку.
Имеется 3 поля:
- поле Дата начала (тип - дата);
- поле Длительность в днях (тип - числовое поле)
- поле Дата окончания (тип - формула)
Необходимо суммировать первые два поля, чтобы в третьем поле отразилась дата увеличенная на количество дней указанных во 2-м поле. Т.к. для каждой записи количество дней разное, то использовать заранее предусмотренную возможность по-умолчанию увеличения даты не получится.
Аватара пользователя
Евгений
Сообщения: 398
Зарегистрирован: 11 июл 2016, 13:21
Имя: Евгений
Откуда: Петропавловск-Камчатский

Re: Прибавление дней к определённой дате

Сообщение Евгений »

В поле "формула" введите вот такую запись:

Код: Выделить всё

date_format (FROM_UNIXTIME( [<ИД поля "Дата начала">] ) + interval [<ИД поля "Длительность">] day, '%d.%m.%Y')
aik
Сообщения: 480
Зарегистрирован: 12 апр 2017, 10:09
Имя: Антон
Откуда: земля

Re: Прибавление дней к определённой дате

Сообщение aik »

Евгений, спасибо большое!
А подскажите пожалуйста линк на мануал, где можно изучить данные формулы?
Аватара пользователя
support
Техническая поддержка
Сообщения: 7661
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Прибавление дней к определённой дате

Сообщение support »

Антон, общая документация по формулам тут http://blog.rukovoditel.net/ru/kak-ispo ... i-funkcii/
А вообще в формуле можно использовать любые mysql функции, так что смотрите документацию по mysql
http://www.mysql.ru/docs/man/Date_and_t ... tions.html
aik
Сообщения: 480
Зарегистрирован: 12 апр 2017, 10:09
Имя: Антон
Откуда: земля

Re: Прибавление дней к определённой дате

Сообщение aik »

Не работает формула с прибавлением дней/месяцей к дате.

date_format (FROM_UNIXTIME( [274] ) + interval [275] day, '%d.%m.%Y')

Изображение
Аватара пользователя
support
Техническая поддержка
Сообщения: 7661
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Прибавление дней к определённой дате

Сообщение support »

Для прибавления даты есть специальная функция https://www.w3schools.com/sql/func_mysql_date_add.asp
aik
Сообщения: 480
Зарегистрирован: 12 апр 2017, 10:09
Имя: Антон
Откуда: земля

Re: Прибавление дней к определённой дате

Сообщение aik »

не работает

date_format (DATE_ADD([274], INTERVAL [275] DAY), '%d.%m.%Y')
Аватара пользователя
Евгений
Сообщения: 398
Зарегистрирован: 11 июл 2016, 13:21
Имя: Евгений
Откуда: Петропавловск-Камчатский

Re: Прибавление дней к определённой дате

Сообщение Евгений »

Функция DATE_ADD() принимает в качестве параметра дату в формате date "ГГГГ-ММ-ДД". А вы передаёте значение поля [274], которое Руководитель хранит в формате unix_timestamp.

Вам нужно предварительно преобразовать формат, вот так:

date_format (DATE_ADD( FROM_UNIXTIME([274]), INTERVAL [275] DAY), '%d.%m.%Y')
aik
Сообщения: 480
Зарегистрирован: 12 апр 2017, 10:09
Имя: Антон
Откуда: земля

Re: Прибавление дней к определённой дате

Сообщение aik »

Показывает тот же результат, что и на картинке выше при такой формуле

date_format (DATE_ADD(FROM_UNIXTIME([274]), INTERVAL [275] DAY), '%d.%m.%Y')
Аватара пользователя
Евгений
Сообщения: 398
Зарегистрирован: 11 июл 2016, 13:21
Имя: Евгений
Откуда: Петропавловск-Камчатский

Re: Прибавление дней к определённой дате

Сообщение Евгений »

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

И вопрос по полю [275] - оно точно числовое, а не выпадающий список? У вас на картинке видны значения "Срочное 3", "Срочное 12". Это что?
Ответить