|
Как просклонять год? | ☑ | ||
---|---|---|---|---|
0
Krok
18.02.22
✎
23:12
|
Не получается просклонять год. Например получить из 2018 г.- две тысячи восемнадцатого года.
Число является порядковым числительным мужского рода в родительном падеже. ПолучитьСклоненияСтроки("Две тысячи восемнадцать","Л=ru_RU; ПЛ=Мужской","ПД=Родительный")[0] возвращает не то что нужно... Есть функция которая просклоняет так как требуется? Или сидеть дерево если прописывать... |
|||
1
серый КТУЛХУ
18.02.22
✎
23:26
|
ПолучитьСклоненияСтрокиПоЧислу
|
|||
2
Krok
18.02.22
✎
23:30
|
мне данная функция вернет 2018 в виде две тысячи восемнадцатое? (если использовать как второй параметр)
|
|||
3
серый КТУЛХУ
19.02.22
✎
00:13
|
релиз платформы какой?
на эти функции по разным релизам народ много ругался. https://forum.infostart.ru/forum9/topic243598/ |
|||
4
Krok
19.02.22
✎
02:07
|
(3) Спасибо) уже свою извращенную штуку написал:
Дата=Файл.ВладелецФайла.ДатаРегистрации; Если Месяц(Дата) = 1 Тогда Месяц="января"; ИначеЕсли Месяц(Дата) = 2 ТОГДА Месяц="февраля"; ИначеЕсли Месяц(Дата) = 3 ТОГДА Месяц="марта"; ИначеЕсли Месяц(Дата) = 4 ТОГДА Месяц="апреля"; ИначеЕсли Месяц(Дата) = 5 ТОГДА Месяц="мая"; ИначеЕсли Месяц(Дата) = 6 ТОГДА Месяц="июня"; ИначеЕсли Месяц(Дата) = 7 ТОГДА Месяц="июля"; ИначеЕсли Месяц(Дата) = 8 ТОГДА Месяц="августа"; ИначеЕсли Месяц(Дата) = 9 ТОГДА Месяц="сентября"; ИначеЕсли Месяц(Дата) = 10 ТОГДА Месяц="октября"; ИначеЕсли Месяц(Дата) = 11 ТОГДА Месяц="ноября"; ИначеЕсли Месяц(Дата) = 12 ТОГДА Месяц="декабря"; КонецЕсли; Если День(Дата) = 1 Тогда День="Первое"; ИначеЕсли День(Дата) = 2 ТОГДА День="Второе"; ИначеЕсли День(Дата) = 3 ТОГДА День="Третье"; ИначеЕсли День(Дата) = 4 ТОГДА День="Четвертое"; ИначеЕсли День(Дата) = 5 ТОГДА День="Пятое"; ИначеЕсли День(Дата) = 6 ТОГДА День="Шестое"; ИначеЕсли День(Дата) = 7 ТОГДА День="Седьмое"; ИначеЕсли День(Дата) = 8 ТОГДА День="Восьмое"; ИначеЕсли День(Дата) = 9 ТОГДА День="Девятое"; ИначеЕсли День(Дата) = 10 ТОГДА День="Десятое"; ИначеЕсли День(Дата) = 11 ТОГДА День="Одиннадцатое"; ИначеЕсли День(Дата) = 12 ТОГДА День="Двенадцатое"; ИначеЕсли День(Дата) = 13 ТОГДА День="Тринадцатое"; ИначеЕсли День(Дата) = 14 ТОГДА День="Четырнадцатое"; ИначеЕсли День(Дата) = 15 ТОГДА День="Пятнадцотое"; ИначеЕсли День(Дата) = 16 ТОГДА День="Шестнадцатое"; ИначеЕсли День(Дата) = 17 ТОГДА День="Семнадцатое"; ИначеЕсли День(Дата) = 18 ТОГДА День="Восемнадцатое"; ИначеЕсли День(Дата) = 19 ТОГДА День="Девятнадцатое"; ИначеЕсли День(Дата) = 20 ТОГДА День="Двадцатое"; ИначеЕсли День(Дата) = 21 ТОГДА День="Двадцать первое"; ИначеЕсли День(Дата) = 22 ТОГДА День="Двадцать второе"; ИначеЕсли День(Дата) = 23 ТОГДА День="Двадцать третье"; ИначеЕсли День(Дата) = 24 ТОГДА День="Двадцать четвертое"; ИначеЕсли День(Дата) = 25 ТОГДА День="Двадцать пятое"; ИначеЕсли День(Дата) = 26 ТОГДА День="Двадцать шестое"; ИначеЕсли День(Дата) = 27 ТОГДА День="Двадцать седьмое"; ИначеЕсли День(Дата) = 28 ТОГДА День="Двадцать восьмое"; ИначеЕсли День(Дата) = 29 ТОГДА День="Двадцать девятое"; ИначеЕсли День(Дата) = 30 ТОГДА День="Тридцатое"; ИначеЕсли День(Дата) = 31 ТОГДА День="Тридцать первое"; КонецЕсли; Если Число(Год(Дата))%100=0 Тогда Год="двухтысячного года"; ИначеЕсли Число(Год(Дата))%100=10 Тогда Год=ЧислоПрописью(Число(Год(Дата))-10, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"десятого года"; ИначеЕсли Число(Год(Дата))%100=20 Тогда Год=ЧислоПрописью(Число(Год(Дата))-20, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"двадцатого года"; ИначеЕсли Число(Год(Дата))%100=30 Тогда Год=ЧислоПрописью(Число(Год(Дата))-30, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"тридцатого года"; ИначеЕсли Число(Год(Дата))%100=40 Тогда Год=ЧислоПрописью(Число(Год(Дата))-40, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"сорокового года"; ИначеЕсли Число(Год(Дата))%100=50 Тогда Год=ЧислоПрописью(Число(Год(Дата))-50, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"пятидесятого года"; ИначеЕсли Число(Год(Дата))%100=60 Тогда Год=ЧислоПрописью(Число(Год(Дата))-60, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"шестидесятого года"; ИначеЕсли Число(Год(Дата))%100=70 Тогда Год=ЧислоПрописью(Число(Год(Дата))-70, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"семидесятого года"; ИначеЕсли Число(Год(Дата))%100=80 Тогда Год=ЧислоПрописью(Число(Год(Дата))-80, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"восьмидесятого года"; ИначеЕсли Число(Год(Дата))%100=90 Тогда Год=ЧислоПрописью(Число(Год(Дата))-90, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"девяностого года"; ИначеЕсли Число(Год(Дата))%100=11 Тогда Год=ЧислоПрописью(Число(Год(Дата))-11, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"одиннадцатого года"; ИначеЕсли Число(Год(Дата))%100=12 Тогда Год=ЧислоПрописью(Число(Год(Дата))-12, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"двенадцатого года"; ИначеЕсли Число(Год(Дата))%100=13 Тогда Год=ЧислоПрописью(Число(Год(Дата))-13, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"тринадцатого года"; ИначеЕсли Число(Год(Дата))%100=14 Тогда Год=ЧислоПрописью(Число(Год(Дата))-14, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"четырнадцатого года"; ИначеЕсли Число(Год(Дата))%100=15 Тогда Год=ЧислоПрописью(Число(Год(Дата))-15, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"пятнадцатого года"; ИначеЕсли Число(Год(Дата))%100=16 Тогда Год=ЧислоПрописью(Число(Год(Дата))-16, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"шестнадцатого года"; ИначеЕсли Число(Год(Дата))%100=17 Тогда Год=ЧислоПрописью(Число(Год(Дата))-17, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"семнадцатого года"; ИначеЕсли Число(Год(Дата))%100=18 Тогда Год=ЧислоПрописью(Число(Год(Дата))-18, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"восемнадцатого года"; ИначеЕсли Число(Год(Дата))%100=19 Тогда Год=ЧислоПрописью(Число(Год(Дата))-19, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"девятнадцатого года"; ИначеЕсли Число(Год(Дата))%10=1 Тогда Год=ЧислоПрописью(Число(Год(Дата))-1, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"первого года"; ИначеЕсли Число(Год(Дата))%10=2 Тогда Год=ЧислоПрописью(Число(Год(Дата))-2, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"второго года"; ИначеЕсли Число(Год(Дата))%10=3 Тогда Год=ЧислоПрописью(Число(Год(Дата))-3, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"третьего года"; ИначеЕсли Число(Год(Дата))%10=4 Тогда Год=ЧислоПрописью(Число(Год(Дата))-4, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"четвертого года"; ИначеЕсли Число(Год(Дата))%10=5 Тогда Год=ЧислоПрописью(Число(Год(Дата))-5, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"пятого года"; ИначеЕсли Число(Год(Дата))%10=6 Тогда Год=ЧислоПрописью(Число(Год(Дата))-6, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"шестого года"; ИначеЕсли Число(Год(Дата))%10=7 Тогда Год=ЧислоПрописью(Число(Год(Дата))-7, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"седьмого года"; ИначеЕсли Число(Год(Дата))%10=8 Тогда Год=ЧислоПрописью(Число(Год(Дата))-8, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"восьмого года"; ИначеЕсли Число(Год(Дата))%10=9 Тогда Год=ЧислоПрописью(Число(Год(Дата))-9, "Л=ru_RU;ДП=Ложь;",",,,,,,,,0")+"девятого года"; КонецЕсли; РезультатОбработки =День+" "+ Месяц+" "+Нрег(Год); |
|||
5
ads55
19.02.22
✎
09:41
|
(4) "ИначеЕсли День(Дата) = 15 ТОГДА День="Пятнадцотое";" - это зачёт!
Загони в соответствие, что ли... |
|||
6
Гений 1С
гуру
19.02.22
✎
10:45
|
(5) Поколение ЕГЭ. ;-) А вообще безграмотность потому что книги перестали читать.
|
|||
7
NorthWind
19.02.22
✎
11:45
|
(4) непонятно, зачем так сложно. Можно было просто взять несколько ЧиселПрописью и собрать их в одну строку, добавив наименование месяца и слово "года" для связки... Получилось бы 3-4 строки вся функция.
|
|||
8
Aleksey
19.02.22
✎
12:29
|
СтроковыеФункцииКлиентСервер.ЧислоЦифрамиПредметИсчисленияПрописью()
(с) Как склонять год, месяц и день? |
|||
9
Krok
23.02.22
✎
16:16
|
(5) Спасибо! Не заметил
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |