天天看點

金蝶EAS,KDTable資料填充,需重新解析表格tblMain.checkParsed()

業務場景:GUI界面含有KDTable表格時,代碼實作資料填充。以下代碼示例中,表格名稱為tblMain。

填充資料之前需要重新解析表格tblMain.checkParsed()。

/**
 * 填充科目餘額資料到KDTable表格
 */
@SuppressWarnings("unchecked")
private void fillData(List dataList) {
	
	tblMain.checkParsed(); //重新解析
	tblMain.removeRows(); //删除所有行
	for(int i = 0; i < dataList.size(); i++){
		if(i > 999){
			break; //隻填充1000行資料
		}
		List rowList = (List) dataList.get(i); //行資料隊列
		String orgUnitNumber = (String) rowList.get(0); //組織編碼
		orgUnitNumber = orgUnitNumberMapping.get(orgUnitNumber);
		String orgUnitName = orgNumberNameMapping.get(orgUnitNumber); //組織名稱
		String year = (String) rowList.get(1); //期間年
		String month = (String) rowList.get(2); //期間月
		String accountNumber = (String) rowList.get(3); //科目編碼
		String key = orgUnitNumber + "-" + accountNumber;
		accountNumber = accountNumberMapping.get(key);
		String accountName = acctNumberNameMapping.get(key); //科目名稱
		String yearBegin = (String) rowList.get(5); //年初餘額
		String accumulDebit = (String) rowList.get(6); //本年累計借方
		String accumulCredit = (String) rowList.get(7); //本年累計貸方
		String periodEnd = (String) rowList.get(8); //期末餘額
		
		IRow row = tblMain.addRow();
		row.getCell("orgUnitNumber").setValue(orgUnitNumber); //組織編碼
		row.getCell("orgUnitName").setValue(orgUnitName); //組織名稱
		row.getCell("year").setValue(year); //期間年
		row.getCell("month").setValue(month); //期間月
		row.getCell("accountNumber").setValue(accountNumber); //科目編碼
		row.getCell("accountName").setValue(accountName); //科目名稱
		row.getCell("yearBegin").setValue(yearBegin); //年初餘額
		row.getCell("accumulDebit").setValue(accumulDebit); //本年累計借方
		row.getCell("accumulCredit").setValue(accumulCredit); //本年累計貸方
		row.getCell("periodEnd").setValue(periodEnd); //期末餘額
		
	}
	
}
           

繼續閱讀