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

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

Добавлено: 12 ноя 2004, 15:50
Savich
Здравствуйте!
Подскажите функцию для склонения ФИО в отчетах ???
Заранее благодарен.

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

Добавлено: 16 ноя 2004, 07:40
dozent
См. почту

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

Добавлено: 15 дек 2005, 16:19
Chak
dozent писал(а):См. почту
Ну вот сложно было здесь функцию написать? Или это жуткий секрет, доступный лишь избранным? Мне она тоже понадобилась... зато хоть понял, что есть такое.

Добавлено: 16 дек 2005, 08:02
san
не все фио можно склонять :grin:

Добавлено: 16 дек 2005, 08:24
Алексей
Помнится в учете персоналом на каком то предприятии, была такая проблема. Мы просто переделывали фомры приказов так, что бы фио употреблялось в Им. падеже.

И где-то там же я видел что-то вроде файла, где указывались фамилии, и они же в других падежах... помню что файл в рабочий каталог Галки подкладывался... а как и что туда писать, уже не помню... :-(

Добавлено: 16 дек 2005, 11:08
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