Шаблоны для экспорта.

Все вопросы/проблемы по установке и использовании.
Ответить
Аватара пользователя
Morfei
Сообщения: 139
Зарегистрирован: 14 апр 2022, 19:13
Имя: Виктор
Откуда: Нерюнгри

Шаблоны для экспорта.

Сообщение Morfei »

Здравствуйте.

Подскажите такую штуку? В шаблоне для экспорта можно указать ${current_date} и получим текущую дату. А как вывести просто предыдущий месяц и год? Месяц текстом, год цифрами?

Пробую через поле php :

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

// Массив с названиями месяцев на русском языке
$months = [
    'январь', 'февраль', 'март', 'апрель', 'май', 'июнь',
    'июль', 'август', 'сентябрь', 'октябрь', 'ноябрь', 'декабрь'
];

// Создаем текущую дату
$now = new DateTime();

// Уменьшаем месяц на 1
$now->modify('-1 month');

// Получаем номер предыдущего месяца
$previousMonthIndex = (int)$now->format('n') - 1; // 'n' возвращает номер месяца от 1 до 12

// Получаем название предыдущего месяца на русском языке
$previousMonth = $months[$previousMonthIndex];

// Получаем год в числовом формате
$previousYear = $now->format('Y'); // 2023

// Проверяем, если предыдущий месяц - январь, то уменьшаем год на 1
if ($previousMonth === 'январь') {
    $previousYear -= 1;
}

// Формируем вывод
$output_value = $previousMonth . " " . $previousYear;
Может есть решение проще?
remchik
Сообщения: 276
Зарегистрирован: 19 сен 2019, 11:32
Имя: Remchik
Откуда: Москва

Re: Шаблоны для экспорта.

Сообщение remchik »

Поле с Мускуль формулой.

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

SELECT DATE_ADD("2017-06-15", INTERVAL 10 DAY)
и что то из хелпа

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

-- MySQL
SELECT MONTHNAME(STR_TO_DATE(@MonthNumber, '%m')) AS MonthName;

-- Oracle
SELECT TO_CHAR(TO_DATE(@MonthNumber, 'MM'), 'Month') AS MonthName;
***
Тружусь как пчелка
***
SQL,BpmOnline,Creatio,BpmSoft,.NET,SAP WMS,MS SQL Server,Windows Server,IIS
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 1077
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич

Re: Шаблоны для экспорта.

Сообщение Fait »

Можно и через поле PHP как раз, но код попроще использовать)

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

$months = [
    'январь', 'февраль', 'март', 'апрель', 'май', 'июнь',
    'июль', 'август', 'сентябрь', 'октябрь', 'ноябрь', 'декабрь'
];
if (date('n') == 1) { $last = mktime(0,0,0,12,1,(date('Y')-1); }
else { $last = mktime(0,0,0,($m-1),1,date('Y'); }
$previousMonth = $months[date('n',$last)-1];
$previousYear = date('Y',$last);
// Формируем вывод
$output_value = $previousMonth.' '.$previousYear;
Аватара пользователя
Morfei
Сообщения: 139
Зарегистрирован: 14 апр 2022, 19:13
Имя: Виктор
Откуда: Нерюнгри

Re: Шаблоны для экспорта.

Сообщение Morfei »

Спасибо за разъяснения. Буду пробовать. :roll:
Ответить