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

    Системные процедуры работы с регистрами

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

    РассчитатьРегистрыНа

    Рассчитать все временные регистры на начало события.

    Синтаксис:

    РассчитатьРегистрыНа(<ГраницаРасчета>, <ГрафаОтбора>)
    

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

    CalcRegsOnBeg
    

    Параметры:

    <ГраницаРасчета> Выражение со значением типа дата, документ или позиция документа.
    <ГpaфaOтбopa> Необязательный параметр. Строковое выражение – идентификатор графы отбора, как он задан в конфигураторе. Данный параметр устанавливает режим использования определенной графы отбора. "*" – автоматический выбор графы отбора. Пустая строка – не использовать графу отбора. По умолчанию устанавливается автоматический выбор графы отбора.

    Описание:

    Процедура РассчитатьРегистрыНа рассчитывает все регистры, у которых установлен флаг участия во временном расчете (см. ВременныйРасчет), на момент начала события. Если при вызове метода в параметре передана дата, то расчет временных регистров производится на начало указанной даты. Если при вызове метода в параметре передан документ, то расчет временных регистров производится на момент до проведения данного документа.

    Применение данной процедур в тексте любого программного модуля непосредственное, т. е. просто имя процедуры с параметрами (без предварительной ссылки на объект).

    Пример:

    // если итоги не актуальны, то стоимости берем из временного расчета
    
    // регистра УчетРеализации
    
    Рег = СоздатьОбъект("Регистр.УчетРеализации");
    
    Рег.ВременныйРасчет();
    
    РассчитатьРегистрыНа(ТекущийДокумент());
    
    Рег.Товар = Товар;
    
    Рег.Клиент = Клиент;
    
    Рег.ОстаткиПолучить();
    
    ТекОстаток = Рег.ОстатокТовара;
    
    ТекСтоимость = Рег.Стоимость;
    
    ТекПродСтоимость = Рег.ПродСтоимость;
    
    Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.