var objForm;
var objTab;
var bMultiGridYn = false;
var loopCnt = 0;
this.searchFlag = false;
this.findText = false;
this.btn_Search_onclick = function(obj, e) {
var objGrd = this.gfn_FindGridObject(objTab.tabpages[objTab.tabindex].form);
var objDs = objGrd.getBindDataset();
var pre_selecttype = objGrd.selecttype;
var findRow = -1;
var findCell = -1;
objGrd.set_enableevent(true);
objDs.set_enableevent(true);
if (this.gfn_IsNull(sFindData)) {
this.gfn_InitGridNoDataText(objGrd);
} else {
var searchText = sFindData.toUpperCase();
for (var i = 0; i < objDs.rowcount; i++) {
for (var iLoop = 0; iLoop < objGrd.getCellCount("body"); iLoop++) {
var cellText = objGrd.getCellText(i, iLoop);
if (cellText && cellText.toUpperCase().indexOf(searchText) > -1) {
this.findText = true;
findRow = i;
findCell = iLoop;
break;
}
}
if (this.findText) break;
}
}
if (this.findText) {
this.fn_moveGridCell(objGrd, findRow, findCell);
} else {
this.initSearchText(objGrd);
this.fn_moveGridCell(objGrd, 0, 0);
}
this.ds_GridCss.filter("");
this.ds_OrgGridCss.filter("");
if (!this.findText) {
objGrd.selectRow(0);
}
objGrd.redrawExprCell("body");
};
pForm.gfn_FindGridObject = function(objForm) {
var arrComp = objForm.components;
var nLength = arrComp.length;
for (var i = 0; i < nLength; i++) {
var comp = arrComp[i];
if (comp instanceof nexacro.Div && this.gfn_IsNull(comp.url)) {
var grid = this.gfn_FindGridObject(comp.form);
if (grid) return grid;
} else if (comp instanceof nexacro.Tab) {
for (var j = 0; j < comp.tabpages.length; j++) {
if (this.gfn_IsNull(comp.tabpages[j].url)) {
var grid = this.gfn_FindGridObject(comp.tabpages[j].form);
if (grid) return grid;
}
}
} else if (comp instanceof nexacro.Grid) {
return comp;
}
}
return null;
};
this.gfn_InitGridNoDataText = function(objGrd) {
objGrd.set_text("No Data");
};
this.fn_moveGridCell = function(objGrd, row, cell) {
if (row >= 0 && cell >= 0) {
objGrd.selectCell(row, cell);
}
};
this.initSearchText = function(objGrd) {
objGrd.clearSearchText();
};
this.initSaveGridDs = function(objGrd) {
objGrd.clearData();
objGrd.reset();
trace("Grid data has been cleared and reset.");
};