Страница 1 из 1

Падежи

Добавлено: 01 авг 2003, 17:52
spn
Есть ли в галке функция склонения фамилий в различные падежи?

Re: Падежи

Добавлено: 04 авг 2003, 06:15
IgorA
И как, по Вашему, это можно реализовать?

Re: Падежи

Добавлено: 04 авг 2003, 08:50
Vitas
Так функции нет в природе вообще, а если есть, то не точно работающая, потому как склонение фамилий не поддается ни одному правилу русского языка, вернее поддается, но существует просто огромное кол-во исключений

Re: Падежи

Добавлено: 04 авг 2003, 15:35
spn
Но ведь в галактике есть нечто такое - используется при печати кассовых ордеров, даже есть специальный файлик для исключений fioext.txt по-моему.

Re: Падежи

Добавлено: 04 авг 2003, 19:50
dkms
По-моему, доверенности оформляет с дательным падежом. Сели, подумали, да и написали нужную функцию - не очень-то и много вариантов оказалось :).

Re: Падежи

Добавлено: 05 авг 2003, 05:19
vitali
Родительного падежа точно нет, писали запрос в ДТП ПИР №101.22151.
Есть функция перевода в дательный падеж.

Re: Падежи

Добавлено: 08 авг 2003, 12:17
spn
И как она называется?

Re: Падежи

Добавлено: 08 авг 2003, 15:31
Maxim
Все возможно реализовать и в Галактике.
Пишите dll и используете потом в отчетах. Так как правила склонения (не только фамилий, фамилии - частный случай) достаточно четко все описывают, результат гораздо лучше, чем это сделают 99% пользователей.
Как вариант - найти а интернете эту самую DLL и пользоваться.

Так что все реально и мы это используем.

Re: Падежи

Добавлено: 02 сен 2004, 17:00
amid
Поднимаю старый вопрос!
Есть ли в галке функция склонения фамилий в различные падежи?
Всетаки такая функция должна быть.
Может теперь кто знает? ???

Re: Падежи

Добавлено: 02 сен 2004, 20:37
forummaster
<HTML>Иванов Дмитрий сказал:
>
> Поднимаю старый вопрос!
> Есть ли в галке функция склонения фамилий в различные падежи?
> Всетаки такая функция должна быть.
> Может теперь кто знает? ???

В версиях 5.85.02 и 7.11.01 появился объектный интерфейс odeclension для склонения фамилий. Поддерживается набор функций :

//Склонение фамилии или ее части
//NCase- падеж /2- 6/
//NPart- часть фамилии 1- первая или фамилия целиком; 2- вторая часть
//gender- 0- род определен программой 1- женский 2- мужской
function SurNameDeclension(LName: string; gender: word; NCase: word; NPart: byte): string;

//Склонение имени
function NameDeclension(FName: string; gender: word; NCase: word): string;

//Склонение отчества
function PatronDeclension(PName: string; gender: word; NCase: word): string;

//Склонение ФИО целиком
function FIODeclension(cpersons: comp; Infinitive: string; NCase: word): string;</HTML>

Re: Падежи

Добавлено: 06 дек 2004, 17:08
Аля
Подскажите пожалуйста, как их можно использовать? В частности при создании rtf отчета на строки:
.var
Obj: Odeclension;
.endvar
Получаю сообщение "Ожидался тип параметра". :(

Re: Падежи

Добавлено: 06 дек 2004, 18:16
Max_Fin
для этого:
1) необходим исходник объектного интерфейса odecl.vih
2) в проекте необходимо перед компиляцией отчета подключить его
#include odecl.vih
3) объявить в отчете var iOdecl: declension;
и только после этого использовать.
вот сам исходник
objinterface odeclension;

//Склонение фамилии или ее части
//NCase- падеж /2- 6/
//NPart- часть фамилии 1- первая или фамилия целиком; 2- вторая часть
//gender- 0- род определен программой 1- женский 2- мужской
function SurNameDeclension(LName: string; gender: word; NCase: word; NPart: byte): string;

//Склонение имени
function NameDeclension(FName: string; gender: word; NCase: word): string;

//Склонение отчества
function PatronDeclension(PName: string; gender: word; NCase: word): string;

//Склонение ФИО целиком
function FIODeclension(cpersons: comp; Infinitive: string; NCase: word): string;

//Добавление записи в словарь исключений
//0 -удачное добавление
//1- есть дубликат
//2- произошли ошибки на этапе вставки
function AddSimpleException(Target: string; ExceptType: byte): word;

//Окно ввода параметров исключения
procedure RunSimpleExceptionWindow;

//Поиск исключения по персоне
function fndpersonsException(cpersons: comp; nCase: word): string;

//Добавление записи в словарь персональных исключений
//0 -удачное добавление
//1- есть дубликат
//2- произошли ошибки на этапе вставки
function AddPersonalException(cpersons: comp; Target: string; nCase: word): word;

//Удаление записи из словаря персональных исключений
//0 -удачное удаление
//1- нет такой записи
//2- произошли ошибки на этапе удаления
function DeletePersonalException(cpersons: comp; nCase: word): word;

//Корректировка записи в словаре персональных исключений
//0 -удачная корректировка
//1- нет такой записи
//2- произошли ошибки на этапе корректировки
function UpdatePersonalException(cpersons: comp; Target: string; nCase: word): word;
end;

vipinterface declension implements odeclension;

Re: Падежи

Добавлено: 16 дек 2004, 14:18
oiko
to Max_Fin:
можно ли использовать эти ф-ии в отчетах
если можно то с примером.