Esempio n. 1
0
        private void SummarizeMeisaiTable()
        {
            string orderStr = "order by display_order";

            foreach (models.db.Row kubunRow in db.MTKamokuKubun.SelectChildren((int)models.constants.MTKamokuKubun.TaisyakuRoot, order: orderStr))
            {
                foreach (models.db.Row daikubunRow in db.MTKamokuKubun.SelectChildren(kubunRow.GetId(), order: orderStr))
                {
                    if (daikubunRow.GetId() == (int)models.constants.MTKamokuKubun.JikiKurikoshikatsudouZougenSagakuDaikubun)
                    {
                        continue;
                    }

                    foreach (models.db.Row kamokuRow in db.MTKamokuKubun.SelectChildren(daikubunRow.GetId(), order: orderStr))
                    {
                        if (HideInnerKaikeiKubunKamoku && db.MTKamokuKubun.IsInnerKaikeiKubunKamoku(KaikeiKubunHierarchy, kamokuRow))
                        {
                            continue;
                        }

                        BalanceSheetRow balanceSheetRow = new BalanceSheetRow(kamokuRow.GetId(), daikubunRow.GetId(), kubunRow.GetId());
                        balanceSheetRow.CurrentSumAmount = kamokuKubunSummary.SummaryItem(kamokuRow.GetId()).GetTaisyaku(db);
                        balanceSheetRow.LastSumAmount    = 0;
                        kamokuKubunId2BalanceSheetRow.Add(kamokuRow.GetId(), balanceSheetRow);
                    }
                }
            }
        }
Esempio n. 2
0
        public void Calc(DateTime startDate, DateTime endDate, int kaikeiKubun, bool hideInnerKaikeiKubunKamoku)
        {
            StartDate                  = helper.Converter.DateTimeToNenndoKisannbi(startDate);
            StartNenndo                = startDate.Year;
            EndDate                    = endDate;
            KaikeiKubun                = kaikeiKubun == -1 ? db.MTKaikeiKubun.RootNodeId : kaikeiKubun;
            KaikeiKubunHierarchy       = (int)db.MTKaikeiKubun.GetHierarchyOf(kaikeiKubun);
            HideInnerKaikeiKubunKamoku = hideInnerKaikeiKubunKamoku;

            // init summary items
            summaryItems.Clear();
            foreach (SummaryItem item in Enum.GetValues(typeof(SummaryItem)))
            {
                summaryItems[item] = new BalanceSheetRow(0, 0, 0);
            }

            kamokuKubunId2BalanceSheetRow.Clear();

            kamokuKubunSummary = new KamokuKubunSummary(db);
            kamokuKubunSummary.Calc(startDate, endDate, kaikeiKubun, addKurikoshi: false, addPairedShikinDenpyou: true);

            SummarizeMeisaiTable();
            SummarizeKurikoshi();

            CalcSummary();
        }
Esempio n. 3
0
 public void DainyuuAMinusB(BalanceSheetRow a, BalanceSheetRow b)
 {
     this.Add(a);
     this.Substract(b);
 }
Esempio n. 4
0
 public void Substract(BalanceSheetRow row)
 {
     CurrentSumAmount -= row.CurrentSumAmount;
     LastSumAmount    -= row.LastSumAmount;
 }
Esempio n. 5
0
 public void Add(BalanceSheetRow row)
 {
     CurrentSumAmount += row.CurrentSumAmount;
     LastSumAmount    += row.LastSumAmount;
 }