当前位置:首页 >> 能源/化工 >>

客开项目开发实例


U8 知识库文档

客开项目开发实例-昌德化工

客户需求概括
本文以采用客户化开发工具完成昌德化工的项目为例进行介绍。 昌德公司化工行业, 工艺达标率是生产过程中, 各设备的巡检结果的记录; 每小时会巡 检一次, 需要将巡检各工艺设备的结果记录于 ERP 系统中;
现用友U8ERP 标准功能: 手工录入

其它报检单

其它检验单

因在标准功能中, 其它检验单必须根据其它报检单生成, 在昌德实际作业过程中, 巡检 是每小时或不定期巡检, 如需要先做其它报检单, 再生成其它检验单, 工作效率严重下降, 特昌德公司希望用友 U8ERP 可以实现:
昌德公司希望实现功能: 手工录入

其它检验单

客户化开发方案
在质量管理模块增加日常检验单作为日常记录,该单据可以手工录入不必参照报检单, 界面设计如下图所示:

www.yonyou.com

U8 知识库文档

开发步骤
1. 创建菜单
在质量管理模块创建日常检验单、日常检验单列表菜单:
日常检验单菜单脚本

-- 创建菜单脚本 GO -- select * IF BEGIN delete from UA_Menu where cMenu_id='QM0209' insert into UA_Menu ([cMenu_Id],[cMenu_Name],[cMenu_Eng],[cSub_Id],[IGrade],[cSupMenu _Id],[bEndGrade],[cAuth_Id],[iOrder],[iImgIndex],[Paramters],[Dep ends],[Flag],[IsWebFlag]) values('QM0209','日常检验 from UA_Menu where from cMenu_id='QM0209'

NOT EXISTS (select *

UA_Menu where cMenu_id='QM0209')

www.yonyou.com

U8 知识库文档
',Null,'QM',1,'qm','0',Null,2090,2,Null,Null,Null,Null) END GO -- select * IF BEGIN delete from UA_Menu where cMenu_id='QM020901' insert into UA_Menu ([cMenu_Id],[cMenu_Name],[cMenu_Eng],[cSub_Id],[IGrade],[cSupMenu _Id],[bEndGrade],[cAuth_Id],[iOrder],[iImgIndex],[Paramters],[Dep ends],[Flag],[IsWebFlag]) values('QM020901','日常检验单 ',Null,'QM',2,'QM0209','1','',2110,4,Null,Null,Null,Null) END GO -- select * IF BEGIN delete from UA_Menu where cMenu_id='QM020902' insert into UA_Menu ([cMenu_Id],[cMenu_Name],[cMenu_Eng],[cSub_Id],[IGrade],[cSupMenu _Id],[bEndGrade],[cAuth_Id],[iOrder],[iImgIndex],[Paramters],[Dep ends],[Flag],[IsWebFlag]) values('QM020902','日常检验单列表 ',Null,'QM',2,'QM0209','1','',2110,4,Null,Null,Null,Null) END GO from UA_Menu where from cMenu_id='QM020902' from UA_Menu where from cMenu_id='QM020901'

NOT EXISTS (select *

UA_Menu where cMenu_id='QM020901')

NOT EXISTS (select *

UA_Menu where cMenu_id='QM020902')

参考附件:快速开发工具案例——菜单.sql

2. 创建日常检验单据
使用快速开发工具创建日常检验单脚本,如下图所示:
日常检验单脚本

参考附件:快速开发工具案例——单据.sql;快速开发工具案例——按钮(meta).sql

www.yonyou.com

U8 知识库文档

3. 个性化需求开发
a) 在新增日常报检单时,报检时间自动选择系统当前时间年/月/日且不能修改。

www.yonyou.com

U8 知识库文档
设置报检时间格式

insert

into

VoucherItems_Base

([VT_ID],[CardNum],[CardItemNum],[CanNotSelect],[ShowIt],[LinkIt] ,[LinkTbl],[LinkField],[TableName],[FieldName],[FieldType],[Refer Type],[ReferTable],[CardSection],[CanModify],[MaxLength],[MaxShow Len],[NumPoint],[IsNull],[CanDelete],[UserCheck],[UserPrompt],[Fo rmatChar],[IsMain],[NeedSum],[CalcField],[AliasNum],[isSelfDef],[ COX],[COY],[Width],[Height],[TabIndex],[DefaultValue],[IsFixedLen ght],[FormatData],[PrintCaption],[PrintUpcase],[PrintInterval],[D ataSource],[EnterType],[DataRule],[ValidityCheck],[ReserveSegTitl ePos],[BuildArchives],[ReferReturnField],[cmemo],[nBorder],[EnumT ype],[IsEnum],[EnumTypeString],[bZeroAllowable],[iFlags],[vValueD efault],[refObject],[AutoFillRule],[Catalog],[bsplit],[IsJoinQuer y],[bExtended]) values(@VT_ID,'QM020901','149','0','1',0,Null,Null,'Inventory_Inf ormation','datetime1',5,3,Null,'T','0',20,2000,0,'0',1,Null,Null, '1','0',0,'0',0,0,7080,840,3240,250,149,'','0','YYYY-MM-DD hh:mm:ss','1','0','',0,0,Null,'0','1','0',Null,'',0,Null,'0',Null ,'1',0,'',Null,Null,0,'0','0','0')
在插件中编辑报检时间取值

'Voucher

当前单据对象 错误信息

'ButtonKey 按扭关键字 'strUserErr 'bSuc =true 表示成功并终止系统流程 =false 表示失败并继续系统流程 Public Sub After_ButtonClick(Voucher As Object, ButtonKey As String, strUserErr As String, bsuc As Boolean) bsuc = False Select Case LCase(StrCardNum) Case LCase("QM020901") If LCase(ButtonKey) = "add" Then Vouchers_Frm.Voucher.headerText("datetime1") Format(Getsqlval(" hh:mm:ss") End If Case Else select getdate()", DBconn), = "YYYY-MM-DD

End Select End Sub

www.yonyou.com

U8 知识库文档

b) 质量检测方案编码参照。

对应参照脚本

www.yonyou.com

U8 知识库文档
insert into VoucherItems_Base ([VT_ID],[CardNum],[CardItemNum],[CanNotSelect],[ShowIt],[LinkIt] ,[LinkTbl],[LinkField],[TableName],[FieldName],[FieldType],[Refer Type],[ReferTable],[CardSection],[CanModify],[MaxLength],[MaxShow Len],[NumPoint],[IsNull],[CanDelete],[UserCheck],[UserPrompt],[Fo rmatChar],[IsMain],[NeedSum],[CalcField],[AliasNum],[isSelfDef],[ COX],[COY],[Width],[Height],[TabIndex],[DefaultValue],[IsFixedLen ght],[FormatData],[PrintCaption],[PrintUpcase],[PrintInterval],[D ataSource],[EnterType],[DataRule],[ValidityCheck],[ReserveSegTitl ePos],[BuildArchives],[ReferReturnField],[cmemo],[nBorder],[EnumT ype],[IsEnum],[EnumTypeString],[bZeroAllowable],[iFlags],[vValueD efault],[refObject],[AutoFillRule],[Catalog],[bsplit],[IsJoinQuer y],[bExtended]) values(@VT_ID,'QM020901','51','0','1',0,Null,Null,'Inventory_Info rmation','str3',1,1,Null,'T','1',20,2000,0,'0',1,Null,Null,'1','0 ',0,'0',0,0,240,1920,3120,250,51,'','0','','1','0','',0,0,Null,'0 ','1','0',Null,'',0,Null,'0',Null,'1',0,'',Null,Null,0,'0','0','0 ') insert into VoucherItems_Base ([VT_ID],[CardNum],[CardItemNum],[CanNotSelect],[ShowIt],[LinkIt] ,[LinkTbl],[LinkField],[TableName],[FieldName],[FieldType],[Refer Type],[ReferTable],[CardSection],[CanModify],[MaxLength],[MaxShow Len],[NumPoint],[IsNull],[CanDelete],[UserCheck],[UserPrompt],[Fo rmatChar],[IsMain],[NeedSum],[CalcField],[AliasNum],[isSelfDef],[ COX],[COY],[Width],[Height],[TabIndex],[DefaultValue],[IsFixedLen ght],[FormatData],[PrintCaption],[PrintUpcase],[PrintInterval],[D ataSource],[EnterType],[DataRule],[ValidityCheck],[ReserveSegTitl ePos],[BuildArchives],[ReferReturnField],[cmemo],[nBorder],[EnumT ype],[IsEnum],[EnumTypeString],[bZeroAllowable],[iFlags],[vValueD efault],[refObject],[AutoFillRule],[Catalog],[bsplit],[IsJoinQuer y],[bExtended]) values(@VT_ID,'QM020901','52','0','1',0,Null,Null,'Inventory_Info rmation','str4',1,1,Null,'T','0',20,2000,0,'0',1,Null,Null,'1','0 ',0,'0',0,0,3600,1920,3000,250,52,'','0','','1','0','',0,0,Null,' 0','1','0',Null,'',0,Null,'0',Null,'1',0,'',Null,Null,0,'0','0',' 0') insert into SA_ReferFillConfig ([cardnumber],[fieldname],[cardsection],[refername],[sourcefieldn ame],[destfieldname],[breferfill],[bcellcheckfill],[bclear],[bche ckchange],[changemsg]) values('QM020901','str3','T','qmcheckproject_qm','cprojectcode',' str3','1','1','1',Null,Null) insert into SA_ReferFillConfig

www.yonyou.com

U8 知识库文档
([cardnumber],[fieldname],[cardsection],[refername],[sourcefieldn ame],[destfieldname],[breferfill],[bcellcheckfill],[bclear],[bche ckchange],[changemsg]) values('QM020901','str3','T','qmcheckproject_qm','cprojectname',' str4','1','1','1',Null,Null) insert into SA_ReferFillConfig ([cardnumber],[fieldname],[cardsection],[refername],[sourcefieldn ame],[destfieldname],[breferfill],[bcellcheckfill],[bclear],[bche ckchange],[changemsg]) values('QM020901','str4','T','qmcheckproject_qm','cprojectcode',' str3','1','1','1',Null,Null) insert into SA_ReferFillConfig ([cardnumber],[fieldname],[cardsection],[refername],[sourcefieldn ame],[destfieldname],[breferfill],[bcellcheckfill],[bclear],[bche ckchange],[changemsg]) values('QM020901','str4','T','qmcheckproject_qm','cprojectname',' str4','1','1','1',Null,Null)

c) 指标质量判定: 录入的检验值(根据标准值和上限值及下限值 范围) 自动判定是 否合格

插件

'初始化用户插件 'Voucher 'sKey 'sRet 当前单据对象 当前操作关键字 返回值 错误信息

'strUserErr 'bChanged

'bSuc =true 表示成功并终止系统流程 =false 表示失败并继续系统流程 Public Sub Voucher_headCellCheck(ByVal Voucher As Object, sKey As String, RetValue As String, bChanged As Long, strUserErr As String,

www.yonyou.com

U8 知识库文档
bsuc As Boolean) bsuc = False Dim sqlstr As String Dim row As Long

Select Case StrCardNum

Case "QM020901" If LCase(sKey) = "str3" Then sqlstr = "select CCHKITEMNAME as 检验项目,CCHKGUIDENAME as 检验指 标,(case CBUGGRADE when 2 then '一般' when 1 then '重要' else '严重' end) as 缺陷等级,CSTANDARD as 标准值,IUPPERLIMIT as 上限值,ILOWERLIMIT as 下 限值,(case BRECORDDETAILS when 1 then '是' else '否' end) as 记录样本 值 from QM_QCheckProjectList Where CPROJECTCODE = '" & RetValue & " '" If rds.State <> 0 Then rds.Close rds.CursorLocation = adUseClient rds.open sqlstr, DBconn.ConnectionString, 3, 4 Do While Not rds.EOF row = row + 1 Voucher.bodyText(row, ").Value '检验项目 Voucher.bodyText(row, ").Value '检验指标名称 Voucher.bodyText(row, "b_str12") = "PCS" '检验指标计量单位 Voucher.bodyText(row, "b_str15") = "合格" '指标质量判定 Voucher.bodyText(row, ").Value ").Value ").Value ").Value ").Value ").Value '缺陷等级 "b_str17") "b_str18") "b_str19") "b_str20") = = = = rds.fields(" 标 准 值 rds.fields(" 上 限 值 rds.fields(" 下 限 值 rds.fields(" 标 准 值 '标准值 '上限值 '下限值 '检测值 '记录样本值 Voucher.bodyText(row, Voucher.bodyText(row, Voucher.bodyText(row, 'Voucher.bodyText(row, "b_str16") = rds.fields(" 缺 陷 等 级 "b_str11") = rds.fields(" 检 验 指 标 "b_str10") = rds.fields(" 检 验 项 目

Voucher.bodyText(row, "b_str21") = rds.fields(" 记 录 样 本 值

rds.MoveNext Loop bsuc = False

www.yonyou.com

U8 知识库文档

' '

Else bsuc = True End If

Case Else bsuc = False End Select End Sub

相关知识
参见附件: 《Interface_EFQM》 。

www.yonyou.com


相关文章:
客户开发实例
客户开发实例_销售/营销_经管营销_专业资料。客户开发实例要做客户开发,首先要只...开 始的两倍左右, 而我们的销售渠道已经难于支撑这样的销售量,我们迫切需要开 ...
案例-软件项目开发流程
案例-软件项目开发流程_计算机软件及应用_IT/计算机_...同时,在管理上解决口头汇报,不客 观而事后而无据...第一阶段测试开 始时间: 第一阶段测试完 成日期:...
软件开发案例分析
系统分析 需求分析 总体设计 项目规划 人力资源管理系统是针对中小型校园现有员工...软件开发案例分析课程设... 11页 免费 第二组:西开公司成本管... 43页 ...
房地产开发项目实例
房地产开发案例 73页 2财富值如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题或意见建议,请点击此处进行反馈。 房地产开发项目实例 房地产 开发 项目实例...
经典J2EE项目案例
软件开发项目案例 软件开发项目案例 项目以后项目仅供...让销售商随时随地能快速为客 户提供手机产品; 互联...将显示当前墙中所有已经开的窗口 的详细信息和处理...
文旅项目成功案例
文旅项目成功案例_销售/营销_经管营销_专业资料。临沧首个旅游开发 PPP 项目合作...2014 年 12 月 6 日,长沙县 PPP 项目推介会正式拉开大幕。本次推介会,长...
项目管理及案例分析
项目管理及案例分析_企业管理_经管营销_专业资料。...信息应用系统开 发是以软件工程师智力劳动成果为主...压缩平均技能水平,将使软件项目开发的质量降低,工期...
html网站开发实例项目
html网站开发实例项目_计算机软件及应用_IT/计算机_专业资料。html 项目开发实例耳机...上边已经说明,我们选择用 PHP 技术开 发该企业网站。 PHP 可以编译成具有与...
项目计划书实例_图文
项目计划书实例_专业资料。项目启动与运维计划书 ...交通信息服务系统、企业级客 服管理系统、公安综合...《计算机软件开发规范》 《电子计算机机房设计规范》 ...
系统集成项目案例完整版
Windows 项目案例 项目背景: 洛阳路通重工机械有限公司位于洛阳飞机场工业园区,是...技术人员百余名,具有液 压挖掘机、压路机、平地机等系列工程机械癿癿开发研制...
更多相关标签: