override protected void OnActivated(object option)
        {
            mototyou = new models.query.KanjouMototyou(Context.KaikeiDatabase);

            form.SetDatabase(Context.KaikeiDatabase);
            form.ClearControls(Context.Setting.GetStr("before_gengou", "R"));
        }
        public HojoMototyouFormController()
        {
            mototyou = null;

            form = new KaikeiSystemBody.views.KanjouMototyouForm();
            form.SelectViewMode(views.KanjouMototyouForm.ViewMode.ViewHojoKamoku);

            form.SearchButtonClicked += SearchButtonClicked;
            form.ReturnButtonClicked += () => form.Close();

            form.RowDetailButtonClicked += delegate(int rowIndex) {
                var popupController = new popup.DenpyouInfoPopupController();
                popup.DenpyouInfoPopupController.Result result;
                result = popupController.ShowPopupModal(form, mototyou.GetDenpyouMeisaiRow(rowIndex), Context);
                if (result != popup.DenpyouInfoPopupController.Result.None)
                {
                    form.SaveGridScrollAndSelection();
                    RefreshView();
                    form.LoadGridScrollAndSelection();
                }
            };

            form.SetStatusMessage += delegate(string msg) {
                form.SetStatusbarMessage(msg);
            };
        }
        public void ShowDialog(models.Context context,
                               DateTime?startDate,
                               DateTime?endDate,
                               string kamokuCode,
                               int kaikeiKubun)
        {
            Context = context;

            mototyou = new models.query.KanjouMototyou(context.KaikeiDatabase);

            form.SetDatabase(Context.KaikeiDatabase);
            form.ClearControls(Context.Setting.GetStr("before_gengou", "R"));

            form.StartDate         = startDate;
            form.EndDate           = endDate;
            form.TargetKamokuCode  = kamokuCode;
            form.TargetKaikeiKubun = kaikeiKubun;

            form.ShowDialog();
        }
Beispiel #4
0
        public void SetMototyouData(models.query.KanjouMototyou mototyou)
        {
            grid.Rows.Clear();

            foreach (var row in mototyou.MototyouRows)
            {
                AddRow(
                    row.DenpyouRenban,
                    row.Kihyoubi,
                    row.AiteKamokuStr,
                    row.Comment,
                    row.KarikataKingaku,
                    row.KashikataKingaku,
                    row.Zandaka,
                    row.HasHojoKamoku ? "*" : ""
                    );
            }

            this.KashikataSum = mototyou.KashikataSum;
            this.KarikataSum  = mototyou.KarikataSum;
            this.SashihikiSum = mototyou.SashihikiSum;
            SetZengetsuKurikoshiData(mototyou.KanjouKamokuStr, mototyou.TaisyakuKubunStr, mototyou.ZengetsuKurikoshiGaku);
        }
        public KanjouMototyouFormController()
        {
            mototyou = null;

            form = new KaikeiSystemBody.views.KanjouMototyouForm();
            form.SelectViewMode(views.KanjouMototyouForm.ViewMode.ViewKamoku);

            form.SearchButtonClicked          += SearchButtonClicked;
            form.ReturnButtonClicked          += () => MainController.PopActivity();
            form.ShowDenpyouViewButtonClicked += () => MainController.SwitchActivity(
                controllers.MainController.ActivityType.KaikeiDenpyou,
                controllers.MainController.ActivitySwitchMethod.Change,
                Context,
                controllers.KaikeiDenpyouFormController.QueryType.CurrentYear);

            form.AddDenpyouButtonClicked += delegate() {
                var popupController = new popup.DenpyouInfoPopupController();
                popup.DenpyouInfoPopupController.Result result;
                var row = mototyou.MeisaiTable.NewRow();

                string wareki = Context.Setting.GetStr("before_gengou", "") +
                                Context.Setting.GetStr("before_year", "") + "/" +
                                Context.Setting.GetStr("before_month", "") + "/" +
                                Context.Setting.GetStr("before_day", "");
                if (helper.Converter.IsWareki(wareki))
                {
                    DateTime date = helper.Converter.DateStrToDateTime(wareki);
                    mototyou.MeisaiTable.SetKihyoubiAndDenpyouBangouCache(row, date);
                }

                result = popupController.ShowPopupModal(form, row, Context);
                if (result != popup.DenpyouInfoPopupController.Result.None)
                {
                    form.SaveGridScrollAndSelection();
                    RefreshView();
                    form.LoadGridScrollAndSelection();
                }
            };
            form.RowDetailButtonClicked += delegate(int rowIndex) {
                var popupController = new popup.DenpyouInfoPopupController();
                popup.DenpyouInfoPopupController.Result result;
                result = popupController.ShowPopupModal(form, mototyou.GetDenpyouMeisaiRow(rowIndex), Context);
                if (result != popup.DenpyouInfoPopupController.Result.None)
                {
                    form.SaveGridScrollAndSelection();
                    RefreshView();
                    form.LoadGridScrollAndSelection();
                }
            };
            form.PrintButtonClicked += delegate() {
                var popupController = new popup.KanjouMototyouPrintPopupController();
                popupController.ShowPopupModal(form, Context);
            };


            form.ShowHojoMototyouButtonClicked += delegate() {
                HojoMototyouFormController hojoController = new HojoMototyouFormController();
                hojoController.ShowDialog(Context,
                                          form.StartDate, form.EndDate, form.TargetKamokuCode, form.TargetKaikeiKubun);
            };

            form.SetStatusMessage += delegate(string msg) {
                form.SetStatusbarMessage(msg);
            };
        }
Beispiel #6
0
        private void AddMototyouReport(DataDynamics.ActiveReports.ActiveReport parentReport, int kanjouKamokuId, int parentKamokuId, bool isHojoKamoku)
        {
            models.query.KanjouMototyou mototyou = new models.query.KanjouMototyou(context.KaikeiDatabase);
            mototyou.Calc(
                popup.StartDate.Value,
                popup.EndDate.Value,
                kanjouKamokuId,
                popup.TargetKaikeiKubun,
                renumberDenpyouBangou: false,
                isHojoKamoku: isHojoKamoku);

            int    kaikeiKubun = popup.TargetKaikeiKubun;
            string houjinMei   = context.KaikeiDatabase.MTKaikeiKubun.GetRowFromCache(context.KaikeiDatabase.MTKaikeiKubun.RootNodeId).GetStr("name") as string;
            string shisetsuMei = "";

            if (kaikeiKubun != -1 && kaikeiKubun != context.KaikeiDatabase.MTKaikeiKubun.RootNodeId)
            {
                shisetsuMei = context.KaikeiDatabase.MTKaikeiKubun.GetRowFromCache(kaikeiKubun).GetStr("name") as string;
            }
            models.db.Row kanjouKamokuRow = context.KaikeiDatabase.MTKanjouKamoku.GetFirstRow("where id=" + kanjouKamokuId);
            string        kamokuMei       = kanjouKamokuRow.GetStr("kamoku", "");

            DataDynamics.ActiveReports.ActiveReport report = null;
            if (popup.RenzokuKeishikiChecked)
            {
                report = new views.reports.KanjouMototyou2();
                if (isHojoKamoku == false)
                {
                    (report as views.reports.KanjouMototyou2).SetHeader(houjinMei, shisetsuMei, kamokuMei, "", isHojoMototyou: false);
                }
                else
                {
                    models.db.Row parentKanjouKamokuRow = context.KaikeiDatabase.MTKanjouKamoku.GetFirstRow("where id=" + parentKamokuId);
                    string        parentKamokuMei       = parentKanjouKamokuRow.GetStr("kamoku", "");
                    (report as views.reports.KanjouMototyou2).SetHeader(houjinMei, shisetsuMei, parentKamokuMei, kamokuMei, isHojoMototyou: true);
                }
            }
            else
            {
                report = new views.reports.KanjouMototyou();
                (report as views.reports.KanjouMototyou).SetHeader(houjinMei, shisetsuMei, kamokuMei);
            }

            bool printReport = false;

            if (mototyou.MototyouRows.Count > 0)
            {
                report.DataSource = mototyou.MototyouRows;
                printReport       = true;
            }
            else if (mototyou.ZengetsuKurikoshiGaku != 0)
            {
                // 伝票がない場合、前期繰越の額を印刷する。
                List <models.query.KanjouMototyou.MototyouRow> rows = new List <models.query.KanjouMototyou.MototyouRow>();
                int taisyakuKubunId = (int)kanjouKamokuRow.GetLong("taisyaku_kubun_id", -1);

                long karikataKingaku  = 0;
                long kashikataKingaku = 0;

                switch ((models.constants.MTTaisyakuKubun)taisyakuKubunId)
                {
                case models.constants.MTTaisyakuKubun.KariPlus:
                case models.constants.MTTaisyakuKubun.KariMinus:
                    karikataKingaku = mototyou.ZengetsuKurikoshiGaku;
                    break;

                case models.constants.MTTaisyakuKubun.KashiPlus:
                case models.constants.MTTaisyakuKubun.KashiMinus:
                    kashikataKingaku = mototyou.ZengetsuKurikoshiGaku;
                    break;
                }

                var row = new models.query.KanjouMototyou.MototyouRow(
                    -1,
                    "",
                    -1,
                    DateTime.Now,
                    "",
                    "",
                    karikataKingaku,
                    kashikataKingaku,
                    mototyou.ZengetsuKurikoshiGaku,
                    null,
                    false,
                    mototyou.ZengetsuKurikoshiGaku
                    );
                rows.Add(row);

                if (popup.RenzokuKeishikiChecked)
                {
                    (report as views.reports.KanjouMototyou2).ZenkiKurikoshiOnly = true;
                }
                else
                {
                    (report as views.reports.KanjouMototyou).ZenkiKurikoshiOnly = true;
                }
                report.DataSource = rows;

                printReport = true;
            }

            if (printReport)
            {
                report.Run();
                parentReport.Document.Pages.AddRange(report.Document.Pages.GetRange(0, report.Document.Pages.Count));
            }
        }