EAS-BOS常用控件属性方法事件
EAS-BOS常用控件属性方法事件
种类名称说明CombBox addItem将枚举的值加入下拉列表选项CombBox removeAllItems删除下拉列表的所有选项CombBox setModel 使用值对象集合给ComboBox控件赋值DefaultComboBoxModel model = new DefaultComboBoxModel(); ICsAccountTable iAccountTable =CsAccountTableFactory.getRemoteInstance(); CsAccountTableCollection tableInfos = iAccountTable.getCsAccountTableCollection();CombBox setSelectedItem动态设置下拉列表选择项的值ComboTreeDetailListUI buildTreeFilter 构造查询子节点(右表)数据的过滤条件,默认实现为在EntityViewInfo中添加一个getQueryFieldName()=treeNodeInfo的过滤条件,即查询对象的某个属性关联到Tree节点所代表的对象。
如果你需要构造的查询条件不是这种形式,则需要重载本方法自行设定过滤条件。
ComboTreeDetailListUI discardQuery刷新Query数据ComboTreeDetailListUI getDefaultFilterForTree getDefaultFilterForTree()方法,是默认的cu过滤条件ComboTreeDetailListUI getGroupEditUIModal产生类别编辑UI的方式ComboTreeDetailListUI getGroupEditUIName指示Tree关联的类别编辑UI对象名,如果界面需要实现类别编辑,则需要重载该方法。
ComboTreeDetailListUIgetLastSelectedPathComponent返回树结点的值ComboTreeDetailListUI getLNTreeNodeCtrl若多棵树对应同一个实体,但其中有一个属性区分不同的树,例如科目表和科目类型,则需要重载该方法ComboTreeDetailListUI getQueryFieldName 点击树上节点时形成过滤条件时的【字段】(右边列表界面调用的Query根据该字段进行过滤),例如地址簿序时簿界面右边的地址列表要依据左边Tree上选中的地址分类而刷新,此处则返回Address.class即可。
DELPHI控件属性方法事件及常用函数
DELPHI控件属性方法事件及常用函数DELPHI是一种面向对象的编程语言,用于开发Windows平台上的应用程序。
在DELPHI中,控件是程序的可视化部件,用于用户界面的创建和交互。
以下是一些常用的DELPHI控件属性、方法、事件和常用函数的详细介绍。
一、控件属性:1. Name属性:用于指定控件的名称,以便在程序中引用它。
2. Caption属性:用于指定控件的显示文本。
3. Visible属性:用于控制控件是否可见。
4. Enabled属性:用于控制控件是否可用。
5. Color属性:用于指定控件的背景颜色。
6. Font属性:用于指定控件的字体。
7. Width和Height属性:用于指定控件的宽度和高度。
8. Top和Left属性:用于指定控件在父容器中的位置。
9. Parent属性:用于指定控件的父容器。
二、控件方法:1. SetFocus方法:用于使控件获得焦点。
2. Show方法:用于显示当前控件。
3. Hide方法:用于隐藏当前控件。
4. BringToFront方法:用于将当前控件移到其他控件之前显示。
5. SendToBack方法:用于将当前控件移到其他控件之后显示。
6. Invalidate方法:用于使控件的绘制区域无效,触发重绘操作。
三、控件事件:1. OnClick事件:当用户单击控件时触发。
2. OnDblClick事件:当用户双击控件时触发。
3. OnEnter事件:当控件获得焦点时触发。
4. OnExit事件:当控件失去焦点时触发。
5. OnKeyPress事件:当用户按下键盘上的字符键时触发。
6. OnMouseDown事件:当用户按下鼠标按钮时触发。
7. OnMouseUp事件:当用户释放鼠标按钮时触发。
8. OnMouseMove事件:当用户移动鼠标时触发。
四、常用函数:1. ShowMessage函数:用于在屏幕上显示一个消息框。
2. MessageBox函数:用于在屏幕上显示一个消息框,并且返回用户的选择。
常用控件的常用属性、方法和事件2011ok
一、窗体(属性)这连个属性用来显示窗体右上角的最大、最小化按钮。
如果希望显示最大或最小按钮,则应该将两个属性这两项设置不起作用。
因此,即使把maxbutton最小化按钮也不会消失。
如果borderstyle属性被设置为0——none属性定义的名称是在程序代码中使用的对象名,与对象的标题(caption)是只读属性,在运动时,对象的名称不能改变。
一、窗体(事件):事件是作用于对象上的一种动作或行为,也可以理解为是对象能够识别(也称响应)常用标准控件大多数控件都具有的属性:Borderstyle enable Fontbold fontitalic fontname fontsize fontunderlineHeight left name top visible width,此外不同的控件还具相应的属性文本控件与文本有关的控件有两个,即标签和文本框,在标签中只能显示文本,不能进行编辑,而在文本框中即可以显示文本,有可输入文本。
二、标签1、标签主要用来显示文本信息,所显示的内容只能用caption属性来设置或修改,不能直接编辑,有时候,标签常用来标注本身不具有caption属性的控件,例如可以使用标签为文本框、列表框组合框等控件附加描述信息。
标签一般不响应事件三、文本框1、文本框属性文本框支持click和dblclick等鼠标事件,同时支持change、gotfocus、lostfocus等事件。
1)Change当用户向文本框中输入新信息时,或当程序吧text属性设置为新值从而改变文本框的text属性时,将触发chang事件。
2)Gotfocus当文本框具有输入焦点(即处于活动状态)时,从键盘输入的每个字符都将在该文本框中显示出来3)lostfocus当按下tab键使光标离开当前文本框或者用鼠标选择窗体中的的其他对象时触发该事件,用change事件过程和lostfocus事件过程都可以检查文本框的text属性值,但后者更有效。
易语言控件的通用属性方法和事件
易语言控件的通用属性方法和事件.txt12思念是一首诗,让你在普通的日子里读出韵律来;思念是一阵雨,让你在枯燥的日子里湿润起来;思念是一片阳光,让你的阴郁的日子里明朗起来。
易语言控件的通用属性方法和事件(转载)(2010-01-06 01:23:40)转载标签:电脑控件句柄易语言画板it 分类:软件一、控件的通用“属性”控件的通用属性主要有:名称、标题、禁止、可视、鼠标指针、字体、边框、可停留焦点、左边、顶边、宽度、高度、标记、备注等。
上述列出的属性中,只有名称、左边、顶边、宽度、高度、标记、备注是每个控件都拥有的属性,其它属性虽不是每个控件都有,但也非常常见,故也认为它们是控件的通用属性。
通用属性中除了名称和标题外,一般不必刻意设置——易语言自动为其取最常见的值。
除了通用属性外,控件一般都还有自己的特有属性。
下面逐个讲解控件的通用“属性”:1、名称控件的唯一标识。
好比现实中人的身份证。
放到程序中控件必须有名称——如果程序员未特别命名,易语言自动为它按序号命名(如:按钮1、按钮2……编辑框1、编辑框2……等)。
要想在代码中操作控件的属性方法和事件,就必须指定目的控件的名称(如:按钮 1.标题)。
[注:如果程序较为复杂——用到的控件较多,最好自己为控件命名。
为控件取一个有意义的名称是一个好的习惯。
我个人认为,一个好的名称 = 功能 + 控件类型,如“确定按钮”“取消按钮”“密码编辑框”等等。
另外,切不可用代码改动控件的名称!]2、标题显示于控件上的文字。
主要是给程序的使用者看的,通常作为某种提示。
因控件的不同,标题出现的出现的位置可能也不一样。
如:窗口、通用对话框等有标题栏的控件,标题出现在标题栏中;而按钮、标签、单选框、选择框、分组框、菜单等没有标题栏的控件,标题出现在控件中央(或偏上下左右)。
3、禁止控制控件可否被程序使用者操作。
它的值只能为真或假,默认为假,即不禁止。
被禁止的控件一般表现为:上面的文字(即标题)变为灰色,单击它没有任何反应。
EAS_BOS查询及过滤方法2017
1、SQL 操作1.1 SQl查询,区别客户端和服务端S tringBuffer sql = new StringBuffer("select sum(t.fsublocalamount) as sumSubAmount from t_ht_subcontractbill t where t.fcontractbillid ='");s ql.append(editData.getId()).append("' ");//客户端I SQLExecutor executor =SQLExecutorFactory.getRemoteInstance(sql.toString());//服务端I SQLExecutor executor =SQLExecutorFactory.getLocalInstance(ctx,sql.toString());I RowSet rs = executor.executeSQL();i f(rs.next())// while(rs.next()){//...}1.2 DataUtils使用,注:DbUtil很多模块定义了此工具类,请查看再使用1.2.1 简单查询String sql ="select t1.fid from ct_ht_serviceprojectt1 ,CT_HT_ServiceInvitePro t2 where t1.fid=t2.CFProNameID";//com.kingdee.eas.util.app.DbUtilIRowSet rs=DbUtil.executeQuery(ctx, sql);while(rs.next()){//...}1.2.2参数查询StringBuffer sb = new StringBuffer();sb.append(" select t1.fid from ct_ht_serviceprojectt1 ,CT_HT_ServiceInvitePro t2 where t1.fid=t2.CFProNameID ");sb.append(" and t1.fid =? ");sb.append(" and t1.fstatus =? ");Object[] params = new Object[2];params[0] = billID;//方法传递的参数params[1] = status;//方法传递的参数return DbUtil.executeQuery(ctx, sql, params);1.2.3简单处理执行StringBuffer sql = new StringBuffer(200);sql.append(" /*dialect*/ update CT_HT_ServiceExpertLib t ");sql.append(" set t.cfpositiondepnumber =(select a.fnumber from t_org_admin a where a.fid = t.cfpositiondeptid) ");sql.append(" where t.cfexpertid='").append(editData.getExpert().getId().toString()).append("' ");sql.append(" and t.cfpositiondeptid is not null ");DbUtil.execute(ctx,sql);1.2.4批处理参数传递执行StringBuffer sb = new StringBuffer();sb.append(" insert into t_table_xx values(?, ?) ");List paramsList = new ArrayList();Object[] params1 = new Object[2];params1[0] = "test1";params1[1] = "test2";Object[] params2 = new Object[2];params2[0] = "test1";params2[1] = "test2";paramsList.add(params2);DbUtil.executeBatch(ctx, sb.toString(), paramsList);1.2.5存储过程执行//mapDate 为存放数据的Map对像sql = "/*dialect*/call gpecnew.gangwu_procedure('"+ mapData.get("monthBegin").toString() + "','"+ mapData.get("monthEnd").toString() + "','"+ mapData.get("yearBegin").toString() + "','"+ mapData.get("monthEnd").toString() + "','"+ cuId + "')";DbUtil.execute(ctx,sql);1.3 自定义工具类 SQL 更新、执行。
金蝶EAS_BOS工作笔记要点
1. 发布元数据没看到代码,可能有以下原因:1。
发布方案路径(src,deploy,metadate)不对2. eas 5.4 更新数据中心报文件找不到错误:到项目目录下的runtime 下config 下的datasources.xml 删除版本检查代码---第二段代码3. 在eclipse中加入反编译插件,1。
jad.exe 加入到C:\WINDOWS\system322. jadclipse_3.1.0.jar 加入到E:\kingdeeEAS\eas\bos\BOSModular\platform\eclipse\plugins4. 继承ListUI的界面,必须有个id字段5. 加载onLoad方法出错,有可能是onLoad()方法,调用其他方法里面有错误代码6. Invalid column name : 1. rowSet.getString(“xxx”); xxx不是有效的列名2. 还有就是table的列名无效7. 应用服务配置不正确:可能是:1.启动的服务器与运行的项目方案不一致2.数据库服务没有启动3.数据中心没有设置正确8. BOS 中实体Entity 的ID 是通过oracle的Functions 功能实现ID自动变化,通过entity_pkmapping.properties 这个找到每个实体的对应BOSTYPE的值。
9. 使用BOS界面,弹出‘客户端配置错误,找不到第三方类’,可能是:1.客户端代码有错误;2.类不存在10. 在单据里,得到各分录的记录:1.通过界面得到:ProposalDefinedInfo pdInfo ; //单据InfopdInfo.ProposalDefinedEntry1Collection();//返回ProposalDefinedEntry1Collection集合pdInfo.ProposalDefinedEntry2Collection();//返回ProposalDefinedEntry2Collection集合2.通过实体关系得到:this.kdtEntry1 //得到kdtEntry1 这个表格的对象this.kdtEntry2 //得到kdtEntry2 这个表格的对象this.kdtEntry3 //得到kdtEntry3 这个表格的对象11. 你想引用某个界面上所有功能:1. 可以通过继承这个界面2. 可以通过复制这个界面,再反编译实现类12. 如果你得到一个实体的Info对象,再取到实体各字段的值1. Info.getString(“这里写字段的名称”);2. Info.get()方法——得到各属性的值13.发布BIM 或者是 BOS下的文件之前,最好是先校验下,如果校验不通过,那么发布肯定过不了。
EASBOS关于QUERY设置参数的方法
EASBOS关于QUERY设置参数的方法Elasticsearch Aggregations 是 Elasticsearch 的一个重要功能,用于计算和统计数据。
其中,一个关键的概念就是查询设置参数,通过设置参数可以影响聚合计算的结果和行为。
查询设置参数可以以多种方式进行配置,下面将详细介绍几种常用的配置方法。
1. Bucket Aggregations 参数设置方法:Bucket aggregations 是一种用于对文档进行分组的聚合方式,常用的几种参数设置方法如下:- size 参数:用于控制每个分组(bucket)的文档数量。
默认情况下,每个分组都包含所有符合条件的文档。
但是,当文档数量非常大时,可以通过设置 size 参数来限制每个分组的文档数量,以提高查询性能。
- shard_size 参数:用于控制每个分片上参与分组计算的文档数量。
默认情况下,每个分片上都会计算所有符合条件的文档,然后再进行分组。
但是,当文档数量非常大时,可以通过设置 shard_size 参数来限制每个分片上参与计算的文档数量,以提高查询性能。
- min_doc_count 参数:用于控制每个分组的最小文档数量。
默认情况下,只有那些至少包含一个文档的分组才会被返回。
可以通过设置min_doc_count 参数来改变这个行为,以包含那些符合条件但文档数量不足的分组。
2. Metric Aggregations 参数设置方法:Metric aggregations 是一种用于计算度量指标(例如平均值、总和、最大值、最小值等)的聚合方式,常用的几种参数设置方法如下:- field 参数:用于指定要计算的字段。
默认情况下,会计算所有符合条件的文档的指定字段。
可以通过设置 field 参数来指定要计算的字段。
- missing 参数:用于指定一个替代值,用于替代缺失字段的文档。
默认情况下,缺失字段的文档会被忽略计算。
可以通过设置 missing 参数来指定一个替代值,用于计算缺失字段的文档。
EAS+BOS开发之界面常用代码
EAS BOS开发之界面常用代码1.1 初始化用户自己定义的查询过滤框(系统默认为每个定义的列表生成了通用过滤框,如果采用系统通用过滤框则不需要实现下面的方法)dialog可在bos中继承CustomerQueryPanel UI新建用户自定义的过滤框在Bos中发布该元数据后,可以实例化该类并引用在生成的dialog类中继承方法getFilterInfo(),并实现用户想要的过滤条件,应用框架会在取数时调用dialog类自动获取过滤条件在ListUI类中重载方法initCommonQueryDialogprotected CommonQueryDialog initCommonQueryDialog(){dialog = super.initCommonQueryDialog();try{dialog.addUserPanel(getUsierPanel());dialog.setShowFilter(true);dialog.setShowSorter(true);dialog.setHeight(380);dialog.setWidth(500);dialog.setTitle(‘客户自定义过滤框’);}catch (Exception e){handUIException(e);}return dialog;}protected CustomerQueryPanel getUserPanel() throws Exception{if (erPanel == null)erPanel = new PurOrderQueryUI();userPanel.onLoad();return erPanel;}如上,可以实现通过自定义的过滤框实现对列表数据的过滤1.2 设置列表界面的默认过滤条件,可用来过滤列表数据,也可以直接设置mainQuery的值实现过滤protected EntityViewInfo getInitDefaultSolution(){EntityViewInfo ev = new EntityViewInfo();OtherBillQueryUI queryUI = null;try{queryUI = new PurOrderQueryUI();queryUI.onLoad();} catch (Exception e){handUIException(e);}ev.setFilter(queryUI.getFilterInfo());return ev;}1.3)设置是否在调入列表界面之前先出过滤框protected boolean initDefaultFilter(){return true;}1.4)客户端对审核的操作应用框架预定义了一个审核操作actionAuditingpublic void actionAuditing_actionPerformed(ActionEvent e) throws Exception {//检查单据状态if (!checkStatus(tblMain, BillStatusEnum.SUBMITED)){MsgBox.showInfo(this, Day4Resource.getStrResource("isNotSubmitStatus"));// 状态不正确,终止处理SysUtil.abort();}IPurOrder purorder = (IPurOrder) getBizInterface();String[] billIdlist = getSelectedListId();//常用的弹出对话框方法int i = MsgBox.showConfirm2(this, "sureAudit");if (i == MsgBox.OK){//审核操作purOrder.audit(new ObjectStringPK(bill));//完成其他业务逻控制// 刷新列表界面actionRefresh_actionPerformed(null);}}1.5)关联生成public void actionCreateTo_actionPerformed(ActionEvent e) throws Exception { checkSelected();// 未审核单据不能关联生成if (!checkStatus(tblMain, BillStatusEnum.AUDITED)) {MsgBox.showInfo(this, "billIsUnAudited");SysUtil.abort();}//有系统调用配置好的‘botp’规则super.actionCreateTo_actionPerformed(e);}1.6)动态调用UI界面,并在UI之间传递变量private void makePurOrderUI(PurOrderInfo srcBillInfo)throws EASBizException, UIException,BOSException, Exception {String destBillEditUIClassName = “com.kingdee….PurOrderEditUI”; Map map = new UIContext(this);map.put("srcBillID", srcBillInfo.getId().toString());map.put(UIContext.OWNER, this);map.put("srcBillBOSTypeString", destBillInfo.getBOSType()); IUIWindow uiWindow = null ;// UIFactoryName.MODEL 为弹出模式uiWindow = UIFactory.createUIFactory(UIFactoryName.MODEL). create(destBillEditUIClassName, map, null,OprtState.ADDNEW);//可对创建的ui进行操作//((CoreBillEditUI).uiWindow.getUIObject()).//setMakeRelations(btpResult.getBOTRelationCollection());//开始展现UIuiWindow.show();}1.7)关于编码规则// 是否存在编码规则protected boolean isCodeRuleEnable(IObjectValue objValue) throws EASBizException, BOSException {String companyId = OrgInnerUtils.getCurCompany(); ICodingRuleManager codeRuleMgr = null;codeRuleMgr = CodingRuleManagerFactory.getRemoteInstance(); return codeRuleMgr.isExist(objValue, companyId);}// 得到自动编码protected String getAutoCode(IObjectValue objValue)throws EASBizException, BOSException {String companyId = OrgInnerUtils.getCurCompany(); ICodingRuleManager codeRuleMgr = null;codeRuleMgr = CodingRuleManagerFactory.getRemoteInstance(); if (codeRuleMgr.isUseIntermitNumber(objValue, companyId)) {return codeRuleMgr.readNumber(objValue, companyId);} else {return codeRuleMgr.getNumber(objValue, companyId);}}1.8)如何得到当前选中行的id// 得到当前选中行的idpublic String[] getSelectedListId() {checkSelected();// SelectManager 是kdtable中行管理类ArrayList blocks = tblMain.getSelectManager().getBlocks(); ArrayList idList = new ArrayList();Iterator iter = blocks.iterator();while (iter.hasNext()) {KDTSelectBlock block = (KDTSelectBlock) iter.next();int top = block.getTop();int bottom = block.getBottom();for (int rowIndex = top; rowIndex <= bottom; rowIndex++) {ICell cell = tblMain.getRow(rowIndex).getCell(getKeyFieldName());if (!idList.contains(cell.getValue())) {idList.add(cell.getValue());}}}String[] listId = null;if (idList != null && idList.size() > 0) {Iterator iterat = idList.iterator();listId = new String[idList.size()];int index = 0;while (iterat.hasNext()) {listId[index] = (String) iterat.next();index++;}}return listId;}1.9)关于数字精度的设置private void changeShowData(int fistRow, int lastRow) throws EASBizException, BOSException{for (int i = fistRow; i <= lastRow; i++){IRow row = tblMain.getRow(i);// 根据币别设置精度ICell cell = row.getCell(“columnName”);//假定精度为2int precision = 2;if (cell != null && cell.getValue() != null) {try {precision = Integer.parseInt(cell.getValue().toString());} catch (Exception e) {precision = 2;}}// 当该行的币别精度不能于原币精度时才更改精度if (precision != basePrecision) {for (int j = 0; j <rowcount; j++) {tblMain.getColumn("billDate").getStyleAttributes().setNumberFormat( "%{yyyy-MM-dd}t");tblMain.getColumn("debitFor").getStyleAttributes().setNumberFormat( "%r{#,##0.00}f");tblMain.getColumn("debitFor").getStyleAttributes().setHorizontalAlign(HorizontalAlignment.RIGHT);tblMain.getColumn("endBalanceFor").getStyleAttributes().setNumberFormat("%r{#,##0.00}f");tblMain.getColumn("endBalanceFor").getStyleAttributes().setHorizontalAlign(HorizontalAlignment.RIGHT);}}}}1.10)返回当前列表的主键protected String getKeyFieldName() {return "id";}1.11)返回列表界面对应的编辑界面名称protected String getEditUIName() {return client.PurOrderEditUI.class.getName();}1.12)返回远程调用接口protected com.kingdee.eas.framework.ICoreBase getBizInterface() throws Exception {return PurOrderFactory.getRemoteInstance();}2.1 单据新增代码如:新增一行付款单//构造一条付款单信息(构造值对象)PaymentBillInfo payInfo = new PaymentBillInfo();payInfo.setNumber(“1001”);//关联用户UserInfo userInfo = new UserInfo();userInfo.setId(BOSUuid.read("867d5df6-00f8-1000-e000-0009c0a81089sysu")); //通过BOSUuid建立实体对象userInfo.setName(“John”);userInfo.setNumber(“2000”);BigDecimal ex = new BigDecimal("343434.445");//建立属性BigDecimal ex2 = new BigDecimal(12345678901234567.8);//错误payInfo.setExchangeRate(ex);payInfo.setCreator(userInfo);payInfo.setAuditDate(new Date(System.currentTimeMillis()));//时间属性Timestamp createdate = new Timestamp(System.currentTimeMillis()); payInfo.setCreateDate(createdate);payInfo.setBizState(BillBizState.create);//枚据属性payInfo.setSave(true);//Boolean 属性PaymentBillItemInfo itemInfo =new PaymentBillItemInfo();//建立分录itemInfo.setLineNo(34);itemInfo.setAmounts(ex2);payInfo.getEntries().add(itemInfo);//添加分录payInfo.getEntries().add(new ErrandTaskItemInfo());//添加分录调用新增方法进行保存IPaymentBill iPayBill = PaymentBillFactory.getRemoteInstance();//获取实体IObjectPK pk = iPayBill.addnew(payInfo);//保存值对象,返回逻辑键,可以通过逻辑键获取值对象(如下)2.2 单据修改代码修改一条付款单信息IPaymentBill iPayBill = PaymentBillFactory.getRemoteInstance();String id="8b35b903-00f8-1000-e000-0008c0a81089errt";ObjectUuidPK pk = new ObjectUuidPK(BOSUuid.read(id));//建立逻辑键PaymentBillInfo payInfo = iPayBill.getValue(pk);//获取值对象;System.out.println("this:"+ payInfo.getExchangeRate());//获取属性payInfo.setExchangeRate(ex);//修改属性属性iPayBill.update(pk, payInfo);//更新数据2.3 单据删除代码iPayBill.remove(pk);//通过逻辑键删除单据内容获取集合2.4 获取集合CurrencyInfo cur = new CurrencyInfo();ICurrency c = CurrencyFactory.getRemoteInstance();//建立实体对象EntityViewInfo evi = new EntityViewInfo();//建立视图信息FilterInfo i = new FilterInfo();//建立过滤条件i.getFilterItems().add(new FilterItemInfo("number", "ddff",CompareType.EQUELS));i.getFilterItems().add(new FilterItemInfo("id", "ddff", CompareType.EQUELS)); i. setMaskString(" (#0 and #1)");evi.setFilter(i);//添加过滤条件evi.getSelector().add(new SelectorItemInfo("id"));//添加获取属性evi.getSelector().add(new SelectorItemInfo("*"));evi.getSelector().add(new SelectorItemInfo("company.id"));evi.getSelector().add(new SelectorItemInfo(""));//三种获取集合方法1.获取所有数据:CurrencyCollection co = c. getCurrencyCollection ();//获取集合2.获取满足上述条件的所有数据CurrencyCollection co = c.getCurrencyCollection(evi);//获取集合3.获取满足oql所写的条件的所有数据CurrencyCollection co = c. getCurrencyCollection (evi);//获取集合2.5 获取值对象CurrencyInfo cur = new CurrencyInfo();ICurrency c = CurrencyFactory.getRemoteInstance();//建立实体对象String id="8b35b903-00f8-1000-e000-0008c0a81089errt"; ObjectUuidPK pk = new ObjectUuidPK(BOSUuid.read(id));//建立逻辑键c.getValue(pk); 或: c.getCurrencyInfo(pk);2.6 界面之间传递参数1.收集父界面要传递给子界面的参数集HashMap map = new HashMap(); map.put("Owner", this); //必须。
使用EAS BOS过程中常见问题
使用E A S B O S过程中常见问题BOS工具常见问题集一、功能点使用问题解答 (3)二、环境使用类问题解答 (4)三、事件类问题解答 (11)四、发布类问题解答 (12)五、部署类问题解答 (18)六、集成模块----单据转换问题 (20)七、集成模块----权限问题 (21)八、集成模块----工作流问题 (22)九、工作流使用问题解答 (24)I、工作流快速入门部分 (24)II、工作流常见问题解答 (42)III、现场常见流程配置 (42)IV、现场常见问题解决方案 (52)十、集成模块----预警平台问题 (82)十一、集成模块----报表问题 (83)十二、集成模块----组织架构 (84)十三、代码应用问题 (87)十四、升级参考步骤 (92)十五、版本遗留缺陷 (97)一、功能点使用问题解答1、业务建模工具所定义的单据是怎么调整顺序的?在业务建模工具视图选中该单据,菜单【业务单元】→【录入顺序】用来调整编辑界面的输入顺序,也可以调整分录字段的显示顺序;菜单【业务单元】→【查询顺序】用来调整序时簿界面的显示顺序。
2、目前字段修改能修改什么属性?业务建模工具里不能修改系统定义字段(可以切换到studio视图修改),只能修改自定义字段;如果想要修改系统定义字段的显示标题,可通过属性里的“标签文字”进行修改;在自定义字段未保存前,该字段所对应的所有属性都可以修改;在自定义字段保存后,该字段只能修改字段标题,出现需要修改字段除了别名以外的属性的问题,比较快速的变通处理方法是删掉此字段再重建。
3、BIM中建的枚举只有整型吗?可不可以定义其他类型的枚举?目前都默认为String类型处理4、在运行时,EditUI界面中点击复制并新增时,单据编号(已配置编码规则)同时也会复制过去,而不会产生新的单据编号,如何解决?请重载setFieldsNull()方法,然后把你不想复制的字段set一个null值在里面就可以了5、在我们开发单据中,每个单据都自定义了一个审核的字段(并没有使用框架的审核功能),每张单都需要用户手工审核操作的。
EAS_BOS开发平台介绍
P25
4.模块内菜单
4.1.业务建模工具 4.2.设计开发工具 4.3.JAVA代码 4.4.调试工具
4.1.3.工具|部署
版权所有 ©1993-2006 金蝶软件(中国)有限公司
P26
4.模块内菜单
4.1.业务建模工具 4.2.设计开发工具 4.3.JAVA代码 4.4.调试工具
4.1.4.工具|更新解决方案
5.1.3.界面处理
5.1.3.1.只使用图形编辑
(其他功能不建议使用, 其他功能全在设计开发实 现) 5.1.3.2.窗体规则:布局 的使用
版权所有 ©1993-2006 金蝶软件(中国)有限公司
P38
5.界面布局
5.1.业务建模工具 5.2.设计开发工具 5.3.JAVA代码 5.4.调试工具
版权所有 ©1993-2006 金蝶软件(中国)有限公司
P13
2.解决方案
2.1.名词解释 2.2.导入解决方案 2.3.删除解决方案 2.4.打开解决方案 2.5.设置解决方案
从其他服务器上拷贝过来 工作空间后,需要使用打 开解决方案方式。
版权所有 ©1993-2006 金蝶软件(中国)有限公司
在不同步时,需要更新方
案
版权所有 ©1993-2006 金蝶软件(中国)有限公司
P27
4.模块内菜单
4.1.业务建模工具 4.2.设计开发工具 4.3.JAVA代码 4.4.调试工具
4.1.5.运行|启动服务器
只要设置了方案,就可以
使用启动服务器作为设置 ,不需要启动EAS服务器 。
版权所有 ©1993-2006 金蝶软件(中国)有限公司
解决方案 常用菜单 模块内菜单 界面布局 课程小结
delphi控件属性和事件
delphi控件属性和事件作者:°ι 、曲终来源:博客园发布时间:2010-09-17 19:31 阅读:329 次原文链接[收藏]常用【属性】Action:该属性是与组件关联的行为,允许应用程序集中响应用户命令Anchors:与组件连接的窗体的位置点Align:确定组件的对齐方式AutoSize:确定组件是否自动调整其大小BiDiMode:(所有组件)为从右向左写的语言提供支持BoundsRect:定义组件边框矩形(只适用于运行时)Borderwidth:(窗口化组件)边框的宽度BorberStyle:设置组件边框形状(样式)Brush:可确定组件的风格和颜色Caption:使用该属性可指定标注组件的文本字符串ClassName:该方法可得到对象的类名,我一直用它来得到数据库中字段的类型,在其它的方面还没有用到ClientHeight:可读取和设置组件客户区域的像素高度ClientRect:可返回组件客户区的大小,为一个矩形ClientWidth:可读取和设置组件客户区域的像素宽度Color:组件的背景颜色Components:列出了该组件中所有的子组件,并可以对它们进行访问ComponentIndex:(所有组件)当前组件在其主组件所有的从组件列表中的位置(只适用于运行时)ComponentCount:显示该组件拥有的子组件数 (只适用于运行时)Constraints:(所有组件)在改变大小操作期间限定组件)的最大与最小尺寸ConstrolCount:(所有组件)当前组件的子组件数目(只适用于运行时) Controls:(所有组件)当前组件的子组件数组(只适用于运行时)Create:构造一个对象实例,分配内存,并不初始化Ctrl3D:设置组件边框是否为3D模式,若BORDERSTYLE设置为BSNONE则此属性无效Cursor:指定指针的图像(鼠标经过组件时光标所显示的形状)Destroy:销毁一个对象实例DragCursor:拖动时,鼠标的形状DragKing:可获取或设置组件是拖动还是停靠操作,分别对应Drag和Dock DragMode:设置组件拖动模式。
DELPHI控件属性、方法、事件及常用函数
DELPHI控件属性、方法、事件及常用函数DELPHI控件属性、方法、事件及常用函数一.TmainMemu控件该控件是一个标准的菜单控件,运用它为窗口提供菜单。
该对象的层次结构为:TObject—TPersistent--TCompoment—TMenu。
属性1-AutoMetge:Boolean功能:用于确定非MID程序中非主Form上的菜单要不要和主Form 的菜单合并。
主Form菜单AutoMerge的特性总是False。
此外,还要设置菜单项的GroupIndex属性。
2-BiDiMode:TBiDiMode功能:控制菜单的布置模式,是从左至右,还是从右至左。
3-Handle:HMENU功能:菜单窗口句柄。
4-Images:TImagList功能:出现在菜单项左边的图像列表。
菜单项通过设置它们的ImageIndex属性,以确定图像列表中的哪—个图像出现在菜单项的左边。
5-Items:TMenuItem功能:菜单项,描述了菜单的元素。
6-OwnerDraw:Boolean功能:确定菜单项是否可以由应用程序来画。
7-ParentBiDiMode:Boolean功能:确定BiDiMode属性是否从父辈继承而来,菜单的父辈一般为Form。
方法1-GetOle2AcceleratorTabel:(var AccelTable:HAccel;var AccelCount:Integer;Group:array of Integer)功能:返回主菜单的加速键表,其参数如下AccelTabel:设置加速键表的句柄。
AccelCount:设置加速键的总数。
Groups:即GroupIndex的值。
2-Merge:功能:组合Form上的一个主菜单与另一个非MDI应用程序的主菜单。
调用Merge方法将另一个主菜单组合进该菜单。
参数Menu指定了要合并的菜单3-PopulateOle2Menu:(ShareMenu:HMenu; Groups:array of Integer; var Widths:array of Longint)功能:组装OLE菜单。
金蝶EAS-BOS概述
快速搭建企业信息系统应用模型, 快速搭建企业信息系统应用模型,基 于模型驱动架构(MDA) 于模型驱动架构(MDA)的开发模式和 相关的工具, 相关的工具,代码编写量大大减少
扩展性强
企业业务流程变更和调整涉及到 复杂的业务逻辑才需要进行代码编 其他直接通过BOS BOS平台提供的 写 , 其他直接通过 BOS 平台提供的 工具进行调整
系统集成性高
基于J2EE平台架构, 基于J2EE平台架构,支持多种数据 J2EE平台架构 库与操作系统,提供完善的接口组件, 库与操作系统,提供完善的接口组件, 公开除源代码外的所有资料, 公开除源代码外的所有资料,可以快 速同其他应用系统进行集成或实现接 口互连
EAS BOS平台 平台
系统维护性高
面向企业的应用支持, 面向企业的应用支持,大部分维 护工作可以由通过培训的企业用户 自己完成, 自己完成,涉及到代码部分才需要 专业人员介入,因此, 专业人员介入,因此,维护工作量 和代价都相对较小
较高的开发效率和较低的变革成本
21
P21
平台开发为客户带来的价值
差异化需求,80%部分非底层开发,高效率 高性价比,TCO最低 系统平滑升级,风险很小 尊重客户现有知识及管理体系 承认客户的行业经验及优势 继承客户优秀管理成果,先固化后优化 培养客户自己的实施队伍,提升相关人员自身的价 值 互相合作,互相促进
定位
使用先进、开放、可伸缩的技术体系,面向成长型企 业的业务需求,协同合作伙伴拓展管理业务,发展成 为中国管理软件技术平台的标准
3
P3
EAS-BOS的构成 EAS-BOS的构成
员 工 商 应 户 伴 供 客 伙 合 作
业 务 基 础 软 件 平 台
控件的属性事件及方法
控件的属性事件及方法控件是在应用程序中用于显示和接收用户输入的元素。
每个控件都有其自己的属性、事件和方法,可以通过这些属性、事件和方法来对控件进行操作和处理。
本文将详细介绍控件的属性、事件和方法。
1.属性:属性是控件的特征和状态,可以通过设置属性来改变控件的外观和行为。
常见的控件属性包括:- Visible:控件是否可见。
当Visible属性设置为True时,控件将在应用程序界面中显示;当设置为False时,控件将隐藏。
- Caption:控件的标题或文本。
可以通过设置Caption属性来改变控件上显示的文字内容。
- Enabled:控件是否可用。
当Enabled属性设置为True时,表示控件可以接受用户的输入和操作;当设置为False时,控件将不响应用户的操作。
- Width和Height:控件的宽度和高度。
可以通过设置Width和Height属性来改变控件的尺寸大小。
- Name:控件的标识符。
通过设置Name属性可以为控件分配一个唯一的名称,以便在代码中引用该控件。
2.事件:事件是在特定的操作或条件发生时自动触发的动作。
可以通过响应事件来处理用户的操作和改变控件的状态。
常见的控件事件包括:- Click:鼠标单击事件。
当用户点击控件时,会触发Click事件,可以在该事件中编写相应的处理代码。
- KeyDown和KeyUp:键盘按下和释放事件。
当用户按下或释放键盘上的按键时,会触发相应的KeyDown和KeyUp事件,可以通过处理这些事件来响应键盘输入。
- MouseEnter和MouseLeave:鼠标进入和离开事件。
当用户将鼠标移动到控件上时,会触发MouseEnter事件;当鼠标移出控件时,会触发MouseLeave事件,可以在这些事件中编写相应的处理代码。
3.方法:方法是控件可以执行的操作。
通过调用方法,可以实现对控件的一些特定操作。
常见的控件方法包括:- Show和Hide:显示和隐藏控件。
控件的常用属性事件和方法
Private Sub Command1_Click()
Text1.FontName = "幼圆"
'FontName属性是字符型,决定了控件上正文的字体。
End Sub
Private Sub Command2_Click()
Text1.FontSize = 18
'FontSize决定了控件上正文字体的大小。
True:程序运行时控件可见。
False:程序运行时控件隐藏,用户看不到,但控件本身存在。
Private Sub Command1_Click()
Command1.Visible = False
End Sub
Private Sub Command2_Click()
Command1.Visible = True
End Sub
BackColor
正文以外的显示区域的颜色。
Private Sub Command8_Click()
Text1.BackColor = RGB(0, 0, 0)
End Sub
BorderStyle:
0- None:控件周边没有边框。
1- Fixed Single:控件带有单边框。
2.常用的事件:
例:
Private Sub Command1_Click()
Command1.Enabled = False
End Sub
Private Sub Command2_Click()
Command1.Enabled = True
End Sub
Visible:设置对象的可见性
该属性决定控件是否可见,它也是一个逻辑值。
2.事件:
EAS BOS之ComboTreeDetailListUI左树右表必须实现的方法事件
ComboTreeDetailListUI左树右表必须实现的方法事件//增加下拉列表选择改变事件处理(会重新生成树)protected void cbxMain_itemStateChanged(java.awt.event.ItemEvent e) throws Exception{super.cbxMain_itemStateChanged(e);// 本超类事件重新生成树if (treeMain.getRowCount() > 1)treeMain.setSelectionRow(1);// 有数据选择第一个节点elsetreeMain.setSelectionRow(0);// 无数据选择根节点}//给左树传查询过滤条件(如果需要传参数给左树,需要实现ILNTreeNodeCtrl接口)protected ILNTreeNodeCtrl getLNTreeNodeCtrl() throws Exception{if (cbxMain.getItemCount() > 0) tateChanged(e);//本超类函数重新生成树if (treeMain.getRowCount() > 1)treeMain.setSe{return new LNCsAccountTypeTreeNodeCtrl(getTreeInterface(), (CsAccountTableInfo) this.cbxMain.getSelectedItem(), "acccountTable");} else{return new LNCsAccountTypeTreeNodeCtrl(getTreeInterface(), new CsAccountTableInfo(), "acccountTable");}}class LNCsAccountTypeTreeNodeCtrl implements ILNTreeNodeCtrl{private ICsAccountType iAccountType = null;private CsAccountTableInfo accoutTableInfo = null;private String filterField = null;// 查询过滤字段名public LNCsAccountTypeTreeNodeCtrl(ITreeBase treeCtrl, IObjectValue accoutTableInfo, String filterField){this.iAccountType = (ICsAccountType) treeCtrl;this.accoutTableInfo = (CsAccountTableInfo) accoutTableInfo;this.filterField = filterField;}// 获取指定结点的指定级次的子孙结点,若parent==null,则获取从1到指定级次的结点public AbstractObjectCollection getChildren(TreeBaseInfo parentNodeInfo, int level) throws Exception{String tableID = null;if (this.accoutTableInfo != null && this.accoutTableInfo.getId() != null){tableID = this.accoutTableInfo.getId().toString();}EntityViewInfo viewInfo = new EntityViewInfo();viewInfo.setFilter(new FilterInfo());if (parentNodeInfo != null){viewInfo.getFilter().getFilterItems().add(new FilterItemInfo("longNumber", parentNodeInfo.getLongNumber() + "!%", CompareType.LIKE));viewInfo.getFilter().getFilterItems().add(new FilterItemInfo("level", new Integer(parentNodeInfo.getLevel()), CompareType.GREATER));viewInfo.getFilter().getFilterItems().add(new FilterItemInfo("level", new Integer(parentNodeInfo.getLevel() + level), CompareType.LESS_EQUALS));viewInfo.getFilter().getFilterItems().add(new FilterItemInfo(filterField, tableID, CompareType.EQUALS));} else{viewInfo.getFilter().getFilterItems().add(new FilterItemInfo("level", new Integer(level), CompareType.LESS_EQUALS));viewInfo.getFilter().getFilterItems().add(new FilterItemInfo(filterField, tableID, CompareType.EQUALS));}viewInfo.getSelector().add(new SelectorItemInfo("*"));viewInfo.getSorter().add(new SorterItemInfo("longNumber"));AbstractObjectCollection result = iAccountType.getTreeBaseCollection(viewInfo);return result;}// 指定过滤条件。
EAS_BOS技术文档
Q1.在BIM里删除某字段后,保存,发布。
所有元数据和代码都已不存在与已删除字段相关的信息,但运行时还报与此字段的相关的错误。
A1.如果元数据和代码都没错,即metadata和src目录下的东西都没错,此时可以找发布元数据的目录(metas),错误的原因可能是metas和metadata的文件不同步,解决办法是到BOSStudio里重新发布元数据。
Q2.机器换了IP后,发布业务单元时出错数据库同步错误,测试账套连接时出现以下画面:A2.在解决方案的目录下有几个文件跟机器IP有关(\datacenters.xml,\bimproject.xml,\runtime\datacenters.xml,\runtime\config\datasources.xml等),将其中的IP修改一下,重启BOS即可。
Q3.EditUI.java中Constructor(),OnLoad(),LoadFields(),StoreFields()方法的先后调用顺序。
A3.第一次打开界面时的调用顺序:Constructor()ÆOnLoad()ÆLoadFields()ÆStoreFields()。
界面打开后的每一次新增都不会再次调用OnLoad(),即只剩下LoadFields()ÆStoreFields()。
LoadFields()是将数据库的数据读入editData并写到组件上,StoreFields()是将组件上的数据写入editData,供保存submit用。
而OnLoad是负责画界面的。
Q4.打开某基础资料的ListUI时报异常:“name’s type is not correct”A4.可能是此基础资料引用另一个基础资料(标为Other),而基础资料Other是其他开发人做的,在本地尚未发布。
只要在本地发布一下即可解决。
Q5.在BOS里如何新建一个属性并保存到数据库?A5. 1.在.table里新建数据库字段2.如果是关联属性,则新建一个关系.relation3.Query建不建看你的需求4.在实体.entity里新建一属性,指定对应的数据库表字段。
使用EAS BOS过程中常见问题
BOS工具常见问题集一、功能点使用问题解答 (2)二、环境使用类问题解答 (4)三、事件类问题解答 (11)四、发布类问题解答 (12)五、部署类问题解答 (19)六、集成模块----单据转换问题 (21)七、集成模块----权限问题 (23)八、集成模块----工作流问题 (24)九、工作流使用问题解答 (26)I、工作流快速入门部分 (26)II、工作流常见问题解答 (45)III、现场常见流程配置 (46)IV、现场常见问题解决方案 (60)十、集成模块----预警平台问题 (106)十一、集成模块----报表问题 (107)十二、集成模块----组织架构 (108)十三、代码应用问题 (113)页脚内容1十四、升级参考步骤 (120)十五、版本遗留缺陷 (126)一、功能点使用问题解答1、业务建模工具所定义的单据是怎么调整顺序的?在业务建模工具视图选中该单据,菜单【业务单元】【录入顺序】用来调整编辑界面的输入顺序,也可以调整分录字段的显示顺序;页脚内容2菜单【业务单元】【查询顺序】用来调整序时簿界面的显示顺序。
2、目前字段修改能修改什么属性?业务建模工具里不能修改系统定义字段(可以切换到studio视图修改),只能修改自定义字段;如果想要修改系统定义字段的显示标题,可通过属性里的“标签文字”进行修改;在自定义字段未保存前,该字段所对应的所有属性都可以修改;在自定义字段保存后,该字段只能修改字段标题,出现需要修改字段除了别名以外的属性的问题,比较快速的变通处理方法是删掉此字段再重建。
3、BIM中建的枚举只有整型吗?可不可以定义其他类型的枚举?目前都默认为String类型处理4、在运行时,EditUI界面中点击复制并新增时,单据编号(已配置编码规则)同时也会复制过去,而不会产生新的单据编号,如何解决?请重载setFieldsNull()方法,然后把你不想复制的字段set一个null值在里面就可以了5、在我们开发单据中,每个单据都自定义了一个审核的字段(并没有使用框架的审核功能),每张页脚内容3单都需要用户手工审核操作的。
使用EAS BOS过程中常见问题
使用EAS BOS过程中常见问题BOS工具常见问题集一、功能点使用问题解答2二、环境使用类问题解答3三、事件类问题解答8四、发布类问题解答8五、部署类问题解答12六、集成模块----单据转换问题13七、集成模块----权限问题14八、集成模块----工作流问题15九、工作流使用问题解答16I、工作流快速入门部分16II、工作流常见问题解答30III、现场常见流程配置31IV、现场常见问题解决方案38十、集成模块----预警平台问题65十一、集成模块----报表问题65十二、集成模块----组织架构66十三、代码应用问题68十四、升级参考步骤71十五、版本遗留缺陷74一、功能点使用问题解答1、业务建模工具所定义的单据是怎么调整顺序的,在业务建模工具视图选中该单据,菜单【业务单元】,【录入顺序】用来调整编辑界面的输入顺序,也可以调整分录字段的显示顺序;菜单【业务单元】,【查询顺序】用来调整序时簿界面的显示顺序。
2、目前字段修改能修改什么属性,业务建模工具里不能修改系统定义字段(可以切换到studio视图修改),只能修改自定义字段;如果想要修改系统定义字段的显示标题,可通过属性里的“标签文字”进行修改; 在自定义字段未保存前,该字段所对应的所有属性都可以修改;在自定义字段保存后,该字段只能修改字段标题,出现需要修改字段除了别名以外的属性的问题,比较快速的变通处理方法是删掉此字段再重建。
3、,,,中建的枚举只有整型吗,可不可以定义其他类型的枚举,目前都默认为String类型处理4、在运行时,EditUI界面中点击复制并新增时,单据编号(已配置编码规则)同时也会复制过去,而不会产生新的单据编号,如何解决,请重载setFieldsNull()方法,然后把你不想复制的字段set一个null值在里面就可以了5、在我们开发单据中,每个单据都自定义了一个审核的字段(并没有使用框架的审核功能),每张单都需要用户手工审核操作的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
种类名称说明CombBox addItem将枚举的值加入下拉列表选项CombBox removeAllItems删除下拉列表的所有选项CombBox setModel 使用值对象集合给ComboBox控件赋值DefaultComboBoxModel model = new DefaultComboBoxModel(); ICsAccountTable iAccountTable = CsAccountTableFactory.getRemoteInstance(); CsAccountTableCollection tableInfos = iAccountTable.getCsAccountTableCollection();CombBox setSelectedItem动态设置下拉列表选择项的值ComboTreeDetailListUI buildTreeFilter 构造查询子节点(右表)数据的过滤条件,默认实现为在EntityViewInfo中添加一个getQueryFieldName()=treeNodeInfo的过滤条件,即查询对象的某个属性关联到Tree节点所代表的对象。
如果你需要构造的查询条件不是这种形式,则需要重载本方法自行设定过滤条件。
ComboTreeDetailListUI discardQuery刷新Query数据ComboTreeDetailListUI getDefaultFilterForTree getDefaultFilterForTree()方法,是默认的cu过滤条件ComboTreeDetailListUI getGroupEditUIModal产生类别编辑UI的方式ComboTreeDetailListUI getGroupEditUIName指示Tree关联的类别编辑UI对象名,如果界面需要实现类别编辑,则需要重载该方法。
ComboTreeDetailListUIgetLastSelectedPathComponent返回树结点的值ComboTreeDetailListUI getLNTreeNodeCtrl若多棵树对应同一个实体,但其中有一个属性区分不同的树,例如科目表和科目类型,则需要重载该方法ComboTreeDetailListUI getQueryFieldName 点击树上节点时形成过滤条件时的【字段】(右边列表界面调用的Query根据该字段进行过滤),例如地址簿序时簿界面右边的地址列表要依据左边Tree上选中的地址分类而刷新,此处则返回Address.class即可。
ComboTreeDetailListUI getRootName定义一个虚拟根节点的显示名称,默认返回null,即不需要虚拟根节点ComboTreeDetailListUI getSelectedTreeKeyValue子类必须重载实现,否则不能实现定位与移动。
ComboTreeDetailListUI getSelectedTreeNode返回选中的树结点ComboTreeDetailListUI getTreeExpandLevel树形控件的默认展开级次ComboTreeDetailListUI getTreeInitialLevel树形控件的初始化级次ComboTreeDetailListUI getTreeInterface获取层次数据实体的业务接口,以便调用业务方法。
要求实体必须从TreeBase及其子类派生。
ComboTreeDetailListUI isIsIncludeChild是否包含子节点ComboTreeDetailListUI isMoveTree是否要确认进行节点移动ComboTreeDetailListUI prepareGroupUIContext 构造传递给GroupEditUI的UIContext。
超类默认对于新增类别,传入了当前选中的节点对象(默认为是新增节点的父节点,通过UIContext.PARENTNODE传递)。
ComboTreeDetailListUI refreshTreeNode重新取数,刷新节点ComboTreeDetailListUI setSelectionRow设置选中根结点CommRptBaseUI getQueryDialogSize设置条件界面长度和宽度CommRptBaseUI setShowDialogOnLoad设置条件窗口是否在窗口打开以前打开CompareType EQUALS查询过滤条件比较类型CoreBase addNew继承基类,添加时设置creator,createTime, lastUpdateUser, lastUpdateTime,等固定属性值。
CoreBase cancel作废(逻辑删除),并保存CoreBase cancelCancel取消作废状态,并保存CoreBase canUpdate检查业务数据能否更新,逻辑条件是否满足更新要求CoreBase checkStatusValid检查业务数据是否是有效CoreBase delete删除数据CoreBase delete(FilterInfo filter)根据过滤条件删除相关数据CoreBase getCollection获取数据集合CoreBase getValue获取数据CoreBase getValue(IObjectPK pk,SelectorItemCollectionselector)getValue(IObjectPK pk, SelectorItemCollection selector)获取数据对象CoreBase isReferenced检查业务数据是否被引用,删除操作会调用此函数CoreBase save暂存数据CoreBase Submit设置业务数据生效,并保存CoreBase Update继承基类,更新时设置lastUpdateUser, lastUpdateTime, company等固定属性值。
CoreBillBase checkHandlerBlank检查经办人是否为空CoreBillBase checkHandleTimeBlank检查经办时间是否为空CoreBillBase CheckLineExist检查是否至少有一条分录CoreBillBase CheckNumberBlank检查单据编号是否为空CoreBillBase CheckNumberDup检查单据编号是否重复CoreBillBase checkOut结清(关闭)业务数据CoreBillBase CheckStatusFreeze检查业务数据是否被冻结CoreBillBase deleteVoucher删除凭证:若没有生成过凭证,则返回false。
CoreBillBase Freeze冻结业务数据CoreBillBase generateVoucher生成凭证CoreBillBase getBizOU CoreBillBaseInfo的访问接口。
CoreBillBase getOwnedSys获取所属系统。
CoreBillBase passAudit审核通过CoreBillBase saveRelations暂存关联关系CoreBillBase SubmitRelations保存并递交关联关系CoreBillBase Unfreeze解冻业务数据CoreBillBase UnpassAudit设置为未审核状态DataBase checkNameBlank名称是否为空DataBase checkNameDup名称是否重复。
DataBase checkNumberBlank编码是否为空DataBase checkNumberDup编码是否重复DbUtil execute服务端执行一段带参数的sqlEASResource getString获取某个资源文件的键值EditUI_delete删除业务数据,重点关注:1、如何删除分录;EditUI_fetchInitData获取初始化数据,重点关注:1、如何从Context中获取登录信息;EditUI_submit 提交业务数据,重点关注:1、如何使用_exists等方法;2、如何存取分录;EditUI abort关闭当前UIEditUI afterActionPerformed在每个Action动作之后调用EditUI afterAddLine通知方法,允许在增加单据行后做相关处理EditUI afterOnLoad在OnLoad后EditUI afterRemoveLine通知方法,允许在删除单据行后做相关处理EditUI afterSelectLine通知方法,允许在选中单据行后做相关处理EditUI applyDefaultValue应用缺省值到数据对象EditUI beforeActionPerformed在每个Action动作之前调用EditUI beforeOnLoad在OnLoad前EditUI beforeStoreFields 从控件将保存到数据数据对象前进行控件值校验,在StoreFields()前执行使子类可以自己进行校验控件中的值是否合法?并可以抛出自己的异常EditUI checkActionStatus对UI元素进行使能控制EditUIcheckBeforeWindowClosing在窗口关闭时,检查当前窗口是否可以关闭EditUI confirmRemove弹出确认删除对话框EditUI createNewData创建一个新业务对象,在新增时被调用。
可以在此处为业务对象的属性赋默认值。
EditUI createNewDetailData创建一个新分录对象,在新增分录时被调用。
可以在此处为分录对象的属性赋默认值。
EditUI destroyWindow在窗口关闭时,销毁当前UI的动作EditUI getBizInterface通过Factory返回业务接口,获取编辑UI对应实体的业务接口,以便调用业务方法EditUI getDetailTable返回分录列表EditUI getMainBizOrgType获取主业务组织类型EditUI getOprtState获取当前UI的操作状态EditUI getOrgPK获取当前组织PK,action参数传递==null EditUI getUIContext()UI的上下文,获取ListUI传递的参数EditUI getUILifeCycleHandler 返回ui生命周期handler,开发人员可以注册相应IUILifeCycleListener来监听UI的生命周期,并在各个不同的生命周期进行不同处理。