#0
by live in sky dreams
Подскажите, как решить задачу? Есть доки у которых есть номера (доп. поле тип: строка). Часть доков с номерами, содержащими префикс (например АА000000001) Есть часть доков с номерами без префикса (00000000001) Причем, префиксы разные. АА..АС..АГ и т.д. Мне нужно выбрать только те, которые не содержат префиксы.. То есть только те, у которых поле доп. номер можно привести к числу. Возможно ли это сделать в запросе?
#7
by polosov
А что пой ней скучать. В 8ке тоже можешь все запросом выбрать и потом в цикле как хочешь обрабатывать.
#8
by live in sky dreams
Префиксы не все начинаются с "А".. там их множество великое.. ага, сперва тоже про выразить вспомнил... можно подробнее?
#9
by polosov
Оператор ПОДОБНО позволяет сравнить значение выражения, указанного слева от него, со строкой шаблона, указанной справа. Значение выражения должно иметь тип строка. Если значение выражения удовлетворяет шаблону – результатом оператора будет ИСТИНА, иначе – ЛОЖЬ. Следующие символы в строке шаблона являются служебными и имеют смысл, отличный от символа строки: % (процент): последовательность, содержащая любое количество произвольных символов _ (подчеркивание): один произвольный символ […] (в квадратных скобках один или несколько символов): любой одиночный символ из перечисленных внутри квадратных скобок В перечислении могут встречаться диапазоны, например a-z, означающие произвольный символ, входящий в диапазон, включая концы диапазона. [^…] (в квадратных скобках значок отрицания, за которым следует один или несколько символов): любой одиночный символ, кроме тех, которые перечислены следом за значком отрицания Любой другой символ означает сам себя и не несет никакой дополнительной нагрузки. Если в качестве самого себя необходимо записать один из перечисленных символов, то ему должен предшествовать <Спецсимвол>. Сам <Спецсимвол> (любой подходящий символ) определяется в этом же операторе после ключевого слова СПЕЦСИМВОЛ. Например, шаблон “%АБВ[0-9][абвг]_абв%” СПЕЦСИМВОЛ “” означает подстроку, состоящую из последовательности символов: буквы А; буквы Б; буквы В; одной цифры; одной из букв а, б, в или г; символа подчеркивания; буквы а; буквы б; буквы в. Причем перед этой последовательностью может располагаться произвольный набор символов.
#11
by YFedor
В семерке просто Число(Что-то), если преобразовалось - на выходе конкретное число, если не преобразовалось - на выходе снова число - 0. А в восьмерке все через Ж, причем непонятно зачем
#12
by live in sky dreams
это отработает если в символах только латиница и символы могут присутствовать в номере обязательно в начала. А есть и "0H", где Н - это "Аш" английская.. Номер может быть как 0H18, так и 0H0T000018
#13
by live in sky dreams
Я могу написать Если Номер подобно "[0-9]%", но это отберет только те номера, где первый символ число. Остальных буквенных или спецсиволов в других частях номера это не исключит
#14
by Fish
"если преобразовалось - на выходе конкретное число, если не преобразовалось - на выходе снова число - 0." - А если это число - ноль? Как отличишь?
#15
by live in sky dreams
В квадратных скобках можно указывать несколько вариантов? Например [0-9 ] будет означать "любое число или пробел"?
#17
by Неверный Параметр И
где номер не подобно "%[тут твои запрещенные символы]%" Справка –> 1С:Предприятие –>Встроенный язык –> Работа с запросами –> Синтаксис языка запросов –> Использование выражений в языке запросов –> Логические выражения –> ПОДОБНО – оператор проверки строк на подобие шаблону
#18
by live in sky dreams
запрещенные символы - это все существующие символы кроме чисел на всех языках? Где справка по ПОДОБНО находится я знаю, спасибо
#21
by Неверный Параметр И
И поищи в уникоде цифры, кстати. Где нибудь около U+10E61. Многоязычный умник ты наш.
#22
by live in sky dreams
работает вот так(условие запроса): ИЛИ НомерДоп ПОДОБНО "[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]" ИЛИ НомерДоп ПОДОБНО "[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]" ИЛИ НомерДоп ПОДОБНО "[0-9][0-9][0-9][0-9][0-9][0-9][0-9]" ИЛИ НомерДоп ПОДОБНО "[0-9][0-9][0-9][0-9][0-9][0-9]" ИЛИ НомерДоп ПОДОБНО "[0-9][0-9][0-9][0-9][0-9]" ИЛИ НомерДоп ПОДОБНО "[0-9][0-9][0-9][0-9]" ИЛИ НомерДоп ПОДОБНО "[0-9][0-9][0-9]" ИЛИ НомерДоп ПОДОБНО "[0-9][0-9]" ИЛИ НомерДоп ПОДОБНО "[0-9]" Выбирает номера, которые состоят из чисел, любой длины в пределах длины реквизита. Я могут собирать запрос и по циклу, но может есть какой то вариант упростить конструкцию?
#23
by Неверный Параметр И
Не будет работать для номеров, начинающихся с пробела. У тебя три возможности воздействия на результат запроса: синтаксис шаблона, логические условия с шаблоном и операции с выбраным множеством. Впрочем, твой готовый вариант все равно будет циклом.
#24
by YFedor
В 99% случаев это не нужно, а если нужно, то нужна всего лишь функция проверки типа значения. Теперь в 99% случаев нужно сначала проверить, что можно преобразовать, а потом преобразовать В семерошном варианте в 99% случаев нужно просто преобразовать
#25
by Optan
Если номер фиксированной длины можно попробовать создать временную таблицу: что то похожее на "1" - 1, "2" - 2... И соединять символы номера с ней
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Как отобрать документы по которым нет проводок, но галка проведен стоит.
- как в запросе отобрать по типу документа?
- Интересная фишка в запросе в 7-ке. Сумма из шапки и из ТЧ в запросе
- ЗУП: отобрать ФЛ, у кого больше одного образования
- КАК в Запросе Дату привести к началу дня?
- Как в запросе отобрать данные по определенному виду номенклатуры?
- Не получается отобрать записи регистра накопления по параметру
В этой группе 1С
- ЗуП 3,1 Отпуск сразу после выплаты ЗП. Как отражать правильно?
- Онлайн касса. Неверный номер регистра Атол 22 Fprint 22 ПТК и УТ 11.3.
- 1С УТ 10.3 пустое поле "Ответственный" в реализации.
- Как программно создать с-ф полученный на основании поступления.
- Розница 22 Продажа на одной кассе с двух ФР
- БГУ 1: Амортизация, инвентарная карточка
- Нужна ли блокировка для менеджера записи регистра сведений?
- ошибка Поле объекта не обнаружено
- Зуп перенос данных из 2.5 в 3.1 индексация при расчете среднего
- Загрузка файла xml в 1с из сторонней программы
- Оценка рентабельности 1с УТ 11.3
- v7: Переход с Комплексная 7.7 на БП 3.0
- Ограничение прав ут 10,3 ошибка
- 1C 8.3.9.1850 NameDecl.dll не работает
- Перенос программной лицензии 1с
- v7: Сложный запрос для табличного поля 1С++
- Обмен Розница 2.2 с БП 3.0
- Как на УФ на форме заполнить существующее дерево значений?
- v7: JSON и 1С7.7
- v7: Formex закрыть неактивное окно 7.7