|
@@ -174,10 +174,10 @@ JpcExSrv.prototype.createNew = function() {
|
|
|
// 1. data object
|
|
|
let dataHelper = JpcData.createNew();
|
|
|
// console.log(JSON.stringify(rptTpl));
|
|
|
- me.executeFormulas($CTX_HELPER, JV.RUN_TYPE_BEFORE_ANALYZING, rptTpl, dataObj, me, $CUSTOM_DEFINE); // 在分析前运行,主要是增加灵活性,比如:重新编排数据的主从关系
|
|
|
+ me.executeFormulas($CTX_HELPER, JV.RUN_TYPE_BEFORE_ANALYZING, rptTpl, dataObj, me, $CUSTOM_DEFINE, defProperties); // 在分析前运行,主要是增加灵活性,比如:重新编排数据的主从关系
|
|
|
// console.log(JSON.stringify(rptTpl));
|
|
|
if (me.crossTab) {
|
|
|
- me.executeFormulas($CTX_HELPER, JV.RUN_TYPE_BEFORE_PAGING, rptTpl, dataObj, me, $CUSTOM_DEFINE);
|
|
|
+ me.executeFormulas($CTX_HELPER, JV.RUN_TYPE_BEFORE_PAGING, rptTpl, dataObj, me, $CUSTOM_DEFINE, defProperties);
|
|
|
dataHelper.analyzeData(rptTpl, dataObj);
|
|
|
me.crossTab.sorting(rptTpl, dataObj, dataHelper.dataSeq.slice(0), me);
|
|
|
} else {
|
|
@@ -197,7 +197,7 @@ JpcExSrv.prototype.createNew = function() {
|
|
|
// let dt2 = new Date();
|
|
|
// alert(dt2 - dt1);
|
|
|
// 3. formulas
|
|
|
- me.executeFormulas($CTX_HELPER, JV.RUN_TYPE_BEFORE_PAGING, rptTpl, dataObj, me, $CUSTOM_DEFINE);
|
|
|
+ me.executeFormulas($CTX_HELPER, JV.RUN_TYPE_BEFORE_PAGING, rptTpl, dataObj, me, $CUSTOM_DEFINE, defProperties);
|
|
|
}
|
|
|
// 4. paging
|
|
|
me.paging(rptTpl, dataObj, defProperties, dftPagingOption, outputType);
|
|
@@ -226,7 +226,19 @@ JpcExSrv.prototype.createNew = function() {
|
|
|
me.totalPages = me.billTab.paging(rptTpl, dataObj);
|
|
|
}
|
|
|
};
|
|
|
- JpcResult.executeFormulas = function($CTX_HELPER, runType, $CURRENT_TEMPLATE, $CURRENT_DATA, $CURRENT_RPT, $CUSTOM_DEFINE) {
|
|
|
+ JpcResult.getDftRowsPerPage = function(rptTpl, defProperties) {
|
|
|
+ const me = this;
|
|
|
+ let rst = 1;
|
|
|
+ if (me.flowTab) {
|
|
|
+ rst = me.flowTab.getDftRowsPerPage(rptTpl, defProperties, me);
|
|
|
+ } else if (me.crossTab) {
|
|
|
+ // 实际业务可以暂时不提供
|
|
|
+ } else if (me.billTab) {
|
|
|
+ // 实际业务可以暂时不提供
|
|
|
+ }
|
|
|
+ return rst;
|
|
|
+ };
|
|
|
+ JpcResult.executeFormulas = function($CTX_HELPER, runType, $CURRENT_TEMPLATE, $CURRENT_DATA, $CURRENT_RPT, $CUSTOM_DEFINE, $PAGE_PROPERTIES) {
|
|
|
const execFmlMe = this;
|
|
|
for (let execFmlIdx = 0; execFmlIdx < execFmlMe.formulas.length; execFmlIdx++) {
|
|
|
// remark: 搞这么复杂的变量名是为了防止与表达式起冲突(如循环变量i,j,k,容易造成变量冲突且不容易看出问题)
|
|
@@ -328,7 +340,7 @@ JpcExSrv.prototype.createNew = function() {
|
|
|
try {
|
|
|
for (let page = startPage; page <= endPage; page++) {
|
|
|
me.runTimePageData.currentPage = page;
|
|
|
- me.executeFormulas($CTX_HELPER, JV.RUN_TYPE_BEFORE_OUTPUT, rptTpl, dataObj, me, $CUSTOM_DEFINE);
|
|
|
+ me.executeFormulas($CTX_HELPER, JV.RUN_TYPE_BEFORE_OUTPUT, rptTpl, dataObj, me, $CUSTOM_DEFINE, defProperties);
|
|
|
rst.items.push(me.outputAsSimpleJSONPage(rptTpl, dataObj, bands, page, rst[JV.NODE_CONTROL_COLLECTION], customizeCfg));
|
|
|
}
|
|
|
if (bands[JV.BAND_PROP_MERGE_BAND]) {
|