Цитата:
Сообщение от
Bega
Да, получается, что внутри метода covCreatePlannedOrder должен быть цикл, который создает несколько планируемых переносов.
Нет, циклами тут не получиться, тут вся суть в том что идёт цепочка "гашения".
Ввёл это слово(гашение) - потому что наиболее полно отражает то что внутри происходит. Хотя может кто лучше предложит.
Что-то возникает, гасим, снова что-то возникает, снова гасим и т.д.
Поэтому циклами я бы не стал делать.
Это задача очень интересна в плане ООП.
Вы всё равно будете наследник создавать от ReqCalcScheduleItemTable, а следовательно у вас появиться очень сильный козырь, можно почти всё подменять.
Скорее всего вам прийдёться вводить несколько дополнительный map-ов в этом наследнике, для хранения промежуточных результатов.
Вот подменой в нужных моментах вы сможете получить то что нужно.
А все циклы как шли пусть так и идут.
А вообще мне кажется, что решив эту задачу вы должны получить из этого кода в качестве дополнительного приза ещё разные вкусняшки.
Самое сложное в этой задачи. Что расчёт сам по себе долго идёт. Даже если максимально облегчить компанию и настройки.
Я когда то делал задачу по гашению заказа и журнала проводка.
Т.е. в шапке заказа и журнале проводка была кнопка покрыть.
Она запускала сводное планирование по тем номенклатурам, которые входят в эти документы. А проводки покрывала только те которые создавали эти документы.
Но всё равно, если не подводит память, секунд 20 занимало.
Да, кстати, если со временем терпит, могу через неделю(отпуск начнётся) заняться этой задачей. Дня три думаю займёт. 5 000 р\за день. После контроля качества пришлю реквизиты карточки для перевода.
Если не терпит, пишите в ветке, можно и совместно через форум решать, я думаю это задача вызвет интерес не только у вас.
Интересно же.