前提是:父grid中不能有属性设置setColunmProperty(" ",''display:none"),且要有dataOnlyColunms=[" "," "]属性。
页面如下:
代码如下:
window.onload = init
var filterjyd = false var filterjyrq = false
var tradelx function init() { with(document.all.dbnettab_master) { tabs = [ ["tab_jyd","交易数据列表(按交易单
)","dbnetgrid_jyd",""], ["tab_jyrq","交易数据列表(按执行日期
)","dbnetgrid_jyrq",""] ] onPageLoaded = initgrid setTabProperty("tab_jyd","onshow:jydonshow") setTabProperty("tab_jyrq","onshow:jyrqonshow") loadTab() } } function jydonshow() { tabflag = "jyd" if(!filterjyd) filterFun() filterjyd = true } function jyrqonshow() { tabflag = "jyrq" if(!filterjyrq) filterFun() filterjyrq = true } function initgrid() { with(document.all.dbnetgrid_jyd) { connectionString = "jdbc/LiferayPool" fromPart = "v_jydata_jyd" primaryKeyColumn = "c_jydbh" orderColumn = "c_jydbh" orderSequence = "desc" pageSize = 20 integration = "true" var data = document.all.dbnetgrid_jyrq.selectData("select property_name from property_code where property_code = '"+gs_tradelx+"' and type_name = '
交易类型配置
'") tradelx = data.property_name if(tradelx == '年度' || tradelx == '短期
') { selectPart = ["jymonth","c_jhbh","c_jydbh","c_sddw","c_gddw","n_dl/10 dl","n_jydl","jhjydl"] headings = ["月份","交易中心交易单编号","调度中心交易单编号","卖方","买方","平均电力","交易电量","计划值
"] } else { selectPart = ["jymonth","c_jydbh","c_sddw","c_gddw","n_dl/10 dl","n_jydl"] headings = ["
月份","交易单编号","卖方","买方","平均电力","交易电量
"] } dataOnlyColumns = ["c_jydbh"] insertRow = false updateRow = false deleteRow = false rowDblClick = false filter = false addNestedGrid(configureDetailNestedGrid, "dested_fun" ) onPageLoaded = masterGridLoaded } with(document.all.dbnetgrid_jyrq) { connectionString = "jdbc/LiferayPool" fromPart = "jy_tradedata" primaryKeyColumn = "c_bh" orderColumn = "d_jyrq" orderSequence = "desc" pageSize = 20 integration = "true" if(tradelx == '一类' || tradelx == '二类
') { selectPart = ["d_jyrq","c_sddw","c_gddw","c_jysd","n_jyxs","n_dl/10 dl","n_jydl","n_wgjg","n_wsjg","c_jydbh"] headings = ["执行日期","卖方","买方","时段","小时数","电力","交易电量","网购价","网售价","交易单
"] setColumnProperty("n_jyxs","transform:jyxstrans") } else { selectPart = ["d_jyrq","c_sddw","c_gddw","n_dl/10 dl","n_jydl","n_wgjg","n_wsjg","c_jydbh"] headings = ["执行日期","卖方","买方","电力","交易电量","网购价","网售价","交易单
"] } insertRow = false updateRow = false deleteRow = false rowDblClick = false filter = false onPageLoaded = masterGridLoaded } custompagetoolbar() inityearmonth() } function configureDetailNestedGrid() { with(window.event.srcElement.childGrid) { connectionString = "jdbc/LiferayPool" fromPart = "jy_tradedata" primaryKeyColumn = "c_bh" orderColumn = "d_jyrq" orderSequence = "desc" pageSize = 31 integration = "true" displayNavibar = false if(tradelx == '
一类' || tradelx == '二类
') { selectPart = ["d_jyrq","c_jysd","n_jyxs","n_wgjg","n_wsjg","n_dl/10 dl","n_jydl"] headings = ["执行日期","时段","小时数","网购价","网售价","电力","交易电量
"] setColumnProperty("n_jyxs","transform:jyxstrans") } else { selectPart = ["d_jyrq","n_wgjg","n_wsjg","n_dl/10 dl","n_jydl"] headings = ["执行日期","网购价","网售价","电力","交易电量
"] } insertRow = false updateRow = false deleteRow = false rowDblClick = false filter = false loadData() }
}
function custompagetoolbar() { with(document.all.dbnetgrid_jyd) { pagetoolbar.all.flowSendBtn.parentElement.style.display="none" pagetoolbar.all.functionlist.parentElement.style.display="none" var cell = pagetoolbar.all.toolbar.rows[0].insertCell() cell.innerHTML = "<span class='dbnetgrid'>
年月
:"+ "<span class='dbnetgrid'></span><select id='year' name = 'year'></select> " + "<span class='dbnetgrid'></span><select id='month' name = 'month'></select> " addPagetoolbarBtn("okButton", "确定
", "okFun") addPagetoolbarDivider() addPagetoolbarBtn("reportButton", tradelx+"交易汇总报表
", "reportFun") addPagetoolbarDivider() } }
function jyxstrans(cell) { if(cell.innerText != "") { var sec = parseFloat(cell.innerText) * 60 var sec = sec % parseInt(60) var arr = new Array() arr = cell.innerText.split('.') if (sec != 0) { cell.innerText = arr[0]+'小时'+sec+'分
' } else { cell.innerText = arr[0]+'小时
' } } } function inityearmonth() { for (i = parseInt(gs_year) -5; i<= parseInt(gs_year);i++) { var oOption = document.createElement("OPTION"); oOption.text = i + '
年
'; oOption.value = i; document.all.year.add(oOption) if(i == gs_year) { oOption.selected = true } } for (i = 1;i<= 12; i++) { var oOption = document.createElement("OPTION"); oOption.text = i + '月
'; oOption.value = i; document.all.month.add(oOption); if(i == gs_month) { oOption.selected = true } } }
function reportFun() { with(document.all.dbnetcell0) { code = 'powerTrade' report_no = 'trade_report' lsh = '' readOnly = true reportArgs = new Object() onReportOpened = "reportOpened" } var lsh = document.all.dbnetcell0.open() } function reportOpened(CellWeb) { var grid = document.all.dbnetgrid_jyrq var year = document.all.year.value var month = document.all.month.value var sj = year + '年' + month + '月
' if(parseInt(month) < 10) month = '0' + month var trademonth = year + '.' + month tradedatareport(grid,CellWeb,tradelx,trademonth,sj) } function okFun() { if(tabflag == "jyd") { filterjyd = true filterjyrq = false } if(tabflag == "jyrq") { filterjyrq = true filterjyd = false } filterFun() } function filterFun() { var year = document.all.year.value var month = document.all.month.value if(parseInt(month)<10) { month = '0' + month }
var sj = year + '.' + month var grid if(tabflag == "jyd") { grid = document.all.dbnetgrid_jyd grid.fixedFilterPart = "jymonth = '"+sj+"' and c_lx = '"+tradelx+"'" } else { grid = document.all.dbnetgrid_jyrq grid.fixedFilterPart = "to_char(d_jyrq,'yyyy.mm') = '"+sj+"' and c_lx = '"+tradelx+"'" } grid.loadData() }
function dested_fun(grid) { var jydbh = grid.parentRow.c_jydbh filter = "c_jydbh = '"+jydbh+"'" grid.fixedFilterPart = filter }
function masterGridLoaded() { var grid if(tabflag == "jyrq") grid = document.all.dbnetgrid_jyrq else grid = document.all.dbnetgrid_jyd if(grid.rowCount > 0) { var table = grid.table var row = table.insertRow() for (var i=0; i< table.rows[1].cells.length; i++){ row.insertCell() } var year = document.all.year.value var month = document.all.month.value if(parseInt(month)<10) { month = '0' + month } var sj = year + '.' + month var s_where if(grid.filterPart != '') s_where = grid.fixedFilterPart + ' and ' + grid.filterPart else s_where = grid.fixedFilterPart if(tabflag == "jyrq") var data = grid.selectData("select sum(nvl(n_jydl,0)) as jydl from jy_tradedata where "+s_where) else var data = grid.selectData("select sum(nvl(n_jydl,0)) as jydl from v_jydata_jyd where "+s_where) row.style.color = 'black' //row.style.backgroundColor = 'lightblue' row.style.fontSize = '8pt' row.style.fontWeight = 'bold' row.style.align = "right" row.cells[1].innerText = '合计
' row.cells[grid.columnIndex('n_jydl')].innerText = data.jydl } }