金蝶EAS,编辑界面EditUI必录校验,业务校验,单据头及分录必输校验

业务单据、基础资料,在编辑界面EditUI中进行必录校验时,可以直接从界面绑定的数据对象editData中获取值,无需通过界面控件取值。

对于单据头中的属性值,通过editData可以直接通过get方法获取到属性值。对于分录中的数据,可以先获取分录集合,然后遍历分录集合,进行非空校验。

在暂存、保存、提交时,框架会自动调用verifyInput必录校验方法。此时,界面控件中的值已经封装到界面对象中,因此无需直接从控件中取值。

/**
 * 必录校验
 */
protected void verifyInput(ActionEvent e) throws Exception {
	
	VerifyUtil.input(this, editData.getNumber(), "报表编码不能为空!");
	VerifyUtil.input(this, editData.getName(), "报表名称不能为空!");
	VerifyUtil.input(this, editData.getTitle(), "标题分录(取数类型)不能为空!");
	VerifyUtil.input(this, editData.getItem(), "项目分录(报表项目)不能为空!");
	isExistsNumber(); //编码是否存在
	ReportTitleCollection titles = editData.getTitle();
	for(int i = 0; i < titles.size(); i++){
		
		ReportTitleInfo title = titles.get(i);
		VerifyUtil.input(this, title.getTypeName(), "取数类型分录第" + (i + 1) + "行名称不能为空!");
		VerifyUtil.input(this, title.getColumnNo(), "取数类型分录第" + (i + 1) + "行列号不能为空!");
		if(VerifyUtil.isNull(title.getType()) && title.isIsValid()){
			Utils.warning(this, "取数类型分录第" + (i + 1) + "行,取数类型为空时,无法参与取数!");
		}
		
	}
	ReportItemCollection items = editData.getItem();
	for(int i = 0; i < items.size(); i++){
		
		ReportItemInfo item = items.get(i);
		VerifyUtil.input(this, item.getItemName(), "报表项目分录第" + (i + 1) + "行名称不能为空!");
		VerifyUtil.input(this, item.getRowNo(), "报表项目分录第" + (i + 1) + "行行号不能为空!");
		VerifyUtil.input(this, item.getColumnNo(), "报表项目分录第" + (i + 1) + "行列号不能为空!");
		if(VerifyUtil.isNull(item.getItem()) && item.isIsValid()){
			Utils.warning(this, "报表项目分录第" + (i + 1) + "行,报表项目为空时,无法参与取数!");
		}
		
	}
	
}


必录校验常用代码片段:

/**
 * 必录校验,用于前端输入检查
 * 参数为空时弹出警告信息并中断程序
 * @param comp 父控件
 * @param param 参数
 * @param warning 警告信息
 * @author 郭旭
 * 
 */
public static void input(Component comp, String param, String warning){
	
	if(param == null || param.trim().length() == 0){
		MsgBox.showWarning(comp, warning);
		SysUtil.abort();
	}
		
}

/**
 * 必录校验,用于前端输入检查
 * 参数为空时弹出警告信息并中断程序
 * @param comp 父控件
 * @param param 参数
 * @param warning 警告信息
 * @author 郭旭
 * 
 */
public static void input(Component comp, Integer param, String warning){
	
	if(param == null){
		MsgBox.showWarning(comp, warning);
		SysUtil.abort();
	}
		
}

/**
 * 必录校验,用于前端输入检查
 * 参数为空时弹出警告信息并中断程序
 * @param comp 父控件
 * @param param 参数
 * @param warning 警告信息
 * @author 郭旭
 * 
 */
public static void input(Component comp, Object param, String warning){
	
	if(param == null){
		MsgBox.showWarning(comp, warning);
		SysUtil.abort();
	}
		
}

/**
 * 必录校验,用于前端输入检查
 * 参数为空时弹出警告信息并中断程序
 * @param comp 父控件
 * @param param 参数
 * @param warning 警告信息
 * @author 郭旭
 * 
 */
public static void input(Component comp, CoreBaseInfo param, String warning){
	
	if(param == null){
		MsgBox.showWarning(comp, warning);
		SysUtil.abort();
	}
		
}

/**
 * 必录校验,用于前端输入检查
 * 参数为空时弹出警告信息并中断程序
 * @param comp 父控件
 * @param param 参数
 * @param warning 警告信息
 * @author 郭旭
 * 
 */
public static void input(Component comp, IObjectCollection param, String warning){
	
	if(param == null || param.isEmpty()){
		MsgBox.showWarning(comp, warning);
		SysUtil.abort();
	}
		
}


弹出警告消息并中断程序:

/**
 * 警告并中断程序,用于前端
 * @param comp 父控件
 * @param msg 警告消息
 * 
 */
public static void warning(Component comp, String msg){
	MsgBox.showWarning(comp, msg);
	abort();
}

/**
 * 警告并中断程序,用于前端
 * @param comp 父控件
 * @param msg 警告消息
 * 
 */
public static void warning(Component comp, StringBuffer msg){
	MsgBox.showWarning(comp, msg.toString());
	abort();
}




  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值