убрать нули стоящие слева #611489


#0 by Ololosha
Доброй ночи всем. Нужны помощь... не могу понять: СсылкаНаОбъект.ссылка.номер хранит строку типа "0000000001" как мне получить строку типа "1" документ РеализацияТоваровУслуг, УТ 10.2 под 8.1 подскажите пожалуйста
#1 by dimoff
Уууу, тут программировать надо!
#2 by Ololosha
что нибудь полезное плиз
#3 by Ololosha
функция СтрЗаменить не подходит, так как меняет все нули даже в самом числе
#4 by ShoGUN
Число("0000000001") и Формат дальше
#5 by ShoGUN
+ Хотя в данном случае можно и без Формат
#6 by dimoff
А если вместо "1" будет "А" ?
#7 by Ololosha
я же не знаю сколько символов под номер документа отводится... их сегодня 3 завтра 5
#8 by zak555
для каких целей ?
#9 by dimoff
Пока Лев(Номер, 1) = "0" Цикл Номер = Сред(Номер, 2); КонецЦикла Полезно?
#10 by ShoGUN
"Уууу, тут программировать надо!"(с)
#11 by YF
В БП 2.0 Есть функция ПолучитьНомерНаПечать, там это реализовано
#12 by Ololosha
А может быть вместо первого нуля
#13 by Лефмихалыч
everybody stand back!
#14 by hhhh
но ведь в любой типовой есть эта функция, неужели охота в 12 часов ночи заниматься дибелизмом?
#15 by Ololosha
для учебы
#16 by ShoGUN
В типовых есть функция ПолучитьНомерНаПечать, хотя кто мешает отсечь префикс, а потом - нипанятна.
#17 by ShoGUN
Жгешь. Хотя в более сложных случаях это единственный нормальный способ.
#18 by НикДляЗапросов
ПолучитьНомерНаПечать
#19 by zak555
нахерТебеТакаяУчёба 7
#20 by Ololosha
спасибо не догонял что Сред делает)
#21 by Ololosha
не робит(
#22 by Ololosha
у меня УТ 10.2
#23 by Лефмихалыч
для копрокода это нормальное состояние
#24 by Ololosha
я просто не знаю что с делать..
#25 by Лефмихалыч
можешь распечатать и скурить. Или, например, под язык положить. Еще можно скопипастить в конфигуратор
#26 by Ololosha
эта строчка СтарыйНомер = "0000000001020506"; нужна?
#27 by Лефмихалыч
закрой конфигуратор, отойди от компьютера и позови родителей
#28 by Ololosha
к сожалению родители понимают меньше..
#29 by pumbaEO
вдруг у него сервер линуксовый?
#30 by Лефмихалыч
подозреваю, что сервера тупо нет
#31 by Ololosha
нет
#32 by pumbaEO
достаточно просто отойти от компьютера.
#33 by Ololosha
по твоему есть еще способы чему-либо научиться?
#34 by Лефмихалыч
учиться и "сделайте за меня" - это намного более разные вещи
#35 by Ololosha
так печатную форму я сам создал, не понимаю как сделать без нулей номер только
#36 by Ololosha
*
#37 by Ololosha
*блин
#38 by Лефмихалыч
ты внимательно прочитай и подумай, что там и зачем написано. Так же можешь скопировать этот код в обработку, выполнить и посмотреть, что получилось в переменной НовыйНомер.
#39 by pumbaEO
Только "^0+"; не будет работать для номера с префиксом буквенным.
#40 by Ololosha
это понятно, но когда вместо старый номер подставляю не робит, тк префикс есть
#41 by Ololosha
+ что поменять что бы отбор с 3го символа начинался?
#42 by Лефмихалыч
префиксов в задаче нет что значит "не робит"?
#43 by pumbaEO
"^w[а-я]*0+"
#44 by Ololosha
не помогло
#45 by Ololosha
сори, но надо спрефиксами учитывать
#46 by Лефмихалыч
эх, ну мериться так мериться :) не сработает твой регэксп - w с ёжиком сожрет всю строку до последнего символа, потому как он greedy правильно как-то так: "^[а-я|a-z|-]*0+"
#47 by НикДляЗапросов
И всетаки ты посмотри как в типовые печатный формы (счета, накладные и т.д.) выводится номер, там вызывается функция которая возвращает номер на печать
#48 by Ololosha
все робит! отлично спасибо где про такие штуки почитать можно?
#49 by Ololosha
не нащел
#50 by Сияющий Асинхраль
Все просто: сначала Стр3аменить меняешь все нули на пробелы, затем СокрЛ удаляешь пробелы слева (этим отсекаются все левые нули), к оставшемуся применяешь СтрЗаменить в обратную сторону, т.е пробелы на нули
#51 by dimoff
"Все просто: сначала Стр3аменить меняешь все нули на пробелы, затем СокрЛ удаляешь пробелы слева..." а потом думаешь почему вместо 102 у меня 12
#52 by Лефмихалыч
не случится этого
#53 by dimoff
Невнимательно прочитал, да ты прав
#54 by Ololosha
вот доступно!)
#55 by Сияющий Асинхраль
И как СокрЛ убьет пробел внутри? Перечитай что ли
#56 by pumbaEO
куда префиксы денешь?
#57 by Лефмихалыч
топку ими топить будет. А ты у кого спрашиваешь?
#58 by Kreont
Ответ: Номер = 0000000001 * 1
#59 by Ololosha
с префиксом прокатит?
#60 by zak555
может тогда 1* 0000000001 ?
#61 by zak555
1с8 сама догадается
#62 by Kreont
Нет префикс отдельно убрать, он что разный всегда?
#63 by Лефмихалыч
был бы он одинаковый, нахер бы он был нужен?
#64 by Ololosha
с префиксом не робит
#65 by zak555
#66 by rs_trade
^([^d]+)|(0+)?
#67 by Ololosha
не работает
#68 by Живой Ископаемый
на каком изыге?
#69 by Ololosha
где про можно почитать???
#70 by Ololosha
не знаю, привязалось тупое выражение и все(
#71 by dimoff
Не понял, почему 9 не работает?
#72 by НикДляЗапросов
нормальное выражение
#73 by Ololosha
я попробовал набрал сообщить и ничего
#74 by Ololosha
ок:D
#75 by dimoff
Сообщить что?
#76 by Ololosha
номер
#77 by rs_trade
бери скорей пока я добрый
#78 by НикДляЗапросов
И дважды всетаки сделай глобальный поиск по конфе по слову -ПолучитьНомерНаПечать
#79 by Ololosha
спасибо
#80 by НикДляЗапросов
Ну давай еще дисертацию защитим от неча делать
#81 by Ololosha
нету это УТ 10.2
#82 by rs_trade
так не интересно же. а тут глядишь и рег экспы освоит. для расширения кругозора.
#83 by rs_trade
там есть подобная процедура. может немного по другому называтся.
#84 by Ololosha
хотя через ctrl+пробел дописывает
#85 by zak555
Norton commander кнопкой F3 не открывает
#86 by rs_trade
это проблемы Norton commandera. с файлом все нормально.
#87 by Ololosha
книжка то клевая еще раз спасибо
#88 by zak555
> это проблемы Norton commandera так у меня Norton commander + PDF - это Portable Document Format [ ]
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С