Иллюстрированный самоучитель по языку системы 1С:Предприятие

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

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

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

Синтаксис:

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

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

UseDate

Параметры:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Описание:

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

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

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

Замечание
Данный метод имеет следующую особенность применения: его нельзя использовать "через две точки". Например, если в документе с именем "ДокНакл" есть реквизит "Фирма" типа "справочник", у которого есть периодические реквизиты НДС и СН, то следующий оператор:
ДокНакл.Фирма.ИспользоватьДату(Дата);
работать не будет. В данном случае следует просто использовать промежуточную переменную, например:
ФирДок = ДокНакл.Фирма;
ФирДок.ИспользоватьДату(РабочаяДата());
НДСДок = ФирДок.НДС;

Пример:

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

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

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

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

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

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

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

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

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

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.