Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
13 дек 2024, 11:37

Функционал для проверка затрат денежных средств

Автор KiruhaYho, 16 авг 2019, 14:21

0 Пользователей и 1 гость просматривают эту тему.

KiruhaYho

Помогите решить следующее задание.
Задание: Добавить функциональность проверки на затраты денежных средств в месяц при проведении документа «Приходная накладная».
В базе должна быть настройка на установку месячного лимита.
При проведении документа нужно проверить чтобы расход по всем документам «Приходная накладная» за этот месяц не превысила лимит. В случае если превышает, то запретить проведение и вывести сообщение на сколько превышен лимит.

Сделал регистр сведений, в котором будут учитываться период и сам денежный лимит.
Подскажите как реализовать с помощью кода.
Инфобазу загрузил

alex0402

Цитата: KiruhaYho от 16 авг 2019, 14:21Сделал регистр сведений, в котором будут учитываться период и сам денежный лимит.

Я так понимаю - это план.

Тогда еще нужен регистр накопления для факта. В модуле обработки - код для сравнения.
Спасибо за Сказать спасибо

alex0402


Процедура ОбработкаПроведения(Отказ, РежимПроведения)

ПланОборот = Движения.План.Добавить();
ПланОборот.Период = НачалоМесяца(Дата);
ПланОборот.Факт = СуммаДокумента;
Движения.План.Записать();

Запрос = Новый Запрос("ВЫБРАТЬ
                      | ПланСрезПоследних.План КАК План,
                      | ПланОбороты.ФактОборот КАК ФактОборот
                      |ИЗ
                      | РегистрСведений.План.СрезПоследних(&НачПериода, ) КАК ПланСрезПоследних,
                      | РегистрНакопления.План.Обороты(&НачПериода, &КонПериода, Период, ) КАК ПланОбороты
                      |ГДЕ
                      | ПланОбороты.ФактОборот > ПланСрезПоследних.План");

Запрос.УстановитьПараметр("НачПериода",НачалоМесяца(Дата));
Запрос.УстановитьПараметр("КонПериода",КонецМесяца(Дата));
Выборка = Запрос.Выполнить().Выбрать();

Если Выборка.Следующий() Тогда

Отказ = Истина;
Сообщение об ошибке;
Возврат;

КонецЕсли;


КонецПроцедуры
Спасибо за Сказать спасибо

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск