SAP ATP邏輯可用性檢查
【转http://tqmeng.blog.163.com/blog/static/169263916201162002414612/】
SAP ATP邏輯可用性檢查
1、可用性檢查群組OVZ2
主要用於檢查類型,如可以按日需求、個別需求、周需求、批量需求進行檢查,可以根據需要進行定義,SAP標準01為每日需求、02為個別需求、CH為批量需求;一般最常用02,這裡不多做解釋。
2、可用性檢查控制OVZ9
檢查控制實際上是通過檢查規則檢查,檢查規則裡面的參數決定了不同的檢查方法,檢查規則是檢查群組層面的,所以分離了檢查群組的檢查規則是不存在的,物料主檔的可用性檢查群組決定了使用哪個群組當中的檢查規則,銷售訂單使用A開頭的檢查規則,交貨單使用B開頭檢查規則,物料主檔的策略的需求等級的科目指派種類中的特殊庫存指示碼決定最後的檢查規則,沒有科目指派種類的或科目指派種類特殊庫存指示碼的策略的SO就是使用A檢查規則,如特殊庫存指示碼E的銷售訂單就是AE檢查規則,以此類推…..,如果沒有對應的檢查規則,那就不能進行可用性檢查,需要按如上規則維護對應的檢查規則;生產訂單的檢查規則為PP(OPJK設定),PM訂單檢查規則為PM等等。
可用性檢查遵循的是時間點的可用性,所以這點很重要,銷售單是誰先確認誰佔用可用元素;而銷項交貨單是誰先建立誰先佔用可用庫存(按單生產就別想了啊!自給自足),佔用多少就是銷項交貨單的數量(當然檢查規則你把”包含交貨”的勾去掉那就誰先發貨過帳誰先實際佔用);生產訂單就不一樣,需要MRP運行後得到該時間點所有可用元素的數量,如果前後向消耗,那麼按需求時間靠近原則優先消耗,如果”包含相關預訂”空預留就不會消耗可用元素直到實際消耗庫存。以下針對不參數介紹:
2.1消售訂單可用性檢查
2.1.1“庫存”-如果勾起代表該庫存是屬於可用的范圍以內。這是沒得說的了,當然對於要求特殊指示碼的庫存的文件a哪些東西(不相關的)不考慮,自己想了,太簡單了;
2.1.2“無補貨前置期檢查”是控制MRP3視圖”補貨前置期”是否起作用的按鈕, 如果不勾上那就是進行補貨前置期檢查,通過補貨前置期檢查確定SO的排程明細交貨日期,不考慮MRP結果,直接”從SO建立日期+補貨前置期+出貨點的出貨排程時間”確定交貨排程的確認交貨時間,如果MRP3視圖”補貨前置期”不維護,” ‘廠內生產(計劃交貨時間)+收貨處理時間’ 作為補貨前置期檢查。如果上述都不維護的話,那確認交貨時間= SO建立日期+出貨點的出貨排程時間.
出貨排程時間包含裝載、檢貨、包裝時間(OVLZ),如果是按客戶方地點交貨,還考慮運輸時間。當然可以根據訂單類型決定排程是否考慮出貨點的時間、運輸時間。
如果勾上那就是不進行補貨前置期檢查,通過MRP結果生產訂單/計畫訂單的完成時間+出貨點的出貨排程時間” 確定交貨排程的確認交貨時間.就是庫存不夠部分等運行了MRP才可以確定SO的交貨排程的確認交貨時間,如果檢查規則不包含計畫訂單,那麼只有庫存+生產訂單,不夠部分就得等到計畫訂單轉成生產訂單後才可以確定SO的交貨排程的確認交貨時間.有庫存部分直接下單當日+出貨點交貨排程日期確認交貨時間.
例如:
50策略由於帶特殊庫存指示碼E,所以SO可用性檢查的時候不是本銷售訂單的特殊庫存不會列入可用范圍,而且產生的計劃訂單、生產訂單是和銷售訂單關聯的,所以不是本銷售訂單需求產生的計劃訂單、生產訂單同樣不考慮在可用范圍之內。而40策略不一樣,需求類型對應的需求等級沒有科目指派也就沒有特殊指示碼,不會帶銷售銷售訂單特殊庫存,所以非特殊庫存的非限制使用都可以考慮在可使用范圍內(當然是在沒有被其它訂單佔用(排程明細確認數量就代表被佔用)的情況下,前一張訂單可用性檢查先佔用了對其它訂單將是可用范圍以外,SAP可以有這樣的識別功能),創建銷售訂單的時候可用性檢查如果按建議交貨,那就是相應的數量將被確認掉;同樣的由於沒有特殊庫存指示碼,計劃訂單、生產訂單在沒有被排程明細確認數量就認為是可使用范圍內,就算由銷售訂單需求所產生的計劃訂單、生產訂單如果不被確認掉也是被認為可使用范圍內,被後續訂單確認。但是,運行MRP後可消耗的時期內的獨立需求將被銷售訂單需求消耗掉相應的數量,如獨立需求大於銷售訂單需求,沒有被消耗掉的獨立需求繼續存在,這些是策略的消耗問題了,SAP標準自帶的就那麼多策略,如果你覺得還不滿足,那就自己定義了,這是策略的問題這裡就不談了。
所以對不進行捕貨前置期檢查的對是否考慮計劃訂單、生產訂單就非常重要了,如果都不考慮那麼隻能等到入庫了才可以確認交貨時間,應該不會有那麼變態的需求。當然也可以定義核發了的訂單才算可用(包含計劃訂單和包含生產訂單選擇相關的參數碼。
2.1.3“未檢查庫存位置”在這裡是不起作用的,隻有VL01N交貨單並且確定了發貨倉儲位置才起作用。
2.1.4 “包含請購單”/“包含的採購單”勾起表示沒有被佔用的請購單或採購單屬於可用范圍內,可以作為確認數量,但是(計劃訂單、請購單、採購單、生產訂單對於進行捕貨前置期檢查來說這是沒有什麼意義的)
2.1.5“包含預留”如果勾上表示預留所佔用的庫存、計劃訂單、請購單、採購單、生產訂單屬於可用范圍以外,不勾則屬於可用范圍內,可以供後續SO、DO確認或訂單檢查可用。(當然這部分預留是指手動建立的預留,如針對INTER ORDER,COST CENTER創建的預留等,不包含正常生產訂單建立而產生的預留)
2.1.6“包含銷售需求”/“包含交貨”如果勾上代表被銷售訂單/交貨單確認掉的庫存、計劃訂單、請購單為、採購單、生產訂單屬於可用范圍以外,不勾則屬於可用范圍內,可以供後續SO、DO確認或訂單檢查可用。(這裡是對2.1.2例子的補充,也就是說被確認掉的元素也是可以被認為可用的,按扭就在這裡)
2.1.7“包含相關預訂”是確定預留是否消耗庫存、訂單等的按鈕,如果消耗,預訂的庫存或計劃訂單將被考慮在可使用范圍之外。(這裡的預留是針對訂單自動產生的預留,不含手動建立的預留)如果使用後續物料,這當然得需要預留消耗庫存,否則將導致多張訂單得BOM帶出舊的物料。當然MRP結果的需求是不會帶出舊物料的了,可用性檢查規則不會改變MRP計算,大家放心。
2.1.8“包含計劃訂單”/“包含生產訂單”是確定什麼樣的計劃訂單、生產訂單是否考慮再可用范圍,這裡PP的檢查規則有點特殊性,大家自己去測試!
2.1.9“包含相關需求”如果勾起代表相依需求所佔用的元素屬於可用范圍以外,不勾屬於可用。
出貨通知
2.2交貨可用性檢查
交貨訂單的創建的前提是銷售訂單排程明細確認有數量,並且日期為確認時間之後,帶特殊庫存指示碼的策略交貨單的交貨數量可以包含生產訂單、計劃訂單,因為系統認為這是為這訂單定制的;不帶特殊庫存指示碼的交貨單的交貨數量隻能是被本銷售訂單確認佔用的庫存數量;計劃單、生產訂單確認了也不行。
“無補貨前置期檢查”是控制MRP3視圖”補貨前置期”是否起作用的按鈕, (如果前置期為0,認為被決定的批次有足夠的數量滿足交貨),批次分割也就不能分割.
如果勾上那就是不進行補貨前置期檢查,可以進行批次分割,在運行mrp之前建立交貨單,交貨數量帶出來的就不包括庫存不足的部份+未被確認掉地計劃訂單、生產訂單,如果檢查規則不考慮計畫訂單和生產訂單,那麼即使運行了MRP,建立的交貨單交貨數量帶出來的也不包括庫存不足的部份.
“未檢查庫存位置”按鈕是針對交貨行項目的儲存地點按鈕.如不勾上,而行項目的儲存地點又確定,那麼其他儲存地點將不列為可用庫存,除非行項目的儲存地點為空或勾上未檢查庫存位置按鈕.
同時,交貨排程日期確定是一回事,VL01N的交貨準備時間=SO交貨排程的確認交貨時間-出貨點檢貨時間。 如果交貨準備時間>實際入庫時間+收貨處理時間+(出貨點排程時間),將無法做到批次分割。
2.3PP檢查規則
對PP檢查規則是對於訂單的檢查規則,需要包含所有的計劃訂單,否則可用性將為0,這是特殊的地方。
PP可用性檢查是比較重要的事情了,和排程關系密切,由訂單的開始日期或工序的開始日期及偏移時間決定下介物料的需求數量和時間點,但是下介物料會考慮生產時間或交貨時間及收貨處理時間,如果不能滿足需求時間,那就是缺料,排程人員可以調整生產時間。
當然,要維護計畫/生產訂單類型的排程參數,廠內生產時間在運行MRP中才會根據排程參數按維護的MRP2視圖廠內生產時間推算出開始日期(後向)/完成日期(前向),如果是不維護計畫訂單類型的排程參數,按訂單類型*排程參數執行,通過調整日期類型決定基本開始日期或基本完成日期
例如:
庫存已經被SO6002530占用876.所以只有897-876=21可以給SO6002460確認.計划訂單6782276是SO6002460的相關需求,因為非限制庫存优先被排在前面的需求占用,但是確認可能是後面SO排程先確認數量.
SAP ATP邏輯可用性檢查的更多相关文章
- 檢查RAC狀態
1.使用srvctl工具檢查RAC當前配置和狀態 $ srvctl config database -h Displays the configuration for the database. Us ...
- SAP MM 根据采购订单反查采购申请?
SAP MM 根据采购订单反查采购申请? 前日微信上某同行发来一个message,说是想知道如何通过采购订单号查询到其前端的采购申请号. 笔者首先想到去检查采购订单相关的常用报表ME2L/ME2M/M ...
- js邏輯
js的邏輯對象可以用於將非邏輯對象轉換為邏輯 var a=new Boolean(); a為false的幾種情況,0,-0,null,false,“”,undefined,NAN
- MVC+Ninject+三层架构+代码生成 -- 总结(六、邏輯層)
1.邏輯層的方法應該與數據層的方法一一對應.邏輯層返回的結果都是用接口IResult封裝,用於項目轉換時,能減少變化的代碼量. 2.邏輯層都需要繼承 BaseLogic 類 public class ...
- 檢查 cpu 的全部 gpio 狀態及設定
$ adb root # cat /sys/kernel/debug/gpio
- 檢查php文件中是否含有bom的php文件
原文链接: http://www.cnblogs.com/Athrun/archive/2010/05/27/1745464.html 另一篇文章:<关于bom.php>,http://h ...
- 伯特兰·亚瑟·威廉·罗素[註 1],第三代羅素伯爵(英语:Bertrand Arthur William Russell, 3rd Earl Russell,1872年5月18日-1970年2月2日),OM,FRS,英国哲学家、数学家和逻辑学家,致力于哲学的大众化、普及化。[2] 在數學哲學上採取弗雷格的邏輯主義立場,認為數學可以化約到邏輯,哲學可以像邏輯一樣形式系統化,主張逻辑原子論。[3]
一年假. 1920年7月,罗素申請了一年假; 這被批准了.他花了一年時間在中國和日本講學.对中国学术界有相当影响. 罗素说: 对爱情的渴望,对知识的追求,对人类苦难不可遏制的同情,是支配我一生的单纯 ...
- 一次快速改寫 SQL Server 高效查詢的範例
最近線上系統突然出現匯出資料超過 10 筆時,查詢逾時的狀況,在仔細查找之後. 發現了問題原因,透過應用端與數據端兩邊同時調整,將查詢的效率提昇了約數百倍以上 首先,原本應用端的商務邏輯為每一分頁筆數 ...
- 一次 C# 查詢數據庫 算法優化的案例
最近有次在修改某段程式時,發現一段程式算法看起來簡單. 但背後因為多次查詢數據庫,導致效能問題. 這段程式主要是利用 EPPLUS 讀取 Excel 資料,檢查資料是否已存在數據庫中,若有就將已存在的 ...
随机推荐
- STL学习笔记(迭代器类型)
迭代器类型 迭代器是一种“能够遍历某个序列内的所有元素”的对象.它可以透过与一般指针一致的接口来完成自己的工作. 不同的迭代器具有不同的”能力“(行进和存取能力) Input迭代器 Input迭代器只 ...
- 【BIEE】06_UNION /UNION ALL集合中分类汇总求和占比字段特殊处理
环境准备 基于[BIEE]04..中建立的事实表 通过UNION ALL后得到如下报表: 优秀员工薪水公式:CASE WHEN "EMP_FACT"."级别"= ...
- jenkins调用shell脚本 输出带颜色字体
jenkins需要安装AnsiColor插件在构建环境项选择“color ansi console output” 安装插件AnsiColor shell 脚本相关颜色设置 echo -e " ...
- java精确除法计算,四舍五入 Java问题通用解决代码
主要用java.math.BigDecimal工具类实现,想要了解BigDecimal类可以看java api 正式版: public static Double divide() ...
- android CheckBox控件的定义及事件监听
http://www.beijibear.com/index.php?aid=336 android CheckBox控件的定义及事件监听,本例实现CheckBox控件的定义及点击事件的监听并显示结果 ...
- C# Html Agility Pack
using System; using HtmlAgilityPack; using System.IO; using System.Text; using System.Text.RegularEx ...
- linux权限的深入讨论
1. 怎样查看文件的权限 1) 掌握使用ls –l命令查看文件上所设定的权限. drwxr-xr-x. 2 root root 6 May 26 2017 binfmt.d 权限信 ...
- instantclient_11_2 连接oracle数据
(1)首先你要先下载instantclient (解压如下),修改你 instantclient/network/admin/tnsnames.ora 文件,将你oracle的服务器地址写上 ...
- springboot 中使用AOP
网上关于AOP的例子好多,各种名词解释也一大堆,反正名词各种晦涩,自己写个最最最简单的例子入门mark一下,以后再深入学习. maven依赖 <dependency> <groupI ...
- 《Python基础教程》第20章学习笔记
python实现:https://github.com/captainwong/instant_markup c++实现:https://github.com/captainwong/instant_ ...