УдалитьЛидирующиеНулиИзНомераОбъекта (БСП)

Автор: 1С
ОбщийМодуль.ПрефиксацияОбъектовКлиентСервер
БСП

Удалить лидирующие нули из номера объекта. Удаляет лидирующие нули из номера объекта.

// Удаляет лидирующие нули из номера объекта.
// Переменная НомерОбъекта должна соответствовать шаблону: ООГГ-ХХХ...ХХ или ГГ-ХХХ...ХХ, где.
// ОО - префикс организации;
// ГГ - префикс информационной базы;
// "-" - разделитель;
// ХХХ...ХХ - номер/код объекта.
//
// Параметры:
//    НомерОбъекта - Строка - номер или код объекта из которого требуется лидирующие нули.
// 
// Возвращаемое значение:
//     Строка - Номер объекта без лидирующих нулей.
//
Функция УдалитьЛидирующиеНулиИзНомераОбъекта(Знач НомерОбъекта) Экспорт
	
	ПользовательскийПрефикс = ПользовательскийПрефикс(НомерОбъекта);
	
	Если НомерСодержитСтандартныйПрефикс(НомерОбъекта) Тогда
		
		Если НомерСодержитПятизначныйПрефикс(НомерОбъекта) Тогда
			Префикс = Лев(НомерОбъекта, 5);
			Номер = Сред(НомерОбъекта, 6 + СтрДлина(ПользовательскийПрефикс));
		Иначе
			Префикс = Лев(НомерОбъекта, 3);
			Номер = Сред(НомерОбъекта, 4 + СтрДлина(ПользовательскийПрефикс));
		КонецЕсли;
		
	Иначе
		
		Префикс = "";
		Номер = Сред(НомерОбъекта, 1 + СтрДлина(ПользовательскийПрефикс));
		
	КонецЕсли;
	
	// Удаляем лидирующие нули слева в номере.
	Номер = СтроковыеФункцииКлиентСервер.УдалитьПовторяющиесяСимволы(Номер, "0");
	
	Возврат Префикс + ПользовательскийПрефикс + Номер;
КонецФункции

///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////

Рекомендации

Похожие публикации

Как удалить префикс и лидирующие нули?

Удалить префикс объекта и лидирующие нули (ЗУП 3)

Убрать префикс и лидирующие нули

Удалить префикс, лидирующие нули

Номер без префикса и лидирующих нулей

НомерНаПечать (БСП)

Получает номер документа для вывода на печать; из номера удаляются префиксы и лидирующие нули

Сократить лидирующие нули

ПользовательскоеПредставлениеНомераВерсии (БСП)

Синтакс-помощник БСП