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

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

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

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

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

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

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

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

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

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

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

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

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

    КонецЕсли;

    Ответить

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

    Ответить

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

Ваш e-mail не будет опубликован.