ERP论文Word格式文档下载.docx
《ERP论文Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《ERP论文Word格式文档下载.docx(46页珍藏版)》请在冰豆网上搜索。
4.安全库存量、废品率和损耗率等的计算。
即由相关计划人员来规划是否要对每个物料的净需求量作这三项计算。
5.下达计划订单。
即指通过以上计算后,根据提前期生成计划订单。
物料需求计划所生成的计划订单,要通过能力资源平衡确认后,才能开始正式下达计划订单。
6.再一次计算。
物料需求计划的再次生成大致有两种方式第一种方式会对库存信息重新计算,同时覆盖原来计算的数据,生成的是全新的物料需求计划;
第二种方式则只是在制定、生成物料需求计划的条件发生变化时,才相应地更新物料需求计划有关部分的记录。
这两种生成方式都有实际应用的案例,至于选择哪一种要看企业实际的条件和状况。
1.2系统要求
能实现如下功能:
第一,根据主生产计划推算各种物料的需求数量和需求时间。
第二,根据最终产品的物料清单和工艺路线推算出最终产品的生产成本。
第三,MRP系统的输出是采购计划和生产作业计划,请设计采购单和生产任务单这两种表单来描述采购计划和生产作业计划。
MRP系统涉及到的主要实体有:
1、物料。
其应该包括如下属性:
①供给来源——成品、自制和外购,成品为主生产计划的对象,“自制件”将会形成生产作业计划,“外购件”将会形成采购计划;
②生产周期或采购提前期,对于“成品”和“自制件”,应该定义生产周期作为其属性,对于“外购件”则应该定义采购提前期作为其属性;
③对于每种物料应该定义“父件号”和“父件名称”这种属性,类似于教务管理系统中的先导课程,以表明物料之间的结构关系,否则无法形成完整的BOM;
④对于“成品”和“自制件”,应该定义其所涉及的生产工序,以便于计算完成该物料的生产消耗了多少资源,对于“外购件”应该定义其采购单价,目的都是用来估算成品的生产成本。
2、计划参数。
用于定义有关计划展望期、时段、需求时区、计划时区和预测时区等。
3、主生产计划。
在这里要定义主生产计划的对象,并规定在需求时区、计划时区和预测时区如何确定主生产计划对象的毛需求量等。
4、工作中心。
工作中心是承担物料加工活动的地所、设备和工作人员的集合。
如果把教务管理系统与MRP系统来做一个比较,工作中心相当于教务管理系统中的教师或教室等实体,物料则相当于学生。
5、工序。
工序是指一种物料转化成另一种物料所经历的加工过程,如果把教务管理系统与MRP系统来做一个比较,工序类似于教务管理系统中的课程,教师和学生是通过课程而发生关系,物料和工作中心则是通过工序而发生关系。
6、供应商。
作为外购物料的提供者。
7、企业部门。
如销售部、采购部、财务部、生产部和仓库(作为所有物料的存放地)等。
1.3功能需求
按照本系统的要求需要有以下功能:
1、登录界面:
界面显示—MRP系统,进入不同的功能界面。
1、ERP作业系统的界面
2、代码维护功能:
此功能能对用户的密码进行修改,提高安全性。
3、数据录入:
对数据进行录入。
4、数据查询:
查询录入和已有的数据。
5、报表输出:
输出相应内容。
6、查看源代码:
本期末作业的管理系统代码。
第二章系统分析
2.1进入系统方法
该系统的系统结构图按步骤可划分为:
一:
先进入界面,会显示MRP系统的模块,进入第二步;
二:
打开系统的界面。
在界面共有6种选项,现列举如下;
如:
数据录入数据查询报表输出查看源代码
代码维护功能退出
以上是6个模块,每个模块里面又细分了几个模块,以使MRP系统更完善。
查看代码的功能,可以看到这个作业的代码。
第三章系统设计
3.1数据内容和模块截图
这个MRP系统数据库含有这些模块相应的内容
第四章系统模块分析
4.1系统模块分析
MRP计划系统以销售订单为核心计算来源,对物料所处“状态”如库存数量、采购在途量、制单在途量、委外在途、制单欠料(余量)、委外欠料(余量)、采购计划在途等进行细分,当进行相关需求分析时,根据需要可灵活设置是否考虑某一“状态”的物料;
具有严谨的MRP计算逻辑,对MRP采购计划、制造单、委外单进行全面追溯,相关计划人员可以根据对MPS主生产计划分析、MRP物料需求计划运算等手段,产生相关订单的物料需求
具体功能包括:
支持面向订单型生产模式,系统可灵活设置销售订单类型是否参与主生产计划;
1、MPS主生产计划产生前,系统根据订单需求提供主生产计最早划分析功能,并对订单所涉及物料的可用库存、在途量、制单欠量、计划在途量等进行比较;
2、MRP对替代品的运算,支持物料的替代运算,即当物料缺货时,系统查找是否有可替代的物料,将替代料的可用库存加入到主料的库存中运算,系统并在主料明细中记录下替代料信息,写在备注栏;
3、在MRP运算时,系统会考虑各物料的安全库存,可在料品资料维护中设置安全存量及安全存量的下达方式,系统提供了按下达量和按毛需求下达两种方式,按下达量,当下达量大于0时,才考虑安全库存,按毛需求,当需求大于0时,就考虑安全库存
4、可以设置物料在MRP运算时是否合并,系统提供了按订单合并、按周合并、按时间跨度合并3种方式;
同订单号的同物料的下达量是否合并成一笔下达量,同物料需求日期在一个自然周内的下达量是否合并成一笔下达量,同物料需求日期在设置的时间跨度范围内的下达量是否合并成一笔下达量
5、针对物料的包装及经济性等其它原因,可以灵活设置物料的订货批量和最小订货量,系统提供了按批量、按需求来考虑物料需求,按需求只考虑最小订货量,按批量结合考虑最小订货量和订货批量
6、针对半成品和成品可以设置在MRP分析后是否产生制造单,可以在料品资料维护中设置是否产生制造单即可
7、可以设置物料的订货提前期,便于在MRP运算时,产生物料的最佳需求日期,可以减少库存数及节约资金流
除了介绍的模块,系统还有以下的模块:
1、登录模块
2、数据录入模块
3、数据查询模块
4、报表输出模块
及其他模块……
第五章作业代码
5.1主要代码内容
SETTALKOFF
SETDELETEOFF
SETDATEANSI
SETCENTON
STOR1TOJJLAST
DOWHIL.T.
CLOSDATA
CLEATYPE
ONKEY
IFNOTWEXIST("
cpmainz"
)
IFSYSM
(1)>
641
DEFIWINDCPMAINZAT0,0SIZE31.056,99.875TITL"
物料管理系统"
;
FONT"
宋体"
12FLOATNOCLOSENOMINIMIZESYST
ELSE
DEFIWINDCPMAINZAT0,0SIZE25.056,84.875TITL"
ENDI
MOVEWINDOWCPMAINZCENTER
ENDI
ACTIWINDCPMAINZNOSHOW
III=IIF(SYSM
(1)>
641,0,-0.5)
_ZYHOXZ=0
@III+1.5,8.125GET_ZYHOXZPICT"
@*IHT;
;
"
SIZE1.167,8.250,6FONT"
12
DODISMITWITH[],III&
&
ENABLETHEMESSAGEOFMMAIN_MENU
IFIII=0
@7.333,24.750SAY"
FONT"
36STYL"
TB"
@19.278,36.125SAY"
MRP作业"
12STYL"
T"
ELSE
@8.5,23.750SAY"
28STYL"
@15.878,32.125SAY"
ACTIWINDCPMAINZ
READCYCLMODAOBJEJJLAST
IF(LAST()=27AND_ZYHOXZ<
1)OR_ZYHOXZ=5
EXIT
DODISMITWITH[COLO3/7*],III&
DISABLETHEMESSAGEOFMMAIN_MENU
JJLAST=_ZYHOXZ
DOSUBMENUWITH_ZYHOXZ
ENDD
RELEWINDCPMAINZ
CLOSDATAALL
ONERRO
ONKEY
RETU
**********
PROCDISMIT
PARAMYCOLO,AIROW
@AIROW+1.5,08.225SAY"
数据录入"
&
MYCOLO
@AIROW+1.5,22.575SAY"
数据查询"
@AIROW+1.5,36.750SAY"
报表输出"
@AIROW+1.5,51.000SAY"
代码维护"
@AIROW+1.5,65.375SAY"
结束本例"
PROCSUBMENU
PARAMIMO
DOCASE
CASEMIMO=1
PITE=[\<
1入库数据录入;
\<
2销售数据录入;
3数据初始化;
0退出本选择单]
CASEMIMO=2
PITE=[\<
1每笔入库数据查询;
2每笔销售数据查询;
3出库入库数据查询;
4产品库存数据查询;
0退出本操作选择单]
CASEMIMO=3
1统计报表计算;
2生产销售月表;
3月收发存总表;
CASEMIMO=4
1增加糖果品种;
2删除糖果品种;
3修改代码表;
ENDC
_ZYHIN=0
CLOSDATAALL
IMO=IIF(MIMO=2,5,4)
ZSUBM"
DEFIWINDZSUBMAT0,0SIZE13,26+4*(IMO-4)FONT"
12SYSTCOLOR0/7*FLOA
TITLSUBS([数据录入数据查询报表输出代码维护],(MIMO-1)*8+1,8)+"
操作选项"
MOVEWINDZSUBMCENT
ACTIWINDZSUBM
cho1=0
IFIMO=4
@1.5,4GETcho1FUNC"
*VT"
+PITEFONT"
12SIZE1.6,18,1.2DEFAIMO
@1,4GETcho1FUNC"
12SIZE1.6,22,0.7DEFAIMO
READMODACYCLOBJEIMO
_ZYHIN=cho1
IF(LAST()=27AND_ZYHIN=0)ORCHO1=IMO
EXIT
IFIMO=4
@1.5,4GETUcho1FUNC"
12SIZE1.6,18,1.2DEFAIMODISA
@1,4GETUcho1FUNC"
12SIZE1.6,22,0.7DEFAIMODISA
CLEAGETS
DOSUBPACWITHMIMO*10+CHO1
IFLAST()=27
CLEATYPE
_ZYHIN=.F.
RELEWINDZSUBM
***********
PROCSUBPAC
PARADONUM
CASEINLI(DONUM,11,12)
DOZCP11WITHIIF(DONUM=11,[入库],[销售])
CASEDONUM=13
AAQT=[N]
DOZYHWA_SEWITH[确认数据初始化],[数据初始化将清除所有数据文件中的数据。
真要执行数据初始化请按Y键:
],6,AAQT
IFUPPE(AAQT)=[Y]
USEcprk
ZAP
USEcpxs
ZAP
USEcprdataINDEXcprdata
USEcpbb
USEcpkc
DOZYHWA_SEWITH[\1],[数据初始化执行完毕。
按任意键……],1
DOZYHWA_SEWITH[\1],[数据初始化没有执行。
CASEINLI(DONUM,21,22,23,24)
DOZCP21WITHIIF(DONUM=21,[入库],;
IIF(DONUM=22,[销售],;
IIF(DONUM=23,[出入库],[库存])))
CASEINLI(DONUM,31,32,33)
PPPRG=[DOZCP]+STR(DONUM,2,0)
&
PPPRG
CASEINLI(DONUM,41,42,43)
DOZCP41WITHDONUM-40
*********
PROCZCP11
PARASRTYPE
PRIVALLLIKEU*
STORDATE()TOURQ1,URQ2
DOGETRQWITH1,URQ1,URQ2
IFEMPT(URQ1)
RETU
ENDI
SELE1
USECPSJSR
ZAP
DOCPEMPT
GOTOP
SCATTOUEMPTY
DEFIWINDNRLRAT0,0SIZE20.5,78FLOASYSTCOLORRGB(0,0,0,227,236,238);
TITL"
输入"
MOVEWINDNRLRCENT
PUSHKEYCLEA
ONKEYLABECTRL+HDODISCAPRWITH[产品]+SRTYPE+[数据录入操作帮助],[(由张玉红“帮助”程序输出)],8,[M2]
ONKEYLABEF1DOCPEMPT
ONKEYLABECTRL+UPARROWDOZYHUP
ONKEYLABECTRL+DNARROWDOZYHDN
IFSRTYPE=[入库]
BROWFIELRQ:
11:
H=[发生日期]:
W=.F.,;
SRNR:
H=[产品助录]:
V=WHAT_CP(),;
rksl:
9:
H="
入库数量"
:
P=[@Z]:
W=!
EMPT(CPDM),;
dw:
5:
h=[单位]:
w=.f.,;
cpdm:
4:
代码"
cpmc:
产品名称"
LB:
6:
H=[类别]:
EDUU=[]:
1:
"
R;
WINDNRLRTITL[产品入库记录输入Ctrl+W:
退出Ctrl+H:
帮助]FONT"
11
ELSE
Lssl:
零售数量"
Pfsl:
批发数量"
WINDNRLRTITL[产品销售记录输入Ctrl+W:
10
LOCAALLFOR!
EMPT(ABS(LSSL)+ABS(PFSL)+ABS(RKSL))
IFFOUN()
AAQQ=1
DOZYHWA_SEWITH[是否存盘],[],2,AAQQ,-10,-10,[\<
1存盘;
2修改;
0放弃]
AAQQ=3
IFAAQQ=2
LOOP
IFAAQQ=1&
SAVETODATABASE
DELEALLFOREMPT(cpdm)OREMPT(ABS(LSSL)+ABS(PFSL)+ABS(RKSL))
PACK
IFRECC()>
DOSAVEINSJ
ZAP
RELEWINDNRLR
POPKEY
********
PROCCPEMPT
UUREC=RECN()
FORUI=1TO20
APPEBLAN
REPLRQWITHURQ1
NEXT
IFBETW(UUREC,1,RECC
(1))
GOUUREC
FUNCWHAT_CP
IFEMPT(SRNR)
REPLSRNRWITHCPMC
RETU.T.
UUSR=STRT(SRNR,[],[])
UUATC=[**CANC**]
CASELEFT(UUSR,2)=[**]
GATHFROMUEMPTY
SKIPIIF(RECN()<
RECC(),1,-1)
RETU.T.
CASELEFT(UUSR,1)$[?
/]&
ByMENU-SELECT
UUATC=XZCPNA()
CASEBETW(ASC(UUSR),48,57)&
ByCPDM
SELE2
USECPDMALIACPDM
COUNALLTOU_NUMFORALLT(CPDM)=UUSR
IFU_NUM=1
LOCAALLFORALLT(CPDM)=UUSR
UUATC=[@]+ALLT(CPDM.CPDM)+[@]+ALLT(CPDM.CPMC)+[@]+ALLT(CPDM.DW)+[@];
+ALLT(CPDM.LB)+[@]+LTRI(STR(RECN("
CPDM"
),6,0))+[@]
IFU_NUM>
1
SETFILTTOCPDM=UUSR
UUATC=XZCPNA()
ENDI
CASEBETW(ASC(UUSR),65,122)&
ByZJM
UUSR=UPPE(UUSR)
COUNALLTOU_NUMFORALLT(ZJM)=UUSR
LOCAALLFORALLT(ZJM)=UUSR
SETFILTTOZJM=UU