Форматирование даты с учетом склонения по падежам

27.07.10

Разработка - Универсальные функции

Функция позволяет форматировать переданную ей дату с учетом склонения по падежам.

Скачать файлы

Наименование Файл Версия Размер
ФорматДаты
.ert 84,00Kb
73
.ert 84,00Kb 73 Скачать

Функция может заменить стандартный прием форматирования даты - Формат('21.01.10',"ДДДММГГ") на более гибкий - с возможностью склонения по падежам, изменения регистра, удаления в конце буквы "г". В результате использования в некоторых отчетах даты, наконец, будут очеловечены и станут радовать глаз. Имеет смысл поместить функцию в Глобальный модуль.

См. также

Библиотека процедур и функций для технологической платформы "1С: Предприятие 7.7"

Универсальные функции Платформа 1С v7.7 Россия Абонемент ($m)

В библиотеку собраны различные функции по работе с документами, журналами, типами данных, строками, датой и временем, таблицами значений, Excel, файлами, XML, JSON, Http-сервисами, SMTP серверами и т.п.

1 стартмани

22.12.2023    657    9    user706545_kseg1971    0    

4

1С 7.7 и новый 1С:Контрагент

Универсальные функции Платформа 1С v7.7 Конфигурации 1cv7 Россия Бесплатно (free)

Получение реквизитов контрагентов из 1С:Контрагент для старых конфигураций под 1с 7.7.

25.04.2022    1820    zhenyat    7    

6

Печать таблицы значений в 1С 7.7 при отладке

Универсальные функции Платформа 1С v7.7 Россия Бесплатно (free)

Функция выводит таблицу значений в табличный документ. (v7.7) Особенно полезно при отладке. Не нужно вносить изменения в код, вызываем функцию как вычисляемое выражение при останове. Если таблица обрабатывается в несколько этапов, можно вывести её после каждого и визуально проследить эволюцию.

30.06.2021    4399    Zoltan_Black    11    

2

Установка принтера по умолчанию для 1С 7.7

Универсальные функции Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Установка принтера по умолчанию в 1С 7.7. Обработка может быть полезна в том случае, когда нужно установить принтер по умолчанию, а доступа к рабочему столу нет (например, терминальный режим без рабочего стола или remoteApp)

1 стартмани

13.02.2019    13286    4    alsen    3    

4

Формирование строки json в 1С: 7.7

Универсальные функции Платформа 1С v7.7 Конфигурации 1cv7 1С:Комплексная 7.7 Абонемент ($m)

Предлагается набор функций 1с 7.7 для формирования строки json стандартными средствами.

1 стартмани

10.12.2018    10096    malovandrey    2    

18

Как создать индикатор в 1С:Предприятии 7.7

Универсальные функции Работа с интерфейсом Платформа 1С v7.7 Конфигурации 1cv7 Россия Абонемент ($m)

В статье дано описание создания индикатора на форме в среде разработки 1С:Предприятие 7.7 исключительно типовыми средствами.

1 стартмани

27.09.2016    18672    2    HAMMER_59    6    

2
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. jmw 60 28.07.10 11:19 Сейчас в теме
К чему мудрствовать лукаво?
Функция Представление(Слово1,Слово2,Слово3,_Чсл) Экспорт
	Ост2 = _Чсл % 100;
	Ост1 = _Чсл % 10;
	Если (Ост2 > 10) И (Ост2 < 20) Тогда
		ФормаЧисла = 3;
	ИначеЕсли Ост1 = 1 Тогда
		ФормаЧисла = 1;
	ИначеЕсли (Ост1 > 1) И (Ост1 < 5) Тогда
		ФормаЧисла = 2;
	Иначе
		ФормаЧисла = 3;
	КонецЕсли;
	Если ФормаЧисла = 1 Тогда
		Возврат Слово1;
	ИначеЕсли ФормаЧисла = 2 Тогда
		Возврат Слово2;
	Иначе
		Возврат Слово3;
	КонецЕсли;
КонецФункции // Представление
Показать

К примеру:
"2 " + Представление("банан", "банана", "бананов", 2) = "2 банана"
"12 " + Представление("банан", "банана", "бананов", 12) = "12 бананов"
2. gubanoff 63 28.07.10 17:32 Сейчас в теме
В твоем примере решается задача формирования красивых сочетаний "число + слово", что, безусловно, тоже хорошо и использование такого приема должно всячески поощряться. В моем же примере, решается задача склонения даты, чтобы можно было красиво вставить дату, например, в это предложение: "Показатели должны быть выполнены во 2 квартале 2010 г." Чтобы получить нужное склонение, напишем "Показатели должны быть выполнены во [ФорматД(НужнаяДата,"ДККККГГГГ",6,1)]". Как тут твоими "бананами" справиться, ума не приложу.
3. jmw 60 29.07.10 09:21 Сейчас в теме
(2) В твоей разработке почти 200 строк никому не нужного кода!
Ведь давольно-таки сомнительно, что в какой-нибудь нитленке я буду его встраивать, а приведённый тобой пример решается одной строкой.
Вот так:
"Показатели должны быть выполнены " + ?( Число(ПериодСтр(НачКвартала(НужнаяДата), КонКвартала(НужнаяДата))) = 2, "во ", "в") + " квартале " + ДатаГод(НужнаяДата) + " г."
4. gubanoff 63 29.07.10 10:18 Сейчас в теме
Бесспорно, твое
?( Число(ПериодСтр(НачКвартала(НужнаяДата), КонКвартала(НужнаяДата))) = 2, "во ", "в") + " квартале " + ДатаГод(НужнаяДата) + " г."
много лучше моего
[ФорматД(НужнаяДата,"ДККККГГГГ",6,1)]
, только тебе придется для каждого такого нешаблонного склонения изобретать конструкции (и тратить на изобретение оных время), типа приведенной, а я буду использовать универсальную функцию и менять пару ее параметров. А если надо будет написать нечто вроде "Данные предоставить к среде" ты тоже будешь каждый день недели в коде отчета правки делать? ;) или придумаешь функцию, которая по номеру дня недели будет его название выводить? Так вот, когда все варианты того, как может быть дата отформатирована моей функцией сложишь, посчитай количество строк кода.
5. jmw 60 29.07.10 11:12 Сейчас в теме
За 15 лет ни разу за весь свой опыт работы с 1С (начинал ещё с v6) никто и нигде меня не просил, чтобы эска писала "Показатели должны быть выполнены во 2 квартале 2010 г." или "Данные предоставить к среде".
Такие приказы отдать может только уполномоченное лицо, а не программа!
И тем более должно указываться конкретное число, а не гипотетическая среда.
6. AVKonya 29.09.11 11:11 Сейчас в теме
Приведенный на втором скриншоте пример неправильный.
"27 июля" будет именно июЛЯ в любом падеже.
И: Сегодня 27 июЛЯ
Р: У меня в календаре нет 27 июЛЯ
Д: Нужно успеть к 27 июЛЯ
и т.д.
У Вас описано склонение не "27 июля", а "27-й июль". Тогда бы действительно склонялось название месяца.
7. gubanoff 63 03.10.11 22:43 Сейчас в теме
Точно, пожалуй, дал маху :) Отлично, что кто-то еще внимательно относится к русскому языку!
8. taasha25 13 30.06.14 13:57 Сейчас в теме
Здравствуйте, уважаемый!

Как правильно открыть файл. 1С ругается на формат хранилища.

Заранее спасибо!
9. gubanoff 63 30.06.14 17:33 Сейчас в теме
(8) taasha25, это обработка для 1С 7.7
10. taasha25 13 01.07.14 08:12 Сейчас в теме
Спасибо! Я уже разобралась.
11. chmv 01.07.14 08:25 Сейчас в теме
Мы пользуемся dll. но иногда должности слетают
Оставьте свое сообщение