Волшебство программирования на 1С:Предприятие 7.7 и 8.0 Выпуск 72 / 18.09.2004
Здравствуйте, уважаемые подписчики.
Новый проект - "Будни по 8.0"
Каждый день в платформе 1С:Предприятие 8.0 открываются новые неизведанные возможности, возможно находятся баги, обнаруживаются особенности функционирования системы. Предлагаю делиться этими знаниями с общественностью на форуме www.forum.mista.ru.
То, что я предлагаю, это не обычные ветки форума, когда кто-то задает вопрос, а другой на него отвечает. Можно сказать, что ветку начинает отвечающий, рассказывая об интересной особенности 8.0. Больше всего это похоже на 1С:Будни http://gendin.ru/budni/index.html (по 7.7)
Я предлагаю поучаствовать вам в новом проекте - "Будни по 8.0". Все, что для этого нужно - это читать рассылку и по возможности делиться своими открытиями на форуме.
Обратите внимание, что сначала очередной будень будет публиковаться на форуме для того, чтобы провести его бета-тестирование, собрать отзывы и сделать его более качественным, развернутым. И только после этого он будет публиковаться в рассылке и на сайте. Планируется, что будни можно будет выделять среди всех тем форума, скачивать для чтения в оффлайне, делать по ним поиск и т.д.
v8: Будни: Отбор строк табличной части
Часто возникает задача показать только нужные строки в табличной части документа или справочника (или другого объекта). Для этого можно использовать замечательное свойство ОтборСтрок, которое входит в расширение табличного поля, связанного с табличной частью.
Использовать его очень просто:
//установить отбор ЭлементыФормы.ИмяТабПоля.ОтборСтрок.Колонка1.Установить(ЗначениеОтбора);
//отключить отбор ЭлементыФормы.ИмяТабПоля.ОтборСтрок.Колонка1.Установить(,Ложь);
С помощью свойства ОтборСтрок можно реализовать подчиненные (связанные) табличные части. При смене текущей строки в первой табличной части вторая табличная часть показывает только связанную информаци. Например, таким образом можно реализовать работу с комплектами: 1-я таб. часть - комплекты, вторая - состав комплекта.
Во второй табличной части должна быть колонка - идентификационный признак, связывающий ее с первой табличной частью. Таких колонок может быть несколько (составной ключ);
В событии ПриАктивизацииСтроки для первого табличного поля пишем:
При добавлении новой строки во вторую табличную часть, нужно следить за тем, чтобы идентификационная колонка была установлена.
----------- Обращаю ваше внимание, что при таком отборе не используются индексы и для больших табличных частей возможно замедление работы.
Еще раз напомню, что ОтборСтрок входит в расширение табличного поля табличной части, т.е. табличное поле должно быть связано с табличной частью. Если же оно связано с динамическим списком типа СправочникСписок, то здесь нужно использовать свойство Отбор для объекта типа СправочникСписок.