仓储管理系统设计书

上传人:沈*** 文档编号:157531138 上传时间:2022-09-30 格式:DOC 页数:109 大小:2.12MB
收藏 版权申诉 举报 下载
仓储管理系统设计书_第1页
第1页 / 共109页
仓储管理系统设计书_第2页
第2页 / 共109页
仓储管理系统设计书_第3页
第3页 / 共109页
资源描述:

《仓储管理系统设计书》由会员分享,可在线阅读,更多相关《仓储管理系统设计书(109页珍藏版)》请在装配图网上搜索。

1、物流中心仓库管理软件设计书 上海交大欧姆龙计算机股份有限公司货运中心仓库管理系统设计书上海交大欧姆龙计算机有限公司2001.11目 录范围4A系统目标4B主要软件需求4C设计约束、限制4数据设计6A:数据结构6单据描述6数据结构6B:数据存放约束8体系结构设计9A:数据和控制流9基础数据设置9仓库、库区、货位以及相关项目9策略10客户、物料相关项目10业务过程11库存记录数据格式11客户委托入库业务12TO单业务功能34策略设置38客户委托出库业务39仓库内部日常作业模块56仓库之间移库66月末处理76客户费用结算78统计报表81客户费用报表81安排信息查询82物流统计报表84物流仓库报表87

2、客户仓库报表89系统维护93操作人员以及权限控制93数据库备份93系统日志95开发环境96接口设计97A人机界面规则97基础数据维护100地区设置100分公司设置100sys_code内容设置窗口100包装设置100仓库设置100月台设置101库区类型设置101库区设置(包括库区策略优先级设置)101货位类型设置102货位设置102存储单元设置102存储单元类型设置(包括货位、存储单元转换率设置)103策略设置103客户设置103客户商品设置104商品计量单位换算104商品、存储单元类型换算设置104商品、货位类型换算设置104客户仓库设置104客户商品安全库存设置105客户委托人库105客户

3、委托出库106仓库内部日常作业模块106仓库月末处理106客户费用结算106报表106B外部接口设计106外部数据接口106外部系统和设备接口107C内部接口设计规则108维护界面规则:108函数规则:108附录109出入库类别109运输安排单类别109取号函数(F_GETID)规则109范围A系统目标本仓库管理软件是物流中心的仓库管理软件,仓库能够接受多家客户的委托管理他们的货物。能够对仓库内的货物收、发、存、调、移库等操作进行全面的预测、建议、控制和管理。输出报表,及时反映出货物占用状况、收发存情况。使用户能够实现高效管理。B主要软件需求基础数据维护,客户委托入库,客户委托出库,盘仓,移库

4、,仓库月末处理,客户费用计算,输出统计报表。如下图所示:C设计约束、限制数据库:Microsoft SQL Server 2000。服务器操作系统:Windows 2000开发语言:PB 7.0数据设计A:数据结构单据描述收货单,ID单(Inbound Delivery):由客户录入的,单据中的货物将要从入库。发货单,OD单(Outbound Delivery):由客户录入的,单据中的货物将要从仓库发送到客户处。拣货安排单,Wave单(Wave):由多张发货单生成,多张发货单作为一批,生成TO单,同时拣货。移库单:由于某种需求,商品需要从一个仓库转移到另外一个仓库,这个业务用移库单来发出指令,

5、然后移库。移库指令使用IO表库存转移安排单,TO单(Transfer Order):包括入库、出库和移库,确认TO单改变库存。TO单可以通过以下方式产生:l 由收货单生成,一般用来指示货物从收货区转移到货位,同时确认入库单,修改库存,一旦货物到达货位,入库单关闭。l 由发货单或Wave单生成,一般用来指示货物从货位转移到拣货区,一旦货物到达拣货区,出库单关闭。l 直接录入:仓库内部移库,那么直接录入TO单,实现仓库内部移库。l 由Wave单生成,一般用来指示货物从货位转移到拣货区,一旦货物到达拣货区,出库单关闭。入库安排单(ASN):由收货单生成,相当于收货运输单,包含车辆信息、路线信息和时间

6、信息。出库安排单(ASN):由发货单生成,相当于发货运输单,包含车辆信息、路线信息和时间信息。数据结构仓库数据结构.pdm数据库表说明:库存部分:I_stock,I_stock_detail:记录商品库存收发存信息和商品库存包装信息Vi_inout:当前财务月份到其他未结月份的进出库数量Vi_stock:未结月份的月份库存收发存(没有期初库存)Vi_curStock:当前库存Vi_inout_detail:当前财务月份到其他未结月份的包装进出库数量Vi_curStock_detail:当前库存包装信息仓库部分:I_warehouse:仓库I_platform:月台I_stor_type:存储类

7、别I_ss:库区I_bin_type,I_bin:货位类别、货位I_su_type,I_su:存储单元类别,存储单元I_suType_Bin:货位存储单元转化比率客户及客户商品部分:b_client:客户I_client_destination:客户收发货地址I_client_warehouse,I_cware_ware:客户仓库b_item:客户商品b_item_unit:客户商品包装I_client_safestock::客户商品安全库存I_sutype_item:客户商品存储单元转化比率I_bintype_item:货位客户商品转换比率单据部分:I_io_master,I_io_deta

8、il:收发货单。收货单、发货单和移库单都是用这两张表。用类别区分开来。(见附录TO_Type)I_to_master,I_to_detail:TO单,收货入库、发货出库、内部移库都是用这两张表。用类别区分开来。(见附录TO_Type)I_asn:安排单。收货安排、发货安排、移库安排都是用这张表。用类别区分开来。(见附录)I_invent_master,I_invent_detail:盘仓单。记录每一次盘仓的信息。费用部分:f_client_fee:记录每月每个客户的费用发生。其他:I_strategy:策略I_ss_strategy:库区策略B_area:地区B_company:分公司B_un

9、it:通用计量单位B_month:财务月份B_closed_month:已经结帐的财务月份信息。Vb_month:未结月份视图Vb_curMonth:当前财务月份系统部分:sys_log:系统运行日志sys_code:通用代码表sys_sheet_no:各单据编号流水规则。R_report, r_report_detail, r_report_condition, r_condition_common, r_condition_type, r_condition_master :报表相关表。B:数据存放约束1:为了减少数据库表的数量,有部分公用数据不建立表,而是统一存放在sys_code中。基

10、础数据设置中涉及的存放在sys_code中的数据如下。DomainDomain名称用户可以维护Sys_code.classdeltailDetail_descAccount_Mode常规结账方式YI_Account_ModeClient_Scale客户规模YB_Client_ScaleClient_Grade客户等级YB_Client_GradeClient_Type客户类型YB_Client_TypeDanger_Type危险品类型YI_Danger_TypeMaterial_Type货品类别YI_Material_TypeItem_PRI物料优先级YI_Item_PRIShelf_Type

11、货架类型YI_Shelf_TypeSN_Trace_Type系列号跟踪类型YI_SN_Trace_TypeStrategy_Type策略类型NI_Strategy_TypeCC盘货策略PA商品上货策略PU拣货策略Useful_Life_Type过期计算类型NI_Useful_Life_Type1生产日2入库日Ware_Status仓库状态NI_Ware_StatusA活动C关闭Ware_Type仓库类别YI_Ware_Type体系结构设计A:数据和控制流基础数据设置仓库、库区、货位以及相关项目仓库(I_Warehouse)Warehouse:系统内存在多个仓库,仓库代码在系统内唯一。月台(I_

12、platform)Platform:每一个仓库有一个或多个月台,临时存放货物送达和需要发出的货物。存储类别(I_Stor_Type)Storage Type:存储类别记录上货策略、拣货策略、是否托盘化属性。库区(I_ss)Storage Section:每一个仓库包含多个库区,库区代码在系统内唯一。每一个库区属于一个存储类别。库区对应多个上架策略和拣货策略,优先级不同。货位(I_bin)Storage Bin:每一个库区包含多个货位,货位编号在系统内唯一,货位代码一般用位置表示,例如(1-2-1)。每一个货位对应一个货位类别(I_Bin_Type)。货位类别记录货位类别的物理属性和上架发货约束

13、,对应的货位也继承了那些属性。存储单元(I_Su)Storage Unit:(托盘或其他)。在仓库内可以把存储单元作为整体来处理。(托盘化管理)货位类别、存储单元换算:一个货位类别可以存放几个存储单元。策略策略:分拣货策略,上架策略,盘仓策略。分别在上货、拣货、盘点时候使用。客户、物料相关项目客户:客户公司基本信息,客户代码在系统内唯一。客户递送地点:客户的收货发货地点。客户仓库:物流仓库是物流公司的物理仓库,他有自己的收发存。而对于我们的客户来说,他需要设定最低库存、最高库存还有库存的收发存。他不一定按照物流公司的物理仓库来划分,可能按照自己的规则划分,把几个物流仓库作为合并起来作为他的一个

14、虚仓库,按他自己的仓库划分来设定最低库存、最高库存,输出收发存报表。客户仓库安全库存设置:设置客户仓库的安全库存。客户商品:记录客户商品的信息。客户商品优先级:类似于物料的ABC分类,商品分类可以多个,由用户自己设定。客户商品包装信息:客户商品可以有多个包装,记录各个包装之间的转化系数。货位商品转化系数:记录货位和商品的各个包装之间转化系数,也就是一个货位可以存放多少个包装好的商品。存储单元商品转化系数:记录存储单元和商品的各个包装之间转化系数,也就是一个存储单元可以存放多少个包装好的商品。业务过程库存记录数据格式库存收发存帐:(I_STOCK)库存收发存帐记录方式,库存记录唯一性约束:月份、

15、货位、商品、批次。记录的数量包括期初数量、其中收入、其中发出、其中盘点盈亏数量、其中移入移出数量,其中调整入调整出(内部移库)数量、期末数量。如果没有批次就记录长度0的字符串,而不是NULL。库存中记录的数量的单位都是b_item表中设定的标准单位。期初、期末数量处理:采用方法2方法1:商品出入库的时候修改出入库数量,同时修改本期末和以后的期初期末数量。这样每次出入库的时候花比较多的时间,但是取得当前库存比较简单。(详细见TO单业务功能,TO单出入库修改库存)方法2:商品出入库的时候只更改出入数量,不改变期初、期末数量,月结时候计算期初期末数量。需要查询库存数量,需要从已经月结的期末库存+以后

16、月份入-以后月份出。库存包装收发存信息(I_STOCK_DETAIL)记录每个货位上商品的包装信息和包装数量信息。唯一约束:月份、货位、商品、批次、存储单元、包装。如果商品不是管理到存储单元级别,那么存储单元字段记录长度的字符串。记录信息包括包装收发存数量和库存收发存数量,那么库存收发存数量的合计就必须和I_stock中的库存数量一致。Shelf_Life:保质期,有入库单决定,如果入库时候不是新增一条记录,而是增加库存数量,那么原来的保质期被新的保质期所覆盖。Last_Move记录该商品最后以此被移动的日期(出入库),Last_Invent:最后一次盘点日期。没有盘点过用Null表示。收发存

17、信息:在出入库的时候,只是记录收发信息,在月结的时候完成期初、期末库存的计算。其他视图:Vi_inout:当前财务月份到其他未结月份的进出库数量Vi_stock:未结月份的月份库存收发存(没有期初库存)Vi_curStock:当前库存Vi_inout_detail:当前财务月份到其他未结月份的包装进出库数量Vi_curStock_detail:当前库存包装信息客户委托入库业务委托入库正常业务的流程如下:1:仓库输入收货单(客户的发货单),表明客户需要发货到仓库。2:仓库安排车辆,生成入库安排单,运货到仓库。一次运货可以包含多个收货单。入库安排单包括入库时间,月台等信息。3:当货物运送到月台,进

18、行收货确认。4:对一张收货单货多张收货单按照上货策略生成TO单。5:按照TO单入库。6:按照实际信息货物确认TO单,更改库存。说明:客户委托入库的IO单类型是11,对应TO单的类型是11,以下说有的操作都对应类型11操作。涉及单据以及单据之间的关系:涉及单据的ER图如下:说明:收货单:客户通知仓库有货需要入库,客户指明发货到哪个客户仓库。(收货单中的商品对一次收货有效:如果收货的数量比预定的小,不会保留这张收货单。如果需要继续入库,必需再开另外的收货单。)入库安排单:可以对多张收货单生成ASN单,仓库根据选择收货单的明细,决定货物分别发往哪个仓库、哪个月台,并且决定什么时候到月台。根据仓库、月

19、台分别生成多张入库安排单。也就是收货单和安排单是多对多的关系:一张收货单,如果包含的商品发往两个仓库,必须生成两张安排单;如果对两张收货单生成安排单,而两张收货单中的商品发往同一个仓库,同一个月台, 那么这两张收货单生成一张安排单。到货确认:对ASN单做到货确认,也就是ASN中包含的收货商品明细到货确认,因为同一个收货单可能生成了多张ASN,所以ASN收货完毕,收货单不一定收货完毕,只能是收货单中的对应的商品收货完毕。TO单:对一张或多张收货单生成TO单,TO单是一个仓库一张TO单,如果收货单商品在不同仓库,那么需要生成不同的TO单。TO单确认:只能对一张或多张TO单进行确认,而不能对TO单中

20、的单个商品进行确认。TO单确认表示商品已经摆放到货位,到货的数量和入库的数量必需一致。如果作业过程有损耗,先全部对TO单确认,然后再报损。收货单维护(I_IO_MASTER,I_IO_DETAIL)下面是收货单和收货单物料的状态转化图。A:界面功能:1:增加收货单信息来源:客户书面单据,或客户录入输入:抬头输入项目列必输初始值只读编辑属性相关表相关Domain收货单据编号V单据状态VBVDddwSys_codeid_status客户参考号来源类型V1DddwSys_codesrc_type单据类型V11VDddwSys_codeto_type客户编号VDddwB_client客户发出地点VDd

21、dwI_client_destination客户仓库编号VDddwI_client_warehouse预定发货时间VYyyy-mm-dd hh:mm预定到达时间VYyyy-mm-dd hh:mm送货车号送货人送货人电话重量V0V重量单位V0V体积V0V体积单位V0V录入时间V现在VYyyy-mm-dd hh:mm录入人员V登录人员V修改时间V修改人员V备注明细输入项目:列必输初始值只读编辑属性相关表相关Domain收货单据编号V根据抬头X行号V计算V商品编号VDddwB_item批次是否指定批次VNCheckBox上货状态VBVDddwSys_codePa_status安排状态VBVDddwS

22、ys_codeAsn_status生产日期Yyyy-mm-dd保质期Yyyy-mm-dd包装VDddwB_item_unit包装数量V0计量单位VVDddwB_item商品数量V0实际包装数量0X实际商品数量0X重量V0V重量单位VVDddwSys_codeWeight_unit体积V0V体积单位VVDddwSys_codeCubage_unit备注输入说明:处理:a:录入商品编号,计量单位,包装,重量单位,体积单位显示默认计量单位对应的信息,默认计量单位是(b_item.Item_unit)b:录入包装数量,计算明细中商品数量,重量和体积,同时计算主表中重量和体积。C:保存以前,把实际包装数

23、量设置成包装数量,实际物料数量设置成物料数量。输出:收货单存储到I_id_master和I_id_detail表中,同时可以打印输出。2:修改收货单:输入ID单据编号,显示单据。单据在取消状态不能修改。A:io_status = B时候输入项目:输入项目同增加收货单,同时记录Change_Date和Change_Emp。处理:同收货单增加。输出:同收货单增加。C:id_status B 时候能够输入项目:客户参考号,抬头备注,明细备注。处理:不做任何处理输出:保存到数据库。3:取消收货单输入:选择ID单据编号。能够取消的条件:单据状态在初始态(B)。处理:把单据状态设置成A(取消)。输出:保存

24、到数据库4:删除收货单输入:选择ID单据编号。能够删除的条件:单据在两种情况下能够被删除。:单据状态在初始态(B)。:单据在取消状态。处理:删除ID单。输出:保存到数据库5:复制收货单流程:选择一张存在的ID单,复制。复制生成的单据个状态恢复初始状态。初始化字段:录入时间,录入人员,修改时间,修改人员,所有状态到初始状态。其他处理同录入收货单。提供的接口函数:(n_io):已经生成ASN输入:id编号处理:如果io_status = A,报错:把io_status设置成C:如果所有明细都已经安排,那么设io_status = D:ASN到货输入:ASN编号返回值:-1:失败其他:影响的行处理:

25、a:相关ID明细中,如果id_status C,报错b:把明细中的asn_status 设置Ec:把明细中的pa_status = E:已经生成TO单输入:id编号,bill_line,to单编号返回值:-1:失败其他:影响的行处理:如果id,bill_line行中,如果pa_statusE,报错:把明细中pa_status设置成G:把明细中to_no设置成传入的to单编号 :单个物料入库完毕(暂时不做)输入:to单编号,商品编号处理:根据抬头中的To_No和明细中的Item_Id结合查询。:只有pa_status=G,才能操作。(如果状态J,那么是系统运行错误,如果系统正常运行就不可能发生。

26、):把ID单明细中pa_status = J。:TO单入库完毕输入:To单编号返回值:-1:失败其他:影响的行说明:根据ID单明细中的TO单编号,把ID商品明细中的状态设置成入库完毕。处理:明细中的pa_status =G 才能操作。:明细中的pa_status = J:ASN取消输入:ASN编号返回值:-1:失败其他:影响的行说明:把IO单明细中的ASN状态设置到初始(B)处理:只有asn_status=C,才能执行:set asn_status = B where asn_no = ASN编号:设as_no = null:如果一张IO单的所有明细的ASN_status都等于B,那么把IO单

27、抬头中的io_status 设置成B。:取消TO 单输入:TO单编号说明:TO单被取消,通知ID单明细,把ID单明细中的pa_status设置成到货状态。处理:pa_status = G才能调用:设pa_status = E:设to_no = null:明细取消ASN(#2001-11-09,10:22)输入:IO编号,行号说明:对IO单的明细取消安排处理:如果这张IO单的所有明细的ASN_status都等于B,那么把IO单抬头中的io_status 设置成B。入库安排单维护(I_ASN,入库安排单的类型是),状态转化图:界面功能:增加入库安排单, 说明:入库安排单是仓库人员对收货单收货的安排

28、,可以多张ID生成张入库安排单,也可能一张ID生成多张ASN单。每个月台生成一张ASN单。生成ASN后,把ASN单编号,仓库,月台信息写到ID单明细中。输入项目:ASN抬头。列必输初始值只读编辑属性相关表相关Domain入库安排单编号VAsn状态VBVDddwSys_codeAsn_statusAsn类型V1VdddwSys_codeAsn_type运输公司预定发货时间预定到达时间V车辆号码V联系人电话仓库VI_warehouse月台Vi_platform安排卸货人员V0预计卸货时间V0录入人员V登录人员V录入时间V现在V修改人员V修改时间V备注ID单明细列必输初始值只读编辑属性相关表相关Do

29、main是否选择VYCheckbox(Y/N)ID单编号VV行号V商品编号V商品数量V计量单位VB_item.item_unit包装V包装数量V接收仓库VBVDddwI_warehouse接收月台VVdddwI_platform安排单编号VVASN状态VVDddwSys_codeAsn_status重量V重量单位V体积V体积单位V明细增加汇总计算列:被选商品的重量和体积的合计。处理流程:处理说明:a:选择仓库,系统显示发送到该可能发送到该仓库的发货单。a:选择一张或多张ID,然后选择需要安排的ID单的明细(ID单只有状态是C或D的才显示,ID明细中ASN状态是B的才显示出来。),( ASN中的

30、预定发货时间, 预定到达时间, 车辆号码, 联系人, 电话,从第一张ID中取得。)B:把被选ID明细中的仓库、月台设置成ASN单中的仓库月台,把asn_no设置成安排单编号,把asn_status = CC:检查有效性,保存,通知ID单已经安排(n_io,已经入库安排,参数:ID编号)输出:保存到数据库,打印ASN单。:修改入库安排单:根据ASN单编号修改修改安排单时候,不能增加、删除、修改安排单明细。对于抬头信息:各个状态分别修改状态B:初始状态,同录入其他状态:能够修改备注。:取消入库安排单:顺序图如下:输入:入库安排单号吗处理:asn_status = B才能取消:调用ID类的ASN取消

31、函数。:设 asn_statusA说明:可以把2,3合并做成ASN类的public函数,供调用(如上面顺序图所示):删除入库安排单:(流程如上图)输入:入库安排单号吗处理:asn_status = B or asn=A才能删除:调用ID类的ASN取消函数。:删除本ASN说明:可以把2,3合并做成一个类public函数,供调用。(如上面顺序图所示)收货(I_ASN)说明:只有状态是B(初始状态),asn_type = 1的ASN才能够在这里收货确认。根据入库安排单,对入库安排单对应的ID单到货确认。到货确认时候显示ASN包含的ID的明细,(asn_no = asn单号,并且asn_status

32、= C)。输入项目:ASN抬头项目列必输初始值只读编辑属性相关表相关Domain入库安排单编号VAsn状态VVDddwSys_codeAsn_statusAsn类型VVdddwSys_codeAsn_type运输公司V预定发货时间V预定到达时间VV车辆号码V联系人电话仓库VI_warehouse月台VI_platform实际到达时间V现在安排卸货人员V收货确认人员V登录人员V预计卸货时间V最后修改时间V现在V最后修改人员V登录人员V备注商品明细项目:列必输初始值只读编辑属性相关表相关Domain收货单据编号V根据抬头V行号VV商品编号VVDddwB_item批次V商品状态VVDddwSys_c

33、odePa_status生产日期Yyyy-mm-dd保质期Yyyy-mm-dd包装VVDddwB_item_unit包装数量VV商品数量VV计量单位VV实际包装数量V实际商品数量V备注处理顺序图如下:处理说明:a:对于原来存在商品明细,不能删除,只能按照以上给出格式修改,按照实际到货数量,输入信息。对于没有列在ID单内,但是送达的物料,增加ID的明细,包装数量=0,商品数量=0,只读列:收货单据编号、行号、商品状态、包装数量、商品数量,其他列可以写。B:按到货按钮后,把数据保存到数据库。C:调用ID类的到货确认函数。(参数:ASN)。输出:根据到货情况打印到货的清单。说明:在本界面设置一个按钮

34、,生成TO,把本ASN中的PO全部生成TO。按钮调用TO类中根据ASN生成TO单的函数。(参数ASN编号,TO单编号),TO单编号可以在界面上用一个输入框取得,如果没有输入,系统自动给出编号。入库TO单维护(I_TO_MASTER,I_TO_DETAIL)说明:入库TO单是入库的指令单,他根据一定策略按照ID单明细生成(只有到货的ID单明细才能够生成TO单),按照入库TO单入库,最后确认TO单,完成入库。确认TO单的时候修改库存。入库TO单可以由1个或n个ID单生成。入库TO单的状态转换图如下:界面功能:1:生成TO单说明:选择一个或多个ID单,然后根据预先设定的策略生成TO单。TO单输入信息

35、:抬头:列必输初始值只读编辑属性相关表相关DomainTo单编号V类型V11VDddwSys_codeTo_type上货状态VBVDddwSys_codePa_statusTo单来源V1VDddwSys_codeTo_src仓库VDddwI_warhouse月台VDddwI_platform业务日期V今天Yyyy-mm-dd录入日期V现在V录入人员V登录人员V修改日期V修改人员V备注列必输初始值只读编辑属性相关表相关DomainTo单编号V抬头编号X行号V计算V目的货位VVDddwI_bin目的存储单元VDddwI_su商品编号VVDddwB_item批次V上货状态VBVDddwSys_cod

36、ePa_status包装VDddwB_item_unit保质期VYyyy-mm-dd指令包装数量V0V指令数量V0V计量单位VVB_item.item_unit实际包装数量V0X实际数量V0X备注处理:以下是处理的顺序图。说明:1:列出可以供选择的ID单和ID单明细,只有pa_status = E的ID单明细才能够进行这个操作2:选择ID单明细,(可以根据ASN单来选择(只有到货的ASN才能够被选择),就是选择一张ASN单,那么把ASN单包含的ID明细全部选中。)3:按取得策略按钮,调用策略类取得上货信息(输入参数:商品信息,输出参数:上货信息),把上货信息复制到TO单明细中,同时上货信息中保

37、质期原来商品信息中的保质期(按商品编号、批次分组,如果同一个批次的保质期不一样,那么取保质期最近的那个日期)。4:如果需要,调整上货信息,5:按生成To单按钮,判断有效性:同一个商品(商品编号,批次)的到货数量合计和TO单中数量合计必需相同;商品(商品编号,批次)种类也必须和到货的种类一致。然后调用TO类的生成客户委托TO单函数,(传入参数:抬头Datawindow、TO单明细Datawindow、ID单编号树组,所有TO单的有效性验证合其他业务逻辑在函数中实现)。 2:取消TO单输入:TO单编号,只有初始状态的TO单才能够取消。处理:处理的顺序图如下:处理说明:1:界面调用TO类的取消TO单

38、函数,所有的功能在函数中实现。(函数的输入参数是TO单编号。)3:删除TO单输入:需要删除的TO单,状态是取消或初始的TO单才能够被删除。处理:(删除的顺序图如上所示。)界面只需要调用TO类的删除TO单函数,所有的业务功能在函数中实现。(函数的输入参数是TO单编号)确认客户委托入库TO单(I_TO_MASTER,I_TO_DETAIL)界面功能:1:对客户委托TO单确认入库说明:选择需要入库确认的TO单号码,只有TO单抬头中的pa_status = B状态下才能确认入库TO单。处理:处理流程如下:处理说明:处理由两种情况,第一种情况:完全按照TO单指令上货物料,所以不打开TO单察看明细,直接确

39、认TO单。第二种情况:打开TO单,调整上货信息,然后确认TO单。第一种情况处理:调用TO类的确认客户委托入库函数,所有业务功能在函数种实现。(函数参数:TO单编号,业务日期(现在)说明:此功能在成批TO单确认时候使用,操作人员可以选择一批TO单,然后确认他们。第二种情况处理:1:打开To单,显示TO单明细信息。2:调整抬头信息和明细信息,信息如下列必输初始值只读编辑属性相关表相关DomainTo单编号VV类型VVDddwSys_codeTo_type上货状态VVDddwSys_codePa_statusTo单来源VVDddwSys_codeTo_src仓库VVDddwI_warhouse月台V

40、VDddwI_platform业务日期VYyyy-mm-dd确认人员V登录人员V录入日期VV录入人员VV修改日期V现在V修改人员V登录人员V备注列必输初始值只读编辑属性相关表相关DomainTo单编号V抬头编号X行号V计算V目的货位VVDddwI_bin目的存储单元VDddwI_su商品编号VVDddwB_item批次V上货状态VBVDddwSys_codePa_status包装VDddwB_item_unit保质期VYyyy-mm-dd指令包装数量V0V指令数量V0V计量单位VVB_item.item_unit实际包装数量V0实际数量V0备注3:对于TO中已经存在的记录,不能删除,编辑属性入

41、上面所示。如果商品没有完全按照指令上货,而是上货到了其他货位,那么增加记录,增加的记录可以删除,增加的记录中可以编辑的列包括:目的货位、目的存储单元、包装、实际包装数量、实际数量,新增加记录的初始值按照上面表的初始值。(操作实现:因为商品编号和批次不能修改,所以插入记录中商品编号和批次根据他上面一条记录的信息。例如第一条记录中商品00001,批次20010101,那么如果这个商品没有上货到制定货位,只要在第二行插入一条记录,程序把第一行的商品编号和批次复制进来。)4:修改完毕,保存数据到数据库。5:调用TO类的确认客户委托入库函数。2:对TO单物料确认入库(暂时不提供此功能)处理顺序图如下:T

42、O单业务功能提供的接口函数(类n_to)1:TO单生成(TO单生成界面调用,TO类中根据ID生成TO单函数调用)说明:传入抬头,明细数据窗口,保存到数据库,同时更新库存,通知其他单据修改状态。输入参数:抬头Datawindow,明细Datawindow,源单据数组返回:成功失败,同时返回信息。处理:判断TO单抬头、明细的有效性(见TO单生成界面中约束):处理数据:明细中编号抬头编号,同时把实际数量指令数量、实际包装数量指令包装数量。:保存数据。:根据入库类型(To_Type,To_Src)通知其他单据,To_Type = 11(客户委托入库):对每一个源单据调用ID类已经生成TO单函数(还有其

43、他情况没有列出来)2:确认客户委托入库输入:TO单编号输出:返回信息处理:抬头pa_status状态B,报错:调用ID单TO单入库确认函数(参数TO单编号):设置pa_status=J,设置本单所有明细中pa_status=J:调用TO类入库确认增加库存函数3:取消客户委托入库输入:TO单编号输出:返回信息处理:状态B报错:设置抬头和明细中pa_status状态A:调用ID单的取消TO单函数(参数TO单编号)4:删除客户委托入库输入:TO单编号输出:返回信息处理:状态B报错。:调用ID单的取消TO单函数(参数TO单编号)。:删除本TO单。5:根据ASN生成TO单(ASN到货确认时候调用)输入:

44、ASN编号、TO单编号输出:生成TO单,保存到数据库,返回信息处理:取得ASN对应ID明细的商品信息:根据明细调用策略类的取得上货策略函数(输入参数:商品信息,输出参数:上货信息),生成TO明细,同时上货信息中保质期原来商品信息中的保质期(按商品编号、批次分组,如果同一个批次的保质期不一样,那么取保质期最近的那个日期)。:生成TO抬头信息(见TO单生成界面中约束):调用TO类的 TO单生成函数,(传入参数:TO抬头Datawindow、TO单明细Datawindow,ID单编号树组。)需要的Private函数:6:入库确认增加库存(注意执行效率,所有入库调用这个函数)说明:根据入库TO单,更新

45、库存收发存帐和库存明细。只是更新收发记录,而不更新月末库存。输入:TO单编号输出:-1/1/0(成功/失败/警告)处理:如果抬头和明细Datawindow不存在,从数据库取得数据到Datawindow:根据业务日期取得财务月份,如果月份已经结帐,财务月份取当前月份(如果当前月份也已经结帐,取今天以后的第一个没有结帐的月份),记录日志(参数:信息类别,信息内容,参数,参数,参数,参数,参数, 参数6)这里使用(I_to_month,入库月份不正确,TO单编号,TO单所在财务月份,当前月份,TO单类别)3:如果货位被锁(LOCK=Y),报错误信息。4:根据TO_Type分别更新财务月份的库存收发存

46、帐。如果Batch_id is null or trim(batch) = then batch_id = bin_id = dest_bin如果不存在当月记录(Month,Bin_Id,Item_Id,Batch_Id判断唯一性),那么插入记录,插入记录的Ware_id,bin_id,item_id,batch_id从to单取得,month是财务月份,月初库存0,月末库存0,其他字段如果to.quan_to is null to.quan_to = 0取得Line号码Case :To_Type = 11(客户委托入库):Quan_in = Quan_in +to.quan_toTo_Type

47、 = 12(移库入库): Quan_Movein = Quan_Movein +to.quan_toTo_Type = 32(内部移库):Quan_AdjIn = Quan_AdjIn + to.quan_to其他报错5:更新库存明细帐(I_stock_detail)。如果to.item_unit is null or trim(item_unit) = then to.item_unit = if su_id is null or trim(su_id) = then su_id = 如果to.quan_unit is null then to.quan_unit = 0判断是否存在记录(L

48、ine,stock_pak,su_id),如果不存在,插入记录: (与I_stock相关信息从I_stock取得),stock_pak = to.item_unit, su_id = to.su_id, 数量全部零。Month, Ware_id, bin_Id, batch_id从I_stock中取,Pak_in = Pak_in + to.quan_unit , quan_in = quan_in + to.quan_toShelf_life = To单明细中的Shelf_Life, Last_move = To单抬头的业务日期,:修改存储单元所在货位的信息7:出库确认减少库存(注意执行效率

49、,所有出库调用这个函数)说明:根据出库TO单,更新库存收发存帐和库存明细。(盘仓和报损也调用入库确认)输入:TO单编号输出:-1/1/0(成功/失败/警告)处理:如果抬头和明细Datawindow不存在,从数据库取得数据到Datawindow:根据业务日期取得财务月份,如果月份已经结帐,财务月份当前月份(如果当前月份也已经结帐,取今天以后的第一个没有结帐的月份),记录日志(参数:信息类别,信息内容,参数,参数,参数,参数,参数)这里使用(I_to_month,入库月份不正确,TO单编号,TO单所在财务月份,当前月份,TO单类型)3:如果货位被锁,报错误信息。4:根据TO_Type分别更新财务月

50、份的库存收发存帐。如果Batch_id is null or trim(batch) = then batch_id = Bin_Id = Src_Bin如果不存在当月记录(Month,Bin_Id,Item_Id,Batch_Id判断唯一性),那么插入记录,插入记录的Ware_id,bin_id,item_id,batch_id从to单取得,month是财务月份,月初库存0,月末库存0,其他字段如果to.quan_to is null to.quan_to = 0取得Line号码Case :To_Type = 21(客户委托出库):Quan_out = Quan_out +to.quan_t

51、oTo_Type = 22(移库出库): Quan_Moveout = Quan_Moveout +to.quan_toTo_Type = 32(内部移库):Quan_AdjOut = Quan_AdjOut + to.quan_toTo_Type = 43(盘仓):Quan_check = Quan_check + to.quan_toTo_Type = 44(报损): Quan_check = Quan_check to.quan_to其他报错5:更新库存明细帐(I_stock_detail)。如果to.item_unit is null or trim(item_unit) = then to.item_unit = if su_id is null or trim

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!