Альфа Авто 5 Взаиморасчеты

Внимание! Данный форум является модерируемым.
Для получения к нему доступа необходимо зарегистрироваться или авторизоваться на сайте.

Страницы: 1
RSS
Альфа Авто 5 Взаиморасчеты
 
Добрый день, есть ли какая ни будь памятка, инструкция по работе системы взаиморасчетов. Некоторые моменты не ясны.

Ситуация:

ЗН1 от 28.03.2021 сумма 10 000 руб (в документе стоит Авто закрытие сделки)
ЗН2 от 30.03.2021 сумма 20 000 руб (в документе стоит Авто закрытие сделки)

Документ банковская выписка поступление 20 000 руб. в котором в качестве сделки указан ЗН2 на сумму 20 000 руб. (в документе не стоит Авто закрытие сделки)

При проведении документов
Оплата 10 000 падает на ЗН1
Оплата 10 000 падает на ЗН2

Где логика ? Если я определил в Банковской выписки что оплата пришла за ЗН2, почему она закрывается на ЗН1 ? Если бы ЗН2 был раньше по времени ЗН1 то закрытие было бы корректно, но часто так не бывает

Проблема как мне кажется в функции ПолучитьНеЗакрытыеСделки() модуля регистра Взаиморасчеты, и 3х этапного алгоритма закрытия суммы

на первом этапе при проведении ЗН1 она пытается найти остаток по этой сделки и не найдя его
на втором этапе она выбирает любые остатки кроме остатков по ЗН1 и забирает оплату ЗН2

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

Возможное решение, изменить код в модуле Взаиморасчетов


Изменить фильтр в случае закрытия взаиморасчетов по ФИФО с авто закрытием, брать остатки взаиморасчетов только где сделка документ оплаты

Функция ПолучитьНеЗакрытыеСделки(ТолькоОстаткиПоСделке = Ложь, Приход = Неопределено)

// Получим фильтр на сделки
Если ТолькоОстаткиПоСделке Тогда
СтрОтбор       = "(Сделка=&Сделка)";
СтрОтборФизТаб = "";
ИначеЕсли ЗначениеЗаполнено(Сделка) Тогда
СтрОтбор = "(Сделка ССЫЛКА Документ.Выписка ИЛИ Сделка ССЫЛКА Документ.ПриходныйКассовыйОрдер ИЛИ Сделка ССЫЛКА Документ.ЧекНаОплату)";
СтрОтборФизТаб = "ГДЕ
| ВзаиморасчетыКомпании.Сделка ССЫЛКА Документ.Выписка ИЛИ ВзаиморасчетыКомпании.Сделка ССЫЛКА Документ.ПриходныйКассовыйОрдер ИЛИ ВзаиморасчетыКомпании.Сделка ССЫЛКА Документ.ЧекНаОплату";
Иначе
СтрОтбор = "";
СтрОтборФизТаб = "";
КонецЕсли;


При распределении оплаты в случае если остался остаток бросать его на документ оплаты
Функция Расход()

//Если ЗначениеЗаполнено(Сделка) И ВзаиморасчетыСПокупателем = Истина Тогда
// СделкаПереплаты = Сделка;
//Иначе
СделкаПереплаты = ШапкаДокумента.Ссылка;
//КонецЕсли;


Альфа-Авто: Автосалон+Автосервис+Автозапчасти ПРОФ, редакция 5.1 (5.1.25.02)
Изменено: Андрей Владимирович - 30.03.2021 07:51:21
 
Андрей Владимирович, добрый день, уточните, пожалуйста, в договоре с данным контрагентом стоит флаг "автоматическое закрытие сделок"?
 
В договоре флаг автоматическое закрытие сделок установлен
 
Андрей Владимирович, если Вам необходимо оплачивать выборочно сделки, то и в договоре и в документе ЗН флаг "автоматическое закрытие сделок" стоять не должен.
 
Серьезно ? Это как то все мягко говоря не логично, тут мы галочку убираем в договоре и заказ наряде, а если нам этот же клиент закинет аванс, как тогда ? опять в договоре этом же ставим галочку что бы аванс закрылся, так что ли ? А потом мы запустим восстановление последовательностей взаиморасчетов и все слетит в зависимости от установленной на этот момент галочки в договоре ?
 
Андрей Владимирович, по приведенной Вами ситуации в первом примере Вы делали восстановление последовательностей после указания сделки в БВ, которая должна закрыть ЗН2?
 
Цитата
Андрей Владимирович написал:
В договоре флаг автоматическое закрытие сделок установлен
Ознакомьтесь тоже писал об этом.

https://rarus.ru/forum/forum7/topic14076/#message85889  
Страницы: 1
Читают тему
Поддержка отраслевых решений «1С-Рарус»
Услуги 1С