Имя: Пароль:
1C
1C 7.7
v7: Необходимо просклонять должность
,
0 Stusha
 
02.08.11
14:53
Доброго времени суток. Необходима помощь в таком вопросе. Внешняя печатная форма Трудового договора, просклонять должность необходимо только в одном месте,  остальных случаях надо оставить без изменений (в именительном падеже). В контексте это выглядит так:
"8.1.  продавец-консультант принимается для работы с товарно-материальными ценностями и является материально ответственным лицом. С работником заключается договор о полной материальной ответственности.
8.2.  продавец-консультант принимает на себя полную материальную ответственность за недостачу вверенного ему Работодателем имущества; за ущерб, причиненный в результате неисполнения (ненадлежащего исполнения) своих должностных обязанностей, предусмотренных трудовым договором, должностной инструкцией, а также за ущерб, возникший у Работодателя в результате возмещения им ущерба иным лицам.
8.3.  продавец-консультант обязан возместить Работодателю прямой действительный ущерб.
8.4. определение размера ущерба, причиненного  продавецем-консультантом Работодателю, а также ущерба, возникшего у Работодателя в результате возмещения им ущерба иным лицам, и порядок их возмещения производятся в соответствии с действующим законодательством.
Вот "продавецем" надо как то поменять на "продавцом".
Находила внешнии компоненты, но на сколько поняла, при помощи них должность будет склонятся по всему документу, а мне нужно только в одном месте. Подскажите как быть.
1 BaHgaJI
 
02.08.11
15:10
Кури УниверсальныеМеханизмы.Просклонять(); Если это конечно ЗуП как я понял.
2 Stusha
 
02.08.11
16:11
Это Камин 2.0. Забыла раздел семерочный поставить. [Гл_СклонятьДолжность(п_Контекст.Должность,"Т")] в шаблое печатной формы, не прокатило вышло как я писала выше - продавецем.
3 KishMish
 
02.08.11
16:19
СтрЗаменить(Гл_СклонятьДолжность(п_Контекст.Должность,"Т"),"продавецем","продавцом");
4 TeddySlaf
 
02.08.11
16:22
(0) напрячь юристов, чтобы переформулировали в именительный падеж.,
или  пусть впишут: Продавец-консультант (далее Работник)...
5 TeddySlaf
 
02.08.11
16:24
//*****************************************************************************
Функция ПадежС(z1,Знач z2=2,Знач z3="*",z4=0) Экспорт
// (c) Jurer Production Begin ( Start )
// В случае, если программа окажется для Вас полезной, и Вы представляете только свои интересы, а не интересы фирмы,
// автор будет весьма признателен, если Вы перечислите ему некую сумму на Ваше усмотрение (автор будет благодарен любым инициативам).  
// Для этого через сбербанк перечислите N-ую сумму на следующий счет:
// филиал 8606/018 Рязанское ОСБ № 8606 СБ РФ г.Рязань РЕКВИЗИТЫ: ИНН 7707083893КОР.СЧЕТ 30101810500000000614 БИК 046126614
// ДЛЯ ПЕРЕЧИСЛЕНИЙ ВО ВКЛАД ФИЗИЧ.ЛИЦ – 47422810453009902100 НОМЕР СБЕРКНИЖКИ:  42301810953002115714/01  Железняков Юрий Юрьевич
// __________________________________________________________________
//  
//                           SuperJur.Narod.Ru
//
// __________________________________________________________________  
// Удаление этих строк незнаконно!
// Гарантия 91 года и 1 месяц!!!
// Послегарантийное обслуживание - бесплатно!!!
// Круглосуточная поддержка - все 48 часов в бою!
// Ссылка на источник обязательна!
// Эти программы защищены законом об авторских правах. Запрещается перепродажа данной программы.
// ПРОВЕРЕНО! ВИРУСОВ НЕТ!!! АНТИВИРУСОВ ТОЖЕ!!!
// Смотри Милячуша в творительном !!
// скупой слепой тупой - пропой!!
// !№№!
// !54! Очередное сокращение кода
// !53! Очередное сокращение кода
// !51! Прегромадное спасибо Олегу Дубровскому за оказанную моральную, информационную и материальную поддержку сего проекта.
//      Сергею Толкачёву за напоминание о том, что в русском языке всегда есть место исключениям!
// !50! П:Ответственный за электрохозяйство  Ф:Ацута Груша  
// !48! исправлена ошибка при склонении фамилий (спасибо, Mario).
// !47! исправлена ошибка при склонении профессий ( спасибо, Павел Ковалев).
// !46! оптимизация + четвертый параметр задает, что вернуть - фамилия, имя или отчество или всё сразу в нужном падеже
// !42! Осел + Соловей + Воробей + Немец + Кормилец + Силиец
// !41! отчества оканчивающиеся на "ы" считаются женскими ?
// Функция для склонения одного слова!!!
// z1 - само слово
// z2 - номер падежа
// z3 - пол
// z4 - 1-склонять как фамилию, 2-имя, 3-отчество
   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)<>"опой"))или((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<>45),"",?(za=7,"л",?(za=10,"к",?(za=13,"йц",?(ze=0,"",?(ze<12,"ь"+?(ze=1,"ц",""),?(ze<37,"ц",?(ze<49,"йц","р"))))))))));
   zf=?((zd=9)или((z4=3)и(z3="ы")),z1,Лев(z1,z5-?((zd>6)или(zf<>""),2,?(zd>0,1,0)))+zf+СокрП(Сред("а у а "+Сред("оыые",Найти("внч",z9)+1,1)+"ме "+?(Найти("гжкхш",Лев(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);
КонецФункции
6 Stusha
 
02.08.11
16:26
Огромное спасибо,   KishMish, заработало. Я только в начале пути программирования и поэтому многие вещи меня ставят в тупик!!!! Еще раз спасибо!!!
7 TeddySlaf
 
02.08.11
16:26
падежС("Продавец",1) = продавец
падежС("Продавец",2) = продавца
падежС("Продавец",3) = продавцу
падежС("Продавец",4) = продавца
падежС("Продавец",5) = продавцом
падежС("Продавец",6) = продавце
падежС("Продавец",7) = продавцы
падежС("Продавец-консультант",1) = продавец-консультант
падежС("Продавец-консультант",2) = продавца-консультанта
падежС("Продавец-консультант",3) = продавцу-консультанту
падежС("Продавец-консультант",4) = продавца-консультанта
падежС("Продавец-консультант",5) = продавцом-консультантом
падежС("Продавец-консультант",6) = продавце-консультанте
падежС("Продавец-консультант",7) = продавцы-консультанты
8 Stusha
 
02.08.11
16:30
Всем спасибо, сложность заключалась в том, что эта должность по документу встречается несколько раз и везде кроме одного места в именительном падеже.
9 Ёпрст
 
02.08.11
16:31
(5) эту функцию улучшили. И.. в ней есть ошибки.
10 TeddySlaf
 
02.08.11
16:40
(9) дай. Пожалуйста. :)
11 TeddySlaf
 
02.08.11
16:44
(0) если уж "Работодатель" с большой буквы, то и продавец должен соответствовать. Или пусть все со строчной начинаются.
12 Ёпрст
 
02.08.11
16:45
(10) http://infostart.ru/public/16470/
+ смотреть обсуждение, в котором, даже автор того что в (5) засветился, если помню точно..
13 Ёпрст
 
02.08.11
16:48
+12 а мот и на мисте было обсуждение, не помню.
14 Ёпрст
 
02.08.11
16:51
15 andrewks
 
02.08.11
16:55
(5) лучше давать ссылку на первоисточник

http://www.superjur.narod.ru/padeg.htm
Программист всегда исправляет последнюю ошибку.