• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

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

  • Автор темы Дайнеко
  • Дата начала
Д

Дайнеко

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

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

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

WildAnther

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

Дайнеко

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

evgenyatam

вариантов всего три:
1. добавить реальные атрибуты "автор","клиент".
2. создать свою иммитацию отбора.
3. загружать справочник в табличную часть обработки (не тогоже справочника), соответственно там можно добавить 2 атрибута "автор","клиент".
 
Д

Дайнеко

вариантов всего три:

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

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

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

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

evgenyatam

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

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

Обучение наступательной кибербезопасности в игровой форме. Начать игру!