zoukankan      html  css  js  c++  java
  • Run server /Run Client /Run Call From

    public void calculateRowsCalcList(
        Map           _rowsCalcExpressionList,
        Map           _ledgerBalColList,
        container     _rowList,
        container     _rowListIdx
        )
    {
        MapIterator         ledgerBalColListIterator;
        LedgerBalColumnsDim ledgerBalColumnsDim;
        boolean             init;

        RecordSortedList                calcLevels;
        int                             lengthRowList           = conlen(_rowList);
        int                             i;
        LedgerRowDefLine                tmpLedgerRowDefLine;
        ;

        calcLevels = new RecordSortedList(tablenum(LedgerRowDefLine));
        calcLevels.sortOrder(fieldnum(LedgerRowDefLine, Level));
        for (i = 1; i <= lengthRowList; i++)
        {
            tmpLedgerRowDefLine = conpeek(_rowList,i);
            if (tmpLedgerRowDefLine.Type  == DimensionsLedgerDimensionType::Calculation)
            {
                // Make the sort order reverse
                tmpLedgerRowDefLine.Level = tmpLedgerRowDefLine.Level * -1;
                calcLevels.ins(tmpLedgerRowDefLine);
            }
        }

        init = true;
        calcLevels.first(tmpLedgerRowDefLine);

        while (tmpLedgerRowDefLine)
        {
            tmpLedgerRowDefLine.Level = tmpLedgerRowDefLine.Level * -1;

            //when run client or run call from(not server) ,

            //may be catch error: ledgerBalColListIterator not initilize error

            //in report, it run in server,in form ,default in client/call from,

            //so should set properties:runon = server  in form menuitem
            ledgerBalColListIterator = new MapIterator(_ledgerBalColList);
            while (ledgerBalColListIterator.more())
            {
                ledgerBalColumnsDim = ledgerBalColListIterator.value();

                if (ledgerBalColumnsDim.checkColumnWithNewRanges())
                {
                    this.calculateRowsCalcListColumn(_rowsCalcExpressionList,
                                                     ledgerBalColListIterator.key(),
                                                     _rowList,
                                                     _rowListIdx,
                                                     tmpLedgerRowDefLine.Level,
                                                     ledgerBalColumnsDim.ToDate);
                }

                ledgerBalColListIterator.next();
            }

            this.adjustDebitCreditGroupTotalAmount(_ledgerBalColList, _rowList, init, -tmpLedgerRowDefLine.Level);
            init = false;
            if (! calcLevels.next(tmpLedgerRowDefLine))
            {
                break;
            }
        }
    }

    Map

  • 相关阅读:
    【算法微解读】浅谈01分数规划
    【算法微解读】浅谈线段树
    近期目标
    【洛谷P5008 逛庭院】tarjan缩点+贪心
    【洛谷P1061 Jam的计数法】搜索
    【洛谷P1140 相似基因】动态规划
    【建兰普及模拟赛四】20181026
    【建兰普及模拟赛第三场】20181035
    【洛谷P2800又上锁妖塔】动态规划
    【建兰普及模拟赛第二场】20181024
  • 原文地址:https://www.cnblogs.com/lingdanglfw/p/1757215.html
Copyright © 2011-2022 走看看