1. // Глобальный контекст. // РегистрыСведений. 2. // объект РегистрыСведенийМенеджер. //.<имя регистра сведений>. // Для Каждого … Из … Цикл … КонецЦикла;
1. // Глобальный контекст // РегистрыСведений // Пример: получить текущую цену из периодического регистра сведений " Цены". Элемент = Справочники. Номенклатура. НайтиПоКоду(4); Отбор = Новый Структура(" Номенклатура", Элемент); ЗначенияРесурсов = РегистрыСведений. Цены. ПолучитьПоследнее(ТекущаяДата(), Отбор); Цена = ЗначенияРесурсов. Цена; 2. // объект РегистрыСведенийМенеджер //. < имя регистра сведений> // [< имя регистра сведений> ] // Для Каждого … Из … Цикл … КонецЦикла; // Пример: Получить начальную цену из периодического регистра сведений Цены. ИмяРегистра = " Цены"; Услуга = Справочники. Номенклатура. НайтиПоНаименованию(" Диагностика" ); Отбор = Новый Структура; Отбор. Вставить(" Номенклатура", Услуга ); Цена = РегистрыСведений[ ИмяРегистра ]. ПолучитьПервое(ТекущаяДата(), Отбор). Цена; 3. // объект РегистрСведенийМенеджер. < имя> // СоздатьКлючЗаписи() // Пример: активизировать требуемую строку списка регистра сведений. СтруктураКлючевыхПолей = Новый Структура; СтруктураКлючевыхПолей. Вставить(" Период", Дата(" 20040331000000" )); СтруктураКлючевыхПолей. Вставить( " Номенклатура", Справочники. Номенклатура. НайтиПоКоду(" 0000006" )); Элементы. Материалы. ТекущаяСтрока = РегистрыСведений. Цены. СоздатьКлючЗаписи ( СтруктураКлючевыхПолей); Краткий справочник разработчика 927
4. // объект РегистрСведенийМенеджер. < имя> // СоздатьНаборЗаписей() // Пример: показать номенклатуру, цена на которую была установлена в заданную дату и время. Набор = РегистрыСведений. Цены. СоздатьНаборЗаписей (); Набор. Отбор. Период. Установить(ЗаданнаяДата, Истина);
Набор. Прочитать(); Для Каждого ОчереднаяЗапись Из Набор Цикл Сообщить(" Номенклатура = " + ОчереднаяЗапись. Номенклатура +", цена = " + ОчереднаяЗапись. Цена); КонецЦикла; 5. // объект РегистрСведенийМенеджер. < имя> // СоздатьМенеджерЗаписи() // Пример: добавить новое значение цены в регистр " Цены". Запись = РегистрыСведений. Цены. СоздатьМенеджерЗаписи (); Запись. Период = ТекущаяДата(); Запись. Номенклатура = Справочники. Номенклатура. НайтиПоКоду(" 0000005" ); Запись. Цена = 568; Запись. Записать(); 6. // объект РегистрСведенийНаборЗаписей. < имя> // [< индекс элемента коллекции> ] // Для Каждого … Из … Цикл … КонецЦикла; // Пример: показать номенклатуру, цена на которую была установлена в заданную дату и время. Набор = РегистрыСведений. Цены. СоздатьНаборЗаписей(); Набор. Отбор. Период. Установить(ЗаданнаяДата, Истина); Набор. Прочитать(); Для КаждогоОчереднаяЗапись ИзНабор Цикл Сообщить(" Номенклатура = " + ОчереднаяЗапись. Номенклатура + ", цена = " + ОчереднаяЗапись. Цена); КонецЦикла; 7. // объект РегистрСведенийВыборка. < имя> // ПолучитьМенеджерЗаписи() // Пример: удалить все записи регистра сведений за текущий месяц. Выборка = РегистрыСведений. Цены. Выбрать( НачалоМесяца(ТекущаяДата()), КонецМесяца(ТекущаяДата())); Пока Выборка. Следующий() цикл Выборка. ПолучитьМенеджерЗаписи (). Удалить(); КонецЦикла; 8. // объект РегистрСведенийМенеджер. < имя> // Выбрать() // ВыбратьПоРегистратору() // Пример: показать изменение цен на элемент номенклатуры в течение года. Отбор = Новый Структура(" Номенклатура", Справочники. Номенклатура. НайтиПоКоду(" 0000005" )); Выборка = РегистрыСведений. Цены. Выбрать (НачалоГода(ТекущаяДата()), ТекущаяДата(), Отбор); Пока Выборка. Следующий() цикл
Сообщить(" Дата = " + Выборка. Период + ", цена = " + Выборка. Цена); КонецЦикла; Последовательность событий при сохранении данных из формы записи регистра сведений (записать и закрыть) Рис. 29. 17. Последовательность событий при сохранении данных из формы записи регистра сведений
пРиМеЧАние Заливкой выделены события, выполняющиеся в транзакции записи.
Работа с формой записи регистра сведений осуществляется при помощи объекта РегистрСведенийМенеджерЗаписи. < имя>, который, в свою очередь, использует объект РегистрСведенийНаборЗапи- сей. < имя>. Особенности внутренней реализации объекта РегистрСведенийМе- неджерЗаписи. < имя> таковы, что в случае сохранения суще- ствующей записи регистра сведений обработчики события Перед Записью() и ПриЗаписи() модуля набора записей будут вызваны дважды: сначала для старого набора записей (с количеством записей 0) и затем для нового (с количеством записей 1).
Воспользуйтесь поиском по сайту: ©2015 - 2025 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|