金蝶EAS_BOS工作笔记 下载本文

import com.kingdee.eas.basedata.org.client.f7.PurchaseF7; import com.kingdee.eas.basedata.org.client.f7.QualityF7; import com.kingdee.eas.basedata.org.client.f7.SaleF7; import com.kingdee.eas.basedata.org.client.f7.StorageF7; import com.kingdee.eas.basedata.org.client.f7.TransportF7; 108. 列冻结

protected void freezeBillTableColumn() {

super.freezeBillTableColumn();

KDTable billListTable = getBillListTable();

int amount_col_index = billListTable.getColumn(\ KDTViewManager viewManager = billListTable.getViewManager(); viewManager.setFreezeView(-1, amount_col_index + 1); }

109.* 忽略cu隔离 protected boolean isIgnoreCUFilter() { return true; } 110. ftp://202.105.139.162 用户名:llj 密码:llj 111. /**获取附件数目*/ public static int getAttachmentCount(String boId) throws BOSException { FilterInfo filter = new FilterInfo(); EntityViewInfo viewInfo = new EntityViewInfo(); filter.getFilterItems().add(new FilterItemInfo(\ viewInfo.setFilter(filter); BoAttchAssoCollection coll = BoAttchAssoFactory.getRemoteInstance() .getBoAttchAssoCollection(viewInfo); return coll.size(); }

112. 填充分录

editData.put(\113. 获取资源信息

EASResource.getString( \114. 获取系统编码规则 (user 身份登陆去配置)

ICodingRuleManager iCodingRuleManager = CodingRuleManagerFactory .getLocalInstance(ctx);

if (iCodingRuleManager.isExist(editData, companyID)){

String autoNumber = iCodingRuleManager.getNumber(editData, companyID); // 系统编码 }

115. 建立query 关联其他实体需注意与实体的关联方式(内联,外联),可能出现lisit界面无法展现数据。 116. // 屏蔽分录右键 this.setQueryPreference(false);

117. 确认提示框:

MsgBox.showConfirm2(this, EASResource.getString(\确认删除吗?\)));

118.成本中心树形结构基础资料:

public static void initCostCenterF7(CoreUIObject coreui, KDBizPromptBox prmtOrgUnit, boolean hasCUFilter) { prmtOrgUnit .setQueryInfo(\ prmtOrgUnit.setEditFormat(\ prmtOrgUnit.setCommitFormat(\ prmtOrgUnit.setDisplayFormat(\ CostCenterF7 boxCostCenter = new CostCenterF7(coreui); prmtOrgUnit.setSelector(boxCostCenter); }

119. 树形结构加一个新表格步骤:

1. 元数据层,在UI界面的大纲视图下 2. 将一个kdtable控件拖入到tblMain表下

3. 将UI界面的缩小,再将tblMain拖出到最外层容器 4. 然后将kdtable拖入到树形容器中 ok啦! 120. 修改登录界面图标

F:\\Kingdee_Server\\eas\\server\\deploy\\fileserver.ear\\easWebClient\\lib\\client\\eas eas_resource_firstload_ico.jar

F:\\Kingdee_Server\\eas\\server\\deploy\\fileserver.ear\\easWebClient\\classloader\\patch exetools.jar

121. kDSpinner4 数字微调控件

SpinnerNumberModel startmonthLevelModel = new SpinnerNumberModel(3,3,8,1);

kDSpLevel.setModel(startmonthLevelModel); kDSpLevel.setValue(new Integer(3));

122. 客户端执行sql返回rowSet

IRowSet rs =

SQLExecutorFactory.getRemoteInstance(sql.toString()).executeSQL(); String ids[] = new String[rs.size()]; int i = 0;

while(rs.next())

ids[i++] = rs.getString(\); return ids;

123.列值显示对齐(靠左,靠右)

table.getColumn(j).getStyleAttributes().setHorizontalAlign(com.kingdee.bos.ctrl.kdf.util.style.Styles.HorizontalAlignment.RIGHT); 123. 获取当前单据状态

this.getOprtState().equalsIgnoreCase(OprtState.ADDNEW) 124. 创建id

BOSUuid bosId = BOSUuid.create(projectInfo.getBOSType()); // projectInfo实体对象

125. 获取编码规则

ICodingRuleManager iCodingRuleManager = CodingRuleManagerFactory

.getLocalInstance(ctx);

if (iCodingRuleManager.isExist(editData, companyID)) {

String autoNumber = iCodingRuleManager.getNumber(editData,

companyID);// 系统编码

}

126.

怎么样继承扩展标准产品的服务器端方法

对于二次开发,经常根据需要会对于标准产品的实现进行一些扩充,增加一些比如提交的逻辑处理,或者说在提中额外增加一些处理,这个时候就可以通过下面的方式进行扩展处理:

1、如果对于标准产品,没有新增加的方法,而又想扩展标准逻辑的功能,可以在相应的标准产品的Entity或者

中增加扩展属性 controllerBeanEx,然后这个扩展属性的值写为 用户继承标准 ControllerBean 的一个类名称可以是这样: 1)对于Entity:

用文本编辑器(最好是 XmlSpy)打开对应的entity文件,如 SaleOrder.entity,在多语言节点(“”)

具体的名称由实际的entiy名称确定. 2)对于Facade:

方法同entity的一样,打开的是Facade文件 127.查看审批意见query

com.kingdee.eas.base.multiapprove.app.MultiApproveQuery

128. 60开始,分录的删除新增等按钮已经直接暴露出来,可以直接引用,按需设置。 kdtEntrys_detailPanel.getRemoveLinesButton().setEnabled(false);

129. 配置编码规则的时候,把“不允许断号”选上后。在后台调用代码iCodingRuleManager.isUseIntermitNumber(objectBaseInfo, orgUnitID);返回是true。如果把“不允许断号”的勾去掉后,返回的是false。按字面理解,这个方法应当返回的是:规则是否使用断号。里面对这个方法的说明是检测指定编码规则,是否启用了断号支持功能”。

二次开发的原代码:

ICodingRuleManager iCodingRuleManager =

CodingRuleManagerFactory.getLocalInstance(ctx);

String orgUnitID = ContextUtil.getCurrentOrgUnit(ctx).getId().toString(); if (iCodingRuleManager.isExist(objectBaseInfo, orgUnitID)) {

if (!iCodingRuleManager.isAddView(objectBaseInfo, orgUnitID)); //是否新增显示 {

if(iCodingRuleManager.isUseIntermitNumber(objectBaseInfo, orgUnitID)); //是否允许断号

objectBaseInfo.setString(iCodingRuleManager.getNonbreakNumber(objectBaseInfo,orgUnitID)); else

objectBaseInfo.setString(iCodingRuleManager.getNumber(objectBaseInfo,orgUnitID));} }

iCodingRuleManager.getRuleStatus获取编码状态进行业务逻辑控制

130. EASBOS 单据在 审核后,如果已审核成功,则让系统调用一段SQL

增加一个脚本节点放在审核节点后并增加相应的连接弧 ,审核节点要输入到流程变量中 java.lang.StringBuffer sql = new StringBuffer(\ java.sql.Connection con =

com.kingdee.bos.framework.ejb.EJBFactory.getConnection(__bosContext); java.sql.Statement batchStatement = con.createStatement(); batchStatement.execute(sql.toString());

com.kingdee.util.db.SQLUtils.cleanup(batchStatement, con); com.kingdee.util.db.SQLUtils.cleanup(con); 131. 设置金额格式化

txtamount.setGroupingUsed(true);

txtamount.setHorizontalAlignment(4); txtamount.setRemoveingZeroInDispaly(false);

132. 行合计

protected boolean isFootVisible() {

return true; }

protected IRow appendFootRow() {

if(!isFootVisible()) return null; try {

List fieldSumList = new ArrayList(); fieldSumList.add(\); fieldSumList.add(\); fieldSumList.add(\); fieldSumList.add(\); fieldSumList.add(\);