|
ОФ - почему не отрабатывает отбор строк? | ☑ | ||
---|---|---|---|---|
0
mikecool
12.08.21
✎
21:43
|
Дорабатываю ОФ Диадока, надо в списке отправленных накладывать фильтр по контрагенту
Добавил заполнение самого контрагента в таблицах документов, добавил виды отбора в группе, в группе из списка и аналогичные "не" код ОтборСтрок= ЭлементФормыТаблица.ОтборСтрок; Для каждого СтрокаОтбора Из НовыйОсновнойОтбор Цикл НайденнаяСтрокаОтбора= ОтборСтрок.Найти(СтрокаОтбора.Имя); НайденнаяСтрокаОтбора.Использование= СтрокаОтбора.Использование; НайденнаяСтрокаОтбора.ВидСравнения= СтрокаОтбора.ВидСравнения; НайденнаяСтрокаОтбора.Значение= СтрокаОтбора.Значение; НайденнаяСтрокаОтбора.Использование= СтрокаОтбора.Использование; КонецЦикла; не срабатывает отбор, и не пойму почему все заполняется верно, все записи отбора - заполнены, но не отрабатывает... варум? |
|||
1
mikecool
12.08.21
✎
21:45
|
при этом нормально отрабатывает на текстовых полях... ничего не понимаю )
|
|||
2
mikecool
12.08.21
✎
22:19
|
может ли быть проблема в том, что для значения установлен составной тип? при этом само значение = конкретный элемент справочника КОнтрагенты
|
|||
3
Ёпрст
13.08.21
✎
01:16
|
(0) в форме списка чего либо, надо юзать нужнаяформа.<Справочник|Документ>Список.Отбор жешь
|
|||
4
mikecool
16.08.21
✎
22:43
|
(3) дык жешь... на форме лежит ТП, из него берется отбор и устанавливается полю вид сравнения и значение (поле Контрагент(тип составной), В группе, <Нужная группа>)- и никакой реакции
беру тот же отбор, на текстовое поле "Содержит" "абв" - и работает |
|||
5
mikecool
16.08.21
✎
22:44
|
отдельно проверил - передается именно то ТП, что мне нужно
|
|||
6
mikecool
16.08.21
✎
23:27
|
стандартная кнопка "отбор по значению в текущей колонке" отрабатывает верно, осталось программную установку отбора победить
|
|||
7
mikecool
16.08.21
✎
23:28
|
тааак... на равно отбор срабатывает
что не так с видом отбора "в группе"? |
|||
8
Ёпрст
17.08.21
✎
00:31
|
(7) передаешь не группу или устанавливаешь значение до типа отбора
|
|||
9
DTX 4th
17.08.21
✎
07:39
|
Так в ОФ же отбор только на равенство..
ОтборСтрок (RowFilter) Примечание: Отбор выполняется по условию вхождения значения. Например, если в колонке есть ячейки со значением "Строка 1", "Строка 2", ... "Строка 10", "Строка 11", ... и устанавливается отбор по значению "Строка 1", то в таблицу будут отобраны строки со значениями "Строка 1", "Строка 10", "Строка 11" и т.д. |
|||
10
mikecool
17.08.21
✎
09:11
|
(8) не, все четенько - сначала вид, потом значение, передаю группу. Натыкался в инете на другой форум, проблема аналогично, не решена (
(9) ты противоречишь сам себе |
|||
11
ptiz
17.08.21
✎
09:46
|
(0) Покажи скрин отбора в режиме пользователя - что вышло после выполнения этого кода?
|
|||
12
mikecool
17.08.21
✎
10:00
|
(11) https://ibb.co/VwsHFF8 скрин из конфигуратора, ибо в предприятии поднимается форма от Диадок
группа контрагентов выбрана такая, в которую не входят контры с обменом через ЭДО, и после применения такого отбора список документов не изменяется |
|||
13
Галахад
гуру
17.08.21
✎
10:02
|
Может действительно попробовать не группу, а список.
|
|||
14
ptiz
17.08.21
✎
10:06
|
(0) Для таб.частей на работает отбор по группам. В режиме предприятия его вообще нет.
|
|||
15
TormozIT
гуру
17.08.21
✎
10:35
|
(9) Ты перепутал УФ и ОФ.
|
|||
16
mikecool
17.08.21
✎
10:51
|
(13) пробовал и в группе из списка - результат одинаков, получается (14), печаль...
недаром контуровцы его не добавили... |
|||
17
mikecool
17.08.21
✎
10:51
|
+16 вернее - они его добавили, а потом закомментировали )
|
|||
18
Ёпрст
17.08.21
✎
10:58
|
(16) у тебя отбор где ? В табличной части документа ?
|
|||
19
mikecool
17.08.21
✎
11:24
|
(18) таб часть обработки
|
|||
20
Ёпрст
17.08.21
✎
14:54
|
(19) там да, нет групп, есть только на значение и на вхождение в список.
Можешь только подменить разве что группу на список всех элеменов в этой группе и фильтр на список. |
|||
21
Ёпрст
17.08.21
✎
14:54
|
но, это так себе решение
|
|||
22
Ёпрст
17.08.21
✎
14:55
|
Или заполнять ТЧ своей обработки данными из построителя, и там уже, отбор будет любой
|
|||
23
mikecool
17.08.21
✎
15:34
|
(20) ругалась бы что ли, ТЧ для приличия )))
|
|||
24
mikecool
17.08.21
✎
15:35
|
(22) это вариант, спасибо
|
|||
25
mikecool
17.08.21
✎
23:05
|
эксперимент с построителем тоже неудачный:
ДанныеТП = ЭлементФормыТаблица.Значение.Выгрузить(); ИсточникДанных = Новый ОписаниеИсточникаДанных(ДанныеТП); Для каждого СтрокаОтбора Из НовыйОсновнойОтбор Цикл ИсточникДанных.Колонки[СтрокаОтбора.Имя].Отбор = СтрокаОтбора.Использование; КонецЦикла; Построитель = Новый ПостроительОтчета; Построитель.ИсточникДанных = ИсточникДанных; Построитель.ЗаполнитьНастройки(); Для каждого СтрокаОтбора Из НовыйОсновнойОтбор Цикл ЭлементОтбора = Построитель.Отбор.Найти(СтрокаОтбора.Имя); Если ЭлементОтбора = Неопределено Тогда ЭлементОтбора = Построитель.Отбор.Добавить(СтрокаОтбора.Имя); КонецЕсли; ЗаполнитьЗначенияСвойств(ЭлементОтбора, СтрокаОтбора); КонецЦикла; Построитель.Выполнить(); ЭлементФормыТаблица.Значение.Загрузить(Построитель.Результат.Выгрузить()); отбор работает на "Равно", "Не равно" и т.п. , но с "В группе" и т.п. не работает... возвращает пустую ТЗ |
|||
26
Ёпрст
18.08.21
✎
11:04
|
(27) изначально, тч обработки как заполняется ?
|
|||
27
mikecool
18.08.21
✎
11:05
|
(26) по данным сервера формируется ТЗ и перебором добавляется построчно в таб часть
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |