1С: ФИО Подписанта, Простой способ сократить ФИО в подписи.

Как совсем не опытный програмист 1С, я очень долго искал способ как просто сократить Фамилия Имя Отчество до Фамилия И. О. или И. О. Фамилия для одной печатной формы, и на мое удевление в интернете ничего готового не встретил, пришлось собирать целую "солянку" коментариев и советов в что то работающее, и выполняющее такую простую функцию. Поэтому оставляю ее здесь, работающую и со всеми  возможными коментариями.

 Из исходных данных: ФамилияИО - это строка получаемая из запроса и разделенная пробелами.

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

    ФИОПодписуемого = МассивСлов[0] + " " +  Лев(МассивСлов[1],1) + "." + Лев(МассивСлов[2],1) + ".";
//Обрезаем лишнии символы, добавляем знаки прпинания, устанавливаем в интересующей нас последовательности

Комментарии

Популярные сообщения из этого блога

FreePBX: Настройка Транка, входящих исходящих вызовов. Работа над ошибками.

FreePBX: Создание Extensions, Ring Group, Queues

1C:Администрирование 1С Сервера в Linux Ubuntu Serv + PostgreSQL.