动态扩展平台常用脚本集_第1页
动态扩展平台常用脚本集_第2页
动态扩展平台常用脚本集_第3页
动态扩展平台常用脚本集_第4页
动态扩展平台常用脚本集_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

动态扩展平台常用脚本集EAS产品部产品支持部白敏导读本文档截取了DEP以前项目开发过程中的一些常用功能的脚本实现,可以仿照该实现,快速编写项目中实际的业务逻辑的脚本。适用对象DEP扩展脚本开发人员请注意:本文件只作为产品介绍之用,不属于您与金蝶签署的任何协议。本文件仅包括金蝶既定策略、产品及功能方面的信息,不能以本文件作为要求金蝶履行商务条款、产品策略以及开发义务的依据。本文件内容可能随时变更,恕不另行通知。//客户端在扩展点提交时给F7控件增加监听器vareasNames=JavaImporter();easNames.importPackage(P.kingdee.bos.ctrl.extendcontrols);easNames.importPackage(P.kingdee.bos);with(easNames){varroadMap=pluginCtx.getKDBizPromptBox("prmtprmtMyRoadMap");roadMap.addPreChangeListener(function(){ thrownewBOSException("路线图不允许为空!");});}//客户端设置F7默认值vareasImporter=JavaImporter();easImporter.importPackage(P.kingdee.bos.ctrl.extendcontrols);easImporter.importPackage(Pmon);easImporter.importPackage(P.kingdee.bos.util);easImporter.importPackage(P.kingdee.eas.basedata.assistant);with(easImporter){varprmtCurrency=pluginCtx.getKDBizPromptBox("prmtCurrency");varcur=newCurrencyInfo();cur.setId(BOSUuid.create("DEB58FDC"));cur.setNumber("1001");cur.setName("BMD");prmtCurrency.setValue(cur);} //服务端更新单据状态varimp=JavaImporter();imp.importPackage(P.kingdee.eas.util.app);with(imp){varctx=pluginCtx.getContext();varbillId=methodCtx.getParamValue(0);varstatus=11;varsql="updateT_SD_SALEORDERSETFBASESTATUS="+status+"WHEREFID='"+billId+"'";DbUtil.execute(ctx,sql);methodCtx.setResultValue(java.lang.Boolean.TRUE);}//客户端调用服务端方法vareasNames=JavaImporter();easNames.importPackage(P.kingdee.bos.ctrl.extendcontrols);easNames.importPackage(P.kingdee.bos);easNames.importPackage(P.kingdee.bos.util);easNames.importPackage(P.kingdee.bos.metadata);easNames.importPackage(P.kingdee.eas.util.client);easNames.importPackage(P.kingdee.bos.framework);with(easNames){ varpk=newMetaDataPK("com.kingdee.eas.scm.sd.sale.app.SaleOrder"); varname="java.lang.BooleanupdateStatus(com.kingdee.bos.util.BOSUuidbillId)"; varparams=[BOSUuid.read("2s5eatuISSqb7TuLMfibSMSKQjo=")]; varresult=BOClientTool.callCmethod(pk,name,params); MsgBox.showInfo("Resultis:"+result); com.kingdee.eas.util.SysUtil.abort();}//服务端检查编码重复varimp=JavaImporter();imp.importPackage(P.kingdee.eas.util.app);imp.importPackage(P.kingdee.bos);with(imp){varctx=pluginCtx.getContext();varsql="select*fromT_SD_SALEORDERWHEREFNumber='SO2007000001'";varrowset=DbUtil.executeQuery(ctx,sql);if(rowset.size()>0){thrownewBOSException("编码重复!"); }}vareasNames=JavaImporter();easNames.importPackage(P.kingdee.bos.ctrl.extendcontrols);easNames.importPackage(Pmon.util);easNames.importPackage(Pmon.client.helper);with(easNames){varentry=pluginCtx.getKDTable("kdtEntries");varcolumn=entry.getColumn("qty");varformat=PrecisionUtil.getFormatString(10);vareditor=FormattedEditorFactory.getBigDecimalCellEditor(10,false);column.setEditor(editor);column.getStyleAttributes().setNumberFormat(format);}varimp=JavaImporter();imp.importPackage(P.kingdee.eas.util.app);with(imp){varctx=pluginCtx.getContext();varbillId=methodCtx.getParamValue(0);varstatus=2;varsql="updateT_SD_SALEORDERSETFBASESTATUS="+status+"WHEREFID='"+billId+"'";DbUtil.execute(ctx,sql);methodCtx.setsetResultValue(java.lang.Boolean.TRUE);}//客户端设置编码规则脚本vareasNames=JavaImporter();easNames.importPackage(P.kingdee.eas.base.codingrule);with(easNames){vareditData=pluginCtx.getDataObject();varbizOrgUnit=pluginCtx.getKDBizPromptBox("prmtSaleOrgUnit").getValue();varnumber=CodingRuleManagerFactory.getRemoteInstance().getNumber(editData,bizOrgUnit.getId());pluginCtx.getKDTextField("txtNumber").setText(number);}//客户端设置销售订单分录数量列背景色为红色,注意该脚本需要为后置脚本才能用vareasNames=JavaImporter();easNames.importPackage(Pmon.client);with(easNames){varentry=pluginCtx.getKDTable("kdtEntries");varcolumn=entry.getColumn("qty").getStyleAttributes().setBackground(java.awt.Color.RED);}//客户端设置空间字体属性varfont=newjava.awt.Font("SansSerif",java.awt.Font.BOLD,14);pluginCtx.getKDTextField("txtDescription").setFont(font);//建滔替换物料验证vareasNames=JavaImporter();easNames.importPackage(Packages.javax.swing);easNames.importPackage(Packages.java.awt);easNames.importPackage(Packages.java.event);easNames.importPackage(P.kingdee.bos.ctrl.extendcontrols);easNames.importPackage(P.kingdee.eas.util);easNames.importPackage(Pmon.constants);easNames.importPackage(P.kingdee.bos.ctrl.kdf.table);with(easNames){vareditData=pluginCtx.getDataObject();vardetailTable=pluginCtx.getKDTable("detailTable");varprmtMaterial=newKDBizPromptBox();prmtMaterial.setQueryInfo(QueryInfoConstants.MATERIAL_INVENTORY_NO_GROUP);varlabelMaterial=newJLabel("物料");labelMaterial.setLabelFor(prmtMaterial);varprmtAssitAttribute=newKDBizPromptBox();varlabelAssitAttribute=newJLabel("辅助属性");labelAssitAttribute.setLabelFor(prmtAssitAttribute);prmtAssitAttribute.setQueryInfo("com.kingdee.eas.basedata.master.material.app.F7AsstAttrValueQuery");varpane=newJPanel();pane.border=BorderFactory.createEmptyBorder(30,30,10,30);pane.add(labelMaterial);pane.add(prmtMaterial);pane.add(labelAssitAttribute);pane.add(prmtAssitAttribute);varframe=neweasNames.JFrame("替换物料");frame.getContentPane().add(pane,BorderLayout.CENTER);frame.addWindowListener(function(event,methodName){ if(methodName=="windowClosing"){ frame.setVisible(false); var detailTable=pluginCtx.getKDTable("detailTable") varselectManager=detailTable.getSelectManager(); varselectBlock=selectManager.get(); if(selectBlock!=null){ varrowIndex=selectBlock.getTop(); varmaterial=prmtMaterial.getValue(); varassitAttr=prmtAssitAttribute.getValue(); detailTable.getCell(rowIndex,"orderMaterial").setValue(material); detailTable.getCell(rowIndex,"orderAssitAttribute").setValue(assitAttr); } }});frame.pack();frame.setVisible(true);}//服务端更新单据状态varimp=JavaImporter();imp.importPackage(P.kingdee.eas.util.app);with(imp){varctx=pluginCtx.getContext();varbillId=methodCtx.getParamValue(0);varsql="updateCT_SCA_CheckWeightNoteBillSETCFSTATUSID='2WiVgufPSLmUJJ9rb9F+4b8ogLw='WHEREFNUMBER='001'";DbUtil.execute(ctx,sql);methodCtx.setResultValue(java.lang.Boolean.TRUE);}//客户端处理送货单位vareasNames=JavaImporter();easNames.importPackage(P.kingdee.bos.ctrl.extendcontrols);easNames.importPackage(Pmon.constants);with(easNames){ varprmtDispatch=pluginCtx.getKDBizPromptBox("prmtprmtDispatchUnit"); prmtDispatch.setQueryInfo(QueryInfoConstants.SUPPLIER_COMPANY);}vareasNames=JavaImporter();easNames.importPackage(P.kingdee.bos.ctrl.extendcontrols);easNames.importPackage(Pmon.constants);with(easNames){ vareditData=pluginCtx.getDataObject(); varprmtDispatch=pluginCtx.getKDBizPromptBox("prmtprmtDispatchUnit"); varqueryInfoOrigin=prmtDispatch.getQueryInfo(); if(queryInfoOrigin!=null){ varqueryInfo=queryInfoOrigin.replaceAll("\\\\","."); if(QueryInfoConstants.SUPPLIER_COMPANY.equals(queryInfo)){ editData.put("dispatch_Sup",prmtDispatch.getValue()); }else{ editData.put("dispatch_Org",prmtDispatch.getValue()); }}}vareasNames=JavaImporter();easNames.importPackage(P.kingdee.bos.ctrl.extendcontrols);easNames.importPackage(Pmon.constants);with(easNames){ vareditData=pluginCtx.getDataObject(); varprmtDispatch=pluginCtx.getKDBizPromptBox("prmtprmtDispatchUnit"); varqueryInfoOrigin=prmtDispatch.getQueryInfo(); if(queryInfoOrigin!=null){ varqueryInfo=queryInfoOrigin.replaceAll("\\\\","."); if(QueryInfoConstants.SUPPLIER_COMPANY.equals(queryInfo)){ prmtDispatch.setValue(editData.get("dispatch_Sup")); }else{ prmtDispatch.setValue(editData.get("dispatch_Org")); }}}vareasNames=JavaImporter();easNames.importPackage(P.kingdee.bos.ctrl.extendcontrols);easNames.importPackage(Pmon.constants);easNames.importPackage(P.kingdee.bos);with(easNames){ vareditData=pluginCtx.getDataObject(); varprmtDispatch=pluginCtx.getKDBizPromptBox("prmtprmtDispatchUnit"); varqueryInfoOrigin=prmtDispatch.getQueryInfo(); if(editData.getSourceBillId()==null) thrownewBOSException("检斤通知单不允许手工新增!"); if(editData.get("dispatch_Sup")!=null){ prmtDispatch.setQueryInfo(QueryInfoConstants.SUPPLIER_COMPANY); prmtDispatch.setValue(editData.get("dispatch_Sup")); }else{ prmtDispatch.setQueryInfo("com.kingdee.eas.fi.arap.app.AdminOrgUnitQuery"); prmtDispatch.setValue(editData.get("dispatch_Org")); }}varimp=JavaImporter();imp.importPackage(P.kingdee.eas.util.app);with(imp){varctx=pluginCtx.getContext();varbillId=methodCtx.getParamValue(0);varsumQTY=0;varsql="updateT_IM_PurReceivalEntrySETCFSumCheckQTY='".sumQTY."'WHEREFNUMBER='qq-2010-03-12-00000626'";DbUtil.execute(ctx,sql);methodCtx.setResultValue(java.lang.Boolean.TRUE);}//服务端根据物料计划页签检查项目号与跟踪号varimp=JavaImporter();imp.importPackage(P.kingdee.eas.util.app);imp.importPackage(P.kingdee.bos);imp.importPackage(P.kingdee.eas.basedata.master.material);imp.importPackage(P.kingdee.bos.metadata.entity);imp.importPackage(P.kingdee.bos.metadata.query.util);with(imp){varctx=pluginCtx.getContext();varbillInfo=methodCtx.getParamValue(0);varentrys=billInfo.getEntries();varentry=entrys.get(0);varmaterial=entry.getMaterial();varmaterialId=material.getId();varev=newEntityViewInfo();varfi=newFilterInfo();fi.getFilterItems().add(newFilterItemInfo("material.id",materialId,CompareType.EQUALS));ev.setFilter(fi);variMaterialPlan=MaterialPlanFactory.getLocalInstance(ctx);varmaterialPlanCol=iMaterialPlan.getMaterialPlanCollection(ev);if(materialPlanCol.size()>0){ if(entry.get("myProject")==null&&entry.get("myTrack")==null) thrownewBOSException("项目号与跟踪号不能同时为空!"); }}//Scm_DynProException需要预先定义vareasNames=JavaImporter();easNames.importPackage(P.kingdee.bos.ctrl.extendcontrols);easNames.importPackage(P.kingdee.bos);with(easNames){ varprmtCurrency=pluginCtx.getKDBizPromptBox("prmtCurrency"); if(prmtCurrency.getValue()==null) com.kingdee.eas.ep.plugin.ExceptionUtil.throwOnClient('Scm_DynProException','ScmCompany');}varimp=JavaImporter();imp.importPackage(P.kingdee.eas.util.app);imp.importPackage(P.kingdee.bos);with(imp){varctx=pluginCtx.getContext();if(true){thrownewBOSException("编码重复!"); }}vareasNames=JavaImporter();easNames.importPackage(P.kingdee.bos.ctrl.extendcontrols);easNames.importPackage(Pmon.util);easNames.importPackage(Pmon.client.helper);with(easNames){varpre=pluginCtx.getKDFormattedTextField("txtPrepayment");pre.setPrecision(10);}//KDTable加入监听器varswingNames=JavaImporter();swingNames.importPackage(P.kingdee.bos.ctrl.kdf.table.event);swingNames.importPackage(Pmon.client);vartblMain=pluginCtx.getKDTable("kdtEntries");with(swingNames){ tblMain.addKDTEditListener(KDTEditListener(this));}functioneditStarting(e){}functioneditStarted(e){ varentry=pluginCtx.getKDTable("kdtEntries"); varcolumn=entry.getColumn("qty").getStyleAttributes().setBackground(java.awt.Color.ORANGE);}functioneditValueChanged(e){}functioneditStopping(e){}functioneditStopped(e){}functioneditCanceled(e){}//Scm_DynProException需要预先定义vareasNames=JavaImporter();easNames.importPackage(P.kingdee.bos.ctrl.extendcontrols);easNames.importPackage(P.kingdee.bos);easNames.importPackage(P.kingdee.bos.ui);with(easNames){this.setFocusTraversalPolicy(newcom.kingdee.bos.ui.UIFocusTraversalPolicy(newjava.awt.Component[]{kDDateLastUpdateTime,prmtLastUpdateUser,kDDateCreateTime,prmtCreator,prmtAuditor,txtDescription,pkBizDate,txtNumber,

温馨提示

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

评论

0/150

提交评论