|
@@ -515,9 +515,11 @@ JpcFlowTabSrv.prototype.createNew = function() {
|
|
|
followTabEx.setupGroupingData(rptTpl, dataObj, $CURRENT_RPT);
|
|
|
}
|
|
|
me.sumSeg(dataObj, $CURRENT_RPT); // 考虑到实际会有离散指标的汇总,这些离散指标数据是通过计算式后得来的,这种情况下,不适宜在sorting阶段进行汇总统计,现统一挪到这里处理
|
|
|
+ const bands = JpcBand.createNew(rptTpl, defProperties);
|
|
|
if (me.paging_option === JV.PAGING_OPTION_INFINITY) {
|
|
|
rst = me.segments.length;
|
|
|
- const pageStatus = [true, true, false, true, true, true, false, false];
|
|
|
+ // const pageStatus = [true, true, false, true, true, true, false, false];
|
|
|
+ const pageStatus = [true, true, false, true, true, true, true, true];
|
|
|
for (let segIdx = 0; segIdx < me.segments.length; segIdx++) {
|
|
|
if (segIdx === me.segments.length - 1) {
|
|
|
pageStatus[JV.STATUS_REPORT_END] = true;
|
|
@@ -525,14 +527,18 @@ JpcFlowTabSrv.prototype.createNew = function() {
|
|
|
if (segIdx > 0) {
|
|
|
pageStatus[JV.STATUS_REPORT_START] = false;
|
|
|
}
|
|
|
+ JpcBandHelper.setBandArea(bands, rptTpl, pageStatus, !me.isEx, me.isEx);
|
|
|
+ maxRowRec = JpcFlowTabHelper.getMaxRowsPerPage(bands, rptTpl, me.isEx);
|
|
|
+ // console.log('presetup maxRowRec: ' + maxRowRec);
|
|
|
+ // console.log('presetup me.segments[segIdx].length: ' + me.segments[segIdx].length);
|
|
|
me.pageStatusLst.push(pageStatus.slice(0));
|
|
|
pageIdx++;
|
|
|
const grpSeqInfo = (me.group_node_info) ? me.group_node_info[segIdx] : null;
|
|
|
- private_addPageValue(me.dispValueIdxLst, me.segments[segIdx], grpSeqInfo, 0, me.segments[segIdx].length, me.page_seg_map, segIdx, pageIdx, null, false, me.auto_height_info, 0);
|
|
|
+ const rowAmt = Math.max(maxRowRec, me.segments[segIdx].length);
|
|
|
+ private_addPageValue(me.dispValueIdxLst, me.segments[segIdx], grpSeqInfo, 0, rowAmt, me.page_seg_map, segIdx, pageIdx, null, false, me.auto_height_info, 0);
|
|
|
}
|
|
|
// 目前不支持flowTabEx
|
|
|
} else {
|
|
|
- const bands = JpcBand.createNew(rptTpl, defProperties);
|
|
|
const pageStatus = [true, true, false, true, false, false, false, false];
|
|
|
if (me.isEx) {
|
|
|
pageStatus[JV.STATUS_REPORT_START] = false;
|
|
@@ -799,10 +805,16 @@ JpcFlowTabSrv.prototype.createNew = function() {
|
|
|
const segIdx = page - 1;
|
|
|
// 1 calculate the band position
|
|
|
JpcBandHelper.setBandArea(bands, rptTpl, me.pageStatusLst[page - 1], !me.isEx, me.isEx);
|
|
|
+ const maxRowRec = JpcFlowTabHelper.getMaxRowsPerPage(bands, rptTpl, me.isEx);
|
|
|
// 2. then reset the band height
|
|
|
const tab = rptTpl[JV.NODE_FLOW_INFO][JV.NODE_FLOW_CONTENT];
|
|
|
const flowContentBand = bands[tab[JV.PROP_BAND_NAME]];
|
|
|
- const actH = JpcFlowTabHelper.getActualContentAreaHeight(bands, rptTpl, me.segments, page, me.isEx);
|
|
|
+ const rowAmt = Math.max(maxRowRec, me.segments[segIdx].length); // 如不满一页,则需要填充满一页
|
|
|
+ const actH = JpcFlowTabHelper.getActualContentAreaHeight(bands, rptTpl, me.segments, rowAmt, page, me.isEx);
|
|
|
+ // console.log('page:' + page);
|
|
|
+ // console.log('maxRowRec:' + maxRowRec);
|
|
|
+ // console.log('me.segments[segIdx].length:' + me.segments[segIdx].length);
|
|
|
+ // console.log('actH:' + actH);
|
|
|
const offsetY = actH - (flowContentBand.Bottom - flowContentBand.Top);
|
|
|
JpcBandHelper.resetBandPos(rptTpl[JV.NODE_BAND_COLLECTION], bands, flowContentBand, 0, offsetY);
|
|
|
// 2.1 Content-Tab
|