|
СтрЗаменить(Строка, ПодстрокаПоиска, ПодстрокаЗамены) в ЗАПРОСЕ | ☑ | ||
---|---|---|---|---|
0
somn74
14.05.19
✎
17:15
|
Есть параметры типа "123456789", "987645609", "6437903940". В справочниках они могут быть записаны "1234 567 89", "98-76 456-09", "64 37 903-940".
Нужно найти сслыки на справочники, соответственно нужно привести значения справочников к виду параметров. Как это сделать? ПОДСТРОКА тут не подходит. |
|||
1
ДенисЧ
14.05.19
✎
17:19
|
приводи данные в справочниках в конкретный стандартный вид.
|
|||
2
la luna llena
14.05.19
✎
17:26
|
интересная задача, я не смогла придумать, как его решить в запросе, только получать значение, преобразовывать в удобоваримый вид и сравнивать с параметром
|
|||
3
palsergeich
14.05.19
✎
17:28
|
Приводите данные в справочниках к одному виду передЗаписью.
|
|||
4
OldCondom
14.05.19
✎
17:30
|
добавляй реквизит в справочник, пиши туда православный номер, обработкой пройдись по всем существующим.
|
|||
5
somn74
14.05.19
✎
17:32
|
Заменить значения в справочнике сликшом просто и такой вариант не подходит :)
Полагаю, что аналогия СтрЗаменить в Запросе невозможна. |
|||
6
spiller26
14.05.19
✎
17:33
|
(0) Разбирай на символы и собирай заново без пробелов и лишних символов в запросе, но это жесть если не фиксированные строки.
|
|||
7
OldCondom
14.05.19
✎
17:34
|
(5) не заменяй, а добавляй в новый реквизит, на форму не выводи. Можно еще регистр сведений запилить, если хочется без изменения конфы.
|
|||
8
hhhh
14.05.19
✎
17:35
|
(5) через ПОДОБНО Пробуй типа
ПОДОБНО [0-9]%[0-9]%[0-9]%[0-9]%[0-9]%[0-9]%[0-9]%[0-9]%[0-9] |
|||
9
ам794123
14.05.19
✎
17:45
|
В MySQL есть оператор RLIKE, который производит поиск в соответствии с регулярными выражениями. А вот пример из Oracle - Если Вы хотите искать только .com адреса электронной почты, то можно использовать следующий SQL-код
SELECT text FROM my_text WHERE REGEXP_LIKE (text, '[A-Z0-9._%-]+@[A-Z0-9._%-]+\.com') Ждем, когда что-нибудь такое будет возможно в 1с. |
|||
10
Скиурус
14.05.19
✎
20:26
|
Параметр "12345" замени на "1%2%3%4%5%" и ищи по LIKE.
Работать будет медленно. |
|||
11
Garykom
гуру
14.05.19
✎
20:31
|
(0) Примерно так http://catalog.mista.ru/public/336783/
Свою хеш-функцию описываешь так чтобы "987645609" и "98-76 456-09" выдавали одинаковый результат. |
|||
12
palsergeich
14.05.19
✎
21:03
|
Какие только костыли народ не изобретает, лишь бы НСИ в порядок не приводить.
А потом база лагает, потому что в этом говне индексы не работают |
|||
13
palsergeich
14.05.19
✎
21:05
|
А все решается маленькой подпиской и новым реквизитом / РС / доп реквизитом
|
|||
14
palsergeich
14.05.19
✎
21:05
|
Ну и разовым прогоном обработки по и имеющемуся массиву НСИ
|
|||
15
OldCondom
14.05.19
✎
22:11
|
(12) действие ради действия. Мало кто работает на результат
|
|||
16
Sammo
15.05.19
✎
06:04
|
(10) Вопрос - по LIKE "1%2%3%4%5%" найдется, ну например 1122334455? А это по идее разные значения.
Можно работать с LIKE но вместо % надо будет указать все возможные виды разделителей |
|||
17
OpKc
15.05.19
✎
06:26
|
А можно поинтересоваться, почему так принципиально не хочешь воспользоваться решением, которое предлагают palsergeich и OldCondom?
|
|||
18
Simod
15.05.19
✎
06:29
|
В "лоб":
|
|||
19
DrZombi
гуру
15.05.19
✎
06:35
|
(0) Зачем?
Часто встречаю у 1С такой вид регистров, которые как раз и создаются, что бы получать уже готовую информацию в нужном виде, для определенных запросов. ... Добавь недостающую информацию в структуру метаданных, да заполняй ёё при записи элементов :) И будет вам счастье :) |
|||
20
DrZombi
гуру
15.05.19
✎
06:36
|
(1) +100 :)
|
|||
21
craxx
15.05.19
✎
08:50
|
(0) я прикидываю как запрос тормозить будет
|
|||
22
spiller26
15.05.19
✎
09:12
|
(21) Если данных много то да, тормозить будет, проверено уже, у меня так в работает где-то, я сразу их предупреждал, что работать будет медленно, но будет.
|
|||
23
spiller26
15.05.19
✎
09:15
|
(18), (21) Вот мой код был. Сортировка Динамического списка
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |