Эта функция возвращает 4-значное значение года с базовым числовым значением, соответствующим метке времени с первой миллисекундой первого дня года, содержащего значение, указанное в поле date.
Функция yearname() отличается от функции year() тем, что позволяет сместить дату, которую требуется оценить, и позволяет задать первый месяц года.
Если первый месяц года не январь, функция вернет два четырехзначных значения года в течение двенадцатимесячного периода, содержащего дату. Например, если начало года — апрель, а оцениваемая дата — 06/30/2020, будет возвращен результат будет 2020-2021.
period_no — целое число, где 0 обозначает год, включающий значение, указанное в поле date. Отрицательные значения, заданные в поле period_no, означают предшествующие годы, положительные — последующие.
first_month_of_year
Если необходимо работать с годами (финансовыми), которые начинаются не в январе, задайте значение от 2 до 12 в поле first_month_of_year. Отображаемое значение будет строчным, показывающим два года.
Можно использовать следующие значения, чтобы задать первый месяц года в аргументе first_month_of_year:
значения first_month_of_year
Месяц
Значение
Февраль
2
Март
3
Апрель
4
May
5
Июнь
6
Июль
7
Август
8
Сентябрь
9
Октябрь
10
Ноябрь
11
Декабрь
12
Когда это следует использовать
Функция yearname() полезна для сравнения агрегирования по годам. Например, если требуется увидеть общий объем продаж продуктов по году.
Эти измерения можно создать в скрипте загрузки с помощью функции создания поля в таблице основного календаря. Их также можно создать в диаграмме как вычисляемые измерения.
Региональные настройки
Если не указано иное, в примерах, приведенных в данном разделе, используется следующий формат даты: ММ/ДД/ГГГГ. Формат даты указан в операторе SET DateFormat скрипта загрузки данных. В вашей системе может быть установлен другой формат даты по умолчанию в зависимости от региональных настроек и других факторов. Можно изменить формат в примерах в соответствии с потребностями. Или можно изменить форматы в скрипте загрузки в соответствии с этими примерами.
Региональные настройки по умолчанию в приложениях основаны на системных региональных настройках компьютера или сервера, где установлено ПО Qlik Sense. Если на сервере Qlik Sense, к которому обращается пользователь, выбран шведский язык, то редактор загрузки данных будет использовать шведские региональные настройки для даты, времени и валюты. Эти параметры регионального формата не связаны с языком, отображаемым в интерфейсе пользователя Qlik Sense. Qlik Sense будет отображаться на языке, который используется в браузере.
Загрузите данные и откройте лист. Создайте новую таблицу и добавьте эти поля как измерения:
date
prior_year_name
Результирующая таблица
date
prior_year_name
01/13/2020
2019
02/26/2020
2019
03/27/2020
2019
04/16/2020
2019
05/21/2020
2019
08/14/2020
2019
10/07/2020
2019
12/05/2020
2019
01/22/2021
2020
02/03/2021
2020
03/17/2021
2020
04/23/2021
2020
05/04/2021
2020
06/30/2021
2020
07/26/2021
2020
12/27/2021
2020
06/06/2022
2021
07/18/2022
2021
11/14/2022
2021
12/12/2022
2021
Так как в качестве аргумента смещения в функции yearname() используется period_no = -1, функция сначала определяет год, в течение которого совершены транзакции. Затем функция сдвигается на один год назад и возвращает результирующий год.
Пример 3. Аргумент first_month_of_year
Обзор
Откройте редактор загрузки данных и добавьте приведенный ниже скрипт загрузки на новую вкладку.
Скрипт загрузки содержит следующее:
Используется тот же набор данных, что и в первом примере.
Системная переменная DateFormat, для которой задан формат MM/DD/YYYY.
Предшествующая загрузка, которая использует функцию yearname(), заданную как поле year_name.
Загрузите данные и откройте лист. Создайте новую таблицу и добавьте эти поля как измерения:
id
date
year_name
Результирующая таблица
date
year_name
01/13/2020
2019-2020
02/26/2020
2019-2020
03/27/2020
2019-2020
04/16/2020
2020-2021
05/21/2020
2020-2021
08/14/2020
2020-2021
10/07/2020
2020-2021
12/05/2020
2020-2021
01/22/2021
2020-2021
02/03/2021
2020-2021
03/17/2021
2020-2021
04/23/2021
2021-2022
05/04/2021
2021-2022
06/30/2021
2021-2022
07/26/2021
2021-2022
12/27/2021
2021-2022
06/06/2022
2022-2023
07/18/2022
2022-2023
11/14/2022
2022-2023
12/12/2022
2022-2023
Поскольку аргумент first_month_of_year функции 4 используется в функции yearname(), начало года перемещается с 1 января на 1 апреля. Таким образом, каждый двенадцатимесячный период пересекает два календарных года, а функция yearname() возвращает два года в виде четырехзначных чисел для оцениваемых дат.
Транзакция 8199 совершена 17 марта 2021 года. Функция yearname() задает в качестве начала года 1 апреля и в качестве окончания 30 марта. Таким образом, транзакция 8198 произошла в периоде с 1 апреля 2020 г. по 30 марта 2021 г. В результате функция yearname() возвращает значение 2020-2021.
Пример 4. Пример объекта диаграммы
Обзор
Откройте редактор загрузки данных и добавьте приведенный ниже скрипт загрузки на новую вкладку.
Скрипт загрузки содержит следующее:
Используется тот же набор данных, что и в первом примере.
Системная переменная DateFormat, для которой задан формат MM/DD/YYYY.
Однако поле, возвращающее год, в котором совершена транзакция, создается как мера в объекте диаграммы.
Загрузите данные и откройте лист. Создайте новую таблицу и добавьте это поле как измерение:
date
Чтобы рассчитать поле year_name, создайте эту меру:
=yearname(date)
Результирующая таблица
date
=yearname(date)
01/13/2020
2020
02/26/2020
2020
03/27/2020
2020
04/16/2020
2020
05/21/2020
2020
08/14/2020
2020
10/07/2020
2020
12/05/2020
2020
01/22/2021
2021
02/03/2021
2021
03/17/2021
2021
04/23/2021
2021
05/04/2021
2021
06/30/2021
2021
07/26/2021
2021
12/27/2021
2021
06/06/2022
2022
07/18/2022
2022
11/14/2022
2022
12/12/2022
2022
Мера year_name создана в объекте диаграммы с использованием функции yearname(), где в качестве аргумента функции передано поле даты.
Функция yearname() определяет, к какому году относится значение даты, и возвращает его в виде четырехзначного значения года.
Пример 5. Сценарий
Обзор
Откройте редактор загрузки данных и добавьте приведенный ниже скрипт загрузки на новую вкладку.
Скрипт загрузки содержит следующее:
Используется тот же набор данных, что и в первом примере.
Системная переменная DateFormat, для которой задан формат MM/DD/YYYY.
Конечный пользователь хотел бы получить диаграмму, на которой представлены общие продажи по кварталам для транзакций. Используйте функцию yearname() в качестве вычисляемого измерения для создания этой диаграммы, когда измерение yearname() недоступно в модели данных.
Загрузите данные и откройте лист. Создайте новую таблицу.
Чтобы сравнить сводки по годам, создайте это вычисляемое измерение:
=yearname(date)
Создайте это измерение:
=sum(amount)
Задайте параметру Формат чисел меры значение Денежный.
Результирующая таблица
yearname(date)
=sum(amount)
2020
$463.55
2021
$457.69
2022
$294.35
Помогла ли вам эта страница?
Если вы обнаружили какую-либо проблему на этой странице и с ее содержанием — будь то опечатка, пропущенный шаг или техническая ошибка, сообщите нам об этом, чтобы мы смогли ее исправить!