Имя: Пароль:
1C
 
Не могу найти по коду в справочнике так как в нем пробелы а в строке поиска нет
,
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
Если делать красиво, то дополнять коды нулями спереди