В любом случае, использовать связанные списки в своих программах или нет, придется решать вам, надеюсь, моя статья хоть немного поможет вам в этом.
Отбор на формах и отключение видимости ненужных групп на управляемой форме в 1С
В данной статье я хочу рассказать о отборе на формах в режимах Предприятия и Конфигуратора и отключение видимости ненужных групп на управляемой форме в 1С.
Видимостью элементов можно управлять программно через свойство Видимость при открытии формы:
В случае если нужно скрыть некоторые строки списка с определенным значением нужно работать через отбор.
Открыть форму с отбором можно для любых объектов и несколькими способами в режиме 1С:Конфигуратор, рассмотрим на примере регистра накопления “Оплата счетов”:
Первый способ работает при открытии формы.
У формы есть параметр Отбор, который является структурой, где:
Значение – значение параметра формы или как в данном случае предопределенное значение, как в данном случае. Если отбор берется со значением элемента формы, то имя элемента должно совпадать с именем параметра структуры.
Если нужно открыть форму без отбора, но скрыть несколько элементов можно это реализовать следующим образом:
Второй способ заключается в добавлении кода в обработчике события формы списка оплата счетов ПриСозданииНаСервере
Данный метод имеет больше возможностей для отбора по сравнению с предыдущим, потому, что ВидСравнения у отбора можно задавать не только Равно, но и Больше, Меньше и т.п.
ВидСравненияКомпоновкиДанных определяет набор видов сравнения, которые могут быть использованы в условиях отбора. Но стоит учитывать, что на мобильной платформе игнорируются следующие виды сравнения: НачинаетсяС, НеНачинаетсяС, СоответствуетШаблону, НеСоответствуетШаблону.
РежимОтображенияЭлементаНастройкиКомпоновкиДанных определяет режим отображения.
Используется при отображении списка в зависимости от режима отображения табличного поля.
Кроме того, если элемент принадлежит пользовательскому отбору, свойство используется при формировании начального состава пользовательского отбора и при применении пользовательского отбора к базовому.
Если использовать такой способ – то форма будет открываться всегда с таким отбором – независимо от места вызова формы.
РежимОтображенияЭлементаНастройкиКомпоновкиДанных содержит режимы отображения элемента настройки компоновки данных:
Авто – значение режима нужно получать из основных настроек,
БыстрыйДоступ – этот элемент настройки предназначен для режима быстрого доступа. Он будет доступен в табличном поле, если у расширения табличного поля отбора свойство РежимОтображения будет установлено в значение Все или БыстрыйДоступ,
Недоступный – этот элемент настройки не предназначен для изменения в составе пользовательской настройки,
Обычный – указывает на обычный режим отображения. Он будет доступен в табличном поле, если у расширения табличного поля отбора, свойство РежимОтображения будет установлено в значение Все.
Третий способ – возможность поместить условие отбора в произвольный запрос, выбирающий данные для динамического списка.
1с динамический список добавление строки. Поиск в динамическом списке
Настройка отбора в режиме 1С:Предприятие
В режиме Предприятия также можно настроить отбор. Пользователь может самостоятельно настроить состав и расположение колонок в списке, отборы документов и цвет фона строк и шрифта по определенным условиям.
Рассмотрим настройку списка документов на примере регистра накопления “Книга продаж”.
Для настройки состава и расположения колонок: в правой верхней части списка документов по кнопке “Еще” выберите “Настроить список”, а также есть кнопка “Изменить форму”
В окне “Настройка формы” по кнопке “Еще”можно изменить расположение колонок по кнопкам с синими стрелочками “вверх-вниз” (“вверх” – колонка сдвинется вверх, “вниз” – колонка сдвинется вправо), удалить колонку (по кнопке с красным крестиком), скрыть или установить видимость колонки.
Промокоды на Займер на скидки
Для настройки отборов нужных документов: на панели настроек списка документов доступны отборы по: активности, дате оплаты, организации, ставка НДС, сумма НДС, счет фактура и т. д.
Если нет нужного фильтра, можно настроить свой: по кнопке “Еще” на форме списка выберите “Настроить список”, на закладке “Отбор” настройте отбор по нужному полю
Назначение в этом поле перечисляются документы, для которых эта обработка предназначена в которых она появится после регистрации в информационной базе.
Одиночный подбор
При одиночном подборе форма справочника будет закрываться сразу после выбора элемента. Для выбора следующего элемента необходимо будет снова инициировать подбор.
Откроем форму документа ПриходнаяНакладная , создадим команду Подбор и назначим для нее обработчик:
В этой процедуре мы открываем форму выбора для справочника Номенклатура , указывая, что она подчинена таблице Материалы формы документа ПриходнаяНакладная ( Элементы.Материалы ). При выборе из формы выбора справочника выбранное значение будет передано в обработчик события ОбработкаВыбора таблицы формы Материалы , так как она является владельцем открытой формы выбора.
Поэтому откроем палитру свойств таблицы Материалы и создадим обработчик события ОбработкаВыбора :
В этой процедуре мы добавляем новую строку в таблицу Материалы и присваиваем колонке Материал в новой строке выбранное в форме выбора справочника значение. Это значение передается в обработчик события в параметре ВыбранноеЗначение .
//Индекс — номер добавляемой строки. Нумерация строк начинается с нуля.
1С УФ: Отбор на формах и отключение видимости ненужных групп
- Если табличное поле связано с таблицей или деревом значений, метод добавляет строку в таблицу или дерево значений (аналогично соответствующим методам этих объектов).
- Если табличное поле связано со списком объектов, хранимых в базе данных, метод начинает редактирование нового объекта этого списка. (Например, список объектов в форме списка справочника, или документа).
- Если табличное поле связано с набором записей или табличной частью, то метод начинает редактирование новой записи. (Например, список записей в форме списка регистра сведений; табличная часть документа или справочника).
Множественный подбор с использованием множественного выбора
Обработчик события ОбработкаВыбора остается без изменений.
Метод формы ОповеститьОВыборе() используется в тех случаях, когда алгоритм формирования данных подбора сложен и кроме собственно выбора элемента справочника от пользователя требуется указание некоторой дополнительной информации. В этом случае метод ОповеститьОВыборе() вызывается тогда, когда вся необходимая информация подбора сформирована.
Метод ОповеститьОВыборе() посылает оповещение владельцу формы о выполнении выбора или подбора, передает ему выбранное значение и закрывает форму, если она открыта не в режиме множественного выбора.
Также метод ОповеститьОВыборе() может использоваться в тех случаях, когда требуется передать в форму документа не только выбранный элемент справочника (или массив элементов), а некоторую произвольную структуру данных.
Для чтения из файла используем метод getline , где в качестве третьего параметра указываем пробел, являющийся разделителем в нашем файле.
Настройка отображения списка
Для динамического списка возможны три варианта просмотра: иерархия, список, дерево. Для просмотра в виде дерева и иерархии запросы к базе данных практически одинаковые и соответствуют тем примерам, которые мы рассматривали выше.
В нашем примере мы работали с иерархическим справочником. Но какие запросы будут для справочника без иерархии, если режим просмотра для него установлен «списком»? Все просто. Запросы будут аналогичными, с учетом того, что поле «родитель» будет всегда пустым. Запросы, которые будет формировать платформа, походят на SQL-запросы при раскрытии группы с элементами и при прокрутке списка.
Введение
Группировки динамического списка
При использовании группировок динамического списка, получаемые данные будут группироваться по выбранному полю (полям). Включение группировок приведет к усложнению SQL-запросов к базе, так как платформе необходимо получать дополнительные данные для группировок выборки:
Обратите внимание на появившееся дополнительное левое соединение и дополнительные операции для полей выборки.
Подробно на данном запросе останавливаться не будем, скажу лишь, что в таблице T1 платформа получает возможные значения для полей группировки, а в присоединяемой таблице Т2 содержатся непосредственно записи сгруппированных элементов.
Не смотря на то, что чтение будет происходить динамически (первая выборка при открытии списка будет содержать 42 записи), включение группировок увеличивает нагрузку на сервер.
Микрофинансирование → Микрокредиты → Специальные предложения → Скачать файлы → Обзор Быстроденег → Предмет договора → Ответственность сторон → Отличные наличные→ Экспресс займы