Имя: Пароль:
1C
1C 7.7
v7: Подскажите по ТЗ!
0 Aleksei_Pro
 
29.11.11
22:24
Есть ТЗ:
ВременнаяТЗДляОтбора = СоздатьОбъект("ТаблицаЗначений");
ТЗ.Выгрузить(ВременнаяТЗДляОтбора,,,"Район,КоличествоЗаявок");
ВременнаяТЗДляОтбора.Свернуть("Район","КоличествоЗаявок");
ВременнаяТЗДляОтбора.Сортировать("КоличествоЗаявок-");

// далее выводит ТЗ на экран        
ВременнаяТЗДляОтбора.ВыбратьСтроку();

// мне нужно чтобы пользователь выбрал строку ВременнаяТЗДляОтбора
(т.е от туда взять район) и в ТЗ удалить все строки не по этому району.Как сделать?
1 andrewks
 
29.11.11
22:25
и в чём проблема?
2 SnarkHunter
 
29.11.11
22:27
(1)Проблема в незнании того, как это сделать...
3 Скользящий
 
29.11.11
22:27
я так понял, он хочет чтобы пользователь щелкнул на строке в ТЗ на форме и сразу отбор.
4 SnarkHunter
 
29.11.11
22:28
Нет там ТЗ на форме...
5 Скользящий
 
29.11.11
22:31
// далее выводит ТЗ на экран
6 SnarkHunter
 
29.11.11
22:33
Для тебя экран и форма это одно и то же?
7 Aleksei_Pro
 
29.11.11
22:34
ТЗ на форме нет, она формируется в (0)
8 Aleksei_Pro
 
29.11.11
22:34
вот выводится на экран:ВременнаяТЗДляОтбора.ВыбратьСтроку();
9 Скользящий
 
29.11.11
22:39
(6) А, ну я значит неправильно понял ТСа. ) Думал там ТЗ на форме.
10 Aleksei_Pro
 
29.11.11
22:43
Так как сделать то?
11 SnarkHunter
 
29.11.11
22:44
чНомСтр = 0;

Если ВременнаяТЗДляОтбора.ВыбратьСтроку(чНомСтр) = 1 Тогда
 РайонДляОтбора = ВременнаяТЗДляОтбора.ПолучитьЗначение(чНомСтр, "Район");
 
 Для чНом = -ТЗ.КоличествоСтрок() По -1 Цикл
   ТЗ.ПолучитьСтрокуПоНомеру(-чНом);
   
   Если ТЗ.Район = РайонДляОтбора Тогда
     Продолжить;
   КонецЕсли;
   
   ТЗ.УдалитьСтроку();
 КонецЦикла;
КонецЕсли;
12 Aleksei_Pro
 
29.11.11
22:46
Спасибо)
13 Aleksei_Pro
 
29.11.11
22:49
А почему: Для чНом = -ТЗ.КоличествоСтрок() По -1 Цикл ???
14 Сияющий Асинхраль
 
29.11.11
22:49
Райом=тз.получитьзначение(тз.текущаястрока(),"Район");
15 Азат
 
29.11.11
22:52
(13) не нужна тебе, Вовка, эта профессия (с) Бумер-2
16 КонецЦикла
 
29.11.11
22:54
(13) Выборка не сбивается
Более понятен такой код:

т = 1;
       Пока т <= ТаблНоменклатуры.КоличествоСтрок() Цикл
           Если (ТаблНоменклатуры.ПолучитьЗначение(т, "Вид") = Перечисление.ВидыНоменклатуры.Услуга)
            или (ТаблНоменклатуры.ПолучитьЗначение(т, "Вид") = Перечисление.ВидыНоменклатуры.Работа) Тогда
               ТаблНоменклатуры.УдалитьСтроку(т);
           Иначе
               т = т + 1;
           КонецЕсли;    
       КонецЦикла;
17 SnarkHunter
 
29.11.11
22:55
(14)Не в тему
(16)Более понятен? Это юмор такой?
18 Азат
 
29.11.11
22:56
(16) ого, какие люди.
19 Aleksei_Pro
 
29.11.11
22:57
спасибо, ветка закрыта)
20 Сияющий Асинхраль
 
29.11.11
22:59
Просто тяжко на мобильнике код писать :-)
21 КонецЦикла
 
29.11.11
23:07
(17) ХЗ... кому как... так в ТиС написано :)
(18) :)
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан