EBS第一个项目学习总结----发运模块
EBS 组织架构: (一)业务组(BG) (二)法律实体(LE) (三)业务实体(OU) (四)库存组织(INV) (五)公司成本中心(Cost Center) (六)HR组织 (七)多组织接入控制 Sale Order 销售订单 的 Ship Confirm 发运功能模块: 在做状态变化时候要记得
EBS 组织架构:
(一)业务组(BG)
(二)法律实体(LE)
(三)业务实体(OU)
(四)库存组织(INV)
(五)公司成本中心(Cost Center)
(六)HR组织
(七)多组织接入控制
Sale Order 销售订单 的 Ship Confirm 发运功能模块:
在做状态变化时候要记得对WHO字段进行状态的修改。
必要表的信息:
oe_order_headers_all 订单头信息表oe_order_lines_all
--header_id=oe_order_headers_all.header_id
--订单行信息表
这里面有一个概念:
比如
ORDER_NUMBER 订单编号 为 101852
这里有两个订单头。
HEADER_ID:A HEADER_ID:B
而LINE_NUMBER的概念就是在这两个订单里,属于同一行的 如下:
HEADER_ID: A B
LINE_NUMBER:1 LINE_ID:A1 LINE_ID:B1
LINE_NUMBER:2 LINE_ID:A2 LINE_ID:B2
LINE_NUMBER:3 LINE_ID:A3 LINE_ID:B3
销售订单是这样一种逻辑关系。
oe_order_headers_all 中的重要字段:
HEADER_ID 订单头id
REQUEST_ID 并发请求的id
ORG_ID 业务实体的id
SHIP_TO_ORG_ID 收货方组织id
SHIP_FROM_ORG_ID 发货方组织id
oe_order_lines_all中的重要字段
HEADER_ID 订单头id
REQUEST_ID 并发请求的id
ORG_ID 组织的id
LINE_ID 订单行id
LINE_NUMBER 订单行number
SHIP_TO_ORG_ID 收货方组织id
SHIP_FROM_ORG_ID 发货方组织id
wsh_delivery_details
--source_header_id=oe_order_headers_all.header_id
--source_line_id=oe_order_lines_all.line_id
物料发运明细信息表
DELIVERY_DETAIL_ID 物料单的id
SOURCE_HEADER_ID 订单头id
SOURCE_LINE_ID 订单行id
CUSTOMER_ID 客户id
INVENTORY_ITEM_ID 对应物料表的物料id
ORGANAZATION_ID 库存组织的id
REQUESTED_QUANTITY 请求的数量
SHIPPED_QUANTITY 发运的数量
SUBINVENTORY 子库存的名称
RELEASED_STATUS 当前物料的状态
ORG_ID 业务实体的id
REQUEST_ID 并发请求的id
LOCATOR_ID 库存中货位号
LOT_NUMBER 物料的批号
wsh_delivery_assignments
--delivery_detail_id=wsh_delivery_details.delivery_detail_id
--连接wsh_delivery_details和wsh_new_deliveries的信息表
--此阶段连接wsh_delivery_details
DELIVERY_ID 发货号
DELIVERY_DETAIL_ID 物料id
mtl_serial_numbers
记录物料序列号的当前状态的信息表
INVENTORY_ITEM_ID 物料id
SERIAL_NUMBER 序列号
mtl_serial_numbers_temp
序列号和物料单的对应表
由transaction_temp_id进行关联
发运模块,可以理解为将保留库中的物料拿出来进行发货,发运确认完成则代表这物权的转移。发运中的延交情况很多,比如当你要发货的物品数量不足以满足买方的数量,则可以延迟交货,等到数量满足了一起交货。
做发运模块主要是当物料挑库完成后,得到一堆物料单,然后为每一个物料单生成物料号,物料号是为了让发运时知道,该发运哪些物料,物料号的生成有多种情况。
发运模块的界面操作:
登录,找一个具有订单管理职责。进入到 事务处理中。
可以根据ORDER NUMBER 销售订单的号码进行查询。
这里的每一条都对应一个物料单。
Detail是物料编号
Item Name是物料的名称。
Delivery是物料的发货号
Line Status 是 物料的当前状态,状态是Staged/Pick Confirm状态是要进行发运的。
Next Step 是 物料的下一个状态
Order 是订单编号
Requested Qty 是 需要的数量
Shipped Qty 是 要发运的数量
BackOrdered Qty 是要延交的数量
Serial Number 是序列号 序列号不是必须的,如果物料启动了序列号控制才会有,Org Code 是当前的库存组织, subinventory 子库存
如果想要发运的话 必须要分配物料号,
在这里选择操作,当前自己知道的就是只有 :
Split Line 分行,当启动序列号的时候,分行规则暂时不了解,但是会自动给分出来的行分配之前有的序列号。
Lauch Pick Release 自动挑库,这个操作可以对Backordered或 Ready to Release 的进行挑库,这个时候会自动为这个物料单进行挑库,并且分配发货号。
挑库,可以理解为,将自己库存中的物料发放到保留库中,保留库中的物料是以后不能被动的,以为他们已经都分配完了,等待发运。而库存中的物料是还可以分配的。
Auto-create Deliveries 自动分配物料发货号
对于图中蓝字那行的,这个时候可以进行发运,进入Delivery界面,

点击Ship Confirm,进行发运。

这里要进行一些说明,
ShipConfirm Rule 里的是当前系统已经定义好的发运规则,

这里的 点击Ship Entered Quantities ,在右面选择你要对未知的数量的物料的发运方式,
例如 Requested Qty = 10 shipped qty = 5 backordered qty = 3 ,那么未知数量就是2
如果选择ship,则对未知的数量2的进行发运操作,就是发运7个,延交3个
如果选择Backorder,则对未知的数量2进行延交操作,就是发运5延交5
如果选择Stage,则对未知的数量归回到Staged/Pick Confirm状态。这个配合下面的
如果勾选,则对于回到Staged/Pick Confirm状态的自动分配发货号。
如果选择Cyclecount ,则对未知数量的物料回归到Staged/Pick Confirm状态,并且shipped Qty数量为空。
Ship All就是将所有的物料都发运。其他的也一样意思。
这里要注意,发运后的物料单还要做一个 Trip Stop 停靠站操作,才算发运成功,这个业务暂时还不清楚是什么意思。
代码实现上远远比界面复杂的多,首先要介绍几个用到的API。
wsh_deliveries_pub.delivery_action(p_api_version_number => 1.0, p_init_msg_list => fnd_api.g_true, x_return_status => lv_return_status, x_msg_count => ln_msg_count, x_msg_data => lv_msg_data, p_action_code => 'CONFIRM', p_delivery_id => 104483, p_delivery_name => 104483, p_sc_action_flag => 'C', p_sc_close_trip_flag => 'Y', x_trip_id => ln_trip_id, x_trip_name => lv_trip_name);
这里的传入参数,可以有:
P_action_code 有很多值:
'PLAN','UNPLAN','PACK','CONFIRM', 'RE-OPEN','IN-TRANSIT','CLOSE', 'ASSIGN-TRIP','UNASSIGN-TRIP','AUTOCREATE-TRIP', 'WT-VOL', 'PICK-RELEASE', 'DELETE'
--RE-OPEN 让status处于重新打开状态
--DELETE 删除物料号
--CONFIRM 进行Ship Confirm操作 其实对应的是下图的Ship confirm,和Actions内的操作:
p_sc_action_flag : ship confirm option - 'S', 'B', 'T', 'A', 'C'
这个就相当于

S 是 Ship B是backorder T是stag C是CycleCount A是Ship All
而其他参数如 :
p_sc_intransit_flag : 是 图上的 Set Delivery In-transit 是否勾选, Y 是 N 否
p_sc_close_trip_flag:是 图上的 Close Trip是否勾选, Y 是 N 否
p_sc_stage_del_flag:是 图上的 Create Delivery for Staged Quan..是否勾选, Y 是 N 否
p_sc_trip_ship_method:是 图上的 Ship Method 输入的varchar2 类型,可以为null
p_sc_actual_dep_date: 是图上Actual Departure Date ,null 则自动赋值为当前时间
p_sc_defer_interface_flag:图上 Defer Interface是否勾选,Y 是 N 否
其他API将单开文章讲解。如果有不对的地方希望大家评论给予建议,谢谢。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)
![WLAN扩展模块已停止[修复]](https://img.php.cn/upload/article/000/465/014/170832352052603.gif?x-oss-process=image/resize,m_fill,h_207,w_330)
如果您的Windows计算机上的WLAN扩展模块出现问题,可能会导致您与互联网断开连接。这种情况常常让人感到困扰,但幸运的是,本文提供了一些简单的建议,可以帮助您解决这个问题,让您的无线连接重新正常运行。修复WLAN扩展模块已停止如果您的Windows计算机上的WLAN可扩展性模块已停止工作,请按照以下建议进行修复:运行网络和Internet故障排除程序禁用并重新启用无线网络连接重新启动WLAN自动配置服务修改电源选项修改高级电源设置重新安装网络适配器驱动程序运行一些网络命令现在,让我们来详细看

本文详细介绍了解决事件ID10000的方法,该事件表明无线局域网扩展模块无法启动。在Windows11/10PC的事件日志中可能会显示此错误。WLAN可扩展性模块是Windows的一个组件,允许独立硬件供应商(IHV)和独立软件供应商(ISV)为用户提供定制的无线网络特性和功能。它通过增加Windows默认功能以扩展本机Windows网络组件的功能。在操作系统加载网络组件时,WLAN可扩展性模块作为初始化的一部分启动。如果无线局域网扩展模块遇到问题无法启动,您可能会在事件查看器的日志中看到错误消

费马大定理,即将被AI攻克?而且整件事最意味深长的地方在于,AI即将解决的费马大定理,正是为了证明AI无用。曾经,数学属于纯粹的人类智力王国;如今,这片疆土正被先进的算法所破译,所践踏。图片费马大定理,是一个「臭名昭著」的谜题,在几个世纪以来,一直困扰着数学家们。它在1993年被证明,而现在,数学家们有一个伟大计划:用计算机把证明过程重现。他们希望在这个版本的证明中,如果有任何逻辑上的错误,都可由计算机检查出来。项目地址:https://github.com/riccardobrasca/flt

标题:深入了解PyCharm:删除项目的高效方式近年来,Python作为一种强大而灵活的编程语言,受到越来越多开发者的青睐。在Python项目的开发中,选择一个高效的集成开发环境至关重要。PyCharm作为一款功能强大的集成开发环境,为Python开发者提供了诸多便利的功能和工具,其中包括快速、高效地删除项目目录。下面将着重介绍如何使用PyCharm中的删除

PyCharm是一款功能强大的Python集成开发环境,提供了丰富的开发工具和环境配置,让开发者能够更高效地编写和调试代码。在使用PyCharm进行Python项目开发的过程中,有时候我们需要将项目打包成可执行的EXE文件,以便在没有安装Python环境的计算机上运行。本文将介绍如何使用PyCharm将项目转换为可执行的EXE文件,同时给出具体的代码示例。首

学习C语言的魅力:解锁程序员的潜力随着科技的不断发展,计算机编程已经成为了一个备受关注的领域。在众多编程语言中,C语言一直以来都备受程序员的喜爱。它的简单、高效以及广泛应用的特点,使得学习C语言成为了许多人进入编程领域的第一步。本文将讨论学习C语言的魅力,以及如何通过学习C语言来解锁程序员的潜力。首先,学习C语言的魅力在于其简洁性。相比其他编程语言而言,C语

从零开始学习Pygame:完整的安装和配置教程,需要具体代码示例引言:Pygame是一个使用Python编程语言开发的开源游戏开发库,它提供了丰富的功能和工具,使得开发者可以轻松创建各种类型的游戏。本文将带您从零开始学习Pygame,并提供完整的安装和配置教程,以及具体的代码示例,让您快速入门。第一部分:安装Python和Pygame首先,确保您的计算机上已

Linux下system()函数的总结在Linux系统中,system()函数是一个非常常用的函数,它可以用于执行命令行命令。本文将对system()函数进行详细的介绍,并提供一些具体的代码示例。一、system()函数的基本用法system()函数的声明如下:intsystem(constchar*command);其中,command参数是一个字符
