18c0693f

Глава 10 Работа со Справочниками

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

Например, для того, чтобы покупатель, продавец, кладовщик, директор од­нозначно понимали, о каком товаре идет речь, каждый должен называть его одинаково, т. е. в соответствии с однажды утвержденным справочником товаров. Обычно в торговом предприятии он имеет вид прайс-листа, а если такой спра­вочник товаров хранится в компьютере, то в него заносят всю возможную но­менклатуру товаров, с которыми работает торговая фирма.

Название и структура каждого конкретного справочника определяется при его создании в конфигураторе. У любого справочника существует два обяза­тельных реквизита, которые создаются автоматически — Код и Наименование. Другие реквизиты справочника, которые могут содержать различную дополнительную информацию помимо наименования, определяются в конфигураторе конкретно для каждого создаваемого справочника.

Реквизиты справочников могут быть периодическими или нет (это задается в конфигураторе при создании реквизита). Периодические реквизиты — это реквизиты, значения которых связаны с датой. При изменении значения пе­риодического реквизита старое значение сохраняется, при этом новое значение действует с указанной даты, а старое — до указанной даты. Работа с периодиче­скими реквизитами осуществляется при помощи методов Получить и ИспользоватьДату, а также при помощи специального агрегатного типа дан­ных — Периодический.

Система 1С:Предприятие дает возможность создавать и использовать мно­гоуровневые справочники. Количество уровней вложенности конкретного спра­вочника устанавливается в конфигураторе. Кроме того, справочникам можно указывать их подчиненность другим справочникам, образовывая таким образом связи типа «один ко многим».

Контекст работы со справочниками В синтаксисе языка обращение к атрибутам, а также вызов методов спра­вочников зависит от контекста выполнения программного модуля.

Если конкретный элемент или группа справочника входит (согласно ло­кального контекста) в набор непосредственно доступных модулю значений аг­регатных типов данных (см. «Виды программных модулей»), то обращение к атрибуту, вызов метода для этого элемента или группы справочника — просто имя этого атрибута или метода с указанием необходимых параметров.

Пример:

* В форме редактирования элемента справочника «Сотрудники» мы имеем непосредственный доступ к текущему элементу (сотруднику) справочника. Значит, чтобы изменить имя текущего сотрудника, просто укажем:

Наименование = Сидоров С.С.;

Значение элемента или группы справочника может быть получено из дру­гих источников, например как реквизит какого-либо документа. Чтобы полу­чить доступ к атрибуту, вызвать метод такой переменной со значением типа «Справочник», имя этого атрибута, метода (с указанием необходимых парамет­ров) пишется через точку после имени реквизита.

Пример:

* Если в документе значение реквизита Сотрудники имеет тип «Спра­вочник», имя сотрудника можно узнать следующим образом:

ИмяСотр = Док.Сотрудники.Наименование;

В других случаях доступ к атрибутам, вызов методов конкретного элемента или группы справочника происходит при помощи переменной со ссылкой на объект типа «Справочник». Объект создается функцией СоздатьОбъект, ссылка на который присваивается переменной. Чтобы вызвать атрибут или метод объекта, имя этого атрибута, метода (с указанием необходимых парамет­ров) пишется через точку после имени переменной.

При создании переменной со ссылкой на объект типа «Справочник» в каче­стве имени справочника должно выступать полное название конкретного вида справочника, как он объявлен в конфигураторе. Вид справочника записывается через точку после ключевого слова Справочник, т. е. полное имя справочни­ка записывается следующим образом:

Справочник.Имя_Справочника

где Имя_Справочника — название справочника, определенное в конфи­гураторе.

Англоязычный синоним ключевого слова Справочник — Reference. Допускается создавать объект неопределенного вида справочника. В этом случае название конкретного вида справочника в параметре вызова функции СоздатьОбъект опускается. Далее для работы с таким объектом ему надо ус­тановить вид справочника при помощи метода Вид.

Пример:

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

Спр2=СоздатьОбъект(Справочник.Клиенты);

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

СпрЗ.Вид(Валюты);

Замечание. Следует обратить особое внимание, что переменной может быть присвоена ссылка на позиционируемый объект или само значение элемен­та справочника (например, переменной может быть присвоено значение реквизита документа, который имеет тип «Справочник»). Использование ссылки, созданной при помощи функции СоздатьОбъект существенно отличается от работы непосредственно со значением элемента справочни­ка. Только при работе со ссылкой на позиционируемый объект типа «Справочник» есть возможность изменять позиционирование (найти-выбрать...) текущего элемента справочника (т. е. осуществлять навигацию по справочнику), создавать новые элементы и удалять существующие. С другой стороны, ссылка не содержит собственно значения элемента спра­вочника, которое можно присвоить чему-либо. Однако, его всегда можно получить используя метод ТекущийЭлемент.

Замечание. Объект, созданный при помощи функции СоздатьОбъект, изна­чально не спозиционирован, т. е. не указывает на конкретный элемент справочника. Чтобы начать с ним работать, его предварительно надо по­зиционировать при помощи методов НайтиЭлемент, НайтиПоКоду, ПолучитьЭлемент и т. п.

Пример:

*

//В модуле Формы списков Справочника

// меняем наименование выбранного в списке элемента справочника

Наименование = Администрация;

*

// В модуле Формы элемента справочника или

// В модуле Формы группы справочника

// при редактирования одного элемента справочника

// меняем наименование обрабатываемого элемента справочника

Наименование = Бухгалтерия;

*

// В других программных модулях

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

Спр.Новый();

//задаем реквизиты элемента Справочника, используя атрибуты

Спр.Наименование = Авто-Элемент;

Спр.Код = 1032;

Спр.Размер = 10045;

Спр.Записать();

Атрибуты справочников

Код

Значение реквизита Код.

Синтаксис:

Код

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

Code

Описание:

Атрибут Код предоставляет доступ к значению обязательного реквизита Код выбранного элемента справочника.

Пример:

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

Спр.НайтиПоКоду(29);

Ид = Спр.Код;

Спр.Код = Ид + 5;

Наименование

Значение реквизита Наименование.

Синтаксис:

Наименование

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

Description

Описание:

Атрибут Наименование предоставляет доступ к значению обязательного реквизита Наименование выбранного элемента справочника.

Пример:

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

Спр.НайтиПоКоду(29);

Подразделение = Спр.Наименование;

Реквизит

Значение реквизита справочника.

Синтаксис:

Реквизит Идентификатор реквизита справочника, как он задан в конфигураторе.
Описание:

Атрибут Реквизит предоставляет доступ к значению реквизита выбран­ного элемента справочника. В тексте программного модуля в качестве названия реквизита подставляется идентификатор конкретного реквизита справочника, созданного в конфигураторе.

Пример:

// В этом примере справочник Сотрудники имеет реквизит Оклад

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

Спр.НайтиПоКоду(111);

ОкладСотр = Спр.Оклад;

Спр.Оклад = ОкладСотр * 1.5;

Родитель

Значение родительской группы элемента справочника.

Синтаксис:

Родитель

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

Parent

Описание:

Атрибут Родитель предоставляет доступ к значению родительской группы выбранного элемента справочника.

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

Пример:

Функция ДатьРодителя(Элем)

   // Справочник Товаров многоуровневый

   // Получая в параметре функции значение товара,

   // надо выдать имя группы товара

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

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

   Если Спр.Уровень() 1 Тогда

      Спр.НайтиЭлемент(Спр.Родитель);

      Возврат Этот товар принадлежит группе + Спр.Наименование;

   Иначе

      Возврат Это товар первого уровня - нет родителя!;

   КонецЕсли;

КонецФункции

Владелец

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

Синтаксис:

Владелец

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

Owner

Описание:

Атрибут Владелец предоставляет доступ к значению элемента сопряженно­го справочника, которому подчинен выбранный элемент текущего справочника.

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

Пример:

Функция ДатьВладельца(Элем)

   // Справочник Единицы подчинен Справочнику Товары

   // Получая в параметре функции значение Единицы измерения товара,

   // надо выдать имя товара, для которого задана эта единица изм.

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

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

   СпрЕ.НайтиЭлемент(Элем);

   СпрТ.НайтиЭлемент(СпрЕ.Владелец);

   Возврат Это единица измерения товара + СпрТ.Наименование;

КонецФункции

Методы периодических реквизитов

Получить

Получить значение периодического реквизита справочника на дату (или на документ).

Синтаксис:

Получить(Дата)

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

GetValue

Параметры:

Дата Необязательный параметр. Выражение со зна­чением требуемой даты или значение типа «документ» (в этом случае возвращается зна­чение на дату и время документа). Значение по умолчанию — ТА.
Возвращаемое значение:

Значение периодического реквизита справочника на заданную дату (или на документ).

Описание:

Метод Получить возвращает значение периодического реквизита справоч­ника на определенную дату или на документ. Данный метод разрешено исполь­зовать только для периодических реквизитов справочников, если для справоч­ника не установлена дата при помощи метода ИспользоватьДату.

Замечание: Если к объекту типа «справочник» однажды применен метод ИспользоватьДату, то в дальнейшем, чтобы выбирать значения перио­дических реквизитов справочника, нельзя применять к этому же объекту метод Получить, т. е. в такой последовательности эти два метода несо­вместимы.

Пример:

// при работе в контексте документа, его реквизит Сотрудник

// является переменной типа справочник,

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

// справочника, применим функцию Получить

ОкладСотр = Сотрудники.Оклад.Получить(ДатаДок);

См. также: ИспользоватьДату, Установить

Установить

Записать новое значение периодического реквизита справочника на заданную дату.

Синтаксис:

Установить(Дата, 3начение)

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

SetValue

Параметры:

Дата Выражение со значением требуемой даты.
3начение Выражение, содержащее устанавливаемое зна­чение периодического реквизита справочника.
Описание:

Метод Установить записывает значение периодического реквизита спра­вочника на определенную дату. Данный метод разрешено использовать только для периодических реквизитов справочников, если для справочника не уста­новлена дата при помощи метода ИспользоватьДату.

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

Замечание: Если к объекту типа «справочник» однажды применен метод ИспользоватьДату, то в дальнейшем, чтобы записать новые значения периодических реквизитов справочника, нельзя применять к этому же объекту метод Установить, т. е. в такой последовательности эти два ме­тода несовместимы.

Пример:

// при работе в контексте документа, его реквизит Сотрудник

// является переменной типа справочник,

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

// реквизита Оклад этого элемента

// справочника, применим функцию Получить

Сотрудники.Оклад.Установить(ДатаДок, МаксОклад);

См. также: ИспользоватьДату, УстановитьРеквизитСправочника, Получить

Методы справочников

Вид

Определить вид справочника.

Синтаксис:

Вид(Название)

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

Kind

Параметры:

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

Строковое значение, содержащее текущее название вида справочника (на момент до исполнения метода).

Описание:

Метод Вид позволяет установить или получить текущее название вида справочника. В тексте программы метод Вид можно использовать как процеду­ру или как функцию. Если при вызове метода параметр Название задан явно, то вид справочника устанавливается в соответствии с этим параметром. Метод возвращает строку, содержащую текущий (на момент до исполнения метода) идентификатор вида справочника, как он задан в конфигураторе.

Устанавливать новое значение вида справочника допускается только для объектов типа «Справочник» неопределенного вида, созданных при помощи функции СоздатьОбъект.

Пример:

// отобразим вид справочника в строке состояния

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

Состояние(Cnpl.Вид());

Спр2 = СоздатьОбъект(Справочник.Клиенты);

Состояние(Спр2.Вид());

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

СпрЗ.Вид(Валюты);

Состояние(СпрЗ.Вид());

ПредставлениеВида

Определить пользовательское представление вида справочника.

Синтаксис:

ПредставлениеВида()

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

KindPresent

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

Строковое значение, содержащее пользовательское представление вида справочника (синоним справочника или, если он пустой, то идентификатор).

Описание:

Метод ПредставлениеВида позволяет получить пользовательское пред­ставление вида справочника, как он задан в конфигураторе.

Пример:

// отобразим представление вида справочника в строке состояния

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

Состояние(Cnpl.ПредставлениеВида());

Уровень

Определить номер уровня элемента справочника.

Синтаксис:

Уровень()

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

Level

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

Числовое значение номера уровня текущего элемента справочника.

Описание:

Метод Уровень возвращает номер уровня текущего элемента справочника в структуре дерева многоуровневого справочника.

Пример:

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

Спр.ИспользоватьДату(РабочаяДата());

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

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

   Сообщить(Строка(Спр.Наименование + Спр.Код + Спр.Уровень());

КонецЦикла;

УстановитьАтрибут

Установить значение реквизита по имени идентификатора.

Синтаксис:

УстановитьАтрибут(ИмяРеквизита, 3начение)

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

SetAttrib

Параметры:

ИмяРеквизита Строковое выражение, содержащее имя реквизи­та, как оно задано в конфигураторе.
3начение Выражение, содержащее устанавливаемое значе­ние реквизита.
Описание:

Метод УстановитьАтрибут позволяет установить значение реквизита по имени идентификатора, как оно задано в конфигураторе.

Пример:

Тов.УстановитьАтрибут(ЦенаРозн, ЦенаТов);

ПолучитьАтрибут

Получить значение реквизита по имени идентификатора.

Синтаксис:

ПолучитьАтрибут(ИмяРеквизита)

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

GetAttrib

Параметры:

ИмяРеквизита Строковое выражение, содержащее имя реквизи­та, как оно задано в конфигураторе.
Возвращаемое значение:

Значение реквизита ИмяРеквизита.

Описание:

Метод ПолучитьАтрибут позволяет получить значение реквизита по име­ни идентификатора, как оно задано в конфигураторе.

Пример:

ЦенаТов = Тов.ПолучитьАтрибут(ЦенаРозн);

ЭтоГруппа

Проверить принадлежность к группам.

Синтаксис:

ЭтоГруппа()

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

IsGroup

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

Числовое значение: 1 — если выбранный элемент справочника является группой , 0 — если выбранный элемент справочника обычный элемент.

Описание:

Метод ЭтоГруппа возвращает числовое значение 1 — если выбранный элемент справочника является группой , 0 — если выбранный элемент спра­вочника обычный элемент.

Пример:

* В данном примере мы просматриваем весь справочник Сотрудники и для групп сотрудников выводим в таблицу секцию Группа, а для со­трудников выводим секцию Элемент

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

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

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

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

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

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

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

   Иначе

      Таб.ВывестиСекцию(Элемент);

   КонецЕсли;

КонецЦикла;

См. также: ПринадлежитГруппе

ПринадлежитГруппе

Проверить принадлежность к группе.

Синтаксис:

ПринадлежитГруппе(Группа)

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

BelongsToGroup

Параметры:

Группа Выражение со значением группы справочника.
Возвращаемое значение:

Числовое значение: 1 — если выбранный элемент справочника принадлежит указанной группе, 0 — если нет.

Описание:

Метод ПринадлежитГруппе проверяет, принадлежит ли указанной группе текущий элемент справочника (не важно, на каком нижестоящем уровне он находится). Возвращаемое числовое значение: 1 — если да; 0 — если нет.

Пример:

// выведем в отчет только те подразделения, которые

// принадлежат группе ВыбГруппа

Процедура ВывестиНаПечать()

   // . . .

   Возврат;

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

...

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

// Задаем выборку в порядке кодов Спр.ПорядокКодов();

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

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

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

      ВывестиНаПечать();

   КонецЕсли;

КонецЦикла;

См. также: ЭтоГруппа

Выбран

Проверить факт выбора элемента справочника.

Синтаксис:

Выбран()

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

Selected

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

Числовое значение: 1 — если элемент справочника выбран (спозициониро­ван); 0 — если не выбран.

Описание:

Метод Выбран возвращает число со значением 1 — если элемент справоч­ника выбран (спозиционирован), 0 — если элемент справочника не выбран.

Пример:

// В диалоге формирования некоторого отчета

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

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

   // Если Склад в диалоге не выбран, то формируем без условий

   Заг1 = По всем складам.;

Иначе

   // если в диалоге выбран Склад

   // то формируем отчет только по выбранному складу

   Заг1 = Отчет по складу + ВыбСклад.Наименование;

КонецЕсли;

Выбрать

Выбрать элемент справочника в диалоге.

Синтаксис:

Выбрать(Подсказка, Форма Списка)

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

Choose

Параметры:

Подсказка Текст заголовка окна диалога выбора. Может ис­пользоваться в качестве подсказки конечному поль­зователю.
ФормаСписка Строковое выражение идентификатора той формы списка справочника (как он объявлен в конфигура­торе), которая должна использоваться для выбора. Если это значение пустое, то используется форма списка по умолчанию.
Возвращаемое значение:

Числовое значение: 1 — если элемент выбран; 0 — если не выбран.

Описание:

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

Пример:

// данная процедура присваивает некоторому реквизиту Фирма

// значение из Справочника.Фирмы

Процедура УстФирмы()

   // Создадим объект требуемого справочника

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

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

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

   Фрм.ИспользоватьДату(ДатаДок);

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

   Если Фрм.Выбрать(Выберите фирму, ) 0 Тогда

      Фирма = Фрм.ТекущийЭлемент();

   КонецЕсли;

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

См. также: ВидыДляВыбора

ВидыДляВыбора

Установка выбираемых видов для справочника неопределенного вида.

Синтаксис:

ВидыДляВыбора(СписокВидов)

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

KindsForChoise

Параметры:

СписокВидов Необязательный параметр. Строковое выражение, содержащее список видов выбираемых справоч­ников, разделенных запятыми.
Возвращаемое значение:

Строковое значение, содержащее текущий список видов выбираемых спра­вочников, разделенных запятыми (на момент до исполнения метода).

Описание:

Метод ВидыДляВыбора устанавливает выбираемые виды для объекта-справочника неопределенного вида. Данный метод обычно используется до начала интерактивного позиционирования элемента справочника, например, при помощи метода Выбрать.

Данный метод может использоваться только для объектов-справочников не­определенного вида, либо созданных функцией СоздатьОбъект, либо опреде­ленных в конфигураторе как реквизиты диалога или другого объекта. Если метод ВидыДляВыбора применен к реквизиту диалога типа «справочник неоп­ределенного вида», то интерактивный выбор элемента справочника будет про­изводиться только среди установленных видов справочников.

Пример:

// данная процедура присваивает некоторому реквизиту Фирма

// значение из Справочника.Фирмы

Процедура УстФирмы()

   // Создадим объект требуемого справочника

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

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

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

   Фрм.ВидыДляВыбора(Фирмы);

   Фрм.ИспользоватьДату(ДатаДок);

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

   Если Фрм.Выбрать(Выберите фирму, ) 0 Тогда

      Фирма = Фрм.ТекущийЭлемент();

   КонецЕсли;

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

См. также: Выбрать

ВыборГруппы

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

Синтаксис:

ВыборГруппы(Режим)

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

SelectGroup

Параметры:

Режим Необязательный параметр. Числовое выражение:
1 — выбирать группы; 0—не выбирать группы.

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

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

Описание:

Метод ВыборГруппы устанавливает режим выборки групп. Данный метод может применяться как для позиционируемых объектов, созданных функцией СоздатьОбъект, так и для элементов диалога для полей типа «справочник» (см. «Методы элементов диалога»).

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

Пример:

* Если в форме документа необходимо, чтобы какой-либо реквизит Статус типа «справочник» мог принимать значения как элемента, так и группы, то этому реквизиту следует установить:

Статус.ВыборГруппы(1);

*

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

// Задаем выборку без групп

Спр.ВыборГруппы(0);

// Открываем выборку

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

// Цикл получения элементов справочника

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

   Состояние(Спр.Наименование);

КонецЦикла;

ТекущийЭлемент

Получить значение элемента справочника.

Синтаксис:

ТекущийЭлемент()

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

Currentltem

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

Значение элемента справочника.

Описание:

Метод ТекущийЭлемент возвращает значение элемента справочника в це­лом, как объекта. Данный метод применяется, например, если нужно элемент справочника передать как параметр в вызове какого-либо метода или присвоить какому-либо реквизиту.

Пример:

// данная процедура присваивает некоторому реквизиту Фирма

// значение из справочника Фирмы

Процедура УстФирмы()

   // Создадим объект требуемого справочника

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

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

   Если Фрм.Выбрать(Выберите фирму, ) 0 Тогда

      Фирма = Фрм.ТекущийЭлемент();

   КонецЕсли;

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

ПолныйКод

Определить полный код элемента справочника.

Синтаксис:

ПолныйКод()

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

FullCode

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

Строковое значение, содержащее полный код выбранного элемента спра­вочника.

Описание:

Метод ПолныйКод возвращает строку, содержащую полный код выбранно­го элемента справочника (с кодами групп всех вышестоящих уровней, разде­ленными символом /).

Пример:

ПолнКод = Спр.Подразделения.ПолныйКод();

См. также: НайтиПоКоду

ПолноеНаименование

Определить полное наименование элемента справочника.

Синтаксис:

ПолноеНаименование()

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

FullDescr

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

Строковое значение, содержащее полное наименование выбранного элемен­та справочника.

Описание:

Метод ПолноеНаименование возвращает строку, содержащую полное на­именование выбранного элемента справочника (с наименованиями групп всех вышестоящих уровней, разделенными символом /).

Пример:

ПолнИмя = Спр.Подразделения.ПолноеНаименование();

См. также: НайтиПоНаименованию

НайтиЭлемент

Найти элемент справочника по значению.

Синтаксис:

НайтиЭлемент(Элемент)

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

Findltem

Параметры:

Элемент Выражение со значением элемента справочника.
Возвращаемое значение:

Число 1 — если действие выполнено;

Число 0 — если действие не выполнено (элемент не найден).

Описание:

Метод НайтиЭлемент выполняет поиск элемента справочника по значе­нию, заданному параметром Элемент, и позиционирует объект справочник на этом элементе.

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

Пример:

// НашБанк должен иметь тип «справочник.Банки»

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

Бнк.ИспользоватьДату(ДатаДок);

Если НашБанк.Выбран() = 1 Тогда

   // Позиционируем созданный объект Бнк на заданном элементе

   Бнк.НайтиЭлемент(НашБанк);

   Процент = Бнк.Процент;

   НазваниеБанка = Бнк.Наименование;

КонецЕсли;

См. также: ТекущийЭлемент

НайтиПоКоду

Найти элемент справочника по коду.

Синтаксис:

НайтиПоКоду(Код, ФлагПоиска)

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

FindByCode

Параметры:

Код Выражение со значением искомого кода.
ФлагПоиска Необязательный параметр. Числовое выражение — флаг поиска: 0 — поиск во всем справочнике вне за­висимости от родителя; 1 — поиск внутри установ­ленного подчинения (родителя); 2 — поиск по пол­ному коду.

Значение по умолчанию: 0 — для справочников, у которых код уникален во всем справочнике; 2 — для справочников, у которых код уникален в группе.
Возвращаемое значение:

Число 1 — если действие выполнено;

Число 0 — если действие не выполнено (элемент не найден).

Описание:

Метод НайтиПоКоду выполняет поиск элемента справочника по значению кода, заданному параметром Код, и позиционирует объект справочник на этом элементе. Если справочник многоуровневый, то полный код выбираемого элемента можно задавать, разделяя коды уровней символом /.

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

Пример:

// Контекст журнала расчетов.

// Реквизит Подразд имеет тип «справочник»

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

Пдр.ИспользоватьДату(ДатаДок);

Если Документ.Подразд 0 Тогда

   // если в документе код подразделения указан...

   Пдр.НайтиПоКоду(Документ.Подразд);

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

      Сообщить(Есть такое подразделение !)

   Иначе

      Сообщить(Нет такого подразделения!)

   КонецЕсли;

КонецЕсли;

См. также: ПолныйКод

НайтиПоНаименованию

Найти элемент справочника по наименованию.

Синтаксис:

НайтиПоНаименованию(Наименование, Режим, ФлагПоиска)

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

FindByDescr

Параметры:

Наименование Строковое выражение с наименованием искомого элемента справочника.
Режим Необязательный параметр. Числовое выражение — режим поиска: 1 — поиск внутри установленного подчинения (родителя); 0 — поиск во всем спра­вочнике вне зависимости от родителя. Значение по умолчанию — 1.
ФлагПоиска Необязательный параметр. Числовое выражение — флаг поиска: 1 — найти точное соответствие наиме­нования; 0 — найти наименование по первым сим­волам.

Значение по умолчанию — 0.
Возвращаемое значение:

Число 1 — если действие выполнено;

Число 0 — если действие не выполнено (элемент не найден).

Описание:

Метод НайтиПоНаименованию выполняет поиск элемента справочника по наименованию, заданному параметром Наименование и позиционирует объект справочник на этом элементе.

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

Пример:

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

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

// Позиционируем созданный объект Спр по известному наименованию

Спр.НайтиПоНаименованию(Иванов, 1);

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

   Оклад=Спр.Оклад;

   Подразделение = Спр.Подразделение;

Иначе

   Предупреждение(Нет у нас Ивановых!);

КонецЕсли;

См. также: ПолноеНаименование

НайтиПоРеквизиту

Найти элемент справочника по значению реквизита.

Синтаксис:

НайтиПоРеквизиту(ИмяРеквизита, 3начение, ФлагГлобальногоПоиска)

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

FindByAttribute

Параметры:

ИмяРеквизита Строковое выражение с наименованием реквизита.
3начение Значение реквизита для поиска.
ФлагГлобальногоПоиска Числовое выражение. Если 0, то поиск должен выполняться в пределах подчине­ния справочника, если 1, то поиск должен выполняться по всему справочнику.
Возвращаемое значение:

Число 1 — если действие выполнено;

Число 0 — если действие не выполнено (элемент не найден).

Описание:

Метод НайтиПоРеквизиту выполняет поиск первого элемента с указанным значением заданного реквизита и позиционирует объект справочник на этом элементе.

Данный метод может использоваться только в том случае, если в конфигу­раторе при описании данного реквизита установлен признак «Сортировка» (Свойства реквизита - Дополнительные - Сортировка).

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

Пример:

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

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

// Позиционируем созданный объект Спр по реквизиту

Спр.НайтиПоРеквизиту(СерияПаспорта, XXVII-OP, 1);

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

   Имя = Спр.Наименование;

Иначе

   Предупреждение(Не найден сотрудник с таким паспортом!);

КонецЕсли;

ВыбратьЭлементы

Открыть выборку элементов справочника

Синтаксис:

ВыбратьЭлементы(Режим)

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

SelectItems

Параметры:

Режим Необязательный параметр. Числовое выражение: 1 — выбирать элементы с учетом иерархии; 0 — выбирать элементы без учета иерархии. Значение по умолчанию — 1.
Возвращаемое значение:

Число 1 — если действие выполнено и в выборке есть хотя бы один эле­мент;

Число 0 — если действие не выполнено или в выборке нет ни одного эле­мента.

Описание:

Метод ВыбратьЭлементы предоставляет возможность выбирать элементы (открывает выборку) при помощи метода ПолучитьЭлемент.

Дальнейшая выборка при помощи метода ПолучитьЭлемент будет про­исходить среди элементов текущего справочника в порядке, установленном заранее при помощи методов: ПорядокНаименований, ПорядокКодов, ВключатьПодчиненные, ИспользоватьРодителя, ИспользоватьВладельца, ИспользоватьДату.

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

Пример:

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

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

Акц.ИспользоватьДату(ДатаОтчета);

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

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

// Цикл получения элементов справочника

Пока Акц.ПолучитьЭлемент() 0 Цикл

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

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

   Иначе

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

   КонецЕсли;

КонецЦикла;

См. также: ПолучитьЭлемент, ПорядокНаименований, ПорядокКодов, ВключатьПодчиненные, ИспользоватьРодителя, ИспользоватьВладельца, ИспользоватьДату.

ВыбратьЭлементыПоРеквизиту

Открыть выборку элементов справочника по значению реквизита.

Синтаксис:

ВыбратьЭлементыПоРеквизиту(ИмяРеквизита, 3начение, РежимИерархии,

 РежимГрупп)

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

Select ItemsByAttribute

Параметры:

ИмяРеквизита Строковое выражение с именем реквизита спра­вочника, который задает порядок обхода элементов справочника.
3начение Значение реквизита для выборки.
РежимИерархии Необязательный параметр. Числовое выражение: 1 — выбирать элементы с учетом иерархии; 0 — вы­бирать элементы без учета иерархии. Значение по умолчанию — 1.
РежимГрупп Числовое выражение: 1 — выбирать среди групп справочника; 0 — выбирать среди элементов спра­вочника.
Возвращаемое значение:

Число; 1 — если действие выполнено и в выборке есть хотя бы один эле­мент; 0 — если действие не выполнено или в выборке нет ни одного элемента.

Описание:

Метод ВыбратьЭлементыПоРеквизиту предоставляет возможность выби­рать элементы (открывает выборку) при помощи метода ПолучитьЭлемент.

Дальнейшая выборка при помощи метода ПолучитьЭлемент будет проис­ходить среди элементов текущего справочника, имеющих значение реквизита ИмяРеквизита равным 3начение, в порядке, установленном параметрами РежимИерархии и РежимГрупп, а также согласно установкам, сделан­ным заранее при помощи методов:

ПорядокНаименований,

ПорядокКодов,

ВключатьПодчиненные,

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

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

ИспользоватьДату.

Данный метод может использоваться только в том случае, если в конфигу­раторе при описании данного реквизита установлен признак «Сортировка» (Свойства реквизита - Дополнительные - Сортировка).

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

Пример:

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

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

Акц.ИспользоватьДату(ДатаОтчета);

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

// Открываем выборку

Акц.ВыбратьЭлементыПоРеквизиту(Отдел, НомерОтдела, 1, 0);

// Цикл получения элементов справочника

Пока Акц.ПолучитьЭлемент() 0 Цикл

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

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

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

   КонецЕсли;

КонецЦикла;

См. также: ПолучитьЭлемент, ПорядокНаименований, ПорядокКодов, ОбратныйПорядок, ВключатьПодчиненные, ИспользоватьРодителя, ИспользоватьВладельца, ИспользоватьДату

ОбратныйПорядок

Установить порядок выборки элементов справочника.

Синтаксис:

ОбратныйПорядок(Режим)

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

BackwardOrder

Параметры:

Режим Необязательный параметр. Числовое выражение: 1 — выбирать элементы справочника в обратном порядке; 0 — выбирать элементы справочника в прямом порядке. Значение по умолчанию — 1.
Возвращаемое значение:

Текущее значение порядка выборки элементов справочника (на момент до исполнения метода): 1 — обратный порядок выборки элементов справочника; 0 — выборка элементов справочника в прямом порядке.

Описание:

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

По умолчанию, выборка элементов справочника выполняется в прямом по­рядке. Поэтому реально имеет смысл применять данный метод только в том случае, если надо получить обратный порядок выборки.

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

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

Пример:

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

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

Акц.ИспользоватьДату(ДатаОтчета);

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

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

Акц.ПорядокКодов();

Акц.ОбратныйПорядок(1);

// Цикл получения элементов справочника.

Пока Акц.ПолучитьЭлемент() 0 Цикл

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

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

   Иначе

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

   КонецЕсли;

КонецЦикла;

См. также: ВыбратьЭлементы, ПолучитьЭлемент, ПорядокНаименований, ПорядокКодов, ВключатьПодчиненные, ИспользоватьРодителя, ИспользоватьВладельца, ИспользоватьДату

ПолучитьЭлемент

Получить из выборки следующий элемент справочника.

Синтаксис:

ПолучитьЭлемент(Режим)

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

Getltem

Параметры:

Режим Необязательный параметр. Числовое выражение: 1 — надо включать в выборку все подчиненные элементы, если 0 — не надо включать подчинен­ные элементы. Значение по умолчанию — 1.
Возвращаемое значение:

Числовое значение: 1 — если элемент выбран успешно, 0 — если элемент не выбран (отсутствует).

Описание:

Метод ПолучитьЭлемент выбирает следующий элемент справочника в по­следовательности выборки, открытой перед этим при помощи метода ВыбратьЭлементы.

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

Пример:

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

// Задаем выборку в порядке кодов

Спр.ПорядокКодов();

// Открываем выборку

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

// Цикл получения элементов справочника

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

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

КонецЦикла;

См. также: ВыбратьЭлементы, ПолучитьЭлемент, ПорядокНаименований, ОбратныйПорядок, ПорядокКодов, ВключатьПодчиненные, ИспользоватьРодителя, ИспользоватьВладельца, ИспользоватьДату

ИспользоватьДату

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

Синтаксис:

ИспользоватьДату[Дата, УстСразу)

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

UseDate

Параметры:

Дата Необязательный параметр. Выражение со значением типа «дата».
УстСразу Необязательный параметр. Число: если 1, то дата, пере­данная в качестве параметра, будет установлена уже в те­кущей выборке; если 0 — то дата, переданная в качестве параметра будет установлена при следующей выборке. Значение по умолчанию — 0. Например:

если Цена — периодический реквизит справочника, то

Спр.ИспользоватьДату(Д1, 1);

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

А = Спр.Цена; — возвращает значение на дату Д1

Спр.ИспользоватьДату(Д2, 1);

Б = Спр.Цена; — возвращает значение на дату Д2!

Если УстСразу — 0 (или опущен), то

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

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

А = Спр.Цена; — возвращает значение на дату Д1

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

Б=Спр.Цена; — тоже возвращает значение на дату Д1!

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

В=Спр.Цена; — только теперь возвращает значение на Д2.
Возвращаемое значение:

Текущее значение используемой даты (на момент до исполнения метода).

Описание:

Метод ИспользоватьДату устанавливает для объекта типа «справочник» дату, на которую будут в дальнейшем выбираться (или записываться) значения периодических реквизитов справочника.

Это очень важный метод, о котором необходимо всегда помнить при работе со справочниками, имеющими периодические реквизиты. Если он пропущен, то чначения выбранных периодических реквизитов справочника будут не опреде­лены.

Замечание: Если к объекту типа «справочник» однажды применен метод ИспользоватьДату, то в дальнейшем, чтобы выбирать значения перио­дических реквизитов справочника, нельзя применять к этому же объекту методы Получить и Установить, т. е. в такой последовательности эти методы несовместимы.

Замечание: Данный метод имеет следующую особенность применения: его нельзя использовать «через две точки». Например, если в документе с именем ДокНакл есть реквизит Фирма типа «справочник», у которо­го есть периодические реквизиты НДС и СН, то следующий оператор:

ДокНакл.Фирма.ИспользоватьДату(Дата);

работать не будет. В данном случае следует просто использовать проме­жуточную переменную, например:

ФирДок = ДокНакл.Фирма;

ФирДок.ИспользоватьДату(РабочаяДата());

НДСДок = ФирДок.НДС;

Пример:

// Здесь мы работаем в локальном контексте модуля Формы

// редактирования документа.

// Реквизит Должность в документе является справочником,

// у которого МинОкл - периодический реквизит

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

Длж.ИспользоватьДату(ДатаДок);

Длж.НайтиЭлемент(Должность);

Сообщить(Длж.Наименование + Минимальный оклад + Строка(Длж.МинОкл));

См. также: Получить, Установить, НайтиЭлемент, ВыбратьЭлементы

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

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

Синтаксис:

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

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

UseOwner

Параметры:

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

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

Описание:

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

Пример:

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

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

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

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

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

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

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

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

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

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

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

   КонецЦикла;

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

Пример:

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

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

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

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

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

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

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

Синтаксис:

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

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

UseParent

Параметры:

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

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

Описание:

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

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

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

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

Пример:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

   Иначе

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

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

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

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

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

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

      Перейти ~MET;

   КонецЕсли;

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

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

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

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

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

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

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

      Иначе

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

      КонецЕсли;

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

   КонецЦикла;

~MET:

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

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

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

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

   ВыбТовар = 0;

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

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

ВключатьПодчиненные

Установить флаг выборки всех подчиненных элементов.

Синтаксис:

ВключатьПодчиненные(Режим]

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

IncludeChildren

Параметры:

Режим Необязательный параметр. Числовое выражение: если 1 — надо включать в выборку все подчиненные элементы, если 0 — не надо включать подчиненные элементы.
Возвращаемое значение:

Текущее числовое значение режима выборки подчиненных элементов спра­вочника (на момент до исполнения метода).

Описание:

Метод ВключатьПодчиненные устанавливает флаг выборки всех подчи­ненных элементов (то есть раскручивания дерева справочника глубже текуще­го уровня).

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

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

Пример:

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

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

// задается группа товаров для отображения.

//В процедуру передается параметр Режим, которым задается,

// отображать или нет вложенные подгруппы товаров выбранной группы

Процедура ВыводСпискаТоваров(Режим)

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

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

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

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

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

      Заг = По всем товарам.;

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

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

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

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

      Заг = По товарам группы + ВыбТовар.Наименование;

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

      Тов.ВключатьПодчиненные(Режим);

   Иначе

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

      // формируем отчет только по этому товару

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

      Заг = По товару + ВыбТовар.Наименование;

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

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

      Перейти ~MET;

   КонецЕсли;

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

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

   // Открываем выборку

   Тов.ВыбратьЭлементы();

   Пока Тов.ПолучитьЭлемент() 0 Цикл

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

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

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

      Иначе

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

      КонецЕсли;

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

   КонецЦикла;

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

~MET:

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

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

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

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

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

ПорядокКодов

Установить порядок выборки по возрастанию кода.

Синтаксис:

ПорядокКодов()

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

OrderByCode

Описание:

Метод ПорядокКодов устанавливает режим выборки элементов справоч­ника в порядке возрастания кодов элементов.

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

По умолчанию выборка элементов справочника производится в порядке основного представления справочника, которое задается в конфигураторе. По­этому реально имеет смысл применять данный метод только в том случае, если основное представление справочника — наименование, а надо получить элемен­ты в порядке кодов.

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

Пример:

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

// Задаем выборку в порядке кодов Спр.ПорядокКодов();

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

// Цикл получения элементов справочника

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

   Состояние(Спр.Наименование);

КонецЦикла;

ПорядокНаименований

Установить порядок выборки по возрастанию наименования.

Синтаксис:

ПорядокНаименований()

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

OrderByDescr

Описание:

Метод ПорядокНаименований устанавливает режим выборки элементов справочника в порядке возрастания наименования элементов.

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

По умолчанию выборка элементов справочника производится в порядке основного представления справочника, которое задается в конфигураторе. По­этому реально имеет смысл применять данный метод только в том случае, если основное представление справочника — код, а надо получить элементы в по­рядке наименований.

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

Пример:

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

// Задаем выборку в порядке наименований

Спр.ПорядокНаименований();

// Открываем выборку

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

// Цикл получения элементов справочника

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

   Состояние(Спр.Наименование);

КонецЦикла;

ПорядокРеквизита

Установить порядок выборки по возрастанию значения реквизита.

Синтаксис:

ПорядокРеквизита(ИмяРеквизита)

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

OrderByAttribute

Параметры:

ИмяРеквизита Строковое выражение с именем реквизита справочника, который задает порядок обхода эле­ментов справочника.
Описание:

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

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

Данный метод может использоваться только в том случае, если в конфигу­раторе при описании данного реквизита установлен признак «Сортировка» (Свойства реквизита - Дополнительные - Сортировка).

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

Пример:

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

// Задаем выборку в порядке возрастания окладов

Спр.ПорядокРеквизита(Оклад);

// Открываем выборку

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

// Цикл получения элементов справочника

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

   Состояние(Спр.Наименование + - + Спр.Оклад);

КонецЦикла;

Новый

Добавить новый элемент справочника.

Синтаксис:

Новый()

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

New

Описание:

Метод Новый инициализирует создание нового элемента справочника. Соб­ственно запись нового элемента происходит при вызове метода Записать. По­сле инициализации создания нового элемента справочника, как правило, про­изводится заполнение его реквизитов с последующим вызовом метода Записать.

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

Пример:

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

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

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

   Спр.Новый();

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

   Спр.Наименование = ФИО;

   Спр.Код = ТН;

   Спр.Оклад = Оклад;

   Спр.Аванс = Аванс;

   // ...

   // Записываем новый элемент справочника

   Спр.Записать();

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

НоваяГруппа

Добавить новую группу справочника.

Синтаксис:

НоваяГруппа()

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

NewGroup

Описание:

Метод НоваяГруппа добавляет пустую запись новой группы в справочник. Данный метод может использоваться только для объектов, созданных функци­ей СоздатьОбъект.

Пример:

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

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

   // добавляем новую группу справочника

   Спр.НоваяГруппа();

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

   Спр.Наименование = Расчетчик3;

   Спр.Код = 3;

   // Записываем на диск

   Спр.Записать();

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

ПрефиксКода

Установить для справочника текущий префикс кода.

Синтаксис:

ПрефиксКода(Префикс)

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

CodePrefix

Параметры:

Префикс Необязательный параметр. Строковое выражение — новый префикс кодов элементов справочника.
Возвращаемое значение:

Строковое значение текущего префикса кодов элементов справочника (на момент до исполнения метода).

Описание:

Метод ПрефиксКода устанавливает новый текущий префикс для автомати­ческого создания кодов элементов справочника.

Пример:

ПрефиксКода(01-);

См. также: ПрефиксАвтоНумерации, УстановитьНовыйКод

УстановитьНовыйКод

Установить новый код с префиксом кода для справочника.

Синтаксис:

УстановитьНовыйКод(Префикс)

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

SetNewCode

Параметры:

Префикс Строковое выражение — префикс кода элемента справочника.
Описание:

Метод УстановитьНовыйКод устанавливает новый код элемента справоч­ника с префиксом Префикс.

Пример:

УстановитьНовыйКод(01-);

См. также: ПрефиксАвтоНумерации, ПрефиксКода

НазначитьТип

Назначить тип для реквизита неопределенного вида.

Синтаксис:

НазначитьТип(ИмяРеквизита, ИмяТипа, Длина, Точность)

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

SetType

Параметры:

ИмяРеквизита Строковое выражение — название реквизита спра­вочника неопределенного типа, как он назван в кон­фигураторе.
ИмяТипа Строковое выражение — название типа данных (или Вид субконто), который назначается реквизиту спра­вочника. Например:

Строка, Число, Справочник.Товары, Документ.РасходнаяНакладная и т. п.
Длина Необязательный параметр. Числовое выражение — длина поля представления данных. Имеет смысл только при задании числового или строкового типа.
Точность Необязательный параметр. Числовое выражение — число знаков числа после десятичной точки. Имеет смысл только при задании числового типа.
Описание:

Метод НазначитьТип позволяет назначить тип для реквизита, которому в конфигураторе назначен тип «Неопределенный».

Пример:

Номенклатура.НазначитьТип(ТМЦ, Справочник.Товары);

Записать

Записать (обновить) элемент справочника.

Синтаксис:

Записать()

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

Write

Описание:

Метод Записать выполняет запись (обновление) элемента справочника.

Замечание. Если этот метод применяется в Модуле формы элемента справоч­ника непосредственно к элементу справочника локального контекста, то данный метод отрабатывает те же действия, как интерактивное нажатие пользователем кнопки с формулой #Записать.

Пример:

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

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

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

   Спр.Новый();

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

   Спр.Наименование = ФИО;

   Спр.Код = ТН;

   Спр.Оклад = Оклад;

   Спр.Аванс = Аванс;

   // ...

   // Записываем новый элемент справочника

   Спр.Записать();

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

Удалить

Удалить элемент справочника.

Синтаксис:

Удалить(Режим)

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

Delete

Параметры:

Режим Числовое выражение: 1 — непосредственное уда­ление; 0 — пометка на удаление. Необязательный параметр. Значение по умолчанию — 1.
Описание:

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

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

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

Пример:

Процедура УдалениеСотрудника(Сотр)

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

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

      // позиционируем справочник на заданном элементе

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

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

         Если Вопрос(Удалять??? , 1) = 1 Тогда

            // удаляем элемент справочника

            Спр.Удалить(1);

         КонецЕсли;

      Иначе

         Предупреждение(Некого удалять!);

      КонецЕсли;

   КонецЕсли;

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

См. также: ПометкаУдаления, СнятьПометкуУдаления

Блокировка

Установить/прочитать режим блокировки.

Синтаксис:

Блокировка(ВклВыкл)

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

Locking

Параметры:

ВклВыкл Необязательный параметр. Число: 1 — включить; 0 — выключить.
Возвращаемое значение:

Если при вызове метода параметр ВклВыкл не задан, то возвращается режим блокировки до выполнения метода. Число: 1 — заблокирован; 0 — свобо­ден.

Если при вызове метода параметр ВклВыкл задан, то возвращается ре­зультат выполнения метода блокировки. Число: 1 — успешно; 0 — не получи­лось.

Описание:

Метод Блокировка позволяет установить/прочитать режим блокировки. Пример:

Блокировка(0);

ПометкаУдаления

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

Синтаксис:

ПометкаУдаления()

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

DeleteMark

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

Числовое значение: 1 — если на элементе справочника стоит пометка удале­ния; 0 — если нет пометки удаления.

Описание:

Метод ПометкаУдаления позволяет прочитать значение пометки удаления текущего элемента справочника.

Пример:

Процедура УсловноеУдалениеСотрудника(Сотр)

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

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

      // позиционируем справочник на заданном элементе

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

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

         Если Вопрос(Удалять??? , 1) = 1 Тогда

            Если Спр.ПометкаУдаления() = 1 Тогда

               Предупреждение(Уже помечен на удаление!);

            Иначе

               // удаляем элемент справочника

               Спр.Удалить(0);

            КонецЕсли;

         КонецЕсли;

      Иначе

         Предупреждение(Некого удалять!);

      КонецЕсли;

   КонецЕсли;

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

См. также: Удалить, СнятьПометкуУдаления

СнятьПометкуУдаления

Снять пометку удаления элемента справочника.

Синтаксис:

СнятьПометкуУдаления()

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

ClearDeleteMark

Описание:

Метод СнятьПометкуУдаления снимает пометку удаления текущего эле­мента справочника.

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

Пример:

Процедура ВосстановлениеУдаленныхСотр(Сотр)

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

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

      // позиционируем справочник на заданном элементе

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

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

         Если Спр.ПометкаУдаления() = 1 Тогда

            // восстанавливаем элемент справочника

            Спр.СнятьПометкуУдаления();

         КонецЕсли;

      КонецЕсли;

   КонецЕсли;

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

См. также: Удалить, ПометкаУдаления

Методы контекста Модуля формы элемента справочника

Описанные в данном разделе методы доступны только в контексте Модуля формы элемента справочника (см. «Виды программных модулей»).

Модифицированность

Возвратить признак изменения реквизитов в текущей форме элемен­та справочника.

Синтаксис:

Модифицированность()

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

Modify

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

Числовое значение: 1 — если реквизиты текущей формы элемента справоч­ника были изменены; 0 — если нет.

Описание:

Метод Модифицированность возвращает признак изменения (в режиме исполнения он отображается символом (*) в заголовке окна формы).

Замечание. Данный метод доступен только в контексте Модуля формы эле­мента справочника (см. «Виды программных модулей»). Действие данно­го метода относится только к текущему элементу справочника, который доступен в локальном контексте Модуля формы элемента справочника.

Пример:

ИспользоватьДату

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

Синтаксис:

ИспользоватьДату(Дата, Обновить)

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

UseDate

Параметры:

Дата Выражение со значением типа «дата». Дата, на которую будут записываться периодические реквизиты элемента справочника, форма которого открыта.
Обновить Необязательный параметр. Число: 1 — обновить периоди­ческие реквизиты формы на заданную дату; 0 — не обнов­лять периодические реквизиты формы. Значение по умол­чанию — 0;
Возвращаемое значение:

Значение используемой даты (на момент до исполнения метода).

Описание:

Метод ИспользоватьДату устанавливает для элемента справочника дату, на которую будут записываться периодические реквизиты.

Если данный метод опущен, то значения выбранных периодических рекви­зитов справочника будут записываться на текущую рабочую дату.

Замечание. Данный метод доступен только в контексте Модуля формы эле­мента справочника (см. «Виды программных модулей»). Действие данно­го метода относится только к текущему элементу справочника, который доступен в локальном контексте Модуля формы элемента справочника.

Пример:

// Здесь мы работаем в локальном контексте модуля Формы

// элемента справочника.

// в справочнике есть несколько реквизитов,

// которые являются периодическими реквизитами.

// В форме существует элемент диалога ВыбДата типа «Дата»

Если Число(ВыбДата) 0 Тогда

   // задано некоторое значение ВыбДата

   ИспользоватьДату(ВыбДата);

КонецЕсли;

СохранениеПериодическихРеквизитов

Установить режим отображения диалога сохранения периодических реквизитов при записи элемента справочника.

Синтаксис:

СохранениеПериодическихРеквизитов(ВариантВызова, Список)

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

Рег1odicAttributesSaving

Параметры:

ВариантВызова Число, определяет вариант вызова метода: 0 — отключить автоматический режим определе­ния списка измененных реквизитов и показ диа­лога (параметр Список не используется);

1 — включить автоматический режим определения списка измененных реквизитов с показом диалога (параметр Список определяет набор анализи­руемых реквизитов);

2 — включить автоматический режим определения списка измененных реквизитов без показа диало­га (параметр Список определяет набор анали­зируемых реквизитов);

3 — выполнить определение списка измененных реквизитов с показом диалога (параметр Список определяет набор анализируемых рек­визитов);

4 — выполнить определение списка измененных реквизитов без показа диалога (параметр Список определяет набор анализируемых рек­визитов);

5 — выдать/установить список сохраняемых пе­риодических реквизитов. Метод возвращает уста­новленный список периодических реквизитов, которые будут записываться на момент до вызова метода. Если параметр Список указан, то ус­танавливается список периодических реквизитов, которые должны быть записаны.
Список Необязательный параметр. Строковое выражение, в котором через запятую перечислены имена пе­риодических реквизитов справочника, которые должны выводится в диалоге (если диалог пока­зывается), или по которым будет записан элемент истории (если диалог не показывается). По умол­чанию предполагается, что в списке все периоди­ческие реквизиты справочника. Если указан сим­вол *, то считается, что в список включены все периодические реквизиты справочника.
Описание:

Метод СохранениеПериодическихРеквизитов управляет режимом ав-томатического определения списка измененных периодических реквизитов, показом диалога для выбора записываемых периодических реквизитов, а также предоставляет доступ непосредственно к списку записываемых периодических реквизитов.

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

Замечание. Данный метод доступен только в контексте Модуля формы эле­мента справочника (см. «Виды программных модулей»). Действие данно­го метода относится только к текущему элементу справочника, который доступен в локальном контексте Модуля формы элемента справочника.

Пример:

// Здесь мы работаем в локальном контексте модуля Формы

// элемента справочника.

// в справочнике есть несколько реквизитов,

// которые являются периодическими реквизитами.

СохранениеПериодическихРеквизитов(1, ЦенаРозн, ЦенаОптов);

ПросмотрИстории

Установить список периодических реквизитов, просмотр истории ко­торых допускается.

Синтаксис:

ПросмотрИстории(СписокРеквизитов)

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

ViewHistory

Параметры:

СписокРеквизитов Строка со списком идентификаторов (через запя­тую) тех реквизитов, просмотр истории которых допускается.
Возвращаемое значение:

Текущий (на момент до вызова метода) список реквизитов, просмотр исто­рии которых допускается просмор истории.

Описание:

Метод ПросмотрИстории позволяет установить список реквизитов для ко­торых допускается просмор истории .

Замечание. Данный метод доступен только в контексте Модуля формы эле­мента справочника (см. «Виды программных модулей»). Действие данно­го метода относится только к текущему элементу справочника, который доступен в локальном контексте Модуля формы элемента справочника.

Пример:

Процедура ПриОткрытии()

   ПросмотрИстории;Оклад, Тариф, Подразделение);

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

Предопределенные процедуры Модуля формы справочника

Описанные в данном разделе системные предопределенные процедуры должны располагаться только в Модулях форм справочника (см. «Виды про­граммных модулей»). К ним относятся программные модули: Модуль формы элемента справочника, Модуль формы группы справочника.

В основном данные процедуры предназначены для расширения возможно­сти программного управления правами доступа к системе.

Системные предопределенные процедуры не является встроенными проце­дурами языка. Для них зарезервированы только название и синтаксис. Тело процедур должно быть написано самим разработчиком в соответствующих про­граммных модулях. Вызов предопределенных процедур на исполнение произ­водится в системе 1С:Предприятие неявно при возникновении соответствую­щего события. Описание предопределенных процедур также см. гл. «Системные предопределенные процедуры».

ВводНового

Предопределенная процедура при вводе нового элемента справочника.

Синтаксис:

ВводНового(ПризнКопирования, ОбъектКопирования)

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

InputNew

Параметры:

ПризнКопирования Признак того, что объект введен копировани­ем. Число: 1 — объект введен копированием, 0 — просто новый объект. Данный признак мо­жет быть использован для анализа необходи­мости инициализации реквизитов нового объ­екта.
ОбъектКопирования Объект, который был скопирован.
Описание:

Вызов процедуры ВводНового производится в системе 1С:Предприятие неявно в момент выбора пункта меню Действия — Новый при работе со справочниками. Данная процедура может использоваться, например, для уста­новки начальных значений (по умолчанию) реквизитов нового элемента спра­вочника. Если в данной предопределенной процедуре установить статус возвра­та — 0 (например, если данному пользователю нельзя вводить новые элемен­ты), ввода нового элемента и открытие его формы не будет выполнено.

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

Пример:

Процедура ВводНового();

   Оклад = 1000000;

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

   Пдр.НайтиПоКоду(1);

   Подразделение = Пдр.ТекукщийЭлемент();

   Город = Константа.НашГород;

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

См. также: СтатусВозврата

ПриЗаписи

Предопределенная процедура при записи элемента справочника.

Синтаксис:

ПриЗаписи(СписокПериодРекв)

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

OnWrite

Параметры:

СписокПериодРекв Строковое значение — список разделенных за­пятыми изменяемых периодических реквизитов справочника. В данный параметр система 1С:Предприятие передает перечень периодиче­ских реквизитов, которые были интерактивно выбраны пользователем для обновления в окне диалога выбора. В теле процедуры значение данного параметра может быть изменено, что позволяет в данной процедуре непосредственно управлять списком записываемых значений периодических реквизитов.
Описание:

Вызов предопределенной процедуры ПриЗаписи производится системой 1С:Предприятие при интерактивной записи элемента справочника. Если в дан­ной предопределенной процедуре установить статус возврата — 0 (например, если данному пользователю нельзя изменять некоторые элементы справочни­ка), то запись элемента справочника не будет выполнена.

Данная предопределенная процедура может располагаться в следующих программных модулях: Модуль формы элемента справочника, Модуль формы группы справочника, Модуль формы списка справочника (см. Виды программ­ных модулей).

Пример:

Процедура ПриЗаписи (СписокРекв)

   Если НазваниеНабораПрав() = Продавец Тогда

      Если ТекущийЭлемент() = Константа.НашаФирма Тогда

         Предупреждение(У вас нет права менять реквизиты!, 2);

         СтатусВозврата(0);

      КонецЕсли;

   КонецЕсли;

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

См. также: СтатусВозврата

Методы контекста Модуля формы списка справочника

Описанные в данном разделе методы доступны только в контексте Модуля формы списка справочника (см. «Виды программных модулей»).

ИспользоватьДату

Установить дату выборки периодических реквизитов формы списка справочника.

Синтаксис:

ИспользоватьДату(Дата)

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

UseDate

Параметры:

Дата Выражение со значением типа «дата»
Возвращаемое значение:

Значение даты выборки периодических реквизитов формы списка справоч­ника.

Описание:

Метод ИспользоватьДату устанавливает для формы списка справочника дату, на которую будут в дальнейшем выбираться (или записываться) значения периодических реквизитов справочника.

Данный метод доступен только в контексте Модуля формы списка справоч­ника (см. «Виды программных модулей»). Действие данного метода относится только к текущему справочнику, который доступен в локальном контексте Мо­дуля формы списка справочника.

Пример:

ИспользоватьДату(ДатаДок);

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

Установить владельца для формы списка подчиненного справочника.

Синтаксис:

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

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

UseOwner

Параметры:

Владелец Необязательный параметр. Выражение со значением элемента справочника — нового владельца. Если па­раметр не задан, то значение владельца не меняется.
ФлагИзменения Необязательный параметр. Этим флагом регулирует­ся возможность интерактивного изменения владель­ца, 1 — пользователь может изменить владельца инте­рактивно, 0 — пользователь не может интерактивно изменить владельца. Если параметр не задан, то зна­чение флага не меняется.
Возвращаемое значение:

Значение владельца для формы списка подчиненного справочника (до при­менения метода).

Описание:

Метод ИспользоватьВладельца устанавливает элемент связанного спра­вочника (которому подчинен текущий справочник) в качестве владельца для формы списка подчиненного справочника.

Данный метод доступен в контексте Модуля формы списка справочника (см. «Виды программных модулей»). Действие данного метода относится ко всему текущему подчиненному справочнику, который доступен в локальном контексте Модуля формы списка справочника.

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

Пример:

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

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

Установить родителя для формы списка справочника.

Синтаксис:

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

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

UseParent

Параметры:

Родитель Необязательный параметр. Выражение со значением группы справочника- нового родителя. Если пара­метр не задан, то значение родителя не меняется.
ФлагИзменения Необязательный параметр. Этим флагом регулирует­ся возможность интерактивного изменения родителя. 1 — пользователь может изменить родителя интерак­тивно, 0 — пользователь не может интерактивно изме­нить родителя. Если параметр не задан, то значение флага не меняется.
Возвращаемое значение:

Значение родителя для формы списка справочника (до применения метода).

Описание:

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

Данный метод доступен в контексте Модуля формы списка справочника (см. «Виды программных модулей»). Действие данного метода относится ко всему текущему справочнику, который доступен в локальном контексте Моду­ля формы списка справочника.

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

Пример:

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

ИерархическийСписок

Установить режим иерархического списка справочника.

Синтаксис:

ИерархическийСписок(ФлагИерархСписка, ФлагИзменения)

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

HierarchicalList

Параметры:

ФлагИерархСписка Флаг иерархического списка. 1 — иерархический список; 0 — неиерархический список.
ФлагИзменения Необязательный параметр. Этим флагом регу­лируется возможность интерактивного измене­ния флага иерархического списка. 1 — пользова­тель может изменить иерархичность интерак­тивно, 0 — пользователь не может интерактивно изменить иерархичность.
Возвращаемое значение:

Значение флага иерархического списка для формы списка справочника (до применения метода).

Описание:

Метод ИерархическийСписок устанавливает режим иерархического спи­ска справочника.

Данный метод доступен в контексте Модуля формы списка справочника (см. «Виды программных модулей»). Действие данного метода относится ко всему текущему списку справочника, который доступен в локальном контексте Модуля формы списка справочника.

Пример:

ИерархическийСписок(1, 1);

ВыборГруппы

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

Синтаксис:

ВыборГруппы(Режим)

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

SelectGroup

Параметры:

Режим Необязательный параметр. Числовое выражение: 1 — выбирать группы; 0 — не выбирать группы.
Возвращаемое значение:

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

Описание:

Метод ВыборГруппы устанавливает режим выборки групп для формы спи­ска справочника, которая открыта в режиме выбора или подбора элемента.

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

Пример:

// Задаем выборку без групп

ВыборГруппы(0);

РедактироватьВДиалоге

Установить способ редактирования элементов справочника.

Синтаксис:

РедактироватьВДиалоге(Способ, Разрешение)

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

EditInForm

Параметры:

Способ Необязательный параметр. Способ редактирования элемента справочника: 1 — в диалоге; 0 — в строке.
Разрешение Необязательный параметр. Флаг разрешения пользо­вателю менять способ редактирования: 1 — разрешить; 0 — запретить.
Возвращаемое значение:

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

Описание:

Метод РедактироватьВДиалоге устанавливает способ редактирования элементов справочника.

Данный метод доступен в контексте Модуля формы списка справочника (см. «Виды программных модулей»). Действие данного метода относится ко всему текущему списку справочника, который доступен в локальном контексте Модуля формы списка справочника.

Пример:

ТекСп = РедактироватьВДиалоге();

// какой сейчас способ?

РедактироватьВДиалоге(1);

// установить редактирование в диалоге

РедактироватьВДиалоге(1, 0);

// установить редактирование в диалоге

// и запретить его менять

СохранениеПериодическихРеквизитов

Установить режим отображения диалога сохранения периодических реквизитов при записи элемента справочника.

Синтаксис:

СохранениеПериодическихРеквизитов(ВариантВызова, Список)

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

Рег1odicAttributesSaving

Параметры:

ВариантВызова Число, определяет вариант вызова метода:

0 — отключить автоматический режим определе­ния списка измененных реквизитов и показ диа­лога (параметр Список не используется);

1 — включить автоматический режим определения списка измененных реквизитов с показом диалога (параметр Список определяет набор анализи­руемых реквизитов);

2 — включить автоматический режим определения списка измененных реквизитов без показа диало­га (параметр Список определяет набор анали­зируемых реквизитов);

3 — выполнить определение списка измененных реквизитов с показом диалога (параметр Список определяет набор анализируемых рек­визитов);

4 — выполнить определение списка измененных реквизитов без показа диалога (параметр Список определяет набор анализируемых рек­визитов);

5 — выдать/установить список сохраняемых пе­риодических реквизитов. Метод возвращает уста­новленный список периодических реквизитов, которые будут записываться на момент до вызова метода. Если параметр Список указан, то ус­танавливается список периодических реквизитов, которые должны быть записаны.
Список Необязательный параметр. Строковое выражение, в котором через запятую перечислены имена пе­риодических реквизитов справочника, которые должны выводится в диалоге (если диалог пока­зывается), или по которым будет записан элемент истории (если диалог не показывается). По умол­чанию предполагается, что в списке все периоди­ческие реквизиты справочника. Если указан сим­вол *, то считается, что в список включены все периодические реквизиты справочника.
Описание:

Метод СохранениеПериодическихРеквизитов управляет режимом ав­томатического определения списка измененных периодических реквизитов, показом диалога для выбора записываемых периодических реквизитов, а также предоставляет доступ непосредственно к списку записываемых периодических реквизитов.

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

Данный метод доступен в контексте Модуля формы списка справочника (см. «Виды программных модулей»). Действие данного метода относится ко всему текущему списку справочника, который доступен в локальном контексте Модуля формы списка справочника.

Пример:

СохранениеПериодическихРеквизитов(1, ЦенаРозн, ЦенаОптов);

Сортировка

Установить способ сортировки элементов справочника.

Синтаксис:

Сортировка(Способ, Разрешение)

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

SortOrder

Параметры:

Способ Строка с именем устанавливаемой сортировки. Это может быть (в зависимости от языка по умолчанию) Код\Code, Наименование\Description или имя рекви­зита по которому устанавливается сортировка.
Разрешение Необязательный параметр. Флаг разрешения пользователю менять способ сортировки: 1 — раз­решить; 0 — запретить.
Возвращаемое значение:

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

Описание:

Метод Сортировка позволяет установить способ сортировки элементов справочника.

Данный метод доступен в контексте Модуля формы списка справочника (см. «Виды программных модулей»).

Пример:

// установить сортировку по наименовнаию и запретить ее менять

Сортировка(Наименование, 0);

// получить текущее значение сортировки и установить сортировку по

// реквизиту Оклад

СтСорт = Сортировка(Оклад);

УстановитьОтбор

Установить отбор списка справочника.

Синтаксис:

УстановитьОтбор(ИмяОтбора, 3начение0тбора)

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

SetSelection

Параметры:

ИмяОтбора Строковое выражение — строка с именем рекви­зита справочника (по которому возможен отбор — флажок свойств «Отбор по реквизиту»), по кото­рому установлен отбор. Если это значение пустое, то отбор отключается.
ЗначениеОтбора Необязательный параметр. Значение отбора.
Описание:

Метод УстановитьОтбор принудительно устанавливает отбор для списка справочника.

Данный метод доступен в контексте Модуля формы списка справочника (см. «Виды программных модулей»). Действие данного метода относится ко всему текущему списку справочника, который доступен в локальном контексте Модуля формы списка справочника.

Пример:

Процедура ПриОткрытии()

   Перем Тип;

   Перем Знач;

   БылОтбор = ПолучитьОтбор(Тип, Знач);

   Если .... Тогда

      // что-нибудь проверяем

      УстановаитьОтбор(Имя, Коля);

   ИначеЕсли БылОтбор = 1 Тогда

      // вернем назад

      УстановитьОтбор(Тип, Знач);

   КонецЕсли;

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

ПолучитьОтбор

Возвратить текущее значение отбора списка справочника.

Синтаксис:

ПолучитьОтбор(ИмяОтбора, 3начение0т6ора)

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

GetSelection

Параметры:

ИмяОтбора Имя переменной, куда вернется строковое значе­ние имени отбора.
ЗначениеОтбора Имя переменной, куда вернется значение отбора.
Возвращаемое значение:

Числовое значение: 1 — есть отбор; 0 — если нет отбора.

Описание:

Метод ПолучитьОтбор возвращает текущее значение отбора списка спра­вочника.

Данный метод доступен в контексте Модуля формы списка справочника (см. «Виды программных модулей»). Действие данного метода относится ко всему текущему списку справочника, который доступен в локальном контексте Модуля формы списка справочника.

Пример:

См. пример для предыдущей функции.

ВидыОтбора

Установить доступные виды отборов списка справочника для вызова их в интерактивном режиме.

Синтаксис:

ВидыОтбора(СписокИменОтборов)

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

KindsOfSelection

Параметры:

СписокИменОтборов Строка со списком (через запятую) имен тех реквизитов, отбор по которым допускается, или символ * — для всех видов отборов.
Возвращаемое значение:

Строковое значение, содержащее текущий список имен отборов, разделен­ных запятыми (на момент до исполнения метода).

Описание:

Метод ВидыОтбора позволяет установить доступные виды отборов списка справочника для вызова их в интерактивном режиме.

Данный метод доступен в контексте Модуля формы списка справочника (см. «Виды программных модулей»). Действие данного метода относится ко всему текущему списку справочника, который доступен в локальном контексте Модуля формы списка справочника.

Пример:

Процедура ПриОткрытии()

   ВидыОтбора(Имя, Оклад);

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

ЗакладкиОтбора

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

Синтаксис:

ЗакладкиОтбора(ИмяОтбора, 3начение0тбора)

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

TabCtrlSelection

Параметры:

ИмяОтбора Строковое выражение, содержащее имя отбора.
ЗначениеОтбора Значение отбора, который будет установлен первоначально.
Описание:

Метод ЗакладкиОтбора устанавливает в форме списка справочника за­кладки для интерактивного осуществления отбора.

Данный метод доступен только в контексте Модуля формы списка справоч­ника (см. «Виды программных модулей»).

Пример:

ЗакладкиОтбора(Имя, Коля);

ИспользоватьСписокЭлементов

Реализует фильтрацию элементов справочника используя нединами­ческий фильтр.

Синтаксис:

ИспользоватьСписокЭлементов (СписокЗначений)

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

UseItemList

Параметры:

СписокЗначений Необязательный параметр. Значение типа «СписокЗначений». Должен представлять собой список элементов справочника, выбранных для просмотра. Если это значение пустое, то фильтр отключается.
Описание:

Метод ИспользоватьСписокЭлементов реализует фильтрацию элементов справочника. Устанавливает нединамический фильтр.

Рекомендуется применять в предопределенных процедурах ПриСменеРодителя, ПриОткрытии, ПриСменеИерархии. При этом формиру­ется список «разрешенных» элементов, который передается форме списка спра­вочника при помощи данного метода. Данный список должен являться под­множеством тех элементов, которые обычно отображаются в форме списка без применения фильтра.

После вызова метода ИспользоватьСписокЭлементов форма списка справочника не позволяет вводить новый элемент, копировать и т. п.

Данный метод доступен в контексте Модуля формы списка справочника (см. «Виды программных модулей»). Действие данного метода относится ко всему текущему списку справочника, который доступен в локальном контексте Модуля формы списка справочника.

Пример:

Процедура УстановитьФильтр(ВыбПризнак)

   Список.СоздатьОбъект(СписокЗначений);

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

   // отбираем только те элементы, которые могут отображаться в текущем списке

   Буфер.ИспользоватьРодителя(ИспользоватьРодителя());

   Буфер.ВключатьПодчиненные(0);

   Буфер.ВыбратьЭлементы();

   Пока Буфер.ПолучитьЭлемент() = 1 Цикл

      // отбираем только те элементы, которые удовлетворяют заданному признаку

      Если (Буфер.Признак = ВыбПризнак) Тогда

         Список.ДобавитьЗначение(Буфер.ТекущийЭлемент());

      КонецЕсли;

   КонецЦикла;

   ИспользоватьСписокЭлементов(Список);

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

ПросмотрИстории

Установить список периодических реквизитов, просмотр истории ко­торых допускается.

Синтаксис:

ПросмотрИстории(СписокРеквизитов)

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

ViewHistory

Параметры:

СписокРеквизитов Строка со списком идентификаторов (через запя­тую) тех реквизитов, просмотр истории которых допускается.
Возвращаемое значение:

Текущий (на момент до вызова метода) список реквизитов, просмотр исто­рии которых допускается просмор истории.

Описание:

Метод ПросмотрИстории позволяет установить список реквизитов для ко­торых допускается просмор истории .

Данный метод доступен в контексте Модуля формы списка справочника (см. «Виды программных модулей»). Действие данного метода относится ко всему текущему списку справочника, который доступен в локальном контексте Модуля формы списка справочника.

Пример:

Процедура ПриОткрытии()

   ПросмотрИстории(Оклад, Тариф, Подразделение);

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

Предопределенные процедуры Модуля формы списка справочника

Описанные в данном разделе системные предопределенные процедуры должны располагаться только в Модулях формы списка справочника (см. «Ви­ды программных модулей»).

В основном данные процедуры предназначены для расширения возможно­сти программного управления правами доступа к системе.

Предопределенные процедуры не является встроенными процедурами язы­ка. Для них зарезервированы только название и синтаксис. Тело процедур должно быть написано самим разработчиком в соответствующих программных модулях. Вызов предопределенных процедур на исполнение производится в системе 1С:Предприятие неявно при возникновении соответствующего собы­тия. Описание предопределенных процедур также см. гл. «Системные предо­пределенные процедуры».

ПриВводеСтроки

Предопределенная процедура при вводе новой строки списка спра­вочника.

Синтаксис:

ПриВводеСтроки()

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

OnNewLine

Описание:

Вызов предопределенной процедуры ПриВводеСтроки производится в сис­теме 1С:Предприятие при интерактивном вводе новой строки (до начала ввода) в форме списка справочника. Если в данной предопределенной процедуре уста­новить статус возврата — 0 (например, если данному пользователю нельзя вво­дить новые строки списка справочника), то новая строка списка справочника не будет инициирована.

Данная предопределенная процедура может располагаться в Модуле формы списка справочника (см. «Виды программных модулей»).

Пример:

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

   Если НазваниеНабораПрав() = Продавец Тогда

      Предупреждение(У вас нет права добавлять строки!, 2);

      СтатусВозврата(0);

   КонецЕсли;

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

См. также: СтатусВозврата

ПриРедактированииНовойСтроки

Предопределенная процедура при редактировании новой строки спи­ска справочника.

Синтаксис:

ПриРедактированииНовойСтроки()

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

OnEditNewLine

Описание:

Вызов предопределенной процедуры ПриРедактированииНовойСтроки производится в системе 1С:Пред приятие в момент начала интерактивного ре­дактирования новой строки списка справочника (после того, как новая строка уже заведена). Данная процедура может использоваться, например, для уста­новки начальных значений (по умолчанию) реквизитов нового элемента спра­вочника. В данной предопределенной процедуре установка статуса возврата не

имеет смысла, т. к. отказаться от ввода новой строки в этот момент уже невоз­можно.

Данная предопределенная процедура может располагаться в Модуле формы списка справочника (см. «Виды программных модулей»).

Пример:

Процедура ПриРедактированииНовойСтроки()

   Оклад = 100000;

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

   Пдр.НайтиПоКоду(1);

   Подразделение = Пдр.ТекукщийЭлемент();

   Город = Константа.НашГород;

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

ПриНачалеРедактированияСтроки

Предопределенная процедура при начале редактирования сущест­вующей строки списка справочника.

Синтаксис:

ПриНачалеРедактированияСтроки()

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

OnStartEditLine

Описание:

Вызов предопределенной процедуры ПриНачалеРедактированияСтроки производится в системе 1С:Пред приятие в момент начала интерактивного ре­дактирования существующей строки списка справочника (кроме новой). Если в данной предопределенной процедуре установить статус возврата — 0 (напри­мер, если данному пользователю нельзя изменять значения реквизитов спра­вочника), запись не будет изменена.

Данная предопределенная процедура может располагаться в Модуле формы списка справочника (см. «Виды программных модулей»).

Пример:

Процедура ПриНачалеРедактированияСтроки()

   Если НазваниеНабораПрав() = Продавец Тогда

      Предупреждение(У вас нет права менять реквизиты!, 2);

      СтатусВозврата(0);

   КонецЕсли;

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

См. также: СтатусВозврата

ПриЗаписи

Предопределенная процедура при записи строки списка справочника.

Синтаксис:

ПриЗаписи(СписокПериодРекв)

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

OnWrite

Параметры:

СписокПериодРекв Строковое значение — список разделенных запятыми изменяемых периодических рекви­зитов справочника. В данный параметр систе­ма 1С:Предприятие передает перечень перио­дических реквизитов, которые были интерак­тивно выбраны пользователем для обновления в окне диалога выбора.
Описание:

Вызов предопределенной процедуры ПриЗаписи производится системой 1С:Предприятие при интерактивной записи строки списка справочника. Если в данной предопределенной процедуре установить статус возврата — 0 (напри­мер, если данному пользователю нельзя изменять некоторые элементы спра­вочника), то запись строки списка справочника не будет выполнена.

Формальный параметр СписокПериодРекв используется в теле проце­дуры для обработки события интерактивной записи строки списка справочни­ка.

Данная предопределенная процедура может располагаться в следующих программных модулях: Модуль формы элемента справочника, Модуль формы группы справочника, Модуль формы списка справочника, Модуль формы спи­ска справочника (см. Виды программных модулей).

Пример:

Процедура ПриЗаписи (СписокРекв)

   Если НазваниеНабораПрав() = Продавец Тогда

      Если ТекущийЭлемент() = Константа.НашаФирма Тогда

         Предупреждение(У вас нет права менять реквизиты!, 2);

         СтатусВозврата(0);

      КонецЕсли;

   КонецЕсли;

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

См. также: СтатусВозврата

ПриПереносеЭлементаВДругуюГруппу

Предопределенная процедура переноса элемента справочника в дру­гую группу.

Синтаксис:

ПриПереносеЭлементаВДругуюГруппу(Элемент, Группа)

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

OnMoveIntoOtherGroup

Параметры:

Элемент Значение элемента справочника, который переносится.
Группа Значение группы справочника, в которую переносится элемент справочника.
Описание:

Вызов предопределенной процедуры ПриПереносеЭлементаВДругуюГруппу производится в системе 1С:Предприятие при интерактивном переносе элемента справочника в другую группу. Если в данной предопределенной процедуре установить статус возврата — 0, то перенос не будет произведен.

Данная предопределенная процедура может располагаться только в Модуле формы списка справочника (см. «Виды программных модулей»).

Пример:

Процедура ПриПереносеЭлементаВДругуюГруппу()

   Если НазваниеНабораПрав() = Продавец Тогда

      Предупреждение(У вас нет права менять группуi, 2);

      СтатусВозврата(0);

   КонецЕсли;

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

См. также: СтатусВозврата

ПриВыбореРодителя

Предопределенная процедура выбора родительской группы справоч­ника.

Синтаксис:

ПриВыбореРодителя(Элемент)

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

OnSetParent

Параметры:

Элемент Значение элемента справочника, который интерак­тивно устанавливается в качестве родителя.
Описание:

Вызов предопределенной процедуры ПриВыбореРодителя производится в системе 1С:Предприятие при интерактивной смене родительской группы спра­вочника (выбор следующего или предыдущего уровня). Если в данной предо­пределенной процедуре установить статус возврата — 0, то выбор родительской группы не будет произведен.

Данная предопределенная процедура может располагаться только в Модуле формы списка справочника (см. «Виды программных модулей»).

Пример:

Процедура ПриВыбореРодителя(Родитель)

   Если НазваниеНабораПрав() = Продавец Тогда

      Если Родитель = ЗапрещеннаяГруппа Тогда

         Предупреждение(Вам запрещено просматривать эту группу!, 2);

         СтатусВозврата(0);

      КонецЕсли;

   КонецЕсли;

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

См. также: СтатусВозврата

ПриВыбореВладельца

Предопределенная процедура выбора владельца подчиненного спра­вочника.

Синтаксис:

ПриВыбореВладельца(Элемент)

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

OnSetOwner

Параметры:

Элемент Значение элемента справочника, который интерактивно устанавливается в качестве владельца подчиненного спра­вочника.
Описание:

Вызов предопределенной процедуры ПриВыбореВладельца производится в системе ЮПредприятие при интерактивном выборе владельца подчиненного справочника (при интерактивной смене владельца, т. е. смене позиции в спра­вочнике-владельце, которая приводит к смене отображаемых в подчиненном справочнике элементов). Если в данной предопределенной процедуре устано­вить статус возврата — 0, то выбор владельца подчиненного справочника не будет произведен.

Данная предопределенная процедура может располагаться только в Модуле формы списка справочника (см. «Виды программных модулей»).

Пример:

Процедура ПриВыбореВладельца(Владелец)

   Если НазваниеНабораПрав() = Продавец Тогда

      Если Владелец = ЗапрещенныйВладелец Тогда

         Предупреждение(Нельзя просматривать эти элементы!, 2);

         СтатусВозврата(0);

      КонецЕсли;

   КонецЕсли;

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

См. также: СтатусВозврата

ПриСменеИерархии

Предопределенная процедура смены режима отображения иерархии справочника.

Синтаксис:

ПриСменеИерархии(Способ)

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

OnHierarchyChange

Параметры:

Способ Значение устанавливаемого (тот, который пользователь хочет установить) способа просмотра справочника: 1 — иерархических список; 0 — все элементы сразу.
Описание:

Вызов предопределенной процедуры ПриСменеИерархии производится в системе 1С:Предприятие при интерактивной смене режима отображения иерар­хии справочника (пункт меню «Иерархический список»). Если в данной пре­допределенной процедуре установить статус возврата — 0, то смена режима отображения иерархии справочника не будет произведена.

Данная предопределенная процедура может располагаться только в Модуле формы списка справочника (см. «Виды программных модулей»).

Пример:

Процедура ПриСменеИерархии(ВыбСпособ)

   Если НазваниеНабораПрав() = Продавец Тогда

      Предупреждение(Нельзя менять режим просмотра 1, 2);

      СтатусВозврата(0);

   КонецЕсли;

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

См. также: СтатусВозврата

ПриУстановкеОтбора

Предопределенная процедура при установке отбора справочника.

Синтаксис:

ПриУстановкеОтбора(ТипОтбора, 3начение0тбора)

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

OnSetSelectInJournal

Параметры:

ТипОтбора Строковое значение — тип устанавливаемого отбора (имя реквизита справочника по которому устанавли­вается отбор).
3начение0тбора Устанавливаемое значение отбора.
Описание:

Вызов предопределенной процедуры ПриУстановкеОтбора производится в системе 1С:Предприятие при интерактивной установке отбора любым спосо­бом (отбор, быстрый отбор, отбор по значению, история отбора) и при отклю­чении отбора. Если в данной предопределенной процедуре установить статус возврата — 0, то установка отбора справочника не будет произведена.

Данная предопределенная процедура может располагаться только в Модуле формы списка справочника (см. «Виды программных модулей»).

Пример:

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

   Если НазваниеНабораПрав() = Продавец Тогда

      Предупреждение(Нельзя устанавливать отбор;, 2);

      СтатусВозврата(0);

   КонецЕсли;

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

См. также: СтатусВозврата