以下代码示例演示了如何在分录中将F7字段添加过滤条件。
需要在分录对应F7字段添加获取焦点事件,然后添加过滤条件。
核心代码:waf("#entries_" + rowIndex + "_expenseTypeEx").wafPromptStandard("option", "filteritem", filteritem);
注意:expenseTypeEx为实体中属性。
/**************************提示:只允许修改开发区域,其他区域会被覆盖!********************************/
mod.definePage("extend/cp/bc/js/BizAccountOutBill_Edit001",function(waf){
//@beginUseModule
var bizCollBillBase = mod.useSync("cp/bc/js/bizCollBillBase");
var promptExpenseType = mod.useSync("cp/bc/js/promptExpenseType");
var BizAccountOutBill_Edit = mod.useSync("cp/bc/js/BizAccountOutBill_Edit");
//@endUseModule
var _public = {},_private = {},me=_self;
//@beginPublic
waf.extend(_public,{
//控件事件描述:
expenseTypeEx_onfocus:function(event){
return _private.expenseTypeEx_onfocus(event);
}
,
//控件事件描述:
expenseTypeEx_onchange:function(event,value){
return _private.expenseTypeEx_onchange(event,value);
}
});
//@endPublic
//@beginTemplateFunctions
//@endTemplateFunctions
/**************************开发区域开始**********************************************/
//@beginPrivate
waf.extend(_private,{
// 点击事件,添加过滤条件
expenseTypeEx_onfocus:function(event){
var selectedIds = waf("#entries").dataGrid("getSelectedRows");
if(selectedIds.length == 0){
return;
}
var selectId = selectedIds[0];
var filteritem = " number like '010%'"; //过滤条件
var rowIndex = 1; //当前行号
var ids = waf("#entries").dataGrid("getDataIDs");
for (var i = 0; i < ids.length; i++) {
if(selectId == ids[i]){
rowIndex = (i + 1); //比对并确认当前行号
}
}
// 列名后缀取实体中属性
waf("#entries_" + rowIndex + "_expenseTypeEx").wafPromptStandard("option", "filteritem", filteritem);
},
// 值改变事件,标准产品字段赋值
expenseTypeEx_onchange:function(event,value){
var selectedIds = waf("#entries").dataGrid("getSelectedRows");
if(selectedIds.length == 0){
return;
}
var selectId = selectedIds[0];
var rowIndex = 1; //当前行号
var ids = waf("#entries").dataGrid("getDataIDs");
for (var i = 0; i < ids.length; i++) {
if(selectId == ids[i]){
rowIndex = (i + 1); //比对并确认当前行号
}
}
var expenseType = waf("#entries_" + rowIndex + "_expenseTypeEx").wafPromptBox("getValue");
if(expenseType && expenseType.id){
waf("#entries").dataGrid("setCell", selectId, "expenseType", expenseType); //标准产品赋值
waf("#entries").dataGrid("setCell", selectId, "operationType", expenseType.operationType); //标准产品赋值
}
}
});//@endPrivate
/**************************开发区域结束**********************************************/
return _public;
});