Заполнить поля справочника

Дайнеко

Well-known member
19.11.2009
951
0
#1
Платформа 8.2. Есть справочник, в нем реквизит "Док" типа Документ.
На форме справочника размещены несколько колонок в списке. Информация в них берется из документа "Док":
Процедура СправочникСписокПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
ОформлениеСтроки.Ячейки.Клиент.Значение = ДанныеСтроки.Док.Клиент;
ОформлениеСтроки.Ячейки.Автор.Значение = ДанныеСтроки.Док.Автор;
КонецПроцедуры

Нужна более серьезная задача: отбор и сортировка по этим колонкам. Понимаю, что в нынешнем решении 1) они текстовые 2) процедура заполняет только видимые в данный момент на экране строки.

Спасибо, тем кто поможет.
 
W

WildAnther

#2
Если честно я не совсем понял задачу... Отбор и сортировка чего? =)
 

Дайнеко

Well-known member
19.11.2009
951
0
#3
Уточняю задачу:
Есть справочник. Поля: Код, Наименование, Док (тип Документ) и все.
На форме списка спр-ка размещаю колонку Док и программирую вывод 2 колонок: Клиент, Автор (как написал выше).
Что происходит, когда я включаю комп-р, запускаю 1С Предприятие, открываю справочник:
- вижу все 3 красивые колонки. Во всех строках разные Клиента и Авторы.
- ко мне подходит коллега и из-за плеча говорит: "А отбери-ка только строки, где Клиент = "з-д им. Кирова"
- нажимаю кнопку "Действия"/"Установить отбор и сортировку списка".
- в окне диалога вижу только слова "Док" "Равно" <Поле выбора>.
Я хочу дать возможность пользователю:
- отобрать записи по условию Клиент = "з-д им. Кирова"
- установить сортировку: сначала идут строки с Автором="Абдулаев", потом "Васечкин", и так до конца по алфавиту до "Яблочкин".
Ну, граждане, если не очень понятно изложил, так я могу и картинки приложить. ;) Не стесняйтесь спрашивать.
 

evgenyatam

Well-known member
07.09.2007
175
0
#4
вариантов всего три:
1. добавить реальные атрибуты "автор","клиент".
2. создать свою иммитацию отбора.
3. загружать справочник в табличную часть обработки (не тогоже справочника), соответственно там можно добавить 2 атрибута "автор","клиент".
 

Дайнеко

Well-known member
19.11.2009
951
0
#5
1. добавить реальные атрибуты "автор","клиент".
Ну, реализовать просто, сработает наверняка. Следствия: 1)При записи поля Док позаботится об изменении остальных, производных атрибутов. Я в примере указал 2, а их побольше. 2) если документ редактируется из другого окна (своего журнала), то контролировать тяжко 3) согласитесь, есть избыточность данных.

2. создать свою иммитацию отбора.
Вот если бы поподробнее.

3. загружать справочник в табличную часть обработки (не того же справочника).
Понимаю так: ПриОткрытии считывается весь справочник в ТЗ и заполняются реквизиты.
Вопросы: 1) а точно будет возможность сортировки группировки? 2) а как быть с изменением справочника? Почему связался со справочником - мне нужно добавлять/удалять строки и представлять его иерархически. Если синхронизировать изменения можно, то как нарисовать иерархию для ТЗ - не представляю.

За предложения спасибо.
 

evgenyatam

Well-known member
07.09.2007
175
0
#6
по 2 например так: добавляем атрибут отобрано, при нажатии на кнопку отбор (нестандартная) пробегаемся по всем элементам и устанавливаем флаг в соответствии с отбором и значением.
дальше - свободное творчество.
или создаем сз, в него запихиваем Коды подходящих элементов, а далее отбор по вхождению кода в список.

по 3 возможность отбора и сортировки будет. а с иерархией - это не к тз а к дереву значений.