Имя: Пароль:
1C
1С v8
Мобильная приложение: живой поиск в ТаблицаЗначений (как в ДинамическомСписке)
,
0 dave2000
 
12.09.17
15:24
Версия мобильной платформы 8.3.10.51.

Есть некий сложный запрос, который хитро собирает данные из иногих регистров и выводит их в таблицу значений, которая отображается на форме. Столкнулся с проблемой, когда решил добавить к этой таблице живой поиск (отбор по всей таблице по мере ввода текста). Такое поле поиска уже давно реализовано в динамических списках, но динамический список я использовать не могу, т.к. он не понимает сложных запросов (много ограничений). А впихнуть готовую таблицу значений в динамический список тоже нельзя. Как вариант, записать все данные в регистр, а из него уже динамическим списком отображать - вариант очень удобный, но смущает +1 лишний объект и запись ненужных данных в базу.

Может есть ещё какие варианты?

Или может кто знает, как прикрутить живой поиск к таблице значений (может я что-то не так делаю)
1 dave2000
 
12.09.17
19:17
я так понял, по мобильной платформе тут мало спецов?)
2 УспешныйЧел
 
12.09.17
19:37
сначала пусть юзабилити сделают нормальное, потом может быть спецы появятся.
3 Tateossian
 
12.09.17
19:58
(0) Сделать решение в Android Studio или в AppCode или еще в какой среде:) По сабжу: пиши в справочник, он быстрее работает и нет проверок лишних, потом удаляй ненужные записи. Или реализуй свою работу с полем ввода и событиями, так правильнее, но сложнее.
4 dave2000
 
12.09.17
21:00
(2) Согласен полность, сам пишу и плююсь. Просто выхода у меня другого нет)

(3) Справочник будет быстрее, чем регистр сведений?
5 Cyberhawk
 
12.09.17
21:10
Сделай свое поле ввода на форме
6 DitriX
 
13.09.17
00:40
А чаго мешает Условным оформлением скрыть строки которые не содержат нужный текст?
У меня все работает отлично.
7 Tateossian
 
13.09.17
00:45
(4) Да.

(6) А как условное оформление скрывает пустые строки? Границы-текст под цвет фона перекрасить? Это в духе костылей веб-разработчиков, они такое любят)))
8 DitriX
 
13.09.17
00:58
(7) ёпта, там свойство - ВИДИМОСТЬ, что не понятного с ним то?
9 breezee
 
13.09.17
06:46
(1) Делал такую задачу, через условное оформление фомы сделал, работает "на ура"
10 dave2000
 
13.09.17
14:04
(6) (9) Тоже интересный вариант, имеет право на жизнь

Создал пока универсальный регистр сведений, для использования в разных списках.
Может кому пригодится:

Регистр сведений "ДанныеДляДинамическихСписков"
Измерения
- ИмяДанных
- Измерение1
- Измерение2
Ресурсы
- Ресурс1
- Ресурс2
- Ресурс3
- Ресурс4
- Ресурс5


Данные из таблицы значений записываю так:


ЗаписатьДанныеДляДинамическогоСписка("СписокЗаказов", ТабЗн, "Контрагент,ДоговорКонтрагента", "ТипЗаказа,Количество,Вес,Закрыт");


Сама процедура записи:

&НаСервере
Процедура ЗаписатьДанныеДляДинамическогоСписка(ИмяДанных, Таб, Измерения, Ресурсы)
    
    Измерения = СтрЗаменить(Измерения, ",", Символы.ПС);
    Ресурсы = СтрЗаменить(Ресурсы, ",", Символы.ПС);
    
    Набор = РегистрыСведений.ДанныеДляДинамическихСписков.СоздатьНаборЗаписей();
    Набор.Отбор.ИмяДанных.Установить(ИмяДанных);
    
    Для каждого Стр Из Таб Цикл
        НоваяЗапись = Набор.Добавить();
        НоваяЗапись.ИмяДанных = ИмяДанных;
        
        Для П = 1 По СтрЧислоСтрок(Измерения) Цикл
            НоваяЗапись["Измерение" + П] = Стр[СтрПолучитьСтроку(Измерения, П)];
        КонецЦикла;
        
        Для П = 1 По СтрЧислоСтрок(Ресурсы) Цикл
            НоваяЗапись["Ресурс" + П] = Стр[СтрПолучитьСтроку(Ресурсы, П)];
        КонецЦикла;
        
    КонецЦикла;
    
    Набор.Записать();
    
КонецПроцедуры
11 dave2000
 
13.09.17
14:06
(10) В динамическом списке в произвольном запросе тупо отбираю из регистра данные по имени данных, называю поля как мне нужно и всё :)
12 dave2000
 
13.09.17
14:06
Спасибо всем откликнувшимся!)
13 breezee
 
13.09.17
14:16
(10) Что это за жесть? Разберись с условным оформлением, добавь поле и накладывай условие "подобно". А если уж решил делать через регистр - просто открой форму регистра, там есть поля поиска
14 dave2000
 
13.09.17
16:47
(13) Заинтриговал, таки попробую на выходных))
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.