Поле Динамическая дата - определить выходные

Все вопросы/проблемы по установке и использовании.
Ответить
Аватара пользователя
mailarn
Инвестор
Инвестор
Сообщения: 169
Зарегистрирован: 18 июн 2021, 10:33
Имя: Антон
Откуда: Екатеринбург
Контактная информация:

Поле Динамическая дата - определить выходные

Сообщение mailarn »

Есть поле динамическая дата, где вычисляется разница дней
[325]+[323]*86400
325 - поле календарь
323 - число дней

Мне надо сделать так, если дата выпадает на субботу или воскресенье установить дату на пятницу.

Логически понимаю, что надо определить день недели который получится, если суббота, то вычесть 1 день, если воскресенье, то 2 дня.

Подскажите, как это сделать программно.
Создание отраслевых решений на базе CRM Руководитель https://webuscrm.ru
alexinc
Сообщения: 422
Зарегистрирован: 03 мар 2022, 21:40
Имя: Alex
Откуда: Россия
Контактная информация:

Re: Поле Динамическая дата - определить выходные

Сообщение alexinc »

Добрый день. Я вот с этим не стал мучиться, а написал функцию(viewtopic.php?t=5947). Там же есть ссылка на онлайн сервис для выходных и дат. Можно эту функцию модифицировать под ваш запрос. У меня получается, что функция встает на первый рабочий день после выходных или праздников.
Аватара пользователя
mailarn
Инвестор
Инвестор
Сообщения: 169
Зарегистрирован: 18 июн 2021, 10:33
Имя: Антон
Откуда: Екатеринбург
Контактная информация:

Re: Поле Динамическая дата - определить выходные

Сообщение mailarn »

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

Re: Поле Динамическая дата - определить выходные

Сообщение support »

А в mysql?:)

https://www.w3resource.com/mysql/date-a ... nction.php
https://www.w3resource.com/mysql/contro ... erator.php

Формула примерно будет такая

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

case  
   when DAYOFWEEK(FROM_UNIXTIME([325]+[323]*86400,'%Y-%m-%d'))==1 then ([325]+[323]*86400) -(86400*2)
   when DAYOFWEEK(FROM_UNIXTIME([325]+[323]*86400,'%Y-%m-%d'))==7 then  ([325]+[323]*86400) -(86400)  
   else [325]+[323]*86400
end
Аватара пользователя
mailarn
Инвестор
Инвестор
Сообщения: 169
Зарегистрирован: 18 июн 2021, 10:33
Имя: Антон
Откуда: Екатеринбург
Контактная информация:

Re: Поле Динамическая дата - определить выходные

Сообщение mailarn »

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

Re: Поле Динамическая дата - определить выходные

Сообщение support »

Хорошо:)
Будет время, черкните небольшой отзыв https://vk.com/topic-80230319_49223531
Ответить