1С: Приведение номера документа к числу

Задача: преобразовать номер документа вида ТП1-000234 в число 234. Т.е. убрать префикс и лидирующие нули.

Решение:

&НаСервере
 Функция УбратьЛидирующиеНули(НомерДокумента)    
    Попытка
        НомерДокумента = Формат(Число(НомерДокумента), "ЧГ=");
    Исключение
        НомерДокумента = СтрЗаменить(СокрЛ(СтрЗаменить(СокрП(НомерДокумента), "0", " ")), " ", "0");
        Префикс = "";
        Пока КодСимвола(НомерДокумента) < 48 Или КодСимвола(НомерДокумента) > 57 Цикл
            Префикс = Префикс + Лев(НомерДокумента, 1);
            НомерДокумента = Сред(НомерДокумента, 2);
        КонецЦикла;
        Если Не ПустаяСтрока(Префикс) Тогда
            НомерДокумента = Префикс + УбратьЛидирующиеНули(НомерДокумента);
        КонецЕсли;
    КонецПопытки;
    Возврат НомерДокумента;
    
КонецФункции   
&НаСервере
функция ИзвлечьНомерДоговора(номер)
	 мм=СтрРазделить(номер,"-");	 
	 возврат УбратьЛидирующиеНули(мм[1]); 
конецфункции

Комментарии:

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

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

Лимит времени истёк. Пожалуйста, перезагрузите CAPTCHA.

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