powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / Как просприжать ФИО?
10 сообщений из 10, страница 1 из 1
Как просприжать ФИО?
    #36474289
SINAR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как просприжать ФИО?
С именительного падежа в родительный.
...
Рейтинг: 0 / 0
Как просприжать ФИО?
    #36474474
room2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
есть dll-ка pagdeg для Delphi (скл. фио, наименований подразделений, отделов, должностей), где то видел ее исходники. Варианты:
- обернуть pagdeg.dll в виде внешей компоненты
- перевести исходники на 1С
...
Рейтинг: 0 / 0
Как просприжать ФИО?
    #36474551
SINAR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо!
...
Рейтинг: 0 / 0
Как просприжать ФИО?
    #36474559
SINAR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А в 1С ничего такого нет?
...
Рейтинг: 0 / 0
Как просприжать ФИО?
    #36474578
Шурыгин Иван Сергеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SINARА в 1С ничего такого нет?

Слышал только про то, что 1С числа прописью пишет
...
Рейтинг: 0 / 0
Как просприжать ФИО?
    #36474619
Господин ПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
для 8-ки есть готовая dll
...
Рейтинг: 0 / 0
Как просприжать ФИО?
    #36474890
Фотография bot67
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SINAR,
Для семерки можно такую хрень использовать :)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
// Функция ПадежС(z1,Знач z2= 2 ,Знач z3="*",z4= 0 )
// Функция для склонения одного слова!!!  
// Параметры: 
// 			z1 - само слово
//			z2 - номер падежа
// 			z3 - пол
//			z4 -  1 -склонять как фамилию,  2 -имя,  3 -отчество
Функция ПадежС(z1,Знач z2= 2 ,Знач z3="*",z4= 0 ) Экспорт
  z5=Найти(z1,"-");
  z6=?(z5= 0 ,"","-"+ПадежС(Сред(z1,z5+ 1 ,СтрДлина(z1)-z5+ 1 ),z2,z3,z4));
  z1=НРег(?(z5= 0 ,z1,Лев(z1,z5- 1 )));
  z7=Прав(z1, 3 );z8=Прав(z7, 2 );z9=Прав(z8, 1 );
  z5=СтрДлина(z1);
  za=Найти("ая ия ел ок яц ий па да ца ша ба та га ка",z8);
  zb=Найти("аеёийоуэюяжнгхкчшщ",Лев(z7, 1 ));
  zc=Макс(z2,-z2);
  zd=?(za= 4 , 5 ,Найти("айяь",z9));
  zd=?((zc= 1 )или(z9=".")или((z4= 2 )и(Найти("оиеу"+?(z3="ч","","бвгджзклмнпрстфхцчшщъ"),z9)> 0 ))или((z4= 1 )и(Найти("мия мяэ лия кия жая лея",z7)> 0 )), 9 ,?((zd= 4 )и(z3="ч"), 2 ,?(z4= 1 ,?(Найти("оеиую",z9)+Найти("их ых аа еа ёа иа оа уа ыа эа юа яа",z8)> 0 , 9 ,?(z3<>"ч",?(za= 1 , 7 ,?(z9="а",?(za> 18 , 1 , 6 ), 9 )),?(((Найти("ой ый",z8)> 0 )и(z5> 4 )и(Найти("опой вбой",Прав(z1, 4 ))= 0 ))или((zb> 10 )и(za= 16 )), 8 ,zd))),zd)));
  ze=Найти("лец нёк вей бей дец пец мец нец рец вец аец иец ыец бер",z7);
  zf=?((zd= 8 )и(zc<> 5 ),?((zb> 15 )или(Найти("жий ний",z7)> 0 ),"е","о"),?(z1="лев","ьв",?((Найти("аеёийоуэюя",Сред(z1,z5- 3  , 1 ))= 0 )и((zb> 11 )или(zb= 0 ))и(ze<> 49 ),"",?(za= 7 ,"л",?(za= 10 ,"к",?(za= 13 ,"йц",?(ze= 0 ,"",?(ze< 16 ,"ь"+?(ze= 1 ,"ц",?(ze= 5 ,"к","")),?(ze< 41 ,"ц",?(ze< 53 ,"йц","р"))))))))));
  zf=?((zd= 9 )или((z4= 3 )и(Прав(z1, 1 )="ы")),z1,Лев(z1,z5-?((zd> 6 )или(zf<>""), 2 ,?(zd> 0 , 1 , 0 )))+zf+СокрП(Сред("а у а "+?((z8="ич")или(z8="ыш"),"е",?((z8="ов")or(z8="ин"),"ы","о"))+"ме "+?(Найти("гжкхш",Лев(z8, 1 ))> 0 ,"и","ы")+" е у ойе я ю я ем"+?(za= 16 ,"и","е")+" и е ю ейе и и ь ьюи и и ю ейи ойойу ойойойойуюойойгомуго"+?((zf="е")или(za= 16 )или((zb> 12 )и(zb< 16 )),"и","ы")+"мм", 10 *zd+ 2 *zc- 3 , 2 )));
Возврат ?(""=z1,"",?(z4> 0 ,ВРег(Лев(zf, 1 ))+?((z2< 0 )и(z4> 1 ),".",Сред(zf, 2 )),zf)+z6);
КонецФункции
//Функция Падеж(z1,z2= 2 ,z3= 3 ,z4="123",z5= 1 ) 
// Параметры: 
// z1 - фамилия имя отчество например Железняков Юрий Юрьевич
// z2 - Падеж  (число)( по  умолчанию =  2  - родительный)
// 						 2  - родительный  ( нет кого?    ) Железнякова Юрия Юрьевича     
//  					 3  - дательный    ( кому?        ) Железнякову Юрию Юрьевичу 
//  					 4  - винительный  ( вижу кого?   ) Железнякова Юрия Юрьевича  
//  					 5  - творительный ( кем?         ) Железняковым Юрием Юрьевичем    
//  					 6  - предложный   ( о ком?       ) Железнякове Юрии Юрьевиче 
// Если задать Z2 меньше  0 , то на выходе получим от - 1 =Железняков Ю. Ю. до - 6 =Железнякове Ю. Ю.
// z3 - параметр Пол может не указываться, но при наличии фамилий с 
// инициалами точное определение пола невозможно, поэтому предлагается задавать пол этим
// параметром   1  - мужской  2  - женский  
// ---------------------------------------------------------------------------------------
// Возвращаемое значение:
// Бибик Галушка Цой Николайчик Наталия Петровна Герценберг Кривошей Капица-Метелица
// Если Падеж(Фио , 1  , 3 ),       то на выходе получим Фамилия Имя Отчество и т.д.
// Если Падеж(Фио , 1  , 3 ,"1" ),  то                   Фамилия 
// Если Падеж(Фио , 1  , 3 ,"2" ),  то                   Имя 
// Если Падеж(Фио , 1  , 3 ,"3" ),  то                   Отчество 
// Если Падеж(Фио,  1  , 3 ,"12" ), то                   Фамилия Имя 
// Если Падеж(Фио,  1  , 3 ,"23" ), то                   Имя Отчество 
// Если Падеж(Фио,- 1  , 3 ,"231" ),то                   И. О. Фамилия 
// Если Падеж(Фио,- 1  , 3 ,"23" ), то                   И. О.  
Функция Падеж(z1,z2= 2 ,z3= 3 ,z4="123",z5= 1 ) Экспорт
	z6=Нрег(Прав(СокрП(z1), 4 ));
	z7=Прав(z6, 1 );
  Возврат(?(z5< 4 ,Падеж(СокрЛП(СтрЗаменить(Сред(z1,Найти(z1+" "," ")+ 1 ),".",". ")),z2,z3,СтрЗаменить(z4,z5,ПадежС(?((z5= 3 )и(z7="ы"),z1,Лев(z1,Найти(z1+" "," ")- 1 )),z2,Сред("ча"+z7,?(z3= 3 ,?(z6="оглы", 1 ,?(z6="кызы", 1 , 3 )),z3), 1 ),z5)+" "),z5+ 1 ),z4));
КонецФункции 

...
Рейтинг: 0 / 0
Как просприжать ФИО?
    #36476972
SINAR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо большое!!!
...
Рейтинг: 0 / 0
Как просприжать ФИО?
    #36486012
tvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господин ПЖдля 8-ки есть готовая dll
которая и в 7-ке работает
...
Рейтинг: 0 / 0
Как просприжать ФИО?
    #36486109
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может просклонять, а не "просприжать"?
С уважением, Naf
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Как просприжать ФИО?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]