1С: ФИО Подписанта, Простой способ сократить ФИО в подписи.
Как совсем не опытный програмист 1С, я очень долго искал способ как просто сократить Фамилия Имя Отчество до Фамилия И. О. или И. О. Фамилия для одной печатной формы, и на мое удевление в интернете ничего готового не встретил, пришлось собирать целую "солянку" коментариев и советов в что то работающее, и выполняющее такую простую функцию. Поэтому оставляю ее здесь, работающую и со всеми возможными коментариями.
Из исходных данных: ФамилияИО - это строка получаемая из запроса и разделенная пробелами.
МассивСлов = Новый Массив;
ФИО = СтрЗаменить(ФамилияИО, " ", Символы.ПС); // Разделяем имеющую строку на отдельные слова
// Создаем цикл для обхода массива полученных слов
Для к = 1 По СтрЧислоСтрок(ФИО) Цикл
СтрФИО = СтрПолучитьСтроку(ФИО, к);
Если НЕ ПустаяСтрока(СтрФИО) Тогда
МассивСлов.Добавить(СтрФИО);
КонецЕсли;
КонецЦикла;
ФИОПодписуемого = МассивСлов[0] + " " + Лев(МассивСлов[1],1) + "." + Лев(МассивСлов[2],1) + "."; //Обрезаем лишнии символы, добавляем знаки прпинания, устанавливаем в интересующей нас последовательности
Комментарии
Отправить комментарий