Номер документа

1. user1458640 04.12.21 12:32 Сейчас в теме
Здравствуйте, подскажите, не выводит 3 символа номера документа, например № 108 выводит 1, а № 98 выводит полностью, что я делаю не так
НомерДокументаОтгрузкиСтрока = СокрЛП(строка(ДокументОснование.Номер));
			
		Пока СтрДлина(НомерДокументаОтгрузкиСтрока)>0 цикл
			
			НомерДокументаОтгрузкиСтрока = Сред(НомерДокументаОтгрузкиСтрока,1,СтрДлина(НомерДокументаОтгрузкиСтрока)-1); 
			
			Если Лев(НомерДокументаОтгрузкиСтрока,1) <> "0" тогда
				Прервать ;		
			КонецЕсли;
			
		КонецЦикла;
		
	Если КоличествоПП = 1 тогда
			КоличествоСтрокНаВывод = ""
		Иначе
			КоличествоСтрокНаВывод = "-" + КоличествоПП;
		КонецЕсли;
		Если ЗначениеЗаполнено(НомерДокументаОтгрузкиСтрока) тогда
		ПоДокументуОтгрузки = "№ п/п 1" +КоличествоСтрокНаВывод +" № "+НомерДокументаОтгрузкиСтрока + " от " + Формат(ДокументОснование.Дата,"ДФ=dd.MM.yyyy");
		//"№ п/п 1-2 № 15 от 12.05.2017"
		
	Иначе
		 ПоДокументуОтгрузки = "-- от --";
	КонецЕсли;
Показать
+
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. spacecraft 04.12.21 13:25 Сейчас в теме
(1)
Пока СтрДлина(НомерДокументаОтгрузкиСтрока)>0 цикл

НомерДокументаОтгрузкиСтрока = Сред(НомерДокументаОтгрузкиСтрока,1,СтрДлина(НомерДокументаОтгрузкиСтрока)-1);

Если Лев(НомерДокументаОтгрузкиСтрока,1) <> "0" тогда
Прервать ;
КонецЕсли;

КонецЦикла;


Судя по коду зачем-то отсекаете последний символ в НомерДокументаОтгрузкиСтрока.
Соответственно из 108 получится 10, а из 98 получится 9. А из 098 получится пустая строка.
+
10. dehro 5 04.12.21 23:15 Сейчас в теме
(2)Судя по коду автор "отсекает" всё, что после символа "0"
Из "10345345739875" у него получится "1"
+
3. user1458640 04.12.21 13:45 Сейчас в теме
а как можно исправить, я уже запутался
+
4. spacecraft 04.12.21 13:47 Сейчас в теме
5. user1458640 04.12.21 13:50 Сейчас в теме
чтобы 3 символа номера документа выводилось, сейчас, если номер документа из 3, выводит только первое число номера, двухзначный номер выводит полностью
+
6. spacecraft 04.12.21 13:53 Сейчас в теме
(5) что нужно вообще делать с номером? Отсечь лидирующие нули или что-то еще?
+
7. user1458640 04.12.21 16:09 Сейчас в теме
нужны чтобы, когда номер переваливал за сто, писало 3 цифры номерка в печатной форме документа, сейчас у меня только работает номер до 99
+
8. grumpi 04.12.21 17:16 Сейчас в теме
Не совсем понятно, но вдруг поможет

НомерДокументаОтгрузкиСтрока = Число(Прав(НомерДокументаОтгрузкиСтрока,3))

Если номер меньше 100 то лидирующих нулей не будет
а если >= 100 то будет отображаться 3 знака. Или я чего-то не понял?
+
11. grumpi 06.12.21 21:27 Сейчас в теме
А вот так НомерДокументаОтгрузкиСтрока = Число(Прав(СокрЛП(НомерДокументаОтгрузкиСтрока,3)))?
СокрЛП() убирает все пробелы слева и справа. Остается только значимая часть номера.
А уже в значимой части берутся последние три символа и преобразуются в число.
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот