Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / [игнор отключен] [закрыт для гостей] / Фильир филтра / 9 сообщений из 9, страница 1 из 1
07.12.2009, 17:40
    #36352583
murzo1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильир филтра
Здравствуйте, у меня такой вопрос: Есть Обработка, вводим там данные в фильтр, вылазит нам результат в ДеревоСписка (очень похоже на Грид и вытаскиваются данные запросом), вот необходимо отфильтровать по новым критериям уже отфильтрованные данные. Можете сказать что-нибуть конкретное, а не общее? Если есть похожие примеры, выложите пожалуйста, буду очень благодарен.
...
Рейтинг: 0 / 0
07.12.2009, 17:41
    #36352585
murzo1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильир филтра
murzo1Здравствуйте, у меня такой вопрос: Есть Обработка, вводим там данные в фильтр, вылазит нам результат в ДеревоСписка (очень похоже на Грид и вытаскиваются данные запросом), вот необходимо отфильтровать по новым критериям уже отфильтрованные данные. Можете сказать что-нибуть конкретное, а не общее? Если есть похожие примеры, выложите пожалуйста, буду очень благодарен.
...
Рейтинг: 0 / 0
08.12.2009, 18:09
    #36355082
murzo1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильир филтра
Спасибо знающим людям за ответы.
...
Рейтинг: 0 / 0
08.12.2009, 18:19
    #36355102
Фильир филтра
murzo1,

1) сделать грид))) реквизитом обработки, после чего будет доступен системный фильт по любым полям

2) достраивать запрос, включая в него это доп. кретерии, сами данные можно хранить во временной таблице(а-ля серверный кэш)

3) полностью ручной фильтр.
...
Рейтинг: 0 / 0
08.12.2009, 19:00
    #36355167
murzo1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильир филтра
СлучайныйГостьmurzo1,

1) сделать грид))) реквизитом обработки, после чего будет доступен системный фильт по любым полям

2) достраивать запрос, включая в него это доп. кретерии, сами данные можно хранить во временной таблице(а-ля серверный кэш)

3) полностью ручной фильтр.


Ясно, а вот про момент: "сами данные можно хранить во временной таблице(а-ля серверный кэш)", не миогли бы вы привести какойнить пример кода?
...
Рейтинг: 0 / 0
09.12.2009, 12:32
    #36356282
Фильир филтра
murzo1,

см. МенеджерВременныхТаблиц
...
Рейтинг: 0 / 0
09.12.2009, 12:37
    #36356306
Фильир филтра
murzo1

еще можно использовать компоновщик в режиме вывода в коллекцию значений(ТЗ или Дерево), а фильтр вводит пользователь стандартным для компоновщика отбором. Необходимо только описать свою таблицу как внешний источник данных.
...
Рейтинг: 0 / 0
10.12.2009, 17:45
    #36359716
murzo1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильир филтра
Вот что у меня получилось и все работает:

Процедура КнопкаВыполнитьНажатие(Кнопка)
Если ДатаКон = '00010101' или ДатаНач = '00010101'Тогда
Сообщить("Не веден период");
Иначе
ДеревоДокументов.Строки.Очистить();

МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
пЗапрос = Новый Запрос;
пЗапрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
пЗапрос.Текст = "ВЫБРАТЬ
| Документ.Ссылка
|ПОМЕСТИТЬ
| ВременнаяТаблица
|ИЗ
| Документ."+Документ+" КАК Документ
|ГДЕ
| Документ.Дата >= &ДатаНач
| И Документ.Дата <= &ДатаКон";
пЗапрос.УстановитьПараметр("ДатаНач",ДатаНач);
пЗапрос.УстановитьПараметр("ДатаКон",ДатаКон);
пЗапрос.Выполнить();

пЗапрос.Текст = "ВЫБРАТЬ
| ВременнаяТаблица.Ссылка
|ИЗ
| ВременнаяТаблица КАК ВременнаяТаблица";

пВыборка = пЗапрос.Выполнить().Выбрать();
кол = пВыборка.Количество();
Пока пВыборка.Следующий() Цикл
ДокументСсылка = пВыборка.Ссылка;
Попытка
мДерево = ДеревоДокументов;
мУжеВСписке.Очистить();
ЭлементыФормы.ДеревоДокументов.НачальноеОтображениеДерева = НачальноеОтображениеДерева.РаскрыватьВсеУровни;
ВывестиРодительскиеДокументы(ДокументСсылка);
ЭлементыФормы.ДеревоДокументов.ТекущаяСтрока = мДерево;
ВывестиПодчиненныеДокументы(мДерево);
Исключение
КонецПопытки;
//ЭлементыФормы.ПолеВыбораИмениДокумента1.СписокВыбора = ЭлементыФормы.ДеревоДокументов.ТекущиеДанные.ДокументПредставление;
КонецЦикла;
КонецЕсли;

//ЭлементыФормы.ПолеВыбораИмениДокумента1.СписокВыбора = ПолучитьСписокДокументов();

пЗапрос.Текст = "ВЫБРАТЬ
| ВременнаяТаблица.ДокументПредставление
|ИЗ
| ВременнаяТаблица КАК ВременнаяТаблица";
//ЭлементыФормы.ДеревоДокументов.ТекущиеДанные

//ЭлементыФормы.ДеревоДокументов.ТекущиеДанные.ДокументПредставление
пВыборка = пЗапрос.Выполнить().Выбрать();

КонецПроцедуры




В ДеревеДокументов есть три поля: Документ, Сумма, Дата.

Но я никак не могу выгрузить данные по одному полю (Документ) в КомбоБокс(ПолеВыбора), в свойствах, в поле данных КомбоБокс(ПолеВыбора) выбирал поле из ДереваДокументов, но ничего не происходило.

Скажите пожалйста как поле Документ из ДереваДокументов или из Временной выгрузить в комбобокс?
...
Рейтинг: 0 / 0
14.12.2009, 10:09
    #36364331
Фильир филтра
murzo1,

СписокВыбора должен ссылатся на переменную типа "СписокЗначений"
соответственно надо колонку выгрузить в такой тип данных.

Например так:

СписокВыбора = Новый СписокЗначений();
СписокВыбора.ЗагрузитьЗначения(ДеревоЗначений.Строки.ВыгрузитьКолонку("ИмяКолонки"));
ЭлементФормыСписок.СписокВыбора = СписокВыбора;
...
Рейтинг: 0 / 0
Форумы / [игнор отключен] [закрыт для гостей] / Фильир филтра / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]