187 lines
8.0 KiB
Plaintext
187 lines
8.0 KiB
Plaintext
#Область ПрограммныйИнтерфейс
|
||
|
||
// Получить единицу измерения.
|
||
//
|
||
// Параметры:
|
||
// Номенклатура - СправочникСсылка.Номенклатура
|
||
//
|
||
// Возвращаемое значение:
|
||
// СправочникСсылка.ЕдиницыИзмерений
|
||
Функция ПолучитьЕдиницуИзмерения(Номенклатура) Экспорт
|
||
|
||
Запрос = Новый Запрос;
|
||
Запрос.Текст =
|
||
"ВЫБРАТЬ
|
||
| Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмерения
|
||
|ИЗ
|
||
| Справочник.Номенклатура КАК Номенклатура
|
||
|ГДЕ
|
||
| Номенклатура.Ссылка = &Ссылка";
|
||
|
||
Запрос.УстановитьПараметр("Ссылка", Номенклатура);
|
||
РезультатЗапроса = Запрос.Выполнить();
|
||
Выборка = РезультатЗапроса.Выбрать();
|
||
Выборка.Следующий();
|
||
Возврат Выборка.ЕдиницаИзмерения;
|
||
|
||
КонецФункции
|
||
|
||
// Рассчет суммы ТЧ.
|
||
//
|
||
// Параметры:
|
||
// ТабЧасть - ТабличнаяЧасть
|
||
//
|
||
// Возвращаемое значение:
|
||
// Число - Рассчет суммы ТЧ
|
||
Функция РассчетСуммыТЧ(ТабЧасть) Экспорт
|
||
|
||
Сумма = 0;
|
||
Для каждого Строка Из ТабЧасть Цикл
|
||
Сумма = Сумма + Строка.Сумма;
|
||
КонецЦикла;
|
||
Возврат Сумма;
|
||
|
||
КонецФункции // РассчетСуммыТЧ()
|
||
|
||
// Заполнить список активных счетов.
|
||
//
|
||
// Возвращаемое значение:
|
||
// СписокЗначений - Заполненый список активных счетов
|
||
// @skip-check doc-comment-collection-item-type
|
||
Функция ЗаполнитьСписокАктивныхСчетов() Экспорт
|
||
|
||
СписокЗначений = Новый СписокЗначений;
|
||
Запрос = Новый Запрос;
|
||
Запрос.Текст =
|
||
"ВЫБРАТЬ
|
||
| ДенежныеСредстваОстатки.Счет КАК Ссылка
|
||
|ИЗ
|
||
| РегистрНакопления.ДенежныеСредства.Остатки КАК ДенежныеСредстваОстатки
|
||
|
|
||
|СГРУППИРОВАТЬ ПО
|
||
| ДенежныеСредстваОстатки.Счет
|
||
|
|
||
|УПОРЯДОЧИТЬ ПО
|
||
| ДенежныеСредстваОстатки.Счет.Наименование";
|
||
|
||
РезультатЗапроса = Запрос.Выполнить();
|
||
Если РезультатЗапроса.Пустой() Тогда
|
||
СписокЗначений.Добавить("Нет денег на счетах");
|
||
Возврат СписокЗначений;
|
||
КонецЕсли;
|
||
Выборка = РезультатЗапроса.Выбрать();
|
||
Пока Выборка.Следующий() Цикл
|
||
СписокЗначений.Добавить(Выборка.Ссылка);
|
||
КонецЦикла;
|
||
Возврат СписокЗначений;
|
||
|
||
КонецФункции // ЗаполнитьСписокЗначений()
|
||
|
||
// Получить цену комм услуги.
|
||
//
|
||
// Параметры:
|
||
// Период - Дата
|
||
// Номенклатура - СправочникСсылка.Номенклатура
|
||
//
|
||
// Возвращаемое значение:
|
||
// Число - Получить цену комм услуги
|
||
Функция ПолучитьЦенуКоммУслуги(Период, Номенклатура) Экспорт
|
||
|
||
Запрос = Новый Запрос;
|
||
Запрос.Текст =
|
||
"ВЫБРАТЬ
|
||
| ЦеныКоммунальныхПлатежейСрезПоследних.Цена КАК Цена
|
||
|ИЗ
|
||
| РегистрСведений.ЦеныКоммунальныхПлатежей.СрезПоследних(&Период, Номенклатура = &Номенклатура) КАК ЦеныКоммунальныхПлатежейСрезПоследних";
|
||
|
||
Запрос.УстановитьПараметр("Номенклатура", Номенклатура);
|
||
Запрос.УстановитьПараметр("Период", Период);
|
||
|
||
РезультатЗапроса = Запрос.Выполнить();
|
||
Если РезультатЗапроса.Пустой() Тогда
|
||
Возврат 0;
|
||
Иначе
|
||
Выборка = РезультатЗапроса.Выбрать();
|
||
Выборка.Следующий();
|
||
Возврат Выборка.Цена;
|
||
КонецЕсли;
|
||
|
||
КонецФункции // ПолучитьЦенуКоммУслуги()
|
||
|
||
// Вернуть число месяца.
|
||
//
|
||
// Параметры:
|
||
// Месяц - Строка
|
||
//
|
||
// Возвращаемое значение:
|
||
// Произвольный - Вернуть число месяца
|
||
Функция ВернутьЧислоМесяца(Месяц) Экспорт
|
||
|
||
Месяцы = Новый Структура;
|
||
Месяцы.Вставить("Январь", 1);
|
||
Месяцы.Вставить("Февраль", 2);
|
||
Месяцы.Вставить("Март", 3);
|
||
Месяцы.Вставить("Апрель", 4);
|
||
Месяцы.Вставить("Май", 5);
|
||
Месяцы.Вставить("Июнь", 6);
|
||
Месяцы.Вставить("Июль", 7);
|
||
Месяцы.Вставить("Август", 8);
|
||
Месяцы.Вставить("Сентябрь", 9);
|
||
Месяцы.Вставить("Октябрь", 10);
|
||
Месяцы.Вставить("Ноябрь", 11);
|
||
Месяцы.Вставить("Декабрь", 12);
|
||
Для каждого Элементы Из Месяцы Цикл
|
||
Если Элементы.Ключ = Строка(Месяц) Тогда
|
||
Возврат Элементы.Значение;
|
||
КонецЕсли;
|
||
КонецЦикла;
|
||
|
||
КонецФункции // ВернутьЧислоМесяца()
|
||
|
||
// Заполнить список счетов.
|
||
//
|
||
// Возвращаемое значение:
|
||
// СписокЗначений - Заполнить список счетов
|
||
//@skip-check doc-comment-collection-item-type
|
||
Функция ЗаполнитьСписокСчетов() Экспорт
|
||
|
||
СписокЗначений = Новый СписокЗначений;
|
||
Запрос = Новый Запрос;
|
||
Запрос.Текст =
|
||
"ВЫБРАТЬ
|
||
| Счета.Ссылка КАК Ссылка
|
||
|ИЗ
|
||
| Справочник.Счета КАК Счета
|
||
|ГДЕ
|
||
| НЕ Счета.ПометкаУдаления";
|
||
|
||
РезультатЗапроса = Запрос.Выполнить();
|
||
Выборка = РезультатЗапроса.Выбрать();
|
||
Пока Выборка.Следующий() Цикл
|
||
СписокЗначений.Добавить(Выборка.Ссылка);
|
||
КонецЦикла;
|
||
Возврат СписокЗначений;
|
||
|
||
КонецФункции
|
||
|
||
// Добавить запись в регистр цен ком услуг.
|
||
//
|
||
// Параметры:
|
||
// Период - Дата
|
||
// Номенклатура - СправочникСсылка.Номенклатура
|
||
// Цена - Число
|
||
Процедура ДобавитьЗаписьВРегистрЦенКомУслуг(Период, Номенклатура, Цена) Экспорт
|
||
|
||
НаборЗаписей = РегистрыСведений.ЦеныКоммунальныхПлатежей.СоздатьНаборЗаписей();
|
||
НаборЗаписей.Отбор.Период.Установить(Период);
|
||
НаборЗаписей.Отбор.Номенклатура.Установить(Номенклатура);
|
||
Запись = НаборЗаписей.Добавить();
|
||
Запись.Период = НачалоМесяца(Период);
|
||
Запись.Номенклатура = Номенклатура;
|
||
Запись.Цена = Цена;
|
||
|
||
НаборЗаписей.Записать(Истина);
|
||
|
||
КонецПроцедуры
|
||
|
||
#КонецОбласти |