среда, 31 октября 2018 г.

Создание в управляемой форме реквизита с типом динамический список с отбором по владельцу формы (Толстый клиент, тонкий клиент)


Назначение: создание на управляемой форме динамического списка с отбором по владельцу формы.
Номенклатура объектов: документ «Электронное письмо», реквизит «Вложения письма» (динамический список). В этот реквизит должны входить все вложения, относящиеся к данному электронному письму.
Разработка на форме:
1.Добавляем реквизит «ВложенияПисьма».




2.Свойства реквизита «ВложенияПисьма» заполняем как на рисунке



3.Нажимаем на «Настройка списка Открыть» из рис. 2 и на вкладке «Запрос» вводим код:
//-----------------------------------
ВЫБРАТЬ
ВложенияЭлектронныхПисем.Наименование,
ВложенияЭлектронныхПисем.ИмяФайла
ИЗ
Справочник.ВложенияЭлектронныхПисем КАК ВложенияЭлектронныхПисем
ГДЕ
ВложенияЭлектронныхПисем.ПометкаУдаления = ЛОЖЬ
И ВложенияЭлектронныхПисем.Объект = &Объект
//-----------------------------------

4.Перетаскиваем реквизит «ВложенияПисьма» на форму, так чтобы появилась вкладка, как на рисунке.



5.Чтобы подставить значение параметра "Объект" (который в запросе), делаем следующее: у Формы создаем событие "ПриСозданииНаСервере" (как на рисунке), в отладчике заходим в "параметры" (пкм - вычислить выражение - в поле пишем "параметры"), там находим ссылку на владельца формы (например, "СсылкаНаОбъект = Параметры.Ключ;"), далее присваиваем владельца параметру в запросе.






// код в модуле формы
//-----------------------------------
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
 СсылкаНаОбъект = Параметры.Ключ;
ВложенияПисьма.Параметры.УстановитьЗначениеПараметра("Объект",СсылкаНаОбъект);
КонецПроцедуры
//-----------------------------------

Комментариев нет: