Блокировка контрагента при просрочке платежа в днях



В Комплексе контроль просрочки стоит только суммовой, но понадобилось и блокировать контрагента при просрочке платежа в днях, даже если сумма лимита не превышена. Так и решил сделать, аналогичного ничего не нашел.

Это моя первая публикация, прошу сильно не пинать.

Так как база большая и она SQL, то писался прямой запрос требуется компонента (1cpp.dll), который бы проверял просроченные документы. Для начала добавил в полномочия пользователя проверку можно ли ему превышать кредит. (рис. Права пользователя)

Далее написал прямой запрос и вставил его в функцию КонтрольКредитаПройден при выборе контрагента происходит проверка и выводится просроченный долг (рис. Проверка на просрочку) код прикреплен в файле.

При попытке провести просроченный документ он блокируется (рис 2)

По полномочиям проведение документов разрешили начальникам отделов, что бы те были в курсе, кто числится в должниках и спрашивали с менеджеров. Менеджеры конечно не довольны, но зато контроль просроченных долгов стал более жесткий.

 

Тестировалась в течении 1,5 недели на реальной базе все просрочки сходились.

 

 

9 Comments

  1. Иваныч

    Автору уважение за такой вот подход, идея правильная, т.к не у всех пользователей есть доступ на просмотр долга контрагента.

    Не в тему: Хотя есть еще одно предложение, при проведении документов (реализацияТМЦ, ПеремещениеТМЦ)проверять отпускные цены, чтобы не получилось когда отпускная цена меньше или равна закупочной..

    Reply
  2. 11k65m

    Спасибо.

    (1) Иваныч, При проведении цены пересчитываются согласно цене установленной в карточке контрагента, и его скидкам на определенные группы номенклатурных позиции. Если цену поставили руками, она не имеет смысла при проведении все равно пересчитается.

    Reply
  3. Иваныч

    (2)

    Согласен, только у меня несколько раз было не обновлена Закупочная, а к ней привязана оптовая в % выражении, и как факт, если изменение цены несущественно, закроешь глаза, а когда разница велика, тогда ой-ой-ой…

    Reply
  4. vitn

    Реально нужная вещь!

    Reply
  5. vitn

    А ПОЧЕМУ РУГАЕТСЯ??????????

    RS_Взаим<<?>>.УстановитьТекстовыйПараметр(«ДатаНач», MDW.GetDateTimeIDDOC(СформироватьПозициюДокумента(ПолучитьПозицию(),1)));

    {Документ.Реализация.Модуль Документа(95)}: Переменная не определена (RS_Взаим)

    RS_Взаим<<?>>.УстановитьТекстовыйПараметр(«Фирма», Фирма);

    {Документ.Реализация.Модуль Документа(96)}: Переменная не определена (RS_Взаим)

    RS_Взаим<<?>>.УстановитьТекстовыйПараметр(«Договор», Договор);

    {Документ.Реализация.Модуль Документа(97)}: Переменная не определена (RS_Взаим)

    Если RS_Взаим<<?>>.Prepare(Запрос)=0 Тогда

    {Документ.Реализация.Модуль Документа(115)}: Переменная не определена (RS_Взаим)

    глНеПроводить(Контекст,RS_Взаим<<?>>.GetLastError());

    {Документ.Реализация.Модуль Документа(116)}: Переменная не определена (RS_Взаим)

    глНеПроводить(Контекст,RS_Взаим.GetLastError()<<?>>);

    {Документ.Реализация.Модуль Документа(116)}: Неопознанный оператор

    RS_Взаим<<?>>.Open();

    {Документ.Реализация.Модуль Документа(120)}: Переменная не определена (RS_Взаим)

    RS_Взаим<<?>>.GetResultsInVT(ТИ, 1);

    {Документ.Реализация.Модуль Документа(122)}: Переменная не определена (RS_Взаим)

    Вых=Выходные<<?>>(ТИ.КредДокумент.ДатаДок,ДатаМ);

    {Документ.Реализация.Модуль Документа(129)}: Функция не обнаружена (Выходные)

    RS_Взаим<<?>>.Close();

    {Документ.Реализация.Модуль Документа(143)}: Переменная не определена (RS_Взаим)

    <<?>>Иначе

    {Документ.Реализация.Модуль Документа(144)}: Ожидается ключевое слово ‘КонецФункции’ (‘EndFunction’)

    <<?>>Иначе

    {Документ.Реализация.Модуль Документа(144)}: Ожидается ключевое слово ‘КонецФункции’ (‘EndFunction’)

    ТекущийДолг1 = ВремПокупатели.СводныйОстаток(Фирма,Договор,,,,»СуммаВал»);<<?>>

    {Документ.Реализация.Модуль Документа(146)}: Обнаружено логическое завершение исходного текста модуля

    Reply
  6. Sanario

    (5) vitn, а версия конфигурации какая?

    Reply
  7. 11k65m

    (6) Sanario, В шапке написано 1с 7.7 комплекс

    Reply
  8. user776407

    куда вставить формулу ?))

    Reply
  9. 11k65m

    Формула вставляется в документ реализация. При приведении происходит проверка.

    Reply

Leave a Comment

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