Необходимо в пустой конфигурации на платформе 8.3 на управляемых формах выполнить следующую задачу.
Организация выставляет своим контрагентам счета на оплату своих услуг. Таких счетов может быть любое количество и на любую сумму. Контрагенты платят организации совершенно рандомную сумму. Эту сумму необходимо распределить по заказам таким образом, чтобы охватить как можно большее количество заказов одной оплатой. Причем сумма оплаты <= сумме заказов.
Пример интерфейса: Имеем список Заказов на определенную сумму слева. Вводим сумму оплаты, нажимаем кнопку Обработать и на выходе справа получаем все комбинации подходящие по сумме оплаты.
Не совсем понятна проблема/вопрос в озвученном задании.
Но что касается решения, то вроде очевидно, что заказы надо отсортировать по сумме от меньшей к большей и на что хватит денег, то и оплатить. У вас на картинке вроде всё уже отсортировано.
1) Запросом получить все заказы контрагенты, которые еще не оплачены.
2) В запросе сортируешь по сумме остатка оплаты (заказ может быть на 1000, а не оплачено 100 руб)
3) Распределить последовательно оплату по заказам.
(8) Ну это Вы уж сами, а то как иначе научитесь перекладывать алгоритмы в код. Вот интересно, две выложенные публикации, это Вы сами написали или просто выложили чье то готовое решение?
P.S. почитал, чьи то решения, при чем устаревшие.
(10) это этапы моего обучения. PS. Сам делал по работе
PPS Задачу нужно сделать до вечера, боюсь, что не успею обучиться сам, поэтому и выложил задание
(9) Тогда задача заведомо не решима, ибо первое распределение оплат, может перекроить вторую оплату.
Суть такова клиент оплатил два заказа с большой суммой, а распределили по маленьким заказам.
А следующая оплата может не совпасть по суммам с оставшимися заказами.
Либо возможно оплата остатка частично, либо оплата должна распределятся по конкретным заказам, как оплатил клиент.
(12) Следующей оплаты не будет
Нужно сделать обработку, которая отобразит возможные варианты оплаты. Всегда одинаковые варианты при одинаковых заказах
Саму оплату выполнять не требуется
(13) Ну тогда это все вводит в заблуждение и это обычная задачка "рюкзака", который надо заполнить полностью.
Алгоритмов на просторе интернета полно и наверняка тут есть на инфостарте, вот возьмите и скачайте шаблон.
А готовое решение Вам здесь не выложат, учитывая вашу историю поведения в прошлом посте, да и делать работу за других, не благодарное дело. Помочь да, а сделать, нужно своей головой.
(14) Открыл предыдущую тему и выпал в осадок
Какое-то недоразумение, за которое мне бесконечно стыдно
Потому что я человек честный и никогда не планировал кого-то обманывать.
3 заявленных стартмани отдам за файл конфигурации с решением задачи
(16) Если нужно готовое решение задачи обратись в раздел "Фриланс", а тут отдай см тому кто наиболее полно, по твоему разумению, ответил\помог\подсказал на твой вопрос!
Описываю то, как понял задачу.
В конфигурации есть документ "Заказ"
В нем есть реквизит "Сумма".
В обработке слева выбираются существующие заказы.
Нажатие кнопки "Обработать" запускает выбор возможных вариантов распределения оплаты.
Да, оплата выполняется только полностью
(15) см. выше (14)
Не вгоняйте меня в краску, пожалуйста
За идею решения этой задачи я уже отдал 1 стартмани.
3 стартмани отдам за конфигурацию с решением
(25) И тебе спасибо.
Оплаченой суммой в счете - мы контролируем чтоб второй раз не разнести оплаты в тот же документ.
В любом случае - удалить пару строчек проще чем дописать :)