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

Слышал только про то, что 1С числа прописью пишет
...
Рейтинг: 0 / 0
17.02.2010, 12:29
    #36474619
Господин ПЖ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как просприжать ФИО?
для 8-ки есть готовая dll
...
Рейтинг: 0 / 0
17.02.2010, 13:30
    #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
18.02.2010, 11:20
    #36476972
SINAR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как просприжать ФИО?
Спасибо большое!!!
...
Рейтинг: 0 / 0
24.02.2010, 15:24
    #36486012
tvm
tvm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как просприжать ФИО?
Господин ПЖдля 8-ки есть готовая dll
которая и в 7-ке работает
...
Рейтинг: 0 / 0
24.02.2010, 15:57
    #36486109
Naf
Naf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как просприжать ФИО?
может просклонять, а не "просприжать"?
С уважением, Naf
...
Рейтинг: 0 / 0
Форумы / [игнор отключен] [закрыт для гостей] / Как просприжать ФИО? / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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