Файл: СправочникиМенеджер доступ к определенным в конфигурации справочникам.doc
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 24.10.2023
Просмотров: 30
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
НоваяЗапись.Записать();
Иначе
Сообщить("НЕ найдена валюта");
КонецЕсли;
//2. Создание набора записей
Если НЕ ВалютаUSD.Пустая() Тогда
НаборЗаписей = РегистрыСведений.КурсыВалют.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Валюта.Установить(ВалютаUSD);
НаборЗаписей.Отбор.Период.Установить(НачалоДня(ТекущаяДата()) - 1);
//добавление записи в набор
НоваяЗапись = НаборЗаписей.Добавить();
НоваяЗапись.Период = НачалоДня(ТекущаяДата()) - 1;
НоваяЗапись.Валюта = ВалютаUSD;
НоваяЗапись.Курс = 80;
НоваяЗапись.Кратность = 1;
НаборЗаписей.Записать();
КонецЕсли;
//3. Заполнение регистра сведений
ТекДата = НачалоМесяца(ТекущаяДата());
КонДата = КонецМесяца(ТекущаяДата());
Пока ТекДата <= КонДата Цикл
НоваяЗапись = РегистрыСведений.КурсыВалют.СоздатьМенеджерЗаписи();
НоваяЗапись.Период = ТекДата;
НоваяЗапись.Валюта = ВалютаUSD;
НоваяЗапись.Курс = 70 + ДеньНедели(ТекДата);
НоваяЗапись.Кратность = 1;
НоваяЗапись.Записать();
ТекДата = ТекДата + 86400;
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура ПоискЗаписейНаСервере()
ВалютаUSD = Справочники.Валюты.НайтиПоКоду("840");
Если ВалютаUSD.Пустая() Тогда
Сообщить("Не найдена валюта");
Возврат;
КонецЕсли;
СтруктураПоиска = Новый Структура("Валюта", ВалютаUSD);
Результат = РегистрыСведений.КурсыВалют.Получить('20211004', СтруктураПоиска);
Сообщить("" + Результат.Курс + " за " + Результат.Кратность + " ед.");
КонецПроцедуры
Важно! Методы ПолучитьПоследнее и ПолучитьПервое (СрезПервых и СрезПоследних) доступны только в периодическом регистре
&НаСервере
Процедура ПолучитьПоследнееНаСервере()
ВалютаUSD = Справочники.Валюты.НайтиПоКоду("840");
Если ВалютаUSD.Пустая() Тогда
Сообщить("Не найдена валюта");
Возврат;
КонецЕсли;
СтруктураПоиска = Новый Структура("Валюта", ВалютаUSD);
Результат = РегистрыСведений.КурсыВалют.ПолучитьПоследнее('20211004', СтруктураПоиска);
Сообщить("" + Результат.Курс + " за " + Результат.Кратность + " ед.");
КонецПроцедуры // ()
&НаСервере
Процедура ПолучитьПервоеНаСервере()
ВалютаUSD = Справочники.Валюты.НайтиПоКоду("840");
Если ВалютаUSD.Пустая() Тогда
Сообщить("Не найдена валюта");
Возврат;
КонецЕсли;
СтруктураПоиска = Новый Структура("Валюта", ВалютаUSD);
Результат = РегистрыСведений.КурсыВалют.ПолучитьПервое('20211004', СтруктураПоиска);
Сообщить("" + Результат.Курс + " за " + Результат.Кратность + " ед.");
КонецПроцедуры
&НаСервере
Процедура ВыборЗаписейНаСервере()
ВалютаUSD = Справочники.Валюты.НайтиПоКоду("840");
Если ВалютаUSD.Пустая() Тогда
Сообщить("Не найдена валюта");
Возврат;
КонецЕсли;
СтруктураПоиска = Новый Структура("Валюта", ВалютаUSD);
ВыборкаКурсы = РегистрыСведений.КурсыВалют.Выбрать('20211005', '20211010', СтруктураПоиска);
Пока ВыборкаКурсы.Следующий() Цикл
Сообщить("" + ВыборкаКурсы.Период + " - " + ВыборкаКурсы.Курс);
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура СрезПоследнихНаСервере()
ВалютаUSD = Справочники.Валюты.НайтиПоКоду("840");
Если ВалютаUSD.Пустая() Тогда
Сообщить("Не найдена валюта");
Возврат;
КонецЕсли;
СтруктураОтбора = Новый Структура("Валюта", ВалютаUSD);
КурсыUSD = РегистрыСведений.КурсыВалют.СрезПоследних('20211010', СтруктураОтбора);
Для каждого ТекСтрока Из КурсыUSD Цикл
Сообщить("" + ТекСтрока.Период + " - " + ТекСтрока.Курс);
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура СрезПервыхНаСервере()
ВалютаUSD = Справочники.Валюты.НайтиПоКоду("840");
Если ВалютаUSD.Пустая() Тогда
Сообщить("Не найдена валюта");
Возврат;
КонецЕсли;
СтруктураОтбора = Новый Структура("Валюта", ВалютаUSD);
КурсыUSD = РегистрыСведений.КурсыВалют.СрезПервых('20211010', СтруктураОтбора);
Для каждого ТекСтрока Из КурсыUSD Цикл
Сообщить("" + ТекСтрока.Период + " - " + ТекСтрока.Курс);
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура ИзменениеЗаписейНаСервере()
ВалютаUSD = Справочники.Валюты.НайтиПоКоду("840");
Если ВалютаUSD.Пустая() Тогда
Сообщить("Не найдена валюта");
Возврат;
КонецЕсли;
//создаем пустой набор записей
НаборЗаписей = РегистрыСведений.КурсыВалют.СоздатьНаборЗаписей();
//накладываем отбор по валюте
НаборЗаписей.Отбор.Валюта.Установить(ВалютаUSD);
//читаем данные из базы в набор записей
НаборЗаписей.Прочитать();
//меняем записи в наборе записей
Для каждого Запись Из НаборЗаписей Цикл
Запись.Курс = Запись.Курс + 1;
КонецЦикла;
//записываем данные в базу
НаборЗаписей.Записать();
КонецПроцедуры
&НаСервере
Процедура УдалениеЗаписейНаСервере()
//удаление записей по доллару с 01.10 по 05.10
ВалютаUSD = Справочники.Валюты.НайтиПоКоду("840");
Если ВалютаUSD.Пустая() Тогда
Сообщить("Не найдена валюта");
Возврат;
КонецЕсли;
//создаем пустой набор записей
НаборЗаписей = РегистрыСведений.КурсыВалют.СоздатьНаборЗаписей();
//устанавливаем отбор по валюте
НаборЗаписей.Отбор.Валюта.Установить(ВалютаUSD);
//читаем данные из базы в набор записей
НаборЗаписей.Прочитать();
МассивКУдалению = Новый Массив;
Для каждого Запись Из НаборЗаписей Цикл
Если Запись.Период >= '20211001' И Запись.Период <= '20211005' Тогда
МассивКУдалению.Добавить(Запись);
КонецЕсли;
КонецЦикла;
Для каждого УдаляемаяЗапись Из МассивКУдалению Цикл
НаборЗаписей.Удалить(УдаляемаяЗапись);
КонецЦикла;
НаборЗаписей.Записать();
КонецПроцедуры
&НаСервере
Процедура ОчисткаРегистраНаСервере()
//создаем пустой набор записей
НаборЗаписей = РегистрыСведений.КурсыВалют.СоздатьНаборЗаписей();
//записываем его в регистр
НаборЗаписей.Записать();
КонецПроцедуры