Для склонения слов или сочетаний существуют специальные онлайн сайты. Использование различных веб сервисов предполагает ряд ограничний. Во первых - необходимо наличие Интернета. Во вторых - быстродействие зависит от скрости Интернета и мощности сервера. Для склонения ФИО или просто произвольных словосочетаний предназначены специальные компоненты, которые можно подключить в В 1С предприятии. При использовании компоненты, весь процесс склонения происходит на локальном компьютере. Существует, готовая бесплатная компонента склонения ФИО.
Сайт morpher.ru предоставляет возможность склонять слова или словосочетания, представлять число прописью. Компонента склонения Morpher.dll, является платной.
Падежы русский язык
- Родительный
- Дательный
- Винительный
- Творительный
- Предложный
- Винительный
Падежы украинский язык
- Родовий
- Давальний
- Знахiдний
- Орудний
- Мiсцевий
- Кличний
Склонение ФИО, слов, словосочетаний Для склонения вызываются функции GetXml("СклоняемаяСтрока") и GetXmlUkr("СклоняемаяСтрока").
Процедура СклонениеФИО()
ФИО = "Иванов Иван Иванович"; Попытка ОпределениеМорфер = Новый WSОпределения("http://morpher.ru/WebService.asmx?WSDL"); Морфер = Новый WSПрокси (ОпределениеМорфер, "http://morpher.ru/", "WebService", "WebServiceSoap"); Исключение Сообщить("Не удалось подключиться к сервису morpher.ru"); КонецПопытки; //Русский язык Результат = Морфер.GetXml(ФИО); Родительный = Результат.Р; Дательный = Результат.Д; Винительный = Результат.В; Творительный = Результат.Т; Предложный = Результат.П; Винительный = Результат.В; //Украинский язык Результат = Морфер.GetXmlUkr(ФИО); Родовий = Результат.Р; Давальний = Результат.Д; Знахiдний = Результат.З; Орудний = Результат.О; Мiсцевий = Результат.М; Кличний = Результат.К; КонецПроцедуры
Число прописью, склонение Для преобразования вызываются функции Propis(Число, "ЕдиницаИзмерения") и PropisUkr(Число, "ЕдиницаИзмерения").
Процедура СклонениеЧислаПрописью()
Число = 10; ЕдИзм = "метр"; Попытка ОпределениеМорфер = Новый WSОпределения("http://morpher.ru/WebService.asmx?WSDL"); Морфер = Новый WSПрокси (ОпределениеМорфер, "http://morpher.ru/", "WebService", "WebServiceSoap"); Исключение Сообщить("Не удалось подключиться к сервису morpher.ru"); КонецПопытки; //Русский язык Результат = Морфер.Propis(Число, ЕдИзм); Родительный = Результат.n.Р + " " + Результат.unit.Р; Дательный = Результат.n.Д + " " + Результат.unit.Д; Винительный = Результат.n.В + " " + Результат.unit.В; Творительный = Результат.n.Т+ " " + Результат.unit.Т; Предложный = Результат.n.П + " " + Результат.unit.П; Винительный = Результат.n.В + " " + Результат.unit.В; //Украинский язык Результат = Морфер.PropisUkr(Число, ЕдИзм); Родовий = Результат.n.Р + " " + Результат.unit.Р; Давальний = Результат.n.Д + " " + Результат.unit.Д; Знахiдний = Результат.n.З + " " + Результат.unit.З; Орудний = Результат.n.О + " " + Результат.unit.О; Мiсцевий = Результат.n.М + " " + Результат.unit.М; Кличний = Результат.n.К + " " + Результат.unit.К; КонецПроцедуры
|