Добавление нулей слева или справа от номера документа
Работа со строками в БСП 3.0
Общий модуль СтроковыеФункцииКлиентСервер
В конфигурациях, созданных на базе БСП можно воспользоваться многими полезными функциями и процедурами для работы со строками в общем модуле СтроковыеФункцииКлиентСервер . Для добавления нулей слева или справа о номера исползуется следующий вызов:
Строка = СтроковыеФункцииКлиентСервер.ДополнитьСтроку(Строка, ДлинаСтроки, "0", "Слева");
Процедура дополняет строку символами слева или справа до заданной длины и возвращает ее. При этом удаляются незначащие символы слева и справа (подробнее про незначащие символы
см. синтакс-помощник к методу платформы СокрЛП).
По умолчанию функция дополняет строку символами “0” (ноль) слева.
Параметры:
Значение – Строка – исходная строка, которую необходимо дополнить символами;
ДлинаСтроки – Число – требуемая результирующая длина строки;
Символ – Строка – символ, которым необходимо дополнить строку;
Режим – Строка – “Слева” или “Справа” – вариант добавления символов к исходной строке.
Возвращаемое значение:
Строка – строка, дополненная символами.
Примеры вызовов:
СтроковыеФункцииКлиентСервер.ДополнитьСтроку("1234", 10, "0", "Слева");
// Возвращает: "0000001234".
Результат = СтроковыеФункцииКлиентСервер.ДополнитьСтроку(" 1234 ", 10, "#", "Справа");
// Строка = " 1234 "; ДлинаСтроки = 10; Символ = "#"; Режим = "Справа"
// Возвращает: "1234######". Программный код процедуры:
Функция ДополнитьСтроку(Знач Значение, Знач ДлинаСтроки, Знач Символ = "0", Знач Режим = "Слева") Экспорт// Длина символа не должна превышать единицы.Символ = Лев(Символ, 1);// Удаляем крайние пробелы слева и справа строки.Значение = СокрЛП(Значение);КоличествоСимволовНадоДобавить = ДлинаСтроки - СтрДлина(Значение);Если КоличествоСимволовНадоДобавить > 0 ТогдаСтрокаДляДобавления = СформироватьСтрокуСимволов(Символ, КоличествоСимволовНадоДобавить);Если ВРег(Режим) = "СЛЕВА" ТогдаЗначение = СтрокаДляДобавления + Значение;ИначеЕсли ВРег(Режим) = "СПРАВА" ТогдаЗначение = Значение + СтрокаДляДобавления;КонецЕсли; КонецЕсли; Возврат Значение;КонецФункции Функция СформироватьСтрокуСимволов(Знач Символ, Знач ДлинаСтроки) ЭкспортРезультат = "";Для Счетчик = 1 По ДлинаСтроки ЦиклРезультат = Результат + Символ;КонецЦикла;Возврат Результат;КонецФункции
См. также