|
20.02.2007, 17:14 | #1 |
Участник
|
Резервирование при комплектации - проблемы с автоматическим резервированием
Добрый день,
Ax 3.0 CIS SP2 В системе через модуль Заказы на отгрузку осуществляется комплектация и отгрузка товаров со складов. Работало так: в заказах на отгрузку менежером указывался склад и ячейка (то есть фронт отгрузки), на котором было размещено физическое наличие товара (физ. наличие к слову был только у склада, у ячейки его не было). Далее складской работник создавал отгрузку по этому заказу, указывал необходимую партию из справочника партий, товар отгружался. Резервирование по активированной строке комплектации изначально происходило разумеется без указания партии, но после запуска маршрута комплекатции, в момент, когда можно исправить складскую аналитику руками кладовщика там появлялась партия, а в физ. резервировании система аккуратно перекладывала "беспартийный" резерв в заказах в наличии на партию, коий и отгружался. Проблемы начались, когда склад стали вести попартионно (образуя партии при активации производства, которое отгружало приемкой прямо на склад и фронт отгрузки). Все запасы в наличии стали иметь партию. И в этот момент стало получатся так, что при активации комплектации (точнее, еще на стадии ее резервирования) система САМОСТОЯТЕЛЬНО стала подбирать себе партию под эту строку. Удивление кладовщиков - полбеды. Если ей на хватало этой - первой выбранной - партии, она брала вторую, "сплитя" строки в комплектации. Понятное желание системы резервировать "то, что есть". Но в данном случае оно вредит. Я хочу от него избавиться. Причем, если в запущенном марштуре комплектации убрать эту партию, система легко и без усилий перекидывает физ. резерв на запасы в наличии БЕЗ ПАРТИИ, создавая ситуацию, которую мне и нужно было иметь вначале - сначала физ. резерв без партии, потом - через руки кладовщика - физ. резерв с партией, потом отгрузка партии. Отрицательный склад включен. Как сделать так, чтобы автоматическое резервирование происходило в строгом соответствии с аналиткой складского заказа? Последний раз редактировалось Artem Mikhailov; 20.02.2007 в 17:21. |
|
20.02.2007, 20:30 | #2 |
Member
|
Цитата:
Сообщение от Artem Mikhailov
...
Как сделать так, чтобы автоматическое резервирование происходило в строгом соответствии с аналиткой складского заказа? ...
__________________
С уважением, glibs® |
|
21.02.2007, 06:38 | #3 |
Участник
|
Цитата:
В строке заказа (и заказа клиента, и заказа на отгрузку из него) партия не указана. Менеджеру все равно, какая партия будет отгружена - они все примерно одинаковые. Есть конечно особые случаи отгрузок старых залежалых партий, где партия может указываться специально, но это исключение и мы сейчас не об этом говорим. Большая часть заказов идет с аналитикой Конфигурация - Склад (физ. нал. включено) - Ячейка. Наличие же имеет структуру Конфигурация - Склад - Ячейка - Партия. Галочек "Первичная аналитика" нет. На всех аналитиках установлены пропуски для приходов и расходов. Да, функциональность стандартная. Как я уже понял из вышеприведенной ветки, система сама резервирует партии по принципу начиная с наименьшей по номеру, которые есть в наличии. Выбор партии может регулироваться еще через флажок "Группа складских моделей \Контроль по дате". Мне же необходимо чтобы резервирование в отгрузке шло без указания партии. Есть ли непрограммный способ это обойти? |
|
21.02.2007, 09:25 | #4 |
Участник
|
Вобщем в стандартном функционале никак. Резервирование идет по полному набору аналитик. Кстати из-за этого нам пришлось вообще отказаться от резервирования из под заказов, так как то что резервировали заказы нас не устраивало из-за невозможности работы со сроками годности. Проблему с тем, чтобы товар не выписывался больше, чем в наличии решили простыми административно-методологическими методами (ну и докручиванием формы создания строк в заказе)
В самом модуле WMS при комплектации у нас есть дописка, подбирающая товар с учетом сроков годности. В то время, когда оценивали возможность резервированя только по части аналитик пришил к выводу, что миодификации нужны очень серьезные. PS: кстати, в вашем процессе меня удивило, что менеджер указывает ячейку. |
|
21.02.2007, 09:46 | #5 |
Участник
|
Цитата:
Цитата:
Это по большей части искуственно сделано. Он не указывает ее специально, она попадает туда из функции создания строк из наличия в клиентском заказе, а наличие на складе для удобства разделено на 3-4 фронта (то есть по ячейкам). На каждый фронт товар попадает из производства, а аналитика производства рождается из настройки местонахождения номенклатуры. То есть: на складе есть несколько фронтов, где группируется произведенная номенклатура, с них она заказывается, там же резервируется и отгружается. Можно было сделать несколько складов, мы сделали один склад в цехе и несколько ячеек. |
|
21.02.2007, 09:34 | #6 |
Участник
|
раскопки показали, что...
при попытке зарезервировать товар на отгрузке в классе \Classes\InventUpd_Reservation\updateReserveMore используется запрос на InventSum с группировкой по всем активным аналитикам с целью получения первой строки в InventSum с доступным количеством, от которого можно "откусить".
Выход на запрос поиска наличия в 46 строке выглядит так query = InventSum::newQuery(NULL,movement.itemId(),inventDimCriteria,inventDimParm,InventDimParm::activeDimFlag(movement.dimGroupId())); При этом последний аргумент - это будущий inventDimParmGroupBy - указание на то, как группировать запрос в наличии. Система говорит - группируй по активным аналитикам. Аналитка партии у меня активна - мне же нужно выбирать партию на строке комплекатации, нужно по партиям производить эту номенклатуру... Но вот при отгрузке резервировать по партии, причем - первой с начала или с конца, да еще и с разбивой строк комплектации - НЕ нужно. Может это конечно и неправильно, но на мой взгляд здесь система берет на себя лишнее Пока в голове только программирование еще одной галочки на inventDimParm - "Физ. резервировать автоматически" и изменения 46-й строки в \Classes\InventUpd_Reservation\updateReserveMore для указания именно тех аналитик, что отмечены новой галочкой. Что скажете? Неужели никто не сталкивался с необходимостью это обойти? |
|
21.02.2007, 10:04 | #7 |
NavAx
|
может поможет Резервирование в аксапте?!!!
|
|
21.02.2007, 10:12 | #8 |
Участник
|
Цитата:
Сообщение от raz
может поможет Резервирование в аксапте?!!!
Я читал вчера. Там объяснение, как управлять сортировкой при выборе системой партии при резервировании, а мне бы хотелось ее (партию) исключить вовсе |
|
21.02.2007, 10:21 | #9 |
NavAx
|
|
|
21.02.2007, 10:51 | #10 |
Administrator
|
По-моему, Вам стоит от резервирования вообще отказаться. Ведь идея резервирования в том, что оно именно из существующих физически остатков будет подбирать товар в заказ (я так понимаю, Вы это имеете ввиду под "физ. резервированием"). Говоря техническим языком, в InventSum не должно быть записей, где ReservPhysical > PostedQty + Received - Deducted + Registered - Picked. А в том случае, если приходы у вас с номером партии, а резервирование без, как раз такая запись и появится. В общем, по моему мнению, то, что Вы называете резервированием в понимании Аксапты резервированием не является (впрочем, я не настаиваю )
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
21.02.2007, 11:20 | #11 |
Участник
|
Так кто против то! И рад отказаться. Не нужна она мне, верно. Склад тут как правило затоварен, предупреждать отгрузки из минуса не надо. Но активация комплектации отгрузки без изначального резервирования в стандарте невозможна... см обработку отгрузок на форме WMSShipment
|
|
21.02.2007, 11:51 | #12 |
Administrator
|
Да, понял теперь. Думал, вы в заказе (Sales order) резервируете. Извините.
Без программирования - хз, если честно. Только если заставить кладовщиков в Output orders перед созданием Shipment резервировать нужные партии вручную.
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
21.02.2007, 12:11 | #13 |
Участник
|
Вот и я так подумал. Решение накинул пока такое.
Так как проблема в том, что система использует более широкий чем мне нужно набор аналитик для запроса на наличие для получения резерва, надо ее в этом месте обмануть. Я сделал копию группы складских аналитик, назвал ее "ГПбезПартии" и снял галочку "Активна" у партии - вот та группа, по которой мне надо производить резервирование. Далее обманываю в \Classes\WMSShipmentReservation\reserveAtPickingLocation. В месте получения экземпляра inventMovement я подсовываю наследника от InventMov_WMSOrder, где перекрыт метод inventMovement.dimGroupId() как return "ГПбезПартии"; Итог такой - когда мы резервируем, мы используем группу с выключенными партиями. Во всех иных случаях работаем как и прежде. Негибко, но мне не до этого сейчас было Всем спасибо. Так конечно надо делать галочку на inventDimParm "Не использовать при резервировании" и соотвествующий метод типа InventDimParm::reserveDimFlag, с которым и работать в классе InventUpd_Reservation. |
|
21.02.2007, 12:53 | #14 |
Member
|
Цитата:
Сообщение от Artem Mikhailov
...
Как сделать так, чтобы автоматическое резервирование происходило в строгом соответствии с аналиткой складского заказа? ... Но только вам стоит понимать, что если в заказе вы фиксируете аналитики кроме ячейки и склада, то перестанет работать стандартный механизм WMS с его транспортировками полностью заполненных паллет, комплектацией, транспортировками пополнения ячеек комплектации. Система будет всегда предлагать комплектовать номенклатуру прямо из зоны хранения.
__________________
С уважением, glibs® |
|
21.02.2007, 14:58 | #15 |
Administrator
|
Ну, не знаю-не знаю. Некрасиво это как-то, резервировать то, чего нет. Я, конечно, понимаю, что в Аксапте есть и другие места, где такой эффект случается (зарезервировано больше, чем есть в наличии), но это, скорее, баги, чем осмысленные действия.
Я бы в форму Shipment добавил функцию Manual reservations лучше, которая бы форму, похожую на Picking из заказов, открывала и позволяла отобрать правильные проводки для резервирования. ИМХО, это честнее будет.
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
21.02.2007, 15:55 | #16 |
Member
|
Цитата:
Сообщение от Maxim Gorbunov
...
Некрасиво это как-то, резервировать то, чего нет. ... К сожалению, Artem Mikhailov больше интересуется как изнасиловать Аксапту, нежели добиться от нее любви и уважения (найти способ отражения объективных особенностей бизнес-процесса). В описанном случае можно попробовать указывать "левую" партию в строке заказа. Тогда при отрицательном складе резервирование будет работать точно так же, как и раньше у него работало, но только вместо пустой партии резерв будет устанавливаться на "левую". А кладовщик ее будет менять на "не левую".
__________________
С уважением, glibs® |
|
|
За это сообщение автора поблагодарили: George Nordic (2). |
21.02.2007, 16:45 | #17 |
Участник
|
Ох, glibs, не судите людей так строго! Честно говоря, примерно одни сутки я был уверен что эту проблему можно решить (по вашей терминологии) полюбовно, с этой целью и запостил эту тему. Но, к обоюдному сожалению, это оказалось недостижимо. О причине конечно можно сказать так, что, мол, не надо делать отгрузку через "Заказы на отгрузку", если у тебя палет нет и транспортировок нормальных, но извольте - а через что ее делать-то еще (3.0 СП2)? Что, в ахапте есть с десяток вариантов ведения планирования отгрузки и комплектации со склада по заказам? Тем более, что этот вариант очень близко подошел к реальности, и отказываться от него и в мыслях нет.
|
|
21.02.2007, 19:19 | #18 |
Member
|
Цитата:
Сообщение от Artem Mikhailov
...
не судите людей так строго! ... У вас ячейки Аксаптовские для чего сейчас задействованы? У вас адресное хранение? Если да, система должна указывать кладовщику, из какой ячейки брать номенклатуру? Или он должен подбирать ячейку на собственное усмотрение, как и партию?
__________________
С уважением, glibs® |
|
21.02.2007, 21:22 | #19 |
Участник
|
Цитата:
Речь идет о цехах, производящих химическую продукцию, хранящуюся в баках на несколько тысяч тонн и в силосах. Кроме этого, есть и пакетированные (примерно по тонне) партии в крытых складских помещениях. Вся отгрузка производится в жд вагонах - на фронт погрузки или на эстакаду налива подается состав, отгружается, уходит. Выбрана простая складская структура - в каждом цехе один склад ГП, ячейка - это фронт отгрузки - от одного до трех физических фронтов на складе. Фронт четко группирует хранимую номенклатуру, как так в силосах и в баках ее конечно не смешивают. Также фронт указан как местоположение номенклатуры по умолчанию, что упрощает приемку из производства. Отгрузка через заказы на отгрузку была выбрана по нескольким причинам. 1) представление цеху плана отгрузки на месяц в виде посуточных заказов на отгрузку, формируемых менеджерам сбыта по клиентским заказам - фактически, разрешения сбыта грузить в определенный день на конкретного клиента, 2) планирование отгрузки в цехе - мастер в начале дня раскладывает имеющиеся заказы на отгрузку на конкретные сменные задания - собственно отгрузки, которые потом круглосуточно комплектуются кладовщиками с указанием партии и номера вагона как кода палеты, 3) удобное разбиение строк комплектации по грузоподъемности поданых вагонов, 4) фактический вес отгрузки появляется на жд весовой в другом конце завода - удобно по факту перевески завершать маршруты комплектации с исправленным весом, подготовленные кладовщиками цехов, 5) сами формируются строки транспортных накладных по завершении отгрузки, 6) фиксируется, кто комплектовал (начинал маршрут), кто перевешивал вагон (кто его завершал) - ну это мелочи конечно Честно говоря, я практически не менял предлагаемый ахаптой функционал. Понятно, что он несколько для иного предназначен, но он здорово решает и эту задачу - этапы отгрузки всем понятны, имеют под собой реальную основу. Если что то еще интересно, спрашивайте. Последний раз редактировалось Artem Mikhailov; 21.02.2007 в 21:26. |
|
|
За это сообщение автора поблагодарили: aidsua (1). |
21.02.2007, 17:07 | #20 |
Administrator
|
Артем, Вы, конечно, извините, что навязываюсь, но, по-моему, в Вашем случае вариант как раз есть - Picking list (отгрузочная, кажется, накладная) с последующей регистрацией. В целом, соглашусь с Глебом (как всегда )
Кстати, ведь даже при работе с отрицательным складом Аксапта не зарезирвирует больше того, чем доступно. Или я не прав?
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
Теги |
ax3.0, комплектация, резервирование |
|
Похожие темы | ||||
Тема | Ответов | |||
Проблемы с автомат. резервированием | 3 | |||
Проблемы с комплектацией товара. | 2 | |||
Маршруты комплектации | 3 | |||
Проблемы с комплектацией | 21 | |||
Проблемы резервирование | 3 |
|