1С 8.3 Получить период строкой
Данные > Примеры кода 1С > 1С 8.3 Дата и время
Перейти в основной раздел:
Получение даты в виде строки в 1С 8.3:
Функция ПолучитьПериодСтрокой(ДатаПериод, Периодичность) Экспорт
Если Периодичность = "Год" Тогда
ФорматДаты = "ДФ='гггг ""г.""'";
ИначеЕсли Периодичность = "Квартал" Тогда
ФорматДаты = "ДФ='к"" квартал"" гггг ""г.""'";
ИначеЕсли Периодичность = "Месяц" Тогда
ФорматДаты = "ДФ='ММММ гггг ""г.""'";
ИначеЕсли Периодичность = "Неделя" Тогда
ФорматДаты = "ДФ='""Неделя (""дд.ММ.гггг'";
ИначеЕсли Периодичность = "День" Тогда
ФорматДаты = "ДФ='дд.ММ.гггг ""г.""'";
Иначе
ФорматДаты = "";
КонецЕсли;
ПериодСтрокой = "" + Формат(ДатаПериод, ФорматДаты);
Если Периодичность = "Неделя" И ТипЗнч(ДатаПериод) = Тип("Дата") Тогда
ПериодСтрокой = "" + НеделяГода(ДатаПериод) + "-ая " + ПериодСтрокой + Формат(КонецНедели(ДатаПериод), "ДФ='"" - ""дд.ММ.гггг)'");
КонецЕсли;
Возврат ПериодСтрокой;
КонецФункции
&НаКлиенте
Процедура Тест()
//Обращение и результат
Дата = '20210402160509'; // 02 апреля 2021 года 16:05:09
Сообщить(ПолучитьПериодСтрокой(Дата, "Год")); // 2021 г.
Сообщить(ПолучитьПериодСтрокой(Дата, "Квартал")); // 2 квартал 2021 г.
Сообщить(ПолучитьПериодСтрокой(Дата, "Месяц")); // Апрель 2021 г.
Сообщить(ПолучитьПериодСтрокой(Дата, "Неделя")); // 14-ая Неделя (02.04.2021 - 04.04.2021)
Сообщить(ПолучитьПериодСтрокой(Дата, "День")); // 02.04.2021 г.
КонецПроцедуры
Если Периодичность = "Год" Тогда
ФорматДаты = "ДФ='гггг ""г.""'";
ИначеЕсли Периодичность = "Квартал" Тогда
ФорматДаты = "ДФ='к"" квартал"" гггг ""г.""'";
ИначеЕсли Периодичность = "Месяц" Тогда
ФорматДаты = "ДФ='ММММ гггг ""г.""'";
ИначеЕсли Периодичность = "Неделя" Тогда
ФорматДаты = "ДФ='""Неделя (""дд.ММ.гггг'";
ИначеЕсли Периодичность = "День" Тогда
ФорматДаты = "ДФ='дд.ММ.гггг ""г.""'";
Иначе
ФорматДаты = "";
КонецЕсли;
ПериодСтрокой = "" + Формат(ДатаПериод, ФорматДаты);
Если Периодичность = "Неделя" И ТипЗнч(ДатаПериод) = Тип("Дата") Тогда
ПериодСтрокой = "" + НеделяГода(ДатаПериод) + "-ая " + ПериодСтрокой + Формат(КонецНедели(ДатаПериод), "ДФ='"" - ""дд.ММ.гггг)'");
КонецЕсли;
Возврат ПериодСтрокой;
КонецФункции
&НаКлиенте
Процедура Тест()
//Обращение и результат
Дата = '20210402160509'; // 02 апреля 2021 года 16:05:09
Сообщить(ПолучитьПериодСтрокой(Дата, "Год")); // 2021 г.
Сообщить(ПолучитьПериодСтрокой(Дата, "Квартал")); // 2 квартал 2021 г.
Сообщить(ПолучитьПериодСтрокой(Дата, "Месяц")); // Апрель 2021 г.
Сообщить(ПолучитьПериодСтрокой(Дата, "Неделя")); // 14-ая Неделя (02.04.2021 - 04.04.2021)
Сообщить(ПолучитьПериодСтрокой(Дата, "День")); // 02.04.2021 г.
КонецПроцедуры
0
комментарии
____________________
Перепечатка текста и фотографий разрешена при наличии прямой ссылки на источник