Добавление нулей слева или справа от номера документа

Печать (Ctrl+P)

Работа со строками в БСП 3.0

Общий модуль СтроковыеФункцииКлиентСервер

В конфигурациях, созданных на базе БСП можно воспользоваться многими полезными функциями и процедурами для работы со строками в общем модуле СтроковыеФункцииКлиентСервер . Для добавления нулей слева или справа о номера исползуется следующий вызов:

Строка = СтроковыеФункцииКлиентСервер.ДополнитьСтроку(Строка, ДлинаСтроки, "0", "Слева");

Процедура дополняет строку символами слева или справа до заданной длины и возвращает ее. При этом удаляются незначащие символы слева и справа (подробнее про незначащие символы
см. синтакс-помощник к методу платформы СокрЛП).
По умолчанию функция дополняет строку символами “0” (ноль) слева.
Параметры:
Значение – Строка – исходная строка, которую необходимо дополнить символами;
ДлинаСтроки – Число – требуемая результирующая длина строки;
Символ – Строка – символ, которым необходимо дополнить строку;
Режим – Строка – “Слева” или “Справа” – вариант добавления символов к исходной строке.
Возвращаемое значение:
Строка – строка, дополненная символами.

Примеры вызовов:

   СтроковыеФункцииКлиентСервер.ДополнитьСтроку("1234", 10, "0", "Слева"); 
   //  Возвращает: "0000001234".
  Результат = СтроковыеФункцииКлиентСервер.ДополнитьСтроку(" 1234  ", 10, "#", "Справа");
 //  Строка = " 1234  "; ДлинаСтроки = 10; Символ = "#"; Режим = "Справа"
 //  Возвращает: "1234######".   

Программный код процедуры:

Функция ДополнитьСтроку(Знач Значение, Знач ДлинаСтроки, Знач Символ = "0", Знач Режим = "Слева") Экспорт
 // Длина символа не должна превышать единицы.
 Символ = Лев(Символ, 1);
 // Удаляем крайние пробелы слева и справа строки.
 Значение = СокрЛП(Значение);
 КоличествоСимволовНадоДобавить = ДлинаСтроки - СтрДлина(Значение);
 Если КоличествоСимволовНадоДобавить > 0 Тогда
 СтрокаДляДобавления = СформироватьСтрокуСимволов(Символ, КоличествоСимволовНадоДобавить); 
    Если ВРег(Режим) = "СЛЕВА" Тогда 
        Значение = СтрокаДляДобавления + Значение;
     ИначеЕсли ВРег(Режим) = "СПРАВА" Тогда 
        Значение = Значение + СтрокаДляДобавления; 
    КонецЕсли; КонецЕсли; Возврат Значение;
 КонецФункции

Функция СформироватьСтрокуСимволов(Знач Символ, Знач ДлинаСтроки) Экспорт
 Результат = "";
 Для Счетчик = 1 По ДлинаСтроки Цикл 
    Результат = Результат + Символ; 
КонецЦикла; 
Возврат Результат;
 КонецФункции

См. также

Previous Article
Next Article

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.