kingdee BOS 开发一些常用接口

来源:互联网 发布:万网域名隐藏whois 编辑:程序博客网 时间:2024/06/01 09:41

1、KDtable得到选择的行:

      int[] rows = com.kingdee.eas.util.client.KDTableUtil.getSelectedRows(tblMain);

2、KDtable中的字段加参照:

      ...

        KDBizPromptBox prptBox = (KDBizPromptBox) this.kdtEntrys.getColumn("RptItem").getEditor().getComponent();
        EntityViewInfo view = TableUtil.setFilterCondition(RptTypeEnum.Profit);
        prptBox.getQueryAgent().setEntityViewInfo(view);

      ...

       public static EntityViewInfo setFilterCondition(RptTypeEnum type) {
         EntityViewInfo view = new EntityViewInfo();
         FilterInfo filter = new FilterInfo();
         filter.getFilterItems().add(new FilterItemInfo("RptType", new Integer(type.getValue())));
         view.setFilter(filter);
         return view;
       }

3、KDtable设置单行选择模式:

       this.tblMain.getSelectManager().setSelectMode(KDTSelectManager.ROW_SELECT);

4、KSQL直接执行方言:  在SQL前加上/*dialect*/

5、Tab键光标顺序:

      setFocusTraversalPolicy(new com.kingdee.bos.ui.UIFocusTraversalPolicy(new java.awt.Component[] { txtname.....));

      在构造方法里调用即可

6、添加合计行(系统自带的):

       protected void setTableToSumField() {
         super.setTableToSumField();
         setTableToSumField(kdtable1 new String[] { "incomeSum" });
         setTableToSumField(kdtable2, new String[] { "refundCaptial", "interest" });
       }

7、为序事薄的mianQuery加过滤:

      public void onShow() throws Exception {
        FilterInfo filter = new FilterInfo();
        filter.getFilterItems().add(new FilterItemInfo("creator.name",SysContext.getSysContext().getCurrentUserInfo().getName()));
        mainQuery.setFilter(filter);
        super.onShow();
      }

8、序事薄中设置数字为0显示:

     protected IQueryExecutor getQueryExecutor(IMetaDataPK arg0, EntityViewInfo arg1) {
       IQueryExecutor ic = super.getQueryExecutor(arg0, arg1);
       ic.option().isAutoIgnoreZero=false;
       return ic;
     }