#0
by Melcor
Доброго дня. Подскажите алгоритм распределения суммы оплат. Скажем есть 4 строки с суммами: 150 100 300 250 Нужно чтобы когда вбиваешь сумму 500 1с сама раскидала в таком порядке: 150 - 150 100 - 100
#5
by Melcor
ну у меня есть строки с платежками, и мы знаем общую сумму выписки из банка, и хотелось бы, чтобы оператор забил общую сумму, а она автоматом раскидалась по строкам соответственно, т.е. строк много и сумма не по всем платежкам
#11
by Melcor
по строчно не факт что распределит, просто есть вероятность, что изначально мы распределили сумму на одну платежку, а по остальным ровно не выходит распределить
#19
by CepeLLlka
Ну так и иди от самого большого платежа или задай приоритеты контрагентам или самим платёжкам. И потом уже бери общую сумму, и циклом пробегай по всем платежам, в зависимости от приоритета и суммы, ставь им признак оплаты и уменьшай общую сумму..
#21
by Melcor
Тут есть вероятность, что мы добавили сумму в ту платежку из-за которой потом не будет биться общая сумма по остальным
#22
by Numerus Mikhail
Ну тогда вешай на все строки по порядку пока хватает. В любом случае этот контрагент вам должен, так какая разница по какой платежке?
#24
by Dotoshin
Не прокатит. Может оказаться так что остальные суммы будут либо слишком большие, либо слишком маленькие и будет либо остаток получаться либо излишек. Если я правильно понял ему точную сумму надо подобрать из нескольких сумм.
#25
by Брудвар
Перебором всех возможных вариантов. Сделай такой цикл. Как только вариант сошелся, выбираешь его, и ОК
#26
by Melcor
Так и думал, чтобы не заморачиваться, но шанс косяка присутствует, думал, может у кого есть подобный алгоритм
#27
by Брудвар
Но возможны сбои. Например есть платеж на 300 и суммы: 100 200 300 Распределяется так: На следующий день приходит платеж на 200, и никак его не распределишь, потому что 200 уже занято.
#32
by Михаил Козлов
Это ранец на равенство: Ai - сумма i-той строки; B - сумма платежа; Xi = 0 или 1 - искомые переменные. Нужно найти решение уравнения: СУММА(по i) Ai*Xi = B. Если не повезет - может получиться полный перебор, но здесь он не слишком большой (2^число строк). Попробуйте в лоб полным перебором или какие-то алгоритмы для ранца. Правда, не понятно. зачем это нужно: есть штатный подбор. Ну оформит он частичную оплату - не велика беда.
#35
by breezee
Ваш алгоритм может отработать некорректно если нужно будет распределить 500 на строки: 300 300 300 300 :D
#36
by Брудвар
А, ты каждую строку считал отдельно. Тогда все верно, с некоторыми исключениями, что не нужно проверять дальше если в какой-то момент и так понятно что уже перебор.
#38
by Злопчинский
да пофиг что маловероятно.А то прибегают потомОй программа закрылась самаОй тут какое-то сообщение про деление на нольОй он считает уже 3 часа....А ули, маловероятно же
#40
by Брудвар
Это вообще не в тему. От этого ничего не закроется и ничего не поделится на ноль. Все нормально Не, пропорция - это другая задача.
#41
by VladZ
Задача мутная какая-то. "у меня есть строки с платежками". Платежка проходит по определенному контрагенту. При чем здесь "как распределить суммы"? Нужно распределить в пределах контрагента? Сортируй по дате и закрывай по порядку. Закрылось частично - фиг с ним, закроется полностью при следующей оплате.
#42
by catena
Такая ситуация вполне вероятно, потому что даже при целом распределении есть вероятность "не того" распределения и из оставшихся сумм на следующий день не сложится слово "ж...", ой, "счастье".
#44
by catena
Придется перераспределять с самого начала распределения. Не факт, что невозможность распределения вылезет именно на следующий день.
#45
by d4rkmesa
Будь мужиком, закрывай оплаты по FIFO. По контрагенту целиком или договору, фильтр настроить не проблема. А то твой чудесный алгоритм нараспределяет, а потом комдир прибежит, какого х** отгрузки, к которым не подобралась оплата, в просрочке?
#46
by h-sp
смысл в этом распределении? Покупатель в платежке всегда пишет назначение платежа по счету номер такой-то. Поэтому нужно привязывать к тем счетам, которые перечислены.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- ЗУП 3.1 Налоговая переквалифицировала договора ГПХ в трудовые
- ЗУП. Отрицательные числа в РСВ.
- не могу поменять префикс информационной базы для обмена
- Как работать с уникальными идентификаторами в запросе?
- Гиперссылка на страницу Excel средствами 1С.
- Отчет на СКД -произвольная форма отчета,две ОсновнаяСхемаКомпоновкиДанных
- Скидки (наценки) в УТ 11.3 без Соглашений
- ПоказатьОповещениеПользователя не открывает ссылку на объект (УПП)
- Сортировка в PostgreSQL
- Как в СКД вывести представление значения через самописную функцию?
- Не выводится группировка в отчете на СКД
- Поступление сверх заказа
- v7: Таблица значений, колонка тип массив?
- ВыгрузкаЗагрузкаДанных не переносит перечисления
- Как с помощью 1с проверить доступность порта на удаленном компьютере
- Распараллеливание запросов 1С 8.3
- Условие на отказ создания с-фактуры
- 1С УПП 1.3 & WIN 10 кривой шрифт (очень мелкий) в 1С..
- Под определенным пользователем зависает сеанс при входе
- Пожамкайте апп? Андроид-камера в сканер штрихкодов для 1С