1:
/**
* 初始化表列、表头
*
*/
private void initListUI() {
String[] columnName = new String[] {"ship","voyage","route"};
String[][] head=new String[][]{{"船舶","航次","航线"}};
String[][] body=new String[][]{};
KDTableHelper.initTable(kDTable1, columnName, head, body);
kDTable1.getColumn("ship").setWidth(150);
kDTable1.getColumn("voyage").setWidth(200);
kDTable1.getColumn("route").setWidth(230);
}
2:
/**
* 书写sql查出需要的数据
*
*/
private void getSelectQuery() {
StringBuilder sql=new StringBuilder();
sql.append("/*dialect*/ select distinct shipPeriod.Cfshipid,shipPeriod.CFoutfinvoyno,shipPeriod.chinese_name ship, \n");
sql.append("shipPeriod.Ib_Voyage voyage1,shipPeriod.Ob_Voyage voayge2,obRoute.service_name route \n");
sql.append("from vessel_schedule shipPeriod \n");
sql.append("left join service ibRoute on shipPeriod.Cfinrouteid=ibRoute.fid \n");
sql.append("left join service obRoute on shipPeriod.Cfoutrouteid=obRoute.fid \n");
sql.append("where shipPeriod.vessel_type not in ('外配船舶','虚拟船舶','公共驳船') \n");
sql.append("and shipPeriod.CFOutrouteID is not null ");
sql.append("and shipPeriod.Cfshipid || shipPeriod.CFOutrouteID not in( \n");
sql.append("/*dialect*/ select shipPeriod.Cfshipid || shipPeriod.CFRouteID from CT_CSM_VoyageDCS voyageDCS \n");
sql.append("inner join vessel_schedule shipPeriod on voyageDCS.cfvoyageid=shipPeriod.fid ) \n");
sql.append("and shipPeriod.Cfshipid || shipPeriod.CFOutrouteID in( \n");
sql.append("/*dialect*/ select distinct shipPeriod.Cfshipid || shipPeriod.CFRouteID from CT_BD_VoyageDateChartering vdc \n");
sql.append("inner join vessel_schedule shipPeriod on vdc.cfshippingid=shipPeriod.Cfshipid \n");
sql.append("where vdc.CFValidEndDate<sysdate ) \n");
sql.append("order by ship,shipPeriod.CFoutfinvoyno ");
setTableValue(sql.toString());
}
3:
/**
* 往表中填充数据
*
*/
private void setTableValue(String sql)
{
try {
IRowSet rs= SQLExecutorFactory.getRemoteInstance(sql.toString()).executeSQL();
tblMain.removeRows();
tblMain.checkParsed();
if(rs != null && rs.size() > 0) {
while(rs.next()){
String ship = UIRuleUtil.isNull(rs.getString("ship"))?"":rs.getString("ship");
String voyage1 = UIRuleUtil.isNull(rs.getString("voyage1"))?"":rs.getString("voyage1");
String voayge2 = UIRuleUtil.isNull(rs.getString("voayge2"))?"":rs.getString("voayge2");
String route = UIRuleUtil.isNull(rs.getString("route"))?"":rs.getString("route");
IRow row= tblMain.addRow();
row.getCell("ship").setValue(ship);
row.getCell("voyage").setValue(voyage1+"-"+voayge2);
row.getCell("route").setValue(route);
}
}
tblMain.setRefresh(true);
tblMain.repaint();
}catch (BOSException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}