Oracle EBS R12 WIP Component Issue&Return Process
1.定义BOM
BOM(物料清单)是WIP的基础,BOM定义了产品的组成结构图,定义了生产特定物料所需的零件及数量。每一个零件也可能有他们的BOM结构,由此产生多层的产品结构树。
比如:一台电脑 = 1 CPU + 1 内存 + 1 硬盘 + 1 显示器 + 1 个鼠标 + 1个键盘 + 30根 数据线 + 50 个螺丝 ,这个电脑的构成就是一个BOM。另外一个硬盘可能又是一个BOM,比如 1 硬盘 = 4组磁盘 + 1个磁盘指针 + 1 个硬盘壳,同样的道理,显示器,内存...都有自己的BOM定义,这样对电脑这个BOM来说,实际上构成了一个庞大的BOM树。
这里有有一张关于黄建华文档里的自行车BOM树的截图,比较有代表性。
EBS里如何定义BOM,路径:Bill Of Materials > Bills > Bills
这里定义一个简单的BOM,1 * pt_assembly01 = 2 * pt_component01
BOM的信息保存在BOM_STRUCTURES_B和BOM_COMPONENTS_B表中,BOM_STRUCTURES_B用于保存BOM Header信息,BOM_COMPONENTS_B是BOM_STRUCTURES_B的child table,用于保存BOM Component信息,两个表通过BILL_SEQUENCE_ID字段来关联。
SELECT * FROM BOM_STRUCTURES_B WHERE ASSEMBLY_ITEM_ID = 242956;
SELECT * FROM BOM_COMPONENTS_B
WHERE BILL_SEQUENCE_ID in (SELECT BILL_SEQUENCE_ID FROM bom_structures_b WHERE ASSEMBLY_ITEM_ID = 242956);
关于发料方式(BOM界面,Material Control中的Supply Type)
Push 推式发料,必须手工通过界面做发料 需严格控制数量或者波动比较大的物料
Assembly Pull 拉式发料,装配件完工或报废时自动按标准消耗量触发 消耗比较稳定的物料
Operation Pull 拉式发料,工序移动至To Move时自动按标准消耗量触发 消耗比较稳定的物料
BOM_COMPONENTS_B.WIP_SUPPLY_TYPE存储发料方式
Value | Meaning |
---|---|
1 | Push |
2 | Assembly Pull |
3 | Operation Pull |
4 | Bulk |
5 | Supplier |
6 | Phantom |
7 | Based on Bill |
2.定义Routing
路径:Bill Of Materials > Routings > Routings
Routings(工艺路线)最终解决的问题是生产过程中加工顺序、资源和用量的标准化。Routing是产品/半成品的生产步骤图,定义了生产特定物料所要经历的工序、加工部门(工作中心)、提前期、耗用的资源及其额定数量。
Routing头信息存储在表BOM_OPERATIONAL_ROUTINGS中,Routing的Operations信息存储在BOM_OPERATION_SEQUENCES表中,两个表通过字段ROUTING_SEQUENCE_ID字段关联。查询方法,
SELECT * FROM BOM_OPERATIONAL_ROUTINGS WHERE ASSEMBLY_ITEM_ID = 242956;
SELECT * FROM BOM_OPERATION_SEQUENCES
WHERE ROUTING_SEQUENCE_ID IN (SELECT ROUTING_SEQUENCE_ID FROM BOM_OPERATIONAL_ROUTINGS WHERE ASSEMBLY_ITEM_ID = 242956);
3.定义WIP Discrete Job
路径:WIP > Discrete > Discrete Jobs
Discrete,离散式,一种制造方法,用于装配件的分组或成批制造。制定标准离散任务,输入核心内容:任务名称(工单号)、生产类型、装配件、工单类型、生产数量、开工时间或完工时间。
这里在Discrete Job里定义job,保存,并release这个job。
这一步会涉及到几张表WIP_ENTITIES,WIP_DISCRETE_JOBS,WIP_REQUIREMENT_OPERATIONS和WIP_OPERATIONS,这几张表都是通过WIP_ENTITY_ID相互关联.
<<WIP_ENTITIES>>
WIP_ENTITIES stores information about jobs, repetitive assemblies, and flow schedules. Each row includes a unique entity name, the entity type, and the assembly being built. Oracle Work in Process uses this information to control production activities and to ensure that entities with duplicate names are not created.
Key Fields:
WIP_ENTITY_ID:Job or schedule Identifier
ORGANIZATION_ID:Organization Identifier
WIP_ENTITY_NAME:WIP job or repetitive assembly name or flow schedule reference code
ENTITY_TYPE:WIP entity type code
1 | Discrete job |
2 | Repetitive assembly |
3 | Closed discrete job |
4 | Flow schedule |
PRIMARY_ITEM_ID:Assembly Item Item
<<WIP_DISCRETE_JOBS>>
WIP_DISCRETE_JOBS stores discrete job information. Each row represents a discrete job, and contains information about the assembly being built, the revision of the assembly, the job quantity, the status of the job, the material control method, accounting information, and job schedule dates. Oracle Work in Process uses this information to control discrete production.
Key Fields:
WIP_ENTITY_ID:Job or schedule Identifier
ORGANIZATION_ID:Organization Identifier
PRIMARY_ITEM_ID:Assembly Item Item
STATUS_TYPE :Status of job
可以通过下边的SQL查得code的意义
SELECT lookup_code,meaning FROM FND_LOOKUP_VALUES
where LANGUAGE = 'US' AND Upper(lookup_type) LIKE Upper('WIP_JOB_STATUS')
Value | Meaning |
---|---|
7 | Cancelled |
8 | Pending Bill Load |
9 | Failed Bill Load |
10 | Pending Routing Load |
11 | Failed Routing Load |
12 | Closed |
13 | Pending - Mass Loaded |
14 | Pending Close |
15 | Failed Close |
1 | Unreleased |
3 | Released |
4 | Complete |
5 | Complete - No Charges |
6 | On Hold |
JOB_TYPE :Type of discrete job
Value | Meaning |
---|---|
1 | Standard |
3 | Non-standard |
WIP_SUPPLY_TYPE :Method of material consumption within WIP
Value | Meaning |
---|---|
1 | Push |
2 | Assembly Pull |
3 | Operation Pull |
4 | Bulk |
5 | Supplier |
6 | Phantom |
7 | Based on Bill |
START_QUANTITY:Job start quantity
QUANTITY_COMPLETED:Current job quantity completed
COMMON_BOM_SEQUENCE_ID:--> BOM_COMPONENTS_B.BILL_SEQUENCE_ID
COMMON_ROUTING_SEQUENCE_ID:-->BOM_OPERATIONAL_ROUTINGS.ROUTING_SEQUENCE_ID
<<WIP_REQUIREMENT_OPERATIONS>>
任务领料需求发放表,记录了工单的制程中每个站点需要投料信息,我们根据这张表生成MMTT,进而生成Material Transaction.
WIP_REQUIREMENT_OPERATIONS stores information about the material requirements of jobs and schedules. Each row represents a material requirement and contains information about the component item, its usage quantities, the using department, requirement date, and the material control method. Oracle Work in Process uses this information to track the material usage of jobs and schedules.
Key Fields:
WIP_ENTITY_ID:Job or schedule Identifier
ORGANIZATION_ID:Organization Identifier
INVENTORY_ITEM_ID:Component Item Id
COMPONENT_SEQUENCE_ID: -->BOM_COMPONENTS_B.COMPONENT_SEQUENCE_ID
WIP_SUPPLY_TYPE :Method of material consumption within WIP
Value | Meaning |
---|---|
1 | Push |
2 | Assembly Pull |
3 | Operation Pull |
4 | Bulk |
5 | Supplier |
6 | Phantom |
7 | Based on Bill |
REQUIRED_QUANTITY:Component quantity required
QUANTITY_ISSUED:Component quantity issued
SUPPLY_SUBINVENTORY:Subinventory used to supply component to WIP
SUPPLY_LOCATOR_ID:Locator used to supply component to WIP
SEGMENT1:Component Item segment
QUANTITY_ALLOCATED:Quantity allocated
QUANTITY_BACKORDERED:Quantity backordered
<<WIP_OPERATIONS>>
离散作业工序(操作)表,主要记录工单工序的信息,这张表主要是和Routing Operation Sequences相对应的(表:BOM_OPERATION_SEQUENCES),Routing里有多少步,那么这个表就有多少个记录。
WIP_OPERATIONS stores information about job and repetitive schedule operations. Each row represents a specific operation and includes an operation sequence number, which orders the operations for the job or repetitive schedule. Each row also includes the assembly quantity completed at an operation, the quantity at each intraoperation step,
the department associated with an operation, the scheduled start and completion dates for an operation, the operation's countpoint and backflush types and other operation attributes. In general, Oracle Work in Process uses this information to control and monitor assembly production on the shop floor.
Key Fields:
WIP_ENTITY_ID:Job or schedule Identifier
OPERATION_SEQ_NUM:Operation sequence number within a routing,值一般为:10,20,30...
ORGANIZATION_ID:Organization Identifier
OPERATION_SEQUENCE_ID:-->BOM_OPERATION_SEQUENCES.OPERATION_SEQUENCE_ID
STANDARD_OPERATION_ID:-->BOM_OPERATION_SEQUENCES.STANDARD_OPERATION_ID
DEPARTMENT_ID:-->BOM_OPERATION_SEQUENCES.DEPARTMENT_ID
DESCRIPTION-->BOM_OPERATION_SEQUENCES.OPERATION_DESCRIPTION,工序的描述
SCHEDULED_QUANTITY: Number of units scheduled for the operation
QUANTITY_IN_QUEUE:Number of units in Queue of the operation
QUANTITY_RUNNING:Number of units in To Run of the operation
QUANTITY_WAITING_TO_MOVE:Number of units waiting To Move in the operation
QUANTITY_REJECTED:Number of units rejected from the operation
QUANTITY_SCRAPPED:Number of units scrapped from the operation
QUANTITY_COMPLETED:Number of units completed by the operation
FIRST_UNIT_START_DATE:First unit scheduled receipt date
FIRST_UNIT_COMPLETION_DATE:First unit scheduled completion date
<<WIP_OPERATION_RESOURCES>>
WIP_OPERATION_RESOURCES stores information about the resource requirements associated with job and repetitive schedule operations. Each row represents a resource requirement and contains a sequence number,the resource's unit of measure, its usage rate or amount, and several other attributes that control how it is scheduled and costed.
Oracle Work in Process uses this information to schedule jobs and repetitive schedules and to charge resources to jobs and schedules.
SQL Queries
SELECT * FROM WIP_ENTITIES WHERE WIP_ENTITY_NAME = 'pt_job01';
SELECT * FROM WIP_DISCRETE_JOBS WHERE WIP_ENTITY_ID = (SELECT WIP_ENTITY_ID FROM WIP_ENTITIES WHERE WIP_ENTITY_NAME = 'pt_job01') ;
SELECT * FROM WIP_REQUIREMENT_OPERATIONS WHERE WIP_ENTITY_ID = (SELECT WIP_ENTITY_ID FROM WIP_ENTITIES WHERE WIP_ENTITY_NAME = 'pt_job01');
select * from WIP_OPERATIONS WHERE WIP_ENTITY_ID = (SELECT WIP_ENTITY_ID FROM WIP_ENTITIES WHERE WIP_ENTITY_NAME = 'pt_job01');
4.发料
在WIP Material Transaction,WIP Component/Issue所处的位置,可以参加下图,先有个大体理解
接下来我们就要从库存中给工单发货,这里有两种方法发料到工单
方法1:WIP > Material Transactions > WIP Material Transactions
这种方式比较简单,直接指定库存并发料
方法2:WIP > Discrete > Component Pick Release > Component Pick Releas (Form) / (SRS)
当BOM的组件很多,使用方法一发料的话,一个个指定库存会很麻烦,Oracle EBS提供了Pick Release的方式来发料,这样用户只要指定合适的Picking Rule,那么系统会自动帮你挑库。
系统会产生一个Move Order(Move Order Type:Manufacturing Pick),这一步实际上非常类似于订单的Pick Release。
接下来去Transact Move Order界面,Transact这个Move Order就完成发料动作了。
注意使用方式一发料的话,后台是不会产生Move Order的,只有方式二才会有Move Order产生。
5.Material Transaction
这个时候可以去Material Transaction form里查看,组件已经从库存中扣减,Transaction Type=WIP Issue(Transaction_Type_id:35,WIP component issue)
这个时候MTL_MATERIAL_TRANSACTIONS表中几个JOB相关的字段
MMT.Transaction_Type_id:35
MMT.TRANSACTION_ACTION_ID:1
MMT.TRANSACTION_SOURCE_TYPE_ID:5
MMT.TRANSACTION_SOURCE_ID -->WIP_DISCRETE_JOBS.WIP_ENTITY_ID
MMT.TRX_SOURCE_LINE_ID-->WIP_REQUIREMENT_OPERATIONS.OPERATION_SEQ_NUM
MMT.SOURCE_LINE_ID -->MTL_TXN_REQUEST_LINES.LINE_ID
MMT.Move_Order_line_ID -->MTL_TXN_REQUEST_LINES.LINE_ID
6.WIP Component Return
物料发到工单后,有可能因为各种原因要把料退回到仓库,可以使用WIP Return
路径:WIP > Material Transactions > WIP Material Transactions,Type选择 WIP Return
查看Material Transaction,就可以看到一条WIP Return的Transaction发生了,并且组件库存数量又恢复到发料前的数量。
Transaction_TYPE_ID:43(WIP Component Return)
ps:不管是上边所说的WIP Issue还是WIP Return,在WIP_TRANSACTIONS表中是没有数据产生的。
WIP_TRANSACTIONS stores information about WIP resource transactions.Each row represents a single resource transaction and includes a uniquetransaction Identifier, a transaction date, the job or repetitiveschedule charged, the WIP operation and resource charges, and thenumber of units of measure applied. Oracle Work in Process uses thisinformation to track resource charges and to calculate the values stored in WIP_TRANSACTION_ACCOUNTS.
转载请注明出处:http://blog.csdn.net/pan_tian/article/details/7755220
===EOF===
Oracle EBS R12 WIP Component Issue&Return Process的更多相关文章
- Oracle EBS R12经验谈(二)
作者: jianping.ni 时间: 2009-2-13 12:52 标题: Oracle EBS R12经验谈(二) OAF页面:银行帐户开户人LOV值列表无值 在输入 应付超 ...
- Oracle EBS R12 (12.1.3) Installation Linux(64 bit)
Oracle EBS R12 (12.1.3) Installation Linux(64 bit) Contents Objective. 3 1 Download & Unzip. 3 D ...
- Oracle EBS R12多组织(多OU)访问架构
Oracle EBS R12多组织访问架构 多组织架构实现了经营单位(OU)的数据安全性,在底层数据表中有一列ORG_ID来记录数据所属的经营单一,所有多OU的基表都是以"_ALL" ...
- 处理Oracle EBS R12登录首页跳转出现unexpected error问题(转)
原文地址: 处理Oracle EBS R12登录首页跳转出现unexpected error问题 经上网搜索,造成此问题的问题有很多,如内存不足.系统参数配置不当.程序代码.系统表空间不足等原因.查询 ...
- Oracle Ebs R12 SLA与GL关系变化
http://www.cnblogs.com/bruce_zhao/p/3809886.html Oracle Ebs R12 SLA与GL关系变化 SLA概念:SLA(Subledger Accou ...
- Oracle EBS R12文件系统结构(学习汇总网上资料)
Oracle EBS R12在服务器端文件结构如下: 顶层目录下面分为 1)inst --–跟ebs整个实例(instance)相关的配置信息以及其他信息 2) db ---主要存储DB层的信息 ...
- Oracle EBS R12 客户表结构
参考链接: Oracle EBS R12 客户表结构 Oracle EBS中的“客户”."客户地点".‘订单’之间的关系 Oracle EBS中的“客户”."客户地点&q ...
- ORACLE EBS R12 FOR LINUX 开机后如何启动数据库、应用脚本[Z]
在Linux中安裝EBS R12後, EBS關閉與啟動的程序為: 1. 關閉EBS - 先關閉Applications Server $ cd /d01/oracle/VIS/inst/apps/V ...
- Oracle EBS R12 XML数据表格的Excel脚本报表
http://www.cnblogs.com/quanweiru/archive/2012/07/28/2612680.html 一.概述 在EBS系统中,报表是一个非常重要的客户化开发内容,也是系统 ...
随机推荐
- CocoaPods的使用详解
CocoaPods是什么 当我们开发 iOS 项目时候,会经常使用到第三方类库,并且会使用很多.大家的做法基本上都是到 GitHub 上下载一个一个的类库,然后导入到工程中,并且引入各种的类库,做各种 ...
- 【html】【20】高级篇--轮播图[聚焦]
下载: http://sc.chinaz.com/jiaoben/151204445580.htm 效果: html <!doctype html> <html> <he ...
- [MAXscript Tool]FFX_PalyBack v1.1 ShowReel
自己的写的一个简单的脚本方便实现大面积的烟,火,爆炸,云的效果.能实现静态动态的切换,还有快速的偏移FumeFX的缓存,支持随机缓存 具体看这个插件的ShowReel,结算的三套基础的火焰然后用此脚本 ...
- android API文档查询---context、toast、SharedPreferences
/*查阅api ---context1.abstract AssetManager getAssets() Returns an AssetManager instance for the a ...
- android中的4种点击事件
四种点击事件 (1)采用内部类的方式去实现OnClickListener (2)匿名内部类 (3)当前类imp OnClickListener (4)onclick ...
- Oracle PL/SQL 多重选择句
Oracle中语句块的基本格式: declare --变量定义,初始化赋值. begin --变量的赋值,函数调用,if,while等. end: Oracle中的语句:关系运算符:= <> ...
- 初学C++,开博第一篇
几个维度相同的数组转置算法,这两种完全相同://注意:如果维度不同,转置会出错误,因为下标会越界...解决办法是把数组的维度调齐,或者是写到另一新数组中. for(int i=0;i<row;i ...
- C++中map用法
/************************************************************************** Map的特点: 1.存储Key-value对* ...
- MSChart实例
MSChart是VS中自带的图表控件,功能比较强大,效果也比较丰富.下面只提供一个例子,以供新接触的朋友参考. 先看下效果图: 看完效果图上代码啦. 使用这个控件需要先在页面注册一下. <%@ ...
- C#通过ODAC访问Oracle12c
昨天晚上刚装好Oracle12c并配制好了PLSQL Developer开发环境.今天继续完善一下,讲讲在C#中如何访问Oracle12c. 其实我们运用老早的ADO.NET也可以连接,但是在.NET ...