Имя: Пароль:
1C
1С v8
Отбор по колонке
0 first_may
 
12.03.18
20:40
Добрый день.

Конфигурация на обычных формах.
В списке документа добавил колонку, которая заполняется
в процедуре
Процедура СписокПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
...
Если Условие Тогда
ОформлениеСтроки.Ячейки.МояКолонка.УстановитьФлажок(Ложь);
Иначе
ОформлениеСтроки.Ячейки.МояКолонка.УстановитьФлажок(Истина);
КонецЕсли;
КонецПроцедуры

Подскажите пож, можно ли по этой колонке сделать отбор?
Если да, то как это организовать?
1 first_may
 
12.03.18
20:55
Нужен совет
2 h-sp
 
12.03.18
20:59
(1) никак
3 first_may
 
12.03.18
21:01
(2) то есть, мне надо сделать реквизит в документе, заполнять его и только тогда будет работать отбор?
4 h-sp
 
12.03.18
21:08
да, ПриВыводеСтроки запускается уже после отбора.
5 first_may
 
12.03.18
21:11
(4) если ПриВыводеСтроки запускается уже после отбора, то может быть все такие есть способ отбора?

Или уже точно, через реквизит? А может как то по другому сделать, смоделировать отбор,
6 nordbox
 
12.03.18
21:15
Дык ты колонку заполняй не при выводе а раньше
7 first_may
 
12.03.18
21:17
(6) например?
8 h-sp
 
12.03.18
21:17
(5) список документов. То есть отбор - ссылка в ссылке.

а где-то в программе формируете

Если Условие Тогда
   СписокСсылок.Добавить(СсылкаНаДокумент);
9 nordbox
 
12.03.18
21:20
(7) Ну при открытии заполняй и хз как ты отбирать собираешься
инфы мало
10 first_may
 
12.03.18
21:24
(9) моя колонка это флажок (истина/ложь) и ее сделал в форме списка документа ЗаказПокупателя в УПП.

Допустим она заполняется по условию, заполнен грузополучатель или нет в документе, то есть если да, то стоит флажок, если нет, то нет.

Таким образом в списке документов заказпокупателя я хочу сделать отбор по этой колонке, что бы быстро увидеть те документы, где реквизит заполнен.
11 nordbox
 
12.03.18
21:26
Ну дык ты масло масленое делаешь
вот по >>заполнен грузополучатель
и отбирай
12 first_may
 
12.03.18
21:28
(11) я понимаю, образно сказал.
На самом деле проверяю структуру подчиненности, если есть реализация, а на основании нее расходный ордер, то истина, иначе нет.

Что бы на каждом доке ее не открывать и не смотреть, а сразу видеть наличие ордера.
13 nordbox
 
12.03.18
21:33
Ну при открытии и заполняй, вообще... ХЗ
а если реализация через банк пошла а не через расходник....
14 first_may
 
12.03.18
21:34
если через реквизит, то при проведении ордера, надо подниматься по структуре и менять документ заказ покупателя, а это не очень хочется делать
15 first_may
 
12.03.18
21:35
(13) при открытии и заполняй - что?
16 nordbox
 
12.03.18
21:35
Ну дык если реализация через банк, чо делать то будешь?
17 first_may
 
12.03.18
21:36
(16) ложь
18 first_may
 
12.03.18
21:36
(16) речь о РасходныйОрдерНаТовары
19 nordbox
 
12.03.18
21:37
(15) Колонку заполняй при открытии списка доков
20 nordbox
 
12.03.18
21:38
Ну сделай реквизит, все равно уже влез туда
21 Tateossian
 
12.03.18
21:39
Я в УПП такую фишку делал - наподобие как в УНФ, только в обычных формах- типа кружочка, он может быть зелёный, желтый иои красный и плюс еще процент выполнения - это не полностью «заполненный» кружок. А работало (и, наверное, работает) это так - в при получении данных соостветствие заполняется ссылками и из статусами, а при выводе - данные читались из соответствия. В твоем случае можешь сделать запрос в цикле, но запрос к Критерию отбора - должно быстро работать. С отбором получится только в динамическом списке - в принципе, ее делать пару часов максимум.
22 first_may
 
12.03.18
21:40
(20) ну да, реквизит проще - это последнее решение, знаю про него..

но хотел решить задачу без него..
23 first_may
 
12.03.18
21:41
(21) "при получении данных " - точно на обычных формах?
24 Tateossian
 
12.03.18
21:45
(23) Инфа сотка.
25 Малыш Джон
 
12.03.18
21:47
(23) заведи ТЗ, которую будешь заполнять параллельно с табличной частью. В этой ТЗ будешь делать отбор, а в табчасти - отбор уже по номерам строк из "отобранной" ТЗ делай
26 first_may
 
12.03.18
21:53
(24) спс :)

(25) понимаю идею, только вопрос - в какой момент заполнять ТЗ?
27 mistеr
 
12.03.18
21:57
(22) Реквизит не проще. Реквизит сложнее — нужно поддерживать его актуальность (например когда распровели отгрузку).

Для твоей задачи нужно сделать рабочее место менеджера или кто у вас там. Это будет отдельная обработка, а не форма списка. Там либо управляемая форма с дин. списком, либо таб. часть, которая заполняется запросом и обновляется по кнопке Обновить (или по таймеру).
28 mistеr
 
12.03.18
21:57
Да, и статус "отгружено" лучше хранить в отдельном регистре сведений.
29 first_may
 
12.03.18
22:01
(27) "нужно поддерживать его актуальность" - согласен
30 Tateossian
 
12.03.18
22:11
(25) Не надо так. Будет тормозить.
31 first_may
 
12.03.18
22:21
(30) а как лучше - сотка?
32 Tateossian
 
12.03.18
22:22
(31) Соответствие.
33 first_may
 
12.03.18
22:33
(32) угу, но не понятно
- при получении данных
- при выводе - я же так и делаю - Процедура СписокПриВыводеСтроки
34 Tateossian
 
12.03.18
22:37
(33) Все верно, только при выводе строки нельзя делать какие-то ни было операции - будь то поиск строки в таблице значений или, еще круче - обращение к БД, например, выполнение запроса. При получении данных - это событие идет перед первым вызовом При выводе строки и в нем параметром является массив ссылок (что равно строкам списка).
35 first_may
 
12.03.18
22:42
(34) спасибо, но не понял до конца.. буду еще искать что то на просторах инета..
36 FIXXXL
 
13.03.18
09:32
(35) сделай уже упр.форму списка
а что бы быстро летала, храни свои "Истина-Ложь" в рег.свединий сбоку
РС приаттач к списку документов в запросе дин.списка и будет красота