nc65 给参照设置多选

1.功能实现效果截图:



2.实现方法:账户项是是参照,账户册是中间数据,通过对账户项进行编辑后事件控制,当账户项编辑后,对账户项和账户册填充对应的主键,主键用'@'隔开。通过显示公式,将账户项的主键显示为对应的名称,儿账户册是显示公式的条件。该公式为自定义公式类型。



3.该功能实现要用表体编辑前事件

@Override
	public void handleAppEvent(CardBodyBeforeEditEvent e) {
		if (e.getKey().equals("nor_para")) {
			setCellEditable(e);
		}else if(e.getKey().equals("pk_coa")){
			BillCardPanel panel = e.getBillCardPanel();
			setMultiSelectRef(panel);
		}
			e.setReturnValue(UFBoolean.TRUE.booleanValue());
	}	
	/**
	 * 设置参照可多选
	 * @param panel
	 * 
	 */
	public void setMultiSelectRef(BillCardPanel panel){
		UIRefPane coaRefPanel = (UIRefPane) panel.getBodyItem("pk_coa").getComponent();
		//UIRefPane coaRefPanelName = (UIRefPane) panel.getBodyItem("account_item_name").getComponent();
		coaRefPanel.setMultiSelectedEnabled(true);
		//coaRefPanelName.setMultiSelectedEnabled(true);
	}

4.在相应的xml文件中配置表体编辑前事件即可

<!-- 表体编辑前事件 -->
				 <bean class="nc.ui.pubapp.uif2app.event.EventHandlerGroup">
                    <property name="event" value="nc.ui.pubapp.uif2app.event.card.CardBodyBeforeEditEvent" />
                    <property name="handler">
                        <bean class="nc.ui.frm_alm.stress_test_plan.ace.handler.BodyBeforeEditHandler" />
                    </property>
                </bean>


猜你喜欢

转载自blog.csdn.net/u014714841/article/details/80355608