Платформа - любая
Конфа - любая
Пробую в запросе отобрать номенклатуру, не начинающуюся со знака подчеркивания "_"
Запрос имеет условие
Где НЕ Номенклатура.Наименование ПОДОБНО "\_%"
А а если
Где Номенклатура.Наименование ПОДОБНО "[^\_]%"
twilight_dream @ Сегодня, 13:08
,
специальные символы:
% (процент) — допускает любую последовательность произвольных символов;
_ (нижнее подчеркивание) — любой один символ;
"В результате проходят наименования вида "_Филе куриное..." и ему подобные." (с)
они и будут приходить, так как нижний пробел работает как спец символ
ГДЕ
НЕ ПОДСТРОКА(Номенклатура.Наименование, 1, 1) = "_"
fly, у ТСа шаблон указан "\_%". Слеш там, видимо, как раз таки для того, что бы _ был именно, как _.
Vofka @ Сегодня, 15:23
,
Тогда нужно добавить оператор
СПЕЦСИМВОЛ "\"
ВЫБРАТЬ
Номенклатура.Наименование КАК Наименование
ИЗ
Справочник.Номенклатура КАК Номенклатура
ГДЕ
Номенклатура.Наименование ПОДОБНО "\_%" СПЕЦСИМВОЛ "\"
ГДЕ
НЕ Номенклатура.Наименование ПОДОБНО "\_%" СПЕЦСИМВОЛ "\"
И Подстрока(аа,1,1) = "_"
у меня срабатывает нормально на всех 3х
+ Vofka
Где Номенклатура.Наименование ПОДОБНО "[^\_]%"
ГДЕ
НЕ Номенклатура.Наименование ПОДОБНО "\_%" СПЕЦСИМВОЛ "\"
ГДЕ
НЕ ПОДСТРОКА(Номенклатура.Наименование, 1, 1) = "_"
А я думал, что "Спецсимвол" "\" - есмь по умолчанию, и оператор "СПЕЦСИМВОЛ" в таком случае писать не надо. Оказалось что надо. Всем спасибо!
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua