|
17.07.2008, 18:57 | #1 |
Участник
|
Первое сообщение.
Цитата:
Цитата:
Или вы таким замысловатым образом продавать свое пытаетесь? |
|
18.07.2008, 09:43 | #2 |
Участник
|
|
|
18.07.2008, 12:03 | #3 |
Участник
|
Вот.
Попытался по проще, серовно сложно получилось, но понять можно. Рассмотрим простейший случай в системе запасы нулевые. И reqItemTable не заполнен. Он является всего лишь дополнительным поставщиком потребностей. Создаём заказ. Строку заказа. Выбираем номенклатуру с настроенным складом по заказу первого уровня. Т.е. Склад1_1 - > Основной. В строке заказа у нас появляется склад1_1. Запускаем сводное планирование. 1) Класс ReqCalc метод insertInventTrans – получаем из запроса inventTrans, который нужно гасить. 2) Класс ReqCalc метод newQueryInventTransReceipt – формирование запроса для прихода по InventTrans метод newQueryInventTransIssue – формирование запроса для расхода по InventTrans Наш случай покрыть расходную проводку. 3) Класс ReqCalc метод initTransFromInventTrans Берём расходную проводку InventTrans, которую нужно гасить и создаём из неё reqTrans. Т.е. создаём ReqTrans тип заказ Склад1_1 4) Класс ReqCalc метод covCreatePlannedOrder Теперь берём нашу reqTrans. И создаём из неё заготовку для будущего документа ReqPo. (журнал перенос) Т.е. создаём ReqPo для переноса на Склад1_1. ReqTrans-ов у нас пока для него нет. 5) Таблица ReqTrans метод метод initFromReqPo Создаём приходную проводку для ReqPo. Т.е. создаём ReqTrans для переноса на Склад1_1 6) Таблица ReqTrans метод createTransferDemand. Создаём расходную проводку для ReqPo. Т.е. создаём ReqTrans для переноса со склада Основной. 7) Класс ReqCalc метод covCreatePlannedOrder Теперь берём наш reqTrans созданный в (6) и гасим его приходным документом (в нашем случае закупкой). Т.е. создаём ReqPo для закупки на склад Основной 8) Таблица ReqTrans метод метод insertFromReqPo Создаём приходную проводку для закупки. Т.е. создаём ReqTrans для закупки на склад Основной. Таким образом у нас создалось в ReqTrans 4 записи 1) Историческая – от куда всё началось(заказ) 2) Будущая приходная проводка для журнала перенос 3) Будущая расходная проводка для журнала перенос 4) Будущая приходная проводка для закупки А также создались две записи в ReqPo (заготовки для будущих документов) 1) Журнал перенос 2) Закупка Если бы у нас был склад второго уровня для строки заказа, то было бы 2 журнала переноса и 1 закупка. Т.е. получается для первого уровня. Склад заказа – склад основной. Для второго склад заказа – склад уровнем ниже – склад основной На концах этих цепочек потребность заказа и потребность закупки. А чёрточки это переносы. Схематично было бы лучше, но думаю понятно. Человек же хочет что была не цепочка, как можно сделать в стандарте Склад1 (склад заказа) – склад3 – склад4 - склад2(основной) А было три цепоки, веер склад1 – склад3 склад1 – склад4 склад1 – склад 2 (в самом конце, если ещё осталось что-нибудь) Т.е. 2 переноса и одна закупка Рассмотрим для наглядности большую цепочку 1-2-3-4-5-6-7-8.(Склады) Как стандарт создаст ReqTrans-ы (16 шт) 1 – заказ 1-2 переносы 2-3 переносы 3-4 переносы 4-5 переносы 5-6 переносы 6-7 переносы 7-8 переносы 8 - закупка Как человек хочет (те же 16, но другие) 1 – заказ 1-2 переносы 1-3 переносы 1-4 переносы 1-5 переносы 1-6 переносы 1-7 переносы 1-8 – закупка 8 - закупка Т.е. первый ReqTrans надо всегда подменять на склад заказа и соответственно количество тоже подменять нужно, а остальное как есть оставить. Ну это очень упрощено. Я только стержень объяснил. Последний раз редактировалось miklenew; 18.07.2008 в 12:42. |
|
|
За это сообщение автора поблагодарили: Wamr (2), Bega (1). |