Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1C_pr77_Lang1.doc
Скачиваний:
12
Добавлен:
20.11.2019
Размер:
2.43 Mб
Скачать

ИспользоватьВладельца

Установить выборку подчиненного справочника.

Синтаксис:

ИспользоватьВладельца(<Владелец>, <ФлагИзменения>)

Англоязычный синоним:

UseOwner

Параметры:

<Владелец>

Необязательный параметр. Выражение со значением элемента справочника-владельца.

<ФлагИзменения>

Необязательный параметр. Этим флагом регулирует­ся возможность интерактивного изменения владель­ца. 1 — пользователь может изменить владельца интерактивно, 0 — пользователь не может интерактивно изменить владельца. Этот параметр используется в случае использовсния данного метода для объектов типа «справочник», которые являются реквизитами формы или реквизитами диалога.

Возвращаемое значение:

Значение элемента справочника-владельца для текущего подчиненного справочника (на момент до исполнения метода).

Описание:

Метод ИспользоватьВладельца может применяться к объектам типа «справочник» в двух случаях:

  • Для объектов, созданных функцией СоздатьОбъект, метод ИспользоватьВладельца устанавливает элемент справочника-владельца (которому подчинен текущий подчиненный справочник) в ка­честве параметра выборки. Данный метод используется до вызова метода ВыбратьЭлементы, который фактически открывает выборку. Дальней­шая выборка при помощи метода ПолучитьЭлемент будет происходить только среди тех элементов текущего подчиненного справочника, для которых владельцем является заданное значение элемента справочника-владельца <Владелец>. При записи нового элемента текущего справоч­ника данный метод также задает владельца для нового элемента.

  • Для объектов типа «справочник», которые являются реквизитами фор­мы (например, в форме документа — реквизит документа типа «спра­вочник») или реквизитами диалога (например, в форме отчета — рекви­зит диалога типа «справочник») метод ИспользоватьВладельца по­зволяет программно установить некоторое значение справочника-владельца в качестве владельца, который будет использован при инте­рактивном выборе значения данного реквизита.

Пример:

// Процедура выводит список детей сотрудника

// Справочник детей подчинен справочнику сотрудников

Процедура ВыводСпискаДетей(Сотр)

СпрД = СоздатьОбъект("Справочник.Дети");

// в качестве параметра функции ИспользоватьВладельца

// передаем параметр, переданный в процедуру

СпрД.ИспользоватьВладельца(Сотр);

Сообщить("Дети сотрудника " + Сотр.Наименование);

СпрД.ВыбратьЭлементы();

Пока СпрД.ПолучитьЭлемент() > 0 Цикл

Сообщить(СпрД.Наименование);

КонецЦикла;

КонецПроцедуры

Пример:

// В форме элемента справочника Товары есть реквизит Единица,

// который имеет тип подчиненного справочника «Единицы»

// здесь мы можем задать ему в качестве владельца текущий элемент:

Единица.ИспользоватьВладельца(ТекущийЭлемент());

См. также: ВыбратьЭлементы, ПолучитьЭлемент, СоздатьОбъект

ИспользоватьРодителя

Установить выборку по группе справочника.

Синтаксис:

ИспользоватьРодителя(<Группа>)

Англоязычный синоним:

UseParent

Параметры:

<Группа>

Необязательный параметр. Выражение со значе­нием группы справочника.

Возвращаемое значение:

Значение текущей группы для справочника (на момент до исполнения ме­тода).

Описание:

Метод ИспользоватьРодителя устанавливает группу текущего справоч­ника в качестве параметра выборки.

Данный метод используется до вызова метода ВыбратьЭлементы, который фактически открывает выборку. Дальнейшая выборка при помощи метода ПолучитьЭлемент будет происходить только среди элементов текущего спра­вочника, принадлежащих указанной группе.

При добавлении нового элемента текущего справочника данная установка также будет являться свойством нового элемента.

Данный метод может использоваться только для объектов, созданных функцией СоздатьОбъект.

Пример:

// Это процедура формирования отчета - "Список сотрудников"

// ВыбСотр - реквизит диалога типа «справочник.Сотрудники»

Процедура ВыводСпискаСотрудников()

Таб = СоздатьОбъект("Таблица");

Спр = СоздатьОбъект("Справочник.Сотрудники");

Спр.ИспользоватьДату(ДатаОтчета);

Если ВыбСотр.Выбран() = 0 Тогда

// если сотрудник в диалоге не выбран,

// то формируем отчет без условий

Заг = "По всем сотрудникам";

ИначеЕсли ВыбСотр.ЭтоГруппа() = 1 Тогда

// если в диалоге выбрана группа сотрудников, то

// задаем выборку элементов справочника из одной группы

Спр.ИспользоватьРодителя(ВыбСотр);

// Задаем выборку всех подчиненных элементов справочника

Заг = "По сотрудникам группы " + ВыбСотр.Наименование;

Иначе

// если в диалоге выбран сотрудник, то

// формируем отчет только по нему

Спр.НайтиЭлемент(ВыбСотр);

Заг = "По сотруднику " + ВыбСотр.Наименование;

Таб.ВывестиСекцию("Отчет");

Таб.ВывестиСекцию("Сотрудник");

Перейти ~MET;

КонецЕсли;

ЧислоСтрок = 0;

Таб.ВывестиСекцию("Отчет");

// Открываем выборку Спр.ВыбратьЭлементы();

Пока Спр.ПолучитьЭлемент() > 0 Цикл

ЧислоСтрок = ЧислоСтрок + 1;

Если Спр.ЭтоГруппа() = 1 Тогда

Таб.ВывестиСекцию("Группа");

Иначе

Таб.ВывестиСекцию("Сотрудник");

КонецЕсли;

Состояние("В отчет выведено "+ЧислоСтрок+" строк.");

КонецЦикла;

~MET:

//Вызов выходного отчета в окно просмотра и редактирования.

Таб.ТолькоПросмотр(1);

Таб.Опции(0, 0, 4, 0);

Таб.Показать("Список товаров по каталогу", "");

ВыбТовар = 0;

КонецПроцедуры

См. также: ВыбратьЭлементы, ПолучитьЭлемент, СоздатьОбъект

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]