silverbook fd07bd2918 фвв
2025-05-14 09:09:27 +05:00

2.0 KiB
Raw Blame History

title, slug
title slug
Обращение к пользователю примеры-сниппеты-бсп-и-типовые-пользователи/обращение-к-пользователю
// Функция - Обращение к пользователю
//
// Параметры:
//  Пользователь - СправочникСсылка.Пользователи	 - 
// 
// Возвращаемое значение:
//  Строка - Возвращает обращение вида "Уважаемый <Фамилия Имя Отчество>" с учетом пола. 
//			Если не удается определить пол, возвращается "Уважаемый(ая)...", 
//			если не удается распарсить ФИО, вместо <Фамилия Имя Отчество> выводится "пользователь"
//
Функция ОбращениеКПользователю(Пользователь)
	
	Обращение = "Уважаемый(ая)";
	
	ФИО = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Пользователь, "Наименование", Истина);
	
	Если Не ЗначениеЗаполнено(ФИО) Тогда
		ФИО = "пользователь";
	КонецЕсли;
	
	Если ЗначениеЗаполнено(ФИО) Тогда
		
		ЧастиИмени = СтрРазделить(ФИО, " ", Ложь);
		
		Если ЧастиИмени.Количество() = 3 Тогда
			
			Отчество = СокрЛП(ЧастиИмени.Получить(2));
			
			Если СтрЗаканчиваетсяНа(НРег(Отчество), "вич") Тогда
				Обращение = "Уважаемый";
			ИначеЕсли СтрЗаканчиваетсяНа(НРег(Отчество), "вна") Тогда
				Обращение = "Уважаемая";
			КонецЕсли;
			
		КонецЕсли;
		
	КонецЕсли;
	
	Возврат СтрШаблон("%1 %2!", Обращение, ФИО);
	
КонецФункции