Здравствуйте.
1С Предприятие 1С8.3,
Решил облегчить себе с коммунальными платежами и написать простенькую конфигурацию, чтобы не рассчитывать и заполнять квитанции вручную.
Создал справочники:
- Квартиросъемщик (КодЕРЦ, Адрес, Прописано, ПлощадьЖилая)
- Номенклатура (ВидыРасчетов, Тариф)
- ЕдиницыИзмерений
- Тарифы (флМноготарифный, ЕдИзмерения, Стоимость) + Табличная часть Тарифы (Номер, ОтсчетОт, ОтсчетДо, Стоимость). ТЧ используется для указания многотарифных опций, например для электроэнергии.
Пока только сам заполняю, вроде работает, но чувствуется нет гибкости в настройках тарифов, если добавить еще квартиросъемщика.
Хотел организовать хранение тарифов в регистре сведений, но столкнулся с проблемой, как обыграть случай использования множественных тарифов:
Например в случае с эл.эн. (цифры с потолка)
до 150 кВт - 0,8999
150-800 кВт - 1,6999
> 800 кВт - 2,5999
Посоветуйте, как можно организовать хранение в регистре всех тарифов, как обычных, так и многотарифных, чтобы еще можно было учесть и различие у разных квартиросъемщиков (например если печка газовая, то тариф на эл.эн.
до 150 кВт - 0,8999
150-800 кВт - 1,6999
> 800 кВт - 2,5999
А если печка электрическая, то тариф:
до 250 кВт - 0,6355
250-800 кВт - 0,999
> 800 кВт - 1,800
Думал сделать несколько измерений:
- дата - дата установки тарифа
- плательщик - указывает к какому плательщику привязан этот тариф
- услуга - к какой услуге относится тариф
- номер - номер тарифа для многотарифного (0 - если тариф одинарный)
-
Реквизиты:
- флСчетчик Истина
- ИдИзмерений кВт
- Стоимость 0,8999
- ОтсчетОт 0
- ОтсчетДо 150
Но кажется, что получится избыточность данных, т.к. одинаковый тариф будет дублироваться для каждого плательщика.
Например может быть два разных тарифа, каждый из которых может быть одинаковый для своих потребителей.
Как это правильно организовать.
bizisoft @ Вчера, 22:23
,
В регистре сведений ссылка на Тариф, в тарифе табчасть с порогами и стоимостью. При расчете получаем ссылку на тариф, потом определяем стоимость в зависимости от объема потребления.
mut @ Сегодня, 10:42
,
Не совсем понял концепцию.
Т.е. в регистре например "ТарифныеПланы" сохраняется только ссылка на Тариф в качестве Измерения?
А в качестве второго Измерения добавить ссылку на Квартиросъемщика, чтобы можно было для каждого отдельный тариф применять?
А тариф, на который будет ссылаться этот регистр - это что за объект, справочник или документ?
А что будет, если тариф нужно будет изменить, например подорожало, будут ли сохраняться предыдущие тарифы, как например это организовано в курсах валют (там ссылка идет на Валюту, а ресурсы это Курс и Кратность?mut @ Сегодня, 10:42
,
mut @ Сегодня, 10:42
,
bizisoft @ Сегодня, 16:14
,
Для хранения тарифа и его истории можно сделать периодический регистр с измерением - название тарифа, порог, ресурс - размер тарифа.
Тогда можно записывать историю для тарифа+порог.
Ну и тогда уже не храним ставки в тарифе, а храним все в регистре. В справочнике тарифов можно просто делать выборку из регистра и отображать в удобном виде текущие ставки по порогам.
mut @ Сегодня, 17:48
,
Я попробовал немного изменить то что у меня было ранее с учетом ваших рекомендаций.
Вот такие объекты у меня получились:
Справочник.Квартиросъемщик
Реквизиты:
- Код
- Наименование (ФИО)
- Адрес
- КодЕРЦ
- Площадь
- Прописано
ТЧ (Услуги):
- Услуга (СправочникСсылка.Номенклатура)
- НомерСчета
- Тариф (СправочникСсылка.Тарифы)
ТЧ (счетчики):
- НомерСчетчика
- Назначение
- ДатаПроизводства
- ДатаУстановки
- ДатаПоверкиПоследняя
- ДатаПоверкиСледующая
////////////////////////////////
Справочник.Номенклатура
Реквизиты:
- Код
- Наименование (Услуга)
- Родитель
- Тариф (СправочникСсылка.Тарифы)
- ВидыРасчетов (По счетчику / По площади / По прописке)
////////////////////////////////
Справочник.Тарифы
Реквизиты:
- Код
- Наименование (Тариф)
- Услуга (СправочникСсылка.Услуги
- ЕдиницаИзмерения
Табличное поле
- Номер
- ОтсчетОт
- ОтсчетДо
- Стоимость
///////////////////////////////////
Документ.ОплатаУслуг
Реквизиты:
- Номер
- Дата
- Плательщик (СправочникСсылка.Квартиросъемщик)
- ПлатежныйПериодС
- ПлатежныйПериодДо
ТЧ (Услуги);
- Услуга (СправочникСсылка.Номенклатура)
- Сумма
- ПлатежныйПериодС
- ПлатежныйПериодДо
- ПоказаниеСчетчикаНачальн
- ПоказаниеСчетчикаКонечн
- ПоказаниеСчетчикаРазница
- ЛицевойСчет
//////////////////////////////////////
Документ.ИзменениеТарифов
Реквизиты:
- Услуга (СправочникСсылка.Номенклатура)
- Тариф (СправочникСсылка.Тарифы)
ТЧ (Тарифы)
- Номер
- ОтсчетОт
- ОтсчетДо
- Стоимость
//////////////////////////////////////
РегистрСведений.ТарифныйПлан (периодический)
Измерение:
- Услуга (СправочникСсылка.Номенклатура)
- Тариф (СправочникСсылка.Тарифы)
- ОтсчетОт
- ОтсчетДо
Ресурсы:
- Стоимость
bizisoft @ Вчера, 21:30
,
Если запись будет по документу, то лучше сделать регистр подчиненным регистратору.
Примеры можно искать примерно таким запросом: https://pro1c.org.ua/redirect.php?https://www.google.com/search?q=1%D1%81+%D0%B7%D0%B0%D0%BF%D0%B8%D1%81%D1%8C+%D0%B2+%D1%80%D0%B5%D0%B3%D0%B8%D1%81%D1%82%D1%80+%D1%81%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B9+%D0%BF%D0%BE%D0%B4%D1%87%D0%B8%D0%BD%D0%B5%D0%BD%D0%BD%D1%8B%D0%B9+%D1%80%D0%B5%D0%B3%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%D1%83&oq=1%D1%81+%D0%B7%D0%B0%D0%BF%D0%B8%D1%81%D1%8C+%D0%B2+%D1%80%D0%B5%D0%B3%D0%B8%D1%81%D1%82%D1%80&aqs=chrome.3.0j69i57j0l6.7002j0j1&sourceid=chrome&ie=UTF-8
mut @ Сегодня, 11:24
,
Благодарю за подсказку - попробую изучить вопрос.
bizisoft @ 19.09.20, 11:47
,
Все получилось.
При проведении документа, создаются записи в регистр, а при отмене проведение, удаляются.
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua