Пример: Показать изменение цен на элемент номенклатуры в течение года

Пример: Удалить все записи регистра сведений за текущий месяц

Выборка = РегистрыСведений.Цевы

.Выбрать(НачалоМесяца(ТекущаяДата()), КонецМесяца(ТекущаяДата()));

Пока Выборка.Следующий() цикл

Выборка.ПолучютьМенеджерЗначения()-Удалить();
КонецЦикла;_______________________________________________________

// Выбрать()

// ВыбратьПоРегистратору()

Отбор = Новый Структур("'Номенклатура", Справочники.Номенклатура.НайтиПоКоду("0000005")); Выборка = РегистрыСведений.Цены

.Выбрать(НачалоГода(ТекущаяДата()),ТекущаяДата(),Отбор); Пока Выборка.Следующий() цикл

Сообщить("Дата = "+Выборка.Период+ ", цена = "+Выборка.Цена);
КонецЦикла; _________________________________________


Последовательность событий

При записи из формы записи регистра сведений из формы записи


Замечание. Работа с формой записи регистра сведений
осуществляется при помощи объекта

РегистрСведенийМенеджерЗаписи.<имя>,который, в свою


596



Краткий справочник разработчика


очередь, использует объект

РегистрСведенийНаборЗаписей^имя>.

Особенности внутренней реализации объекта

РегистрСведенийМенеджерЗаписи^имя>таковы, что в случае записи существующей записи регистра сведений, обработчики события ПередЗаписью()и ПриЗаписи()модуля набора записей будут вызваны дважды: сначала для «старого» набора записей (с количеством записей 0) и затем для «нового» набора записей (с количеством записей 1).

При записи из формы набора записей регистра сведений


Регистры накопления

Объекты встроенного языка для работы с регистрами накопления

*Заливкой выделен объект манипулирования данными

Узнай больше!

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

РегистрНакопленияЗапись^имя>.Используется для доступа к записи регистра накопления. Объект не создается непосредственно, а предоставляется другими объектами, отвечающими за регистр накопления. Например, данный объект представляет записи регистра в наборе записей.

РегистрНакопленияКлючЗаписи^имя>.Представляет собой набор значений, однозначно идентифицирующих запись регистра.


 


598



Краткий справочник разработчика


Регистры накопле


 


Объект используется в тех случаях, когда необходимо сослаться на определенную запись. Например, он выступает в качестве значения свойства «ТекущаяСтрока» табличного поля, отображающего список записей регистра.

Использование объектов:


// СоздатьНаборЗаписей()

//Пример: Получить движения документа

НужныйДокумент = Документы.ПриходнаяНакладная.НайтиПоНомеру(4); Движения = РегистрыНакопления.ОстаткиМатериалов.СоздатьНаборЗаписей(); Движения.Отбор.Регистратор.Значение = НужныйДокумент; Движения.Прочитать();


// РегистрыНакопления


//Пример: Открыть форму списка регистра ОстаткиМатериалов

Форма = РегистрыНакопления.ОстаткиМатериалов.ПолучитьФормуСписка(); Форма.Открыть();


// Выбрать()

// ВыбратьПоРегистратору()

//Пример: Выбрать все записи регистра ОстаткиМатериалов за текущий месяц

Выборка = РегистрыНакопления.ОстаткиМатериалов

.Выбрать(НачалоМесяца(ТекущаяДата()), КонецМесяца(ТекущаяДата()));


 


II .<имя регистра накопления> // [<имя регистра накопления >] // Для Каждого ... Из ... Цикл... КонецЦикла;

//Пример: Рассчитать итоги регистра ОстаткиМатериалов на указанную дату

ИмяРегистра = ОстаткиМатериалов; РегистрыНакопления[ИмяРегистра]

.УстановитьПериодРассчитанныхИтогов(УказаннаяДата);

// СоздатьКлючЗапнси()

//Пример: Активизировать требуемую строку списка регистра накопления

СтруктураКлючевыхПолей = Новый Структура; СтруктураКлючевыхПолей.Вставить("Регистратор",

Документы.ПриходнаяНакладная.НайтиПоНомеру("0000002"));

СтруктураКлючевыхПолей.Вставить("НомерСтроки",2); ЭлементыФормы.ТабличноеПоле1.ТекущаяСтрока =

РегистрыНакопления.ОстаткиМатериалов

.СоздатьКлючЗапис^СтруктураКлючевыхПолей);


// [<индексэлементаколлекции>|

// Для Каждого ... Из ... Цикл ... КонецЦикла;

//Пример: Получить движения документа

НужныйДокумент = Документы.ПриходнаяНакладная.НайтиПоНомеру(4); Движения = РегистрыНакопления.ОстаткиМатериалов.СоздатьНаборЗаписей(); Движения.Отбор.Регистратор.Значение = НужныйДокумент; Движения.Прочитать();

Для Каждого ОчередноеДвижение Из Движения Цикл //алгоритм обработки движений

КонецЦикла;


 


600



Последовательность событий при записи набора записей регистра накопления из формы набора записей


Регистры бухгалтерии

Объекты встроенного языка для работы с регистрами бухгалтерии


 




 


 



*Заливкой выделен объект манипулирования данными