|
Не могу найти по коду в справочнике так как в нем пробелы а в строке поиска нет | ☑ | ||
---|---|---|---|---|
0
Shur1cIT
16.03.16
✎
15:22
|
Не стану изобретать велосипед, лучше спрошу как быть? бежать циклом по справочнику и делать СокрЛП у кода не хочу, так как такие элементы могут опять появиться. как лучше поступить в данном случае?
|
|||
1
Cyberhawk
16.03.16
✎
15:23
|
Убрать пробелы у кодов справочника
|
|||
2
Cyberhawk
16.03.16
✎
15:24
|
Ну а коль не хочешь - запросом через ПОДОБНО
|
|||
3
Shur1cIT
16.03.16
✎
15:24
|
(1) не хочу в (0) уже написал, нужен другой вариант
|
|||
4
Shur1cIT
16.03.16
✎
15:25
|
(2) у меня загрузка из xml запрос в цикле.нужно максимально простое решение
|
|||
5
Shur1cIT
16.03.16
✎
15:29
|
поиск по реквизиту в режиме неполного соответствия тоже отпадает так как код может быть 1024 у действующего , а поиск произвожу по 24 соответственно он его найдет и перезапишит
|
|||
6
Fish
16.03.16
✎
15:32
|
(0) "так как такие элементы могут опять появиться" - так сделай так, чтобы не появлялись.
|
|||
7
Shur1cIT
16.03.16
✎
15:38
|
кстати ПОДОБНО мне тоже не подайдет так как там посути поиск вхождений.
только цикл по справочнику как вариант |
|||
8
marty0701
16.03.16
✎
15:39
|
База типовая?
|
|||
9
mistеr
16.03.16
✎
15:41
|
(0) Если коды нельзя стандартизировать (а обычно можно), то привязываться нужно не к ним, а к чему-то другому. Например, добавить реквизит.
|
|||
10
Cyberhawk
16.03.16
✎
15:41
|
"поиск по реквизиту в режиме неполного соответствия тоже отпадает" // Такой возможности не существует, ты видимо спутал с НайтиПоНаименованию
|
|||
11
Cyberhawk
16.03.16
✎
15:42
|
"загрузка из xml запрос в цикле.нужно максимально простое решение" // Я его дал в (2)
|
|||
12
Cyberhawk
16.03.16
✎
15:43
|
"кстати ПОДОБНО мне тоже не подайдет так как там посути поиск вхождений" // Покажи пример: что нужно искать, среди чего искать
|
|||
13
f_vadim
16.03.16
✎
15:45
|
(12) видимо так
"%" + Код + "%" по коду 1234 выдаст и 1234 и 12345 и 01234 и т.д. а надо точное попадание. |
|||
14
marty0701
16.03.16
✎
15:45
|
(13)1 234 ?
|
|||
15
f_vadim
16.03.16
✎
15:46
|
(14) хз.
тс пишет только про СокрЛП |
|||
16
marty0701
16.03.16
✎
15:47
|
Тема не стоит слов, делай цикл и сокрЛП, требуемого алгоритма не существует.
|
|||
17
marty0701
16.03.16
✎
15:47
|
(15) Тема поста "Не могу найти по коду в справочнике так как в нем _пробелы_ а в строке поиска нет"
|
|||
18
Shur1cIT
16.03.16
✎
15:48
|
(13) совершено верно
в справочнике есть код "00766 " и код "007661 " ищу по коду "00766" |
|||
19
f_vadim
16.03.16
✎
15:48
|
(17) "... и делать СокрЛП у кода не хочу..."
|
|||
20
Shur1cIT
16.03.16
✎
15:49
|
(19) куча других обменов привязано не только 1с
|
|||
21
marty0701
16.03.16
✎
15:50
|
Извращенное решение, запросом 1 раз получи ТЗ вида Ссылка:СокрЛП(КОД), в загрузке своей ищи по коду в ТЗ.
Блин, ТС, у тебя слишком длинная полоска для таких вопросов. |
|||
22
Карупян
16.03.16
✎
15:50
|
У кодов фиксированная длинна, там пробелы НЕ уберешь
|
|||
23
Ranger_83
16.03.16
✎
15:50
|
(21)А как же поболтать?
|
|||
24
Карупян
16.03.16
✎
15:51
|
нужно пробелы добавлять до длины кода
|
|||
25
Ranger_83
16.03.16
✎
15:53
|
(0) Сделай перенумерацию кодов до полной длины и найди источник коротких кодов.А лучше в обратном порядке
|
|||
26
marty0701
16.03.16
✎
15:53
|
(24)С какой стороны предлагаешь добавлять?
|
|||
27
f_vadim
16.03.16
✎
15:53
|
(18) если количество пробелов величина случайная, то можно вот так. метод тупой, сразу говорю.
Код = &Код ИЛИ Код ПОДОБНО "%[ ]" + &Код ИЛИ Код ПОДОБНО &Код + "[ ]%" ИЛИ Код ПОДОБНО "%[ ]" + &Код + "[ ]%" если объёмы небольшие, то может и ничего. |
|||
28
marty0701
16.03.16
✎
15:53
|
(23)Смотря чем;)
|
|||
29
Shur1cIT
16.03.16
✎
15:53
|
(21) мнение других хотел спросить, зачем колхозить если до меня уже кто то с этим сталкивлся,
Да можно циклом по спраочнику бежать и сравнивать через сокрЛП ,запросом выгрузить весь справочник в ТЗ поправить в нем код и осуществлять поиск уже по нему, возможно и третий вариант есть ...... |
|||
30
marty0701
16.03.16
✎
15:55
|
(29)Ищещь все совпадения, ненайденное выводишь в ТЗ расхождений, оператор настраивает сопоставления. Делаешь РС сопоставлений. Еще интереснее вариант.
|
|||
31
marty0701
16.03.16
✎
15:56
|
Вопросы к (0):
1) Периодичность загрузки? 2) Объем? |
|||
32
Shur1cIT
16.03.16
✎
15:59
|
(31) переодичность раз в час, объем около 1000 элементов
|
|||
33
marty0701
16.03.16
✎
16:00
|
(27)Вообще-то КОД - строка, и может быть " 1 ", "1 ", " 1".
Что будем делать? |
|||
34
f_vadim
16.03.16
✎
16:01
|
(33) моё условие отработает корректно
|
|||
35
f_vadim
16.03.16
✎
16:02
|
ошибки будут только если пробел есть в середине кода
|
|||
36
marty0701
16.03.16
✎
16:02
|
(34)Это 3 разных элемента.
|
|||
37
f_vadim
16.03.16
✎
16:02
|
код то на вход подаётся, ему-то можно сокрлп сделать
|
|||
38
f_vadim
16.03.16
✎
16:03
|
по условию пробелы в кодах справочника, а не в строке поиска
|
|||
39
marty0701
16.03.16
✎
16:04
|
(38)Это 3 кода справочника РАЗНЫХ элементов.
|
|||
40
f_vadim
16.03.16
✎
16:08
|
(39) ааа, понял. собсна а существует в природе код, который выберет из этого списка нужную единицу? тут только порядок в базе наводить.
|
|||
41
Shur1cIT
16.03.16
✎
16:19
|
(40) по поводу порядка согласен, но очень много чего на этих неправельных кодах подвязано...
|
|||
42
marty0701
16.03.16
✎
16:48
|
(41)Сделай РС Соответсвий для себя уже и пиши любые выгрузки/загрузки.
|
|||
43
marty0701
16.03.16
✎
16:49
|
(41)Кстати, у тебя есть коды, как в (33)? Если есть, как надумал обходить такую ситуацию?
|
|||
44
Cyberhawk
16.03.16
✎
16:52
|
"в справочнике есть код "00766 " и код "007661 " ищу по коду "00766""
Не понял, чем ПОДОБНО в запросе не устраивает |
|||
45
Zhuravlik
16.03.16
✎
16:53
|
(0) Можно код по которому ищешь добивать пробелами до необходимой длины (Метаданные.Справочники.МойСп.ДлинаКода).
|
|||
46
Zhuravlik
16.03.16
✎
16:54
|
(44) +1
|
|||
47
MUXACb
16.03.16
✎
16:54
|
(45) Опередил :(
|
|||
48
Shur1cIT
16.03.16
✎
16:55
|
на самом деле ещё одну проблему нашел в справочнике есть код "0766 " а поиск по 00766 короче в базе полный бардак....
|
|||
49
marty0701
16.03.16
✎
16:57
|
(44) А подумать? В ОДНОМ справочнике есть ТРИ элемента с кодами " 1 ", "1 ", " 1", чем подобно будет заниматься в этом случае?
|
|||
50
marty0701
16.03.16
✎
16:57
|
(45)С какой стороны добивать пробелы?
|
|||
51
aka AMIGO
16.03.16
✎
16:58
|
(48) Существующая нумерация тебе очень нужна?
Может перенумеровать, тогда спокойно можешь искать.. |
|||
52
Cyberhawk
16.03.16
✎
16:58
|
(49) В этом случае задача в имеющихся условиях не решается на уровне программирования, ибо неясно, какое поведение в нее закладывать (ибо человеку неясно, какой элемент-таки выбрать)
|
|||
53
Fish
16.03.16
✎
16:58
|
(48) Имхо, без предварительного разгребания бардака и искоренения его появления в дальнейшем, красивого и простого решения не найти.
|
|||
54
marty0701
16.03.16
✎
16:59
|
(52)О чем и речь, какой тут алгоритм-то? Тут оператор + алгоритм)
|
|||
55
Fish
16.03.16
✎
17:00
|
(53) Есть более простое решение: оставить коды такими, как есть, а для поиска завести другой реквизит, и исключить в нём возможность подобного бардака.
|
|||
56
marty0701
16.03.16
✎
17:00
|
(52)человеку, кстати ясно, как раз таки, там еще наименование есть.
|
|||
57
marty0701
16.03.16
✎
17:01
|
(55)В исходной базе тоже, оттуда откуда приходят Коды? Тогда надо их синхронизировать в две стороны, периодически.
|
|||
58
Fish
16.03.16
✎
17:01
|
(56) Ботинок 1, Ботинок 1, Ботинок1 - какое выберешь? :)
|
|||
59
aka AMIGO
16.03.16
✎
17:02
|
(55) Мне не нравится :) Лучше таки перенумеровать и запретить менять коды.
Если коды - 1с-овские, а не сторонние (поставщика) - нечего в них лазить.. |
|||
60
marty0701
16.03.16
✎
17:02
|
(58)Ну да, я не прав, если настолько всё запущено, то моя логика не пройдет, однако, если проблема только с кодами, то моя логика вполне рабочая.
|
|||
61
Aleksey
16.03.16
✎
17:03
|
А точно пробелы, а не код числом и отображается с пробелами?
|
|||
62
Zhuravlik
16.03.16
✎
17:03
|
(50) С конца. Но учитывая (48) видимо неактуально, по ходу перенумерация нужна. Или добавить поисковый реквизит - только символы из кода.
|
|||
63
marty0701
16.03.16
✎
17:03
|
(58)Да и тут _опереатор_ исследуя остатки, движения, сможет сделать верный выбор.
|
|||
64
marty0701
16.03.16
✎
17:04
|
(62)У него 2 кода идентичных уже нашлось.см. (48)
|
|||
65
Fish
16.03.16
✎
17:04
|
(59) Пример: в одну базу сливаются данные из двух других. И получишь задвоение кодов (если нельзя префиксы использовать).
|
|||
66
marty0701
16.03.16
✎
17:05
|
(65)+, кароче ТС в *опе, как обычно)
|
|||
67
Cyberhawk
16.03.16
✎
17:06
|
Все равно не понял, чем ПОДОБНО не устраивает - никто вроде не сказал, что результатом поиска должен быть один элемент справочника, а не два-три
|
|||
68
Cyberhawk
16.03.16
✎
17:06
|
Раз есть дубли по "значащим" цифрам (00766, 0766, 766), то ПОДОБНО в запросе с этим легко справится
|
|||
69
marty0701
16.03.16
✎
17:07
|
(68)Так, это то, что он нашел, вот есть у тебя коды " 1", "1 ", " 1 ", догадаешься, что будет в случае использования ПОДОБНО?
|
|||
70
marty0701
16.03.16
✎
17:09
|
Да и (00766, 0766, 766), так так так, в файле импорта у ТС есть код 766, что же будет?
|
|||
71
marty0701
16.03.16
✎
17:10
|
+(70)Или 000000766, что же делать ТС в этом случае?
|
|||
72
Cyberhawk
16.03.16
✎
18:10
|
марти0701, см. (67)
|
|||
73
Карупян
16.03.16
✎
18:24
|
Если делать красиво, то дополнять коды нулями спереди
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |