Закажите бесплатный расчет стоимости вашей задачи по 1С!
Перезвоним за 10 минут!

Контроль бюджетов подразделений 1С Управление торговлей

Если Вас интересует автоматизация бюджетирования, внедрения казначейства или учета по МСФО — ознакомьтесь с нашим специальным предложением.

В компании при отражении факта оплаты поставщику наличными денежными средствами действует следующая политика:

  • В конце месяца (на следующий месяц) для каждого подразделения определяется лимит денежных средств
  • Пока подразделение не выбрало этот лимит, платежи могут осуществляться без оформления заявки на расходование денежных средств.
  • При превышении лимита оплата возможна только по предварительно выставленной заявке

Необходимо в системе предусмотреть отчет, показывающий остатки по лимитам (в разрезе подразделений) и суммы, оплаченные сверх лимита.

Остались вопросы?

Задайте ВОПРОС на нашем форуме 1С! ››

СПРОСИТЕ в комментариях!

Комментариев: 2 на “Контроль бюджетов подразделений 1С Управление торговлей
  1. При подготовке использовал следующее решение (ибо решение на своём регистре сведений не принимается преподавателями):

    1. Включил в Администрировании функциональные опции «Заявки на расходование денежных средств» (все галочки).
    2. Добавил у справочника «Кассы» реквизит «ИспользоватьЗаявкиСверхЛимита» с типом «булево» и вынес его на форму элемента справочника.
    3. В модуле менеджера док-та «Расходный кассовый ордер» в процедуре «ЗаполнитьИменаРеквизитовПоХозяйственнойОперации» добавил реквизит хозяйственной операции с видом «Оплата поставщику»:
    МассивРеквизитовОперации.Добавить(«Подразделение»);
    4. В обработку проведения док-так РКО добавил следующий код после строки «ДенежныеСредстваСервер.ОтразитьЛимитыРасходаДенежныхСредств(ДополнительныеСвойства, Движения, Отказ);» :
    //Проверим, установлен ли для текущей кассы режим контроля расходов при превышении допустимого лимита
    Если Касса.ИспользоватьЗаявкиСверхЛимита Тогда

    //Проверим наличие отрицательных остатков в регистре
    Запрос = Новый Запрос(«ВЫБРАТЬ
    | РасходныйКассовыйОрдерРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредствВРКО,
    | СУММА(РасходныйКассовыйОрдерРасшифровкаПлатежа.Сумма) КАК СуммаВРКО
    |ПОМЕСТИТЬ СтатьиДДССуммы
    |ИЗ
    | Документ.РасходныйКассовыйОрдер.РасшифровкаПлатежа КАК РасходныйКассовыйОрдерРасшифровкаПлатежа
    |ГДЕ
    | РасходныйКассовыйОрдерРасшифровкаПлатежа.Ссылка = &Ссылка
    |
    |СГРУППИРОВАТЬ ПО
    | РасходныйКассовыйОрдерРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ
    | ЕСТЬNULL(-ЛимитыРасходаДенежныхСредствОбороты.ЛимитОборот + ЛимитыРасходаДенежныхСредствОбороты.РасходСверхЛимитаОборот + ЛимитыРасходаДенежныхСредствОбороты.РасходВПределахЛимитаОборот, 0) КАК Перерасход,
    | ЛимитыРасходаДенежныхСредствОбороты.СтатьяДвиженияДенежныхСредств,
    | ЛимитыРасходаДенежныхСредствОбороты.Организация,
    | ЛимитыРасходаДенежныхСредствОбороты.Подразделение
    |ПОМЕСТИТЬ ПредИтог
    |ИЗ
    | СтатьиДДССуммы КАК СтатьиДДССуммы
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ЛимитыРасходаДенежныхСредств.Обороты(
    | &ПериодНач,
    | &ПериодКон,
    | ,
    | Организация = &Организация
    | И Подразделение = &Подразделение
    | И СтатьяДвиженияДенежныхСредств В
    | (ВЫБРАТЬ
    | Т1.СтатьяДвиженияДенежныхСредствВРКО
    | ИЗ
    | СтатьиДДССуммы КАК Т1)) КАК ЛимитыРасходаДенежныхСредствОбороты
    | ПО СтатьиДДССуммы.СтатьяДвиженияДенежныхСредствВРКО = ЛимитыРасходаДенежныхСредствОбороты.СтатьяДвиженияДенежныхСредств
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ
    | ПредИтог.Перерасход,
    | ПредИтог.СтатьяДвиженияДенежныхСредств,
    | ПредИтог.Организация,
    | ПредИтог.Подразделение
    |ИЗ
    | ПредИтог КАК ПредИтог
    |ГДЕ
    | ПредИтог.Перерасход > 0»);
    Запрос.УстановитьПараметр(«ПериодНач»,НачалоМесяца(Дата));
    Запрос.УстановитьПараметр(«ПериодКон»,КонецМесяца(Дата));
    Запрос.УстановитьПараметр(«Организация»,Организация);
    Запрос.УстановитьПараметр(«Подразделение»,Подразделение);

    РезультатЗапроса = Запрос.Выполнить();
    Если НЕ РезультатЗапроса.Пустой() Тогда
    //Есть перерасход
    Выборка = РезультатЗапроса.Выбрать();
    Пока Выборка.Следующий() Цикл
    Сообщить(«Возник перерасход по статье ДДС «+Выборка.СтатьяДвиженияДенежныхСредств+» в размере «+Выборка.Перерасход+» «+Валюта.Наименование+»!»);

    КонецЦикла;
    //Отказ = Истина;
    Возврат;
    КонецЕсли;

    КонецЕсли;

    Ответить

  2. Ошибки в коде выше:
    1. ЕСТЬNULL(-ЛимитыРасходаДенежныхСредствОбороты.ЛимитОборот + ЛимитыРасходаДенежныхСредствОбороты.РасходСверхЛимитаОборот + ЛимитыРасходаДенежныхСредствОбороты.РасходВПределахЛимитаОборот, 0) КАК Перерасход, заменяем на
    ЕСТЬNULL(-ЛимитыРасходаДенежныхСредствОбороты.ЛимитОборот + ЛимитыРасходаДенежныхСредствОбороты.РасходСверхЛимитаОборот + ЛимитыРасходаДенежныхСредствОбороты.РасходВПределахЛимитаОборот +СтатьиДДССуммы.СуммаВРКО , 0) КАК Перерасход,
    2. Не забываем заполнить параметр Ссылка у запроса
    3. Раскомментируем Отказ=Истина.

    Ответить

Добавить комментарий:

Ваш e-mail не будет опубликован. Обязательные поля помечены *


*