nc 刷新时调动风车界面

这篇博客介绍了一个自定义的批量刷新操作,通过继承nc的默认刷新类并在action中获取页面ID来查询数据。为了优化性能,避免for循环查询,建议使用IN查询,并限制字段数量不超过3000。在数据处理期间,利用风车界面显示进度,数据加载完毕后关闭风车界面。代码示例展示了如何实现这一过程。
摘要由CSDN通过智能技术生成

1.总体思路 nc 刷新的方法就是继承刷新默认的class 类,然后在action类中 获取页面的id 通过id来查询数据,将查到的数据用实体的数据接收,然后塞到modle中显示即可。

需要注意的有两点 一时 注意sql的优化,比如多个id查询 最好不要用for 循环遍历去一个一个查 最好是用in来查询,还有一个需要注意 用in查询 字段最好不要超过3000.

在查询过程中,由于数据量比较大,需要调用风车界面 ,在数据没查完 需要调用它 ,调完了 就结束。

具体代码如下:

package nc.ui.am.actions.batch;


import java.awt.Container;
import java.awt.event.ActionEvent;
import java.util.ArrayList;
import java.util.List;


import nc.bs.framework.common.NCLocator;
import nc.itf.uap.IUAPQueryBS;
import nc.jdbc.framework.processor.BeanListProcessor;
import nc.ui.am.file.ace.view.ShowBatchBillTable;
import nc.ui.pub.beans.MessageDialog;
import nc.ui.pub.beans.progress.DefaultProgressMonitor;
import nc.ui.pub.beans.progress.IProgressMonitor;
import nc.ui.pubapp.uif2app.model.BatchBillTableModel;
import nc.ui.uif2.ShowStatusBarMsgUtil;
import nc.ui.uif2.actions.batch.BatchRefreshAction;
import nc.ui.uif2.components.progress.TPAProgressUtil;
import nc.vo.am.file.EquipmentPrice;
import nc.vo.pub.BusinessException;




public class MyBatchRefresh extends BatchRefreshAction{


private static final long serialVersionUID = 7719479915326525195L;
private ShowBatchBillTable editor;
private BatchBillTableModel model = null;
private IUAPQueryBS query;
private TPAProgressUtil tpaProgressUtil;
private Container parent;
public MyBatchRefresh() {
super();
setBtnName("刷新");
setCode("refreshAction");
}


@Override
public void doAction(ActionEvent ar

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值