Оператор ПОДОБНО позволяет сравнить в запросе данные строкового типа, находящиеся слева от оператора с данными строкового типа находящимися справа от оператора. Результат сравнения принимает значения «Истина» или «Ложь», таким образом сравнение можно применять в виде условия.
Для оператора ПОДОБНО предусмотрены специальные служебные символы, которые не воспринимаются как строка:
- «%» символ процента: обозначает наличие в строке любого количества произвольных символов
- «[. ]» один или несколько символов в квадратных скобках: обозначает наличие любого (одиночного) из перечисленных символов. Так же, может быть указан диапазон символов (например [a-f])
- «_»символ подчеркивания: обозначает наличие любого произвольного символа
- «[^. ]» символ отрицания: обозначает наличие любого одиночного символа, кроме указанных в квадратных скобках
Если необходимо для сравнения указать один из вышеперечисленных спецсимволов, необходимо воспользоваться ключевым словом «СПЕЦСИМВОЛ»
Особенности использования с различными СУБД
В случае использования СУБД «IBM DB2» справа от оператора ПОДОБНО может располагаться только параметр. Шаблонные символы только «_» (подчеркивание означающее любой символ) и «%» (процент означающий последовательность любых символов).
В случае использования СУБД «PostgreSQL» или «Oracle Database» спецсимволы «квадратные скобки [. ]» воспринимаются только если указаны текстом в запросе, а НЕ передаются параметром в запрос.
Таким образом, в файловой базе спецсимволы будут всегда восприниматься одинаково, и по разному в зависимости от используемой СУБД в клиент-серверном варианте.
Оператор ПОДОБНО в запросах на 1С8 — мощный инструмент обработки строковых данных.
Оператор ПОДОБНО вычисляет соответствует ли строка шаблону или нет. Шаблон — строковое выражение использующее набор специальных сочетаний символов. Каждый из них обозначает некий подкласс сочетаний символов, которые могут встречаться в строковых данных Он аналогичен LIKE в SQL.
Как пользоваться Оператором ПОДОБНО:
Оператор ПОДОБНО позволяет сравнить значение выражения, указанного слева от него, со строкой шаблона, указанной справа.
Значение выражения должно иметь тип строка. Если значение выражения удовлетворяет шаблону – результатом оператора будет ИСТИНА, иначе – ЛОЖЬ.
Следующие символы в строке шаблона являются служебными и имеют смысл, отличный от символа строки:
-
% (процент): последовательность, содержащая любое количество произвольных символов
% (процент) — аналог (.*) в регулярных выражениях — любой символ повторенный ноль или больше раз.
Если в качестве самого себя необходимо записать один из перечисленных символов, то ему должен предшествовать . Сам (любой подходящий символ) определяется в этом же операторе после ключевого слова СПЕЦСИМВОЛ.
Например, шаблон “%АБВ[0-9][абвг]\_абв%” СПЕЦСИМВОЛ “” означает подстроку, состоящую из последовательности символов:
буквы А; буквы Б; буквы В; одной цифры; одной из букв а, б, в или г; символа подчеркивания; буквы а; буквы б; буквы в. Причем перед этой последовательностью может располагаться произвольный набор символов.
В приведенном ниже примере — Вывести все наименования содержащие символ «_», СПЕЦСИМВОЛ «» является экранирующим для символа «_», который означает «один произвольный символ».
Предлагаем решение Ваших задач 1С.
Внедрение 1С:
- Организуем вам индивидуальное экспресс обучение программам 1С.
- Мы поможем Вам начать работать с программами 1С.
- Мы поможем Вам настроить ваши отчеты в 1С.
- Установим и настроим 1С под ваши задачи.
- Поможем сделать ввод начальных остатков по складам и контрагентам
- Перенесем данные из старых систем.
- Подскажем как избежать ошибок.
Доработка и сопровождение 1С:
- Доработаем существующие или создадим новые печатных формы и документы.
- Разработаем внешние отчеты по Вашим требованиям.
- Напишем внешние обработоки по загрузке документов из учетных (торговых) систем в бухгалтерию.
- Разработаем приложения для выгрузки данных на сайты.
Ориентировочная стоимость работ программиста 1С : 500 р. за 1 час работы.
Звоните: 8 916 710 83 51 Ольга
© j008.ru 2014 Обратная связь: j008@j008.ru
Иногда возникает ситуация, когда в 1С 8.3 или 8.2 нужно сделать выборку, например, из справочника Номенклатура всех элементов, у которых в наименовании имеется слово «глазурь». Или из справочника Контрагенты выбрать всех контрагентов, в фамилии которых встречается слово «Иван». В общем, проверить какое-нибудь строковое значение.
Для этого существует оператор в запросах 1С 8.3 и 8.2 — «Подобно». Используется он, соответственно, в условиях:
Получите 267 видеоуроков по 1С бесплатно:
Как пользоваться шаблонами в запросах 1С?
Чтобы сформировать условие отбора, в качестве параметра нужно передать некий шаблон. Для создания шаблона существуют так называемые служебные символы.
Например, символ «%» допускает любую последовательность произвольных символов:
Существуют и другие специальные символы:
- % (процент) — допускает любую последовательность произвольных символов;
- _ (нижнее подчеркивание) — любой один символ;
- […] – один произвольный символ из перечисленных внутри скобок. Кроме перечисления символов можно использовать диапазоны. Пример: а-о;
- [^…] – то же самое, что и предыдущее, но наоборот. Знак «^» означает отрицание.
Смотрите также небольшое видео про этот оператор:
Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.