Перевод ФИО в указанный падеж — Padeg.DLL с www.DelphiKingdom.ru

Использование указанной библиотеки в VFP
Возможности (кратко):

  1. Перевод ФИО (именительный падеж) в указанный падеж по номеру падежа и полу.
  2. Перевод строки содержащей ФИО в указанный падеж по номеру падежа и полу.
  3. Перевод строки из любого падежа в именительный без указания пола.
  4. Возможно автоматическое определение пола.
  5. Работа со словарем исключений.

Более подробно смотрите вот здесь здесь
Вот текст на VFP:

 *     _______________________________________Петров А.О.__ *    |  Преобразование ФИО v2.0				  | *    |  Адаптация всех функций под Visual FoxPRO	  | *    |  Программа FoxPRO.prg				  | *    |____________________________________________________| *    |  Дата изменения: 12.02.04,   написана  11.02.04    | *    |____________________________________________________|   #DEFINE MAX_FIO_LEN 100 PRIVATE f,l,s m.f='Петров' m.l='Андрей' m.s='Олегович'  DECLARE integer GetFIOPadeg IN padeg.dll; 	string pFirstName,; 	string pLastName,; 	string pMiddleName,; 	integer bSex,; 	integer nPadeg,; 	string @pResult,; 	integer @nLen 	 DECLARE integer GetFIOPadegAS IN padeg.dll; 	string pFirstName,; 	string plastName,; 	string pMiddleName,; 	integer nPadeg,; 	string @pResult,; 	integer @nLen  DECLARE integer GetFIOPadegFS IN padeg.dll; 	string pFIO,; 	integer bSex,; 	integer nPadeg,; 	string @pResult,; 	integer @nLen  DECLARE integer GetFIOPadegFSAS IN padeg.dll; 	string pFIO,; 	integer nPadeg,; 	string @pResult,; 	integer @nLen 	 DECLARE integer GetIFPadeg IN padeg.dll; 	string pFirstName,; 	string pLastName,; 	integer bSex,; 	integer nPadeg,; 	string @pResult,; 	integer @nLen  DECLARE integer GetIFPadegFS IN padeg.dll; 	string pIF,; 	integer bSex,; 	integer nPadeg,; 	string @pResult,; 	integer @nLen 	 DECLARE integer GetNominativePadeg IN padeg.dll; 	string pFIO,; 	string @pResult,; 	integer @nLen  DECLARE integer UpdateExceptions IN padeg.dll;  *  ============================== КОД ЗДЕСЬ ================================= PRIVATE _l  CLEAR FOR m.x=1 TO 6 	m._l=MAX_FIO_LEN 	m.str=SPACE(m._l) 	getfiopadeg(m.f,m.l,m.s,1,m.x,@str,@_l) 	? 'Номер падежа = ',x,' ФИО = ',SUBSTR(str,1,m._l) ENDFOR  ? 'GetFIO			= ',getfio(m.f,m.l,m.s,ASC('м'),2) ? 'GetFIOFromStr		= ',getfiofromstr(f+' '+l+' '+s,ASC('м'),2) ? 'GetIF			= ',getif(m.f,m.l,ASC('м'),2) ? 'GetIFFromStr		= ',getiffromstr(m.f+' '+m.l,ASC('м'),2) ? 'GetNominative		= ',getnominative(getfio(m.f,m.l,m.s,ASC('м'),2))  ? 'UpdateExceptions = ',UpdateExceptions()#0 *  ==========================================================================  FUNCTION GetFIO LPARAMETERS pFirstName, plastName, pMiddleName, bSex, nPadeg PRIVATE result, l m.l=MAX_FIO_LEN m.result=REPLICATE(CHR(0),m.l) =getfiopadeg(pFirstName, plastName, pMiddleName, bSex, nPadeg, @result, @l) RETURN SUBSTR(m.result,1,m.l)  FUNCTION GetFIOFromStr LPARAMETERS pFIO, bSex, nPadeg PRIVATE result, l m.l=MAX_FIO_LEN m.result=REPLICATE(CHR(0),m.l) =getFIOPadegFS(pFIO, bSex, nPadeg, @result, @l) RETURN SUBSTR(m.result,1,m.l)  FUNCTION GetIF LPARAMETERS plastName, pFirstName, bSex, nPadeg PRIVATE result, l m.l=MAX_FIO_LEN m.result=REPLICATE(CHR(0),m.l) =GetIFpadeg(plastName, pFirstName, bSex, nPadeg, @result, @l) RETURN SUBSTR(m.result,1,m.l)  FUNCTION GetIFFromStr LPARAMETERS pIF, bSex, nPadeg PRIVATE result, l m.l=MAX_FIO_LEN m.result=REPLICATE(CHR(0),m.l) =getIFPadegFS(pIF, bSex, nPadeg, @result, @l) RETURN SUBSTR(m.result,1,m.l)  FUNCTION GetNominative LPARAMETERS pFIO PRIVATE result, l m.l=MAX_FIO_LEN m.result=REPLICATE(CHR(0),m.l) =getnominativepadeg(pFIO, @result, @l) RETURN SUBSTR(m.result,1,m.l) 

Он же в архиве...

Автор: Петров Андрей
0

Автор публикации

не в сети 22 года

Петров Андрей

0
Комментарии: 0Публикации: 14Регистрация: 17-04-2002
Вложенные файлы
#
Тип файла
Размер
Название
1 .zip 999,00 Б 371foxpro
Оставить комментарий
Авторизация
*
*
Генерация пароля