- •1.Назначение
- •2.История
- •3.Ядро программы
- •4.Установка
- •5.Экспортируемые функции dll и рекомендации по их использованию
- •5.1.Общие положения
- •5.2.Функции, выполняющие склонение фио, должностей и подразделений
- •5.3.Сервисные функции
- •5.4.Функции, работающие со словарем исключений
- •5.5.Представление чисел (сумм) прописью, склонениe числительных и валют.
- •5.5.3.Справочник валют
- •6.Примеры обращения к функциям Библиотеки
- •7.Сервер автоматизации
- •7.1.Краткое описание
- •7.2.Примеры обращения
- •7.2.1.Delphi (проект SampleCom)
- •8.Восстановление именительного падежа
- •9.Словарь исключений
- •10.Область применения
- •11.Правила склонения фио, реализованные в Библиотеке
- •12.Комплект поставки
- •12.1.Версии до 3.Х
- •12.2.Версия 4.X
- •12.3.Условия поставки
- •13.Литература
- •14.Благодарности
- •15.Заключение
5.3.Сервисные функции
5.3.1.GetSex
function GetSex(pMiddleName: PChar): Integer; stdcall; export;
Определяет род по отчеству, записанному в произвольном падеже.
Значение, возвращаемое этой функцией, содержит информацию о роде:
1 – мужской;
0 – женский;
-1 – невозможно определить.
Позволяет определить род ФИО. Допускается параметром передавать не только отчество, но и ФИО целиком. Главное, чтобы в передаваемой строке последним было отчество.
5.3.2.GetPadegID
function GetPadegID(pFIO: PChar): Integer; stdcall; export;
Определяет номер падежа в котором записано ФИО(pFIO).
Значение, возвращаемое этой функцией, содержит информацию о падеже:
0 – не определен;
1 – именительный;
...
6 – предложный;
Позволяет определить падеж ФИО. К сожалению, иногда однозначно определить номер падежа можно только учитывая контекст всего предложения, поскольку запись, допустим, родительного и винительного падежей для мужских ФИО совпадают. То же самое справедливо в отношении женских ФИО для дательного и предложного падежей. В таких случаях функция возвращает значение 2 для мужчин и 3 для женщин.
5.3.3.GetFIOParts
function GetFIOParts(pFIO: PChar; Parts: PPartsFIO): Integer; stdcall;
export;
Выделяет из ФИО (pFIO) его составляющие. Результат помещается в буфер (Parts).
Позволяет выделить из заданного ФИО его части. Результат работы помещается в запись со структурой:
type
PPartsFIO = ^TPartsFIO;
TPartsFIO = record
pLastName, pFirstName, pMiddleName : PChar;
nLastName, nFirstName, nMiddleName : LongInt;
end;
Значения, возвращаемые этой функцией могут быть следующими:
0 – успешное завершение;
-3 – размер буфера pLastName недостаточен;
-4 – размер буфера pFirstName недостаточен;
-5 – размер буфера pMiddleName недостаточен.
Корректно обрабатываются ФИО, содержащие признак рода (Оглы, Кызы) записанный через дефис или пробел.
5.4.Функции, работающие со словарем исключений
Группа функций, работающих со словарем исключений, имеет (в основном) тип - Boolean.
5.4.1.UpdateExceptions
function UpdateExceptions: Boolean; stdcall; export;
Служит для принятия изменений, сделанных в файле словаря исключений во время работы приложения, использующего Библиотеку.
Значение, возвращаемое этой функцией, содержит информацию о том, что словарь исключений найден и программа с ним работает (True). В противном случае функция возвратит значение False.
5.4.2.GetExceptionsFileName
function GetExceptionsFileName(pResult: PChar; var nLen: LongInt): Integer;
stdcall; export;
Возвращает в буфере (pResult) рамера (nLen) полное имя словаря исключений.
Имя словаря исключений может потребоваться для модификации словаря в процессе работы приложения, использующего функции DLL. Как и в функциях склонения, значение параметра nLen равно размеру возвращаемого результата.
5.4.3.SetDictionary
function SetDictionary(FileName: PChar): Boolean; stdcall; export;
Устанавливает в качестве рабочего словарь FileName.
Позволяет приложениям работать с различными словарями. Может быть полезной при разграничении прав доступа пользователей. Осуществляет установку словаря в качестве рабочего и считывание из него информации. Возвращает True, если словарь установлен и обновлен и False в противном случае.
Не изменяет путь к словарю исключений в реестре, для изменения параметра реестра необходимо воспользоваться соответствующим редактором.
