Имя: Пароль:
1C
1C 7.7
v7: Как лучше в цикле делать сравнение занчений со списком значений ?
,
0 raykom
 
02.11.14
20:51
ПОдскажите, как сделать красиво.

Есть вот такой код, но сравнение со статичной переменной.
Теерь надо сравниваться со списком значений.

           Для Индекс = -ТабДок.КоличествоСтрок() По -1 Цикл
               Если ТабДок.ПолучитьЗначение(-Индекс,"Номенклатура") = ВыбНоменклатура Тогда //так было
                   //а вот так надо - ТабДок.ПолучитьЗначение(-Индекс,"Номенклатура") сравнить с массивом данных Список Значений
                   // множественный фильтр на форме. Как красиво щупать списокЗначений в этом месте на предмет наличия совпадений ?
                   ТабДок.УдалитьСтроку(-Индекс);
               КонецЕсли;
           КонецЦикла;


Спасибо.
1 Фокусник
 
02.11.14
20:55
(0) сз.НайтиПоЗначению()
2 raykom
 
02.11.14
20:58
(1)Дак вот думал. Только не пойму, оно до первого срабатывает ?
или то же надо цикл ?
3 raykom
 
02.11.14
21:01
А для СпискаЗначений и нет такого метода ...
4 Фокусник
 
02.11.14
21:05
(3) сорри, НайтиЗначение()
5 пипец
 
02.11.14
21:06
свернуть - наше всйо
6 miki
 
02.11.14
21:06
.Принадлежит()
7 пипец
 
02.11.14
21:07
неа , принадлежит так же как пустостое значение ОБъЕКТА не определяет
8 raykom
 
02.11.14
21:08
(4)Да, уже прицеливаюсь.
а по поводу то(2) я зря заморочился. Для условия то достаточно 1 совпадения )
(5)Кого звернуть то ? Список ? )) И покурить ...
(6)Опа ...
9 пипец
 
02.11.14
21:09
(8) думай....
10 пипец
 
02.11.14
21:09
те чо нада ? отфильтровать или чо ?
11 raykom
 
02.11.14
21:10
А у нас в дворницкой бутерброды из черного хлеба с маслом и килькой ...
12 пипец
 
02.11.14
21:10
Загрузить.(ляляфа)
13 raykom
 
02.11.14
21:10
(9)Да просто факт совпадения определить, а потом действо запустить
14 пипец
 
02.11.14
21:11
свернуть...... точко
15 raykom
 
02.11.14
21:11
))
Щас все попытаю ...
16 пипец
 
02.11.14
21:12
массив свертывается по флагу , добавить значимую колонку с суммой и вуаля
17 пипец
 
02.11.14
21:13
ппц , скоро 6.0 преподавать начну ;)
18 raykom
 
02.11.14
21:15
(16)Не ... Я этого колдовства не пойму.
Свернуто по флагу - это што ?? Каг его выставлять ?
Сумма мане зачем ? Мне просто наличие в массиве одноименной наменклатыры как и в ТЗ по которой идем
19 пипец
 
02.11.14
21:20
новая колонка , свернуть .
20 пипец
 
02.11.14
21:21
хе ,выгружаешь откуда ?
21 пипец
 
02.11.14
21:21
идиница - есть боле идиницы флах
22 raykom
 
02.11.14
21:23
(6)если по СП, то это оно.
(21)Ну вот понял уже. В сумме по единичке выставлять и сврачивать.
Дак в СЗ то оно одно вхождение. Что там сворачивать.
23 пипец
 
02.11.14
21:23
матрица ващето сворачивается по трем направлениям , два - квадратного и третье - сингулярное , сиречь , условие
24 пипец
 
02.11.14
21:24
(22) думай ;)))))
25 raykom
 
02.11.14
21:24
пипец ты намахиваешь штоле ? :D
У тебя после каждой - новая постанова ))
У меня тут килько, есичо ...
26 пипец
 
02.11.14
21:25
;))) просто за мыслью не успеваешь ;)
27 raykom
 
02.11.14
21:26
Буду делать (6)Точко.
(26)Не ... Тихо думаю ))
28 пипец
 
02.11.14
21:26
Список - та же матрица - вхождение - слово , кардинальное ;)
29 raykom
 
02.11.14
21:27
(28)Вхождение у меня вобще кардинально с другим ассоциируется ...
30 пипец
 
02.11.14
21:28
(29) пошляк ;)))))))))
31 пипец
 
02.11.14
21:28
z tve ghj chtps jy vyt ghj ,,,
32 пипец
 
02.11.14
21:29
думай...
33 raykom
 
02.11.14
21:31
Уже ...
34 пипец
 
02.11.14
21:34
я те ишщшо скажу - справочник назувается свойчтва контрагенов
35 пипец
 
02.11.14
21:37
по поводу (0) , есть конздрюкция Загрузить - хоть СП хоть ТЗ , тока объем объявить в переменной заранее
36 raykom
 
02.11.14
21:44
Вопщем сделал по (6)
Получилось вот так.

           Для Индекс = -ТабДок.КоличествоСтрок() По -1 Цикл
               Если  СписокЭлементовМФ.Принадлежит(ТабДок.ПолучитьЗначение(-Индекс,"Номенклатура"))>0 Тогда
                       ТабДок.УдалитьСтроку(-Индекс);
                   Иначе
                       ТабДок2.УдалитьСтроку(-Индекс);
               КонецЕсли;
           КонецЦикла;


Все. Благоарю miki за компетентность, а пипец - за rjvgfyb. )
Дворницкая закрыта.
37 пипец
 
02.11.14
21:48
;)()))) , 1с++ не предлагать ?
ЗЫ можно и оптимальней , задачи и условий не видно
38 Злопчинский
 
03.11.14
01:38
(36) Пипл проверял, говорить что
вместо
.
СписокЭлементовМФ.Принадлежит(ТабДок.ПолучитьЗначение(-Индекс,"Номенклатура"))
.
надо заюзать
.
СписокЭлементовМФ.НайтиЗначение(ТабДок.ПолучитьЗначение(-Индекс,"Номенклатура"))
.
получится быстрее
39 raykom
 
03.11.14
01:55
Здра жла. Командир.
Учту. )) Што москва не спит ?
40 Злопчинский
 
03.11.14
02:08
(39) следит за беспризорниками, которые без села, без города
41 eshtrey
 
03.11.14
09:19
(38)а если в спискеЗначений группа?
42 raykom
 
03.11.14
10:02
Вот еще пидерсия с этим списком. Я его использую в качестве фильтра в запросе по условию Условие (Номенклатура В СписокЗнач)

Еще не понял он фильтрует по логике И или ИЛИ, а еще, когда список пуст - то и выборка пуста.
А по логике В должны быть все. Но тут надо явно видимо справочник использовать.
43 Мимохожий Однако
 
03.11.14
10:19
В переменную СписЗнач надо поместить ВСЮ номенклатуру, с которой работает запрос. Логика И.
44 raykom
 
03.11.14
11:06
Ага. А вот логика И меня не устраивает ... Какая то херня.
Т.е. Если в фильтре у меня три наименования, то в выборку попадут накладные, которые содержат ВСЕ ТРИ наименования ???
А если какое то одно, то НЕТ ?
45 Мимохожий Однако
 
03.11.14
11:09
Не надо стесняться - показывай код с комментариями.
46 raykom
 
03.11.14
11:12
Дак че там
СписокЗнач - на форме, туда добавляется номенклатура.
Условие в запросе.

|Условие(Номенкалатура В СписокЗнач);
47 Мимохожий Однако
 
03.11.14
11:20
(44)В выборку попадут, если хотя бы одно наименование есть.
48 raykom
 
03.11.14
11:30
(47)Та тогда это не И а ИЛИ
49 Мимохожий Однако
 
03.11.14
11:46
(48)Да. А в чём проблема?
50 raykom
 
03.11.14
11:47
(49) в (43)
51 Мимохожий Однако
 
03.11.14
11:51
(50)Понятно, что я ошибся. Но я по сабжу(0). Сейчас в чём проблема?
52 raykom
 
03.11.14
11:51
Ну так уже нет. Проверил. Все норм.
53 Мимохожий Однако
 
03.11.14
11:52
ОК. Теперь я спокоен ))
54 raykom
 
03.11.14
11:53
А на счет пустого списка - просто добавляю родительскую группу и вся номенклатура попадает.
Тоже устраивает .

(53) :D