Склонение ФИО

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
Savich
Постоянный гость
Сообщения: 52
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Беларусь

Склонение ФИО

Сообщение Savich »

Здравствуйте!
Подскажите функцию для склонения ФИО в отчетах ???
Заранее благодарен.
dozent
Местный житель
Сообщения: 226
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Урал
Контактная информация:

Re: Склонение ФИО

Сообщение dozent »

См. почту
Chak
Посетитель
Сообщения: 41
Зарегистрирован: 30 ноя 2005, 10:54
Откуда: Пермь
Контактная информация:

Re: Склонение ФИО

Сообщение Chak »

dozent писал(а):См. почту
Ну вот сложно было здесь функцию написать? Или это жуткий секрет, доступный лишь избранным? Мне она тоже понадобилась... зато хоть понял, что есть такое.
san
Местный житель
Сообщения: 412
Зарегистрирован: 28 апр 2005, 11:34
Откуда: Галактика Млечный Путь

Сообщение san »

не все фио можно склонять :grin:
Алексей
Местный житель
Сообщения: 2896
Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область

Сообщение Алексей »

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

И где-то там же я видел что-то вроде файла, где указывались фамилии, и они же в других падежах... помню что файл в рабочий каталог Галки подкладывался... а как и что туда писать, уже не помню... :-(
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Сообщение edward_K »

odecl.vih под 712
==============
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;

objinterface odeclension1;

function VerifyGender(target: string): word;

end;

vipinterface declension implements odeclension, odeclension1
Ответить