|   |   | 
| 
 | Как запросом отобрать серийные номера заканчивающиеся на ... | ☑ | ||
|---|---|---|---|---|
| 0
    
        mvgfirst 06.02.13✎ 12:29 | 
        Конфигурация УТ 10.3.
  Стоит задача написать простенький запрос который будет находить документы ПТиУ в которых есть серийные номера заканчивающиеся на n-ное количество цифр Несмотря на кажущуюся примитивность застрял. Использую конструкцию СерийныйНомер.Код Подобно "%123" и не получают результат, хотя визуально наблюдаю серийники заканчиваюищеся на такую компибнацию причина в том что в УТ 10.3 в справочнике СерийныеНомера сам номер указан в поле код, которое является строкой фиксированной длинны. Получается что пробелы которыми 1С дополняет серийный номер не дают выполнится такому запросу правильно. Использовать ПОДОБНО "%123%" не могу т.к. тогда выдает и другие серийники у которых эта комбинация встречается не в конце номера. Как выйти из положения, подскажите | |||
| 1
    
        Wobland 06.02.13✎ 12:30 | 
        подобно %[0-9][0-9][0-9]
  не читал | |||
| 2
    
        mikecool 06.02.13✎ 12:31 | ||||
| 3
    
        mvgfirst 06.02.13✎ 14:16 | 
        (2)  прочитал тему, не нашел там ответа на свой вопрос. 
  Возможно я не умею читать, но там как-то все слишком запутанно. Можно в кратце, суть идеи? (1) как эта конуструкция отсечет "хвостовые" пробелы? | |||
| 4
    
        DrShad 06.02.13✎ 14:18 | 
        (3) а как то что в (0) их отсечет?     | |||
| 5
    
        DrShad 06.02.13✎ 14:19 | 
        для того чтоб выйти из положения видимо нужно отсечь пробелы     | |||
| 6
    
        НЕА123 06.02.13✎ 14:19 | 
        используя (1) тип так
  СерийныйНомер.Код Подобно "%123" И НЕ СерийныйНомер.Код Подобно "%123[0-9]" ? | |||
| 7
    
        DrShad 06.02.13✎ 14:19 | 
        или в регулярку прописать что до конца строки пробелы идут     | |||
| 8
    
        НЕА123 06.02.13✎ 14:20 | 
        СерийныйНомер.Код Подобно "%123%" И НЕ СерийныйНомер.Код Подобно "%123[0-9]"     | |||
| 9
    
        DrShad 06.02.13✎ 14:21 | 
        (8) [0-9] пробелы сюда не входят :))))     | |||
| 10
    
        НЕА123 06.02.13✎ 14:21 | 
        (6)(8)
  неа. похоже не то. | |||
| 11
    
        НЕА123 06.02.13✎ 14:22 | 
        (10)+
  или же все-таки то? | |||
| 12
    
        НЕА123 06.02.13✎ 14:23 | 
        вот так должно прокатить
  СерийныйНомер.Код Подобно "%123%" И НЕ СерийныйНомер.Код Подобно "%123[0-9]%" | |||
| 13
    
        НЕА123 06.02.13✎ 14:25 | 
        (9)
  а нам ведь пох на пробелы. главное, чтобы цифири после 123 не было. | |||
| 14
    
        Wobland 06.02.13✎ 14:25 | 
        (11) "12345 " - истина и не истина = ложь
  а "заканчивается" на три цифры | |||
| 15
    
        ZoRN 06.02.13✎ 14:27 | 
        trim(), сокрЛП()     | |||
| 16
    
        Wobland 06.02.13✎ 14:28 | 
        (15) это неспортивно     | |||
| 17
    
        mikecool 06.02.13✎ 14:28 | 
        Выразить() убирает концевые пробелы, емнип     | |||
| 18
    
        Шапокляк 06.02.13✎ 14:29 | 
        а если так
  СерийныйНомер.Код Подобно "%123" Или СерийныйНомер.Код Подобно "%123 %" | |||
| 19
    
        ZoRN 06.02.13✎ 14:31 | 
        ВЫРАЗИТЬ()     | |||
| 20
    
        Wobland 06.02.13✎ 14:33 | 
        выбрать "#"+выразить("|123|              " как строка(200))+"#"
  #|123| # | |||
| 21
    
        Wobland 06.02.13✎ 14:51 | 
        вот три цифры в конце. с ограничением на длину строки
  выбрать выбор когда &стр подобно "%[0-9][0-9][0-9]" или &стр подобно "%"+выразить(" " как строка(200)) тогда истина иначе ложь конец | |||
| 22
    
        НЕА123 06.02.13✎ 14:55 | 
        ВЫБРАТЬ
  ВЫБОР КОГДА СерийныйНомер.Код +" " ПОДОБНО "%123[ ]%" ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ КАК Поле1 это для заканчивающихся на "123" если три цифры, то как Wobland ВЫБРАТЬ ВЫБОР КОГДА СерийныйНомер.Код +" " ПОДОБНО "%[0-9][0-9][0-9][ ]%" ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ КАК Поле1 ЗЫ что надо ТС, то пусть и выбирает | |||
| 23
    
        Wobland 06.02.13✎ 14:56 | 
        (21) ан нет
  выбрать выбор когда &стр подобно "%[0-9][0-9][0-9]" или (&стр подобно "%"+выразить(" " как строка(200)) и &стр подобно "%[0-9][0-9][0-9]") тогда истина иначе ложь конец | |||
| 24
    
        Wobland 06.02.13✎ 14:56 | 
        (22) "123 " не прокатит
  пля! что ТСу надо? | |||
| 25
    
        НЕА123 06.02.13✎ 14:58 | 
        ВЫРАЗИТЬ()  пробелы не убирает.     | |||
| 26
    
        Wobland 06.02.13✎ 14:58 | 
        "123 морковка12" не прокатит     | |||
| 27
    
        НЕА123 06.02.13✎ 15:00 | 
        (24)
  я думаю, все зависит от того, что он сейчас пьет. закуска дело такое... | |||
| 28
    
        НЕА123 06.02.13✎ 15:02 | 
        (26) да. страховки на пробелы внутри кода нет.     | |||
| 29
    
        Reset 06.02.13✎ 15:11 | 
  | |||
| 30
    
        mvgfirst 06.02.13✎ 16:00 | 
        Пробелов внутри кода нет     | |||
| 31
    
        Reset 06.02.13✎ 16:04 | 
        (30) Это не усложняет и не упрощает задачу     | |||
| 32
    
        Волесвет 06.02.13✎ 16:13 | 
        !серийные номера заканчивающиеся на n-ное количество цифр 
  в условия загнать, что больше 99 но меньше 1000 | |||
| 33
    
        666 Devil 06.02.13✎ 16:24 | 
        (0) ПОДСТРОКА(<Строка>, <НачальнаяПозиция>, <Длина>)
  отлично работает ) | |||
| 34
    
        hhhh 06.02.13✎ 17:14 | 
        (33) отсекает пробелы?     | |||
| 35
    
        Шапокляк 06.02.13✎ 17:16 | 
        (30) Тогда почему (18) не подходит?     | |||
| 36
    
        mvgfirst 06.02.13✎ 17:21 | 
        (18) Именно подходит! Сейчас как раз проверяю на рабочих данных!     | |||
| 37
    
        Reset 06.02.13✎ 17:22 | 
        (35) Логично. Перец из (31) неправ. Это существнно упрощает, позволяя использовать запись вида (18). Снимаю шляпу.     | |||
| 38
    
        mvgfirst 06.02.13✎ 17:22 | 
        (33)  длинна серийных номеров заранее неизвестноа и более того отличается от номера к номеру     | |||
| 39
    
        mvgfirst 06.02.13✎ 17:51 | 
        Методв (18) идеально подошел!
  Всем спасибо за помощь! Прям удивительно - получилось и оперативно и даже без троллинга!!! | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |