![]() |
![]() |
![]() |
|
8.2 "Быстрая" альтернатива ОтборСтрок | ☑ | ||
---|---|---|---|---|
0
g_frost
01.09.10
✎
18:18
|
Хочу поделиться приятной плюшкой
Как мне кажется довольно удобный вариант интерфейса - две таблицы, например работы и исполнители, выбираем работу - видим тех исполнителей которые к ней привязаны. Как делал раньше - событие при активации строки создавал новую фиксированную структуру с параметром/параметрами отбора и устанавливал для второй табличной части ОтборСтрок Минусы - отображение тормозит, особенно если таких отбора 2-3 Новый вариант - в форме настроил условное оформление с видимостью колонок табличной части. Видимость = истина; Объект.РАботы.Идентификатор = Объект.Исполнители.Идентификатор; поля, Объект.Исполнители.Номерстрок(,Исполнитель,Часы) и Видимость = ложь; Объект.РАботы.Идентификатор <> Объект.Исполнители.Идентификатор; поля, Объект.Исполнители.Номерстрок(,Исполнитель,Часы) Второй вариант - буквально летает, даже в тонком клиенте через апач. Рекоммендую использовать именно второй вариант |
|||
1
xReason
01.09.10
✎
18:29
|
Записал
|
|||
2
Armando
01.09.10
✎
18:31
|
потом посмотрю
|
|||
3
Immortal
01.09.10
✎
21:09
|
динамические списки для кого придумали?
|
|||
4
MRAK
01.09.10
✎
21:11
|
(3) может он про табличную часть?
|
|||
5
Immortal
01.09.10
✎
21:12
|
(4) судя по (0) это отнюдь не 2 ТЧ
|
|||
6
g_frost
02.09.10
✎
09:43
|
(5) это именно две ТЧ, условное оформление настраивается для формы в целом
|
|||
7
ProgAL
02.09.10
✎
10:46
|
А что это за метод "НомерСтрок"? В помощнике нет такого.
|
|||
8
Stepa86
02.09.10
✎
11:21
|
у меня шапка пропала в таблице, так и должно быть?
|
|||
9
g_frost
02.09.10
✎
11:49
|
(7) это не метод это название колонки "номерстроки"
|
|||
10
g_frost
02.09.10
✎
11:54
|
(8) что то не так делаете, у меня шапка видна
пример настроек http://saveimg.ru/show-image.php?id=cddfe4adba1bf7db10e2240618ca86e5 |
|||
11
Stepa86
02.09.10
✎
12:06
|
(10) фикзнает что было, но начал показывать... другая проблема, сделал кнопку "Фильтровать по тек. строке" которая включает/отключает фильтрацию. Отключает замечательно, а вот после включения фильтр не ставится, нужно выполнить каку нить команду, которая сбегает на сервер и после этого начинает работать фильтр...
вот видео, как работает: http://screencast.com/t/NzliMjMyY код: &НаКлиенте Процедура ФильтроватьПоТекСтроке(Команда) Элементы.ВозвратыФильтроватьПоТекСтроке.Пометка = Не Элементы.ВозвратыФильтроватьПоТекСтроке.Пометка; УстановитьОтборВозврата(); КонецПроцедуры Процедура УстановитьОтборВозврата() ФильтрПоТекСтроке = Элементы.ВозвратыФильтроватьПоТекСтроке.Пометка; Элементы.Возвраты.ИзменятьСоставСтрок = Не ФильтрПоТекСтроке; Для Каждого цЭлемент Из УсловноеОформление.Элементы Цикл Если цЭлемент.Представление = "ВидимостьВозвратовПоТекСтроке" Тогда цЭлемент.Использование = ФильтрПоТекСтроке; КонецЕсли; КонецЦикла; КонецПроцедуры |
|||
12
g_frost
02.09.10
✎
12:18
|
(11) попробуйте тот же вариант с условным оформлением но
1. Новый реквизит формы - ТекущийОтбор 2. Условие Видимость истина если не ТекущийОтбо.Заполнен или ТекущийОтбор=Объект.ТабличнаяЧасть.ОтбираемоеЗначение 3. Условие Видимость ложь если ТекущийОтбо.Заполнен и ТекущийОтбор<>Объект.ТабличнаяЧасть.ОтбираемоеЗначение 4. при нажатии кнопки отбор если Элементы.ТабЧасть.ТекущиеДАнные.ОтбираемоеЗначение = текущийотбор тогда текущийотбор = неопределено иначе текущийотбор = Элементы.ТабЧасть.ТекущиеДАнные.ОтбираемоеЗначение (не забудьте проверить Элементы.ТабЧасть.ТекущиеДАнные на неопределено) отпишитесь пожалуйста по результатам, интересно сработает или нет |
|||
13
Stepa86
02.09.10
✎
12:24
|
(12) не понял сути этого варианта. Предлагаете менять не использование строки условного оформления, а отбор? Как то уж больно трудоемко и быстрее будет через ОтборСтрок
|
|||
14
g_frost
02.09.10
✎
12:44
|
(13) насчет трудоемкости спорно
весь код &НаКлиенте Процедура Отобрать(Команда) Если Элементы.Часть1.ТекущиеДанные<>Неопределено Тогда Если Элементы.Часть1.ТекущиеДанные.Работа<>ТекущийОтбор Тогда ТекущийОтбор = Элементы.Часть1.ТекущиеДанные.Работа; иначе ТекущийОтбор = Неопределено; КонецЕсли; КонецЕсли; КонецПроцедуры а вот и обработка http://webfile.ru/4705054 я не имею предубеждений против отборстрок, просто у клиента эта конструкция делает 2 серверных вызова и тормозит при отборажении, особенно если нужно добавить отбор строк для 2х табличных частей или по большой таблице |
|||
15
Stepa86
02.09.10
✎
12:50
|
(14) главная проблема в том, что у меня 6 колонок связи, а не одна... и они так то независимы, просто нужно иногда посмотреть связи
|
|||
16
Kerk
02.09.10
✎
18:34
|
Хм... надо посмотреть.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |