|
Нумерация табличной части при отборе |
☑ |
0
HellenaR
12.10.14
✎
12:54
|
Здравствуйте! Нужен ваш совет.
Есть форма, на ней - табличная часть, туда выгружается результат запроса. Строчки пронумерованы. При установке отбора нумерация не пересчитывается, то есть, например:
было
1 аб
2 в
3 аб
4 г
Отбор по аб, результат
1 аб
3 аб
Как лучше сделать, чтобы номера становились 1,2 ?
В след.коммент сейчас кину код, как сделала, и проблемы.
|
|
1
Рэйв
12.10.14
✎
12:55
|
(0)Ты уж определись. Тебе по значению отбор или по строкам.
|
|
2
HellenaR
12.10.14
✎
12:56
|
Процедура ОбновлениеОтображения()
СтрИсходная = ЭлементыФормы.СписокР.ТекущаяСтрока;
Счетчик = 0;
Для Каждого Строка Из ТЧ Цикл
ЭлементыФормы.СписокР.ТекущаяСтрока = Строка;
Если Строка = ЭлементыФормы.СписокР.ТекущаяСтрока Тогда
Счетчик = Счетчик + 1;
ЭлементыФормы.СписокР.ТекущиеДанные.НСтроки=Счетчик;
КонецЕсли;
КонецЦикла;
Для Каждого Строка Из ТЧ_РТУ Цикл
Если Строка = СтрИсходная Тогда
ЭлементыФормы.СписокРеализации.ТекущаяСтрока = СтрИсходная;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Этот код пересчитывает номера при любом действии на таб.часть: установка курсора и т.п., и работает при большом количестве строк ну очень долго.
Более красивое решение есть?
|
|
3
HellenaR
12.10.14
✎
12:57
|
(1) Отбор по какому-либо реквизиту строки. Например, по контрагенту.
|
|
4
HellenaR
12.10.14
✎
12:59
|
(2)
Опечатки
Для Каждого Строка Из ТЧ Цикл
Если Строка = СтрИсходная Тогда
ЭлементыФормы.СписокР.ТекущаяСтрока = СтрИсходная;
КонецЕсли;
КонецЦикла;
Этот кусок кода возвращает курсор на исходную строчку :)
|
|
5
Рэйв
12.10.14
✎
13:00
|
(2)Код смешной конечно:-)
1.>>СтрИсходная = ЭлементыФормы.СписокР.ТекущаяСтрока;
СтрИсходная = ЭлементыФормы.СписокР.ТекущиеДанные;
2.Для Каждого Строка ...
Строка - зарезервированно.
3. Вам бы просто подучиться:-).
|
|
6
Рэйв
12.10.14
✎
13:01
|
И все это только потому, что фотка есть:-)
|
|
7
HellenaR
12.10.14
✎
13:03
|
(5) спасибо за советы подучиться! Хотелось бы почитать советы по теме топика
|
|
8
France
12.10.14
✎
13:53
|
(7) по теме чел в 1 написал.. и, что даст номер строки после отбора? Правильно - ничего.
|
|
9
alle68
12.10.14
✎
14:26
|
(2) У ТП есть метод "ПроверитьСтроку(<Строка>)".
А событие я бы поменял.
|
|
10
HellenaR
12.10.14
✎
14:49
|
Всем спасибо, придумала вариант в стиле женской логики, но работает быстро, и вроде без косяков
|
|
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший