Имя: Пароль:
1C
1C 7.7
v7: Индексированная таблица: 2 выборки по разным индексам, можно ли?
, ,
0 Skom
 
22.04.15
11:28
есть индексированная таблица.
можно ли, находясь в открытой выборке по Индекс1
открыть вторую выборку по Индекс2
1 Skom
 
22.04.15
11:30
ПланПоЗаявкам.УстановитьФильтр(СП,СП,"СкладКачество");
ПланПоЗаявкам.ВыбратьСтроки("СкладКачество");
Пока ПланПоЗаявкам.ПолучитьСтроку("СкладКачество") = 1 Цикл
     ...
     ...
     ...    
     Таб.ВывестиСекцию("Данные"+?(ПланПоЗаявкам.ОшибкаСклада=1,"Красный",""));
                    
        Если Спецуха = 1 Тогда
            //Список параметров
            СП2 = СоздатьОбъект("СписокЗначений");
        СП.Выгрузить(СП2);
        СП2.ДобавитьЗначение(Контрагент, "Контрагент");
        
                ПланПоЗаявкам.УстановитьФильтр(СП2,СП2, "СкладКачествоКонтрагент");
        ПланПоЗаявкам.ВыбратьСтроки("СкладКачествоКонтрагент");
        Пока ПланПоЗаявкам.ПолучитьСтроку("СкладКачествоКонтрагент") = 1 Цикл
                   ...
                КонецЦикла;
       КонецЕсли;
КонецЦикла;
2 Skom
 
22.04.15
11:30
вот так примерно надо
3 Skom
 
22.04.15
11:50
типа ап
4 Skom
 
22.04.15
12:12
что, все спецы кончились?
5 Skom
 
22.04.15
12:20
Кстати, при выборке по индексу, обязательно накладывать фильтр на таблицу?
6 Skom
 
22.04.15
12:20
ПланПоЗаявкам.УстановитьФильтр(СП,СП,"СкладКачество");
ПланПоЗаявкам.ВыбратьСтроки("СкладКачество");
Пока ПланПоЗаявкам.ПолучитьСтроку("СкладКачество") = 1 Цикл
7 Skom
 
22.04.15
12:20
вот тут первая строка обязательна? или нет
8 ADirks
 
22.04.15
12:28
(0) можно
(5) не обязательно
9 Эльниньо
 
22.04.15
12:28
Гоняй две таблицы
10 Skom
 
22.04.15
12:32
Вопросы снимаются.
11 Skom
 
22.04.15
12:32
(8) Сделал не через ВыбратьСТроки(), а через
ТАблица.ВНачало()
и
Таблица.СледующаяСтрока()

так правильно?
12 ADirks
 
22.04.15
12:40
(11)  это синонимы :)
13 Оберон
 
22.04.15
12:40
на одну таблицу вроде бы можно было наложить только одну фультру единовременно - вариант гонять ДВЕ таблицв
или использовать подтаблицы после фильтра
14 ADirks
 
22.04.15
12:43
(13) не надо двух таблиц
один фильтр единовременно можно наложить на индекс, а не на таблицу.
15 Ёпрст
 
22.04.15
12:44
(0) гораздо проще.. группировать
16 Ёпрст
 
22.04.15
12:45
Но, можно и по индексам бегать и получать итоги по узлу
17 Skom
 
22.04.15
12:45
(15) есть под рукой пример работы с группировками?
18 Ёпрст
 
22.04.15
13:16
(17) эээ.. а че там ?
:)
19 Ёпрст
 
22.04.15
13:17
группируешь и обход в рекурсивной функции (если не ясно изначально, сколько группировок).
Или так, ручками пишешь кучку вложенных циклов обхода ТЗ и ТЗПотомки. Усё.
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший