1с день недели строкой

1с день недели строкой

Вступайте в мою группу помощник программиста.
В ней мы обсуждаем программирование в 1С.

Формат

Описание:

Формирует удобное для чтения представление значений. Полезно использование в отчетах и при прочем визуальном отображении значений.

Синтаксис:

Параметры:

Форматная строка представляет собой строковое значение, включающее параметры форматирования.

Параметры форматирования перечисляются через символ «;». Наличие параметра означает отличие форматирования от стандартного.

Если параметр не задан, то применяется стандартное форматирование, которое в основном соответствует преобразованию значения к строке. Однако для значений типа Число и Дата по умолчанию (0 и 01.01.0001 00:00:00 соответственно) будет выдаваться пустая строка.

Каждый параметр задается именем параметра, символом «=» и значением параметра. Значение параметра может указываться в одинарных или двойных кавычках. Это необходимо, если значение параметра содержит символы, используемые в синтаксисе форматной строки.

Внутри значения параметра могут указываться произвольные символы, которые при формировании результирующей строки будут отображаться как есть. Таким образом, например, можно указывать разделители часов, минут и секунд при форматировании времени. Если эти символы совпадают со значениями форматной строки, их необходимо заключать в одинарные кавычки.

Имена и значения параметров форматной строки:

Источник

Формат даты 1С использование на примерах

В статье представлены способы задать формат даты 1с 8. Для этого необходимо использовать форматную строку. Редактировать ее можно либо вручную, либо при помощи специального конструктора.

Форматные строки используются в:

При использовании функции Формат, следует помнить, что она возвращает строковое значение, т.е. представление переданной даты в определенном формате.

Формат даты 1с при помощи форматной строки

При помощи форматной строки можно задать параметры форматирования даты. Не стоит описывать их полностью вручную. Лучше всего, воспользоваться встроенным в платформу конструктором, а затем отредактировать полученную форматную строку вручную. Это сэкономит ваши силы и позволит быстро добиться результата.

1с день недели строкой
То есть правильный вызов конструктора для метода Формат, выглядит так:

Конструктор форматной строки

Сам же конструктор форматной строки представляет собой набор вкладок, предназначенных для форматирования данных различных типов. Нас интересует вкладка Дата.

В первую очередь следует проверить, подходит ли для ваших целей Локальный формат даты. Если это так, то стоит воспользоваться именно им, так как он учитывает особенности построения дат для разных стран. То есть для русскоязычной версии будет отображать привычную нам дату, а для локализованных версий — привычную иностранным пользователям.

1с день недели строкой
В остальных случаях можно пользоваться произвольным форматом даты. Его можно не только выбирать из выпадающего списка, но и редактировать вручную. Для редактирования используются следующие форматные коды:

Также можно добавлять в форматную строку произвольный текст, используя кавычки (если добавляемый текст не может быть интерпретирован, как составная часть даты, тогда можно обойтись и без кавычек):

1с день недели строкой

Итоговый текст такой форматной строки будет выглядеть следующим образом:

Примеры использования формата дат

Приведем несколько примеров форматирования даты.

Дата без времени (05.10.2020)

Только время (12:35:50)

Месяц текстом, год полностью (Октябрь 2020)

Месяц текстом кратко, год без тысячелетия (окт. 20)

Месяц числом, через точку год полностью (10.2020)

Склонение названия месяца

При форматировании даты не всегда достаточно именительного падежа. Иногда требуется указать, к примеру, что отчет сформирован в «Октябре 2020 г.», а не в «Октябрь 2020 г.». Для решения этой проблемы подойдет серверная строковая функция ПолучитьСклоненияСтроки (доступна, начиная с версии платформы 8.3.13).

Функция возвращает массив вариантов склонения строки. Подробнее прочитать про заполнение параметров можно в синтаксис помощнике.

Пример. Отформатировать дату в «месяц год», месяц в предложном падеже вывести в виде сообщения.

Источник

Функции для работы с датой в 1С

1с день недели строкой

Получение частей даты

С помощью функций Год, Месяц, День, Час, Минута, Секунда из даты можно получить какую-либо ее часть:

День года и день недели

Функция День возвращает порядковый номер в месяце. То есть для 3 июня это будет 3. Функция ДеньГода вернет порядковый номер дня в году:

Для определения дня недели есть функция ДеньНедели, которая возвращает порядковый номер дня недели:

Начало и конец периода

Чтобы привести дату к началу определенного периода можно использовать функции НачалоМинуты, НачалоЧаса, НачалоДня, НачалоНедели, НачалоМесяца, НачалоКвартала, НачалоГода:

С помощью функций КонецМинуты, КонецЧаса, КонецДня, КонецНедели, КонецМесяца, КонецКвартала, КонецГода можно получить конец определенного периода:

Арифметические операции с датами

К дате можно прибавлять количество секунд, можно вычесть из одной даты другую, чтобы получить разность в секундах. Чтобы к одной дате прибавить или вычесть месяц можно использовать функцию ДобавитьМесяц:

Текущая дата

Функция ТекущаяДата возвращает системную дату компьютера. Может использоваться как на сервере, так и на клиенте. Причем если сервер и клиент это разные компьютеры и дата или время на них не совпадает, то данная функция вернет разные значения:

Часовые пояса

1С позволяет работать в одной информационной базе из разных часовых поясов. Часовой пояс может быть определен для:

Если часовой пояс не задан для сеанса, то используется часовой пояс информационной базы. Если для информационной базы часовой пояс тоже не задан, то используется часовой пояс сервера.

Часовой пояс информационной базы сохраняется в базе данных, часовой пояс сеанса должен устанавливаться при начале каждого сеанса.

Для установки часового пояса сеанса используется функция УстановитьЧасовойПоясСеанса. Чтобы получить текущее значение часового пояса сеанса предназначена функция ЧасовойПоясСеанса:

Для работы с часовым поясом информационной базы предназначены функции УстановитьЧасовойПоясИнформационнойБазы и ПолучитьЧасовойПоясИнформационнойБазы. Изменение часового пояса информационной базы возможно только в монопольном режиме. Чтобы изменение часового пояса информационной базы вступило в силу нужно перезайти в базу.

Чтобы получить часовой пояс сервера нужно использовать функцию ЧасовойПояс:

На сервере для получения текущей даты и времени нужно использовать функцию ТекущаяДатаСеанса. Данная функция получает дату и время с учетом часового пояса. То есть если сервер физически установлен в часовом поясе «Europe/Moscow», а подключение к нему выполняется из часового пояса «Asia/Krasnoyarsk», то функция ТекущаяДата вернет дату и время сервера, что не будет корректным. А если при старте сеанса в Красноярке установить часовой пояс «Asia/Krasnoyarsk», то функция ТекущаяДатаСеанса приведет время к часовому поясу сеанса пользователя.

Чтобы узнать все возможные часовые пояса можно воспользоваться функцией ПолучитьДопустимыеЧасовыеПояса. Данная функция вернет массив со всеми возможными часовыми поясами:

1с день недели строкой

С помощью функции ПредставлениеЧасовогоПояса можно получить представление часового пояса:

Универсальная дата

С помощью функции ТекущаяУниверсальнаяДата можно получить дату и время UTC. С помощью функции ТекущаяУниверсальнаяДатаВМиллисекундах можно получить количество миллисекунд, начиная с 01.01.0001 года:

С помощью функции ТекущаяУниверсальнаяДатаВМиллисекундах можно получить замер времени в миллисекундах:

Также есть функции МестноеВремя и УниверсальноеВремя, которые позволяют получить местное время из универсального и универсальное время из местного:

Сравнение функций

Для сравнения функций работы с часовыми поясами представим, что есть информационная база, которая физически находится в Москве. Для данной базы методом УстановитьЧасовойПоясИнформационнойБазы был установлен часовой пояс «Europe/Moscow». А также есть пользователи из Красноярска, которые тоже работают с этой информационной базой. Для них при старте системы, в модуле сеанса устанавливается часовой пояс «Asia/Krasnoyarsk» с помощью метода УстановитьЧасовойПоясСеанса. Результаты представлены в таблице, вызовы всех функций были выполнены на сервере:

Источник

Программирование в 1С для всех

В прошлой статье мы узнали, что такое дата и как с неё работать. В этой статье изучим основные функции работы с датами в 1С 8.3.

Текущая дата в 1С

В 1С имеется возможность получить текущую дату, ту дату, которая выставлена в данный момент в операционной системе компьютера. Делается это при помощи метода ТекущаяДата.

Этот метод является функцией, не имеет параметров и с его помощью можно получить текущую дату в 1С 8.3.

Посмотрим, что возвращает этот код

1с день недели строкой

Как вы могли заметить, текущая дата получена в полном формате (год, месяц, день, час, минута и секунда), т.е. текущая дата у нас возвращается с точностью до секунды.

Определить год, месяц, день, час, минуту и секунду даты в 1С

В платформе 1С имеются методы, которые возвращают числовое представление года, месяца, дня, часа, минут и секунды определенной даты. Данные методы так и называются

Год( ) – возвращает год даты

Месяц( ) – возвращает месяц даты

День( ) – возвращает день даты

Час( ) – возвращает час даты

Минута( ) – возвращает минут даты

Секунда( ) – возвращает секунду даты

Рассмотрим пример, в котором возьмем текущую дату и вернем год, месяц, час, минуту и секунду этой даты.

И результат работы этого кода.

1с день недели строкой

Дата начала и дата конца периода в 1С

В платформе 1С 8.3. имеется возможность определить начало и конец периода даты, которому она принадлежит.

Делается это при помощи следующих методов:

И противоположные методы:

Данные методы являются функциями, которые имеют один параметр с типом дата и возвращают соответствующую дату.

Рассмотрим пример, в котором будем получать начало и конец квартала текущей даты, начало и конец недели текущей даты, и начало и конец часа текущей даты. В этом примере будет шесть методов: НачалоКвартала, НачалоНедели, НачалоЧаса, КонецКвартала, КонецНедели, КонецЧаса. Остальные методы определения начала и конца периода работают аналогично.

И результат работы этих методов.

1с день недели строкой

Неделя года, день года и день недели

Рассмотрим похожие функции, которые возвращают порядковый номер соответствующего периода, которому принадлежит дата.

НеделяГода( ) – возвращает порядковый номер недели в году, на которую приходится дата.

ДеньГода( ) – возвращает порядковый номер дня года указанной даты.

ДеньНедели( ) – возвращает порядковый номер дня недели указанной даты.

Сделаем пример, в котором у текущей даты определим какой день недели (понедельник, вторник и т.д.), какой день года, и какая неделя в году.

В этом примере я использовал условие, в котором в зависимости от того, что возвращал метод ДеньНедели выводил строкой нужное сообщение.

1с день недели строкой

Добавить месяц к дате в 1С

В предыдущей статье мы научились добавлять к дате секунды (или вычитать из даты секунды). Делается это прибавлением к дате любого целого числового значения. Например, так:

В этом примере мы прибавили к дате 1 час. Но если нужно к какой-то дате прибавить месяц, то данный метод не всегда подойдет: в разных месяцах разное количество дней.

И если такая задача возникает, то нужно использовать метод ДобавитьМесяц. При помощи этого метода, можно добавить к дате или убавить от даты нужное количество месяцев.

Этот метод является функцией, возвращает переменную с типом дата и имеет следующий синтаксис:

Этот метод добавляет или вычитает из даты в первом параметре количество месяцев из второго параметра.

Рассмотрим пример: добавим к текущей дате месяц и год, а также вычтем из текущей даты месяц и год.

И результат этого кода:

1с день недели строкой

Другие статьи о примитивных типах:

Более подробно и основательно начальные вопросы программирования в 1С есть вы можете изучить в
Книга «Программировать в 1С за 11 шагов»

Изучайте программирование в 1С в месте с моей книгой «Программировать в 1С за 11 шагов»

1с день недели строкой

Книга написана понятным и простым языком — для новичка.

О том как разрабатывать под управляемым приложением 1С, читайте в книге Книга «Основы разработки в 1С: Такси»

Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.

1с день недели строкой

Промо-код на скидку в 15% — 48PVXHeYu

Эти книги, плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog


Если Вам понравился этот урок, был полезен или помог решить какую-нибудь проблему, то Вы можете поддержать мой проект, перечислив любую сумму
.

можно оплатить вручную:

Яндекс.Деньги — 410012882996301
Web Money — R955262494655

Источник

Здравствуйте, помогите пожалуйста. Просто я еще не совсем освоился в 1С. Мне нужно по введенной дате организовать вывод названия дня недели в зависимости от выбранного языка, например:
— для русского языка – «Понедельник»
— для английского языка – «Monday»
— для немецкого языка – «Montag»
А выбор языка реализовать через список значений, если язык не выбран, сообщить об этом.

Я знаю как вывести день недели, в зависимости от веденной пользователем даты.

Затруднение в том, что я не знаю как целесообразнее будет написать код. Не получается объединить эти две части в одну целую.

Добавлено через 8 часов 6 минут
Разобрался сам.

Помощь в написании контрольных, курсовых и дипломных работ здесь.

1с день недели строкойПо текущей дате и дню недели определить день недели с такой же датой заданного года
По текущей дате и дню недели определить день недели с такой же датой заданного года. (C++ )

1с день недели строкойПо дате 23.04.2039 или другой дате XXI века определить день недели
«Вечный календарь». По дате 23.04.2039 или другой дате XXI века оп-ределить день недели. Напечатать.

Опредилить день недели, соответствующий заданной дате дате
вам дона некоторая дата 21 века,опредилите день недели, соответствующий этой дате.Учтите чот первое.

1с день недели строкойДень недели по дате
Здравствуйте. Проблем в написании программы у меня не возникает, проблема в расчетах. К примеру.

Используй функцию «формат»
Все гораздо проще:

Добавлено через 14 минут
можно и по короче:

Узнать день недели по дате
Приветствую! Столкнулся с глупой незадачей. Использую Weekday, чтобы вычислить день недели по.

1с день недели строкойОпределить по дате день недели
я не знаю вот такую вот задучу поставил препод. первого января 1994 года был понидельник.

Узнать день недели по дате
пожалуйста помогите решать задачу. заранее спасибо Функция вычесляет день недели по дате. Даты.

Вычислить день недели по дате
написать прогу на тему вычисления дня недели по дате. я чет написал (пенками и по книге) и не могу.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *