Пример #1
0
        private void AddToDateTextBox(HtmlGenericControl container)
        {
            this.toDateTextBox          = new DateTextBox();
            this.toDateTextBox.ID       = "ToDateTextBox";
            this.toDateTextBox.Mode     = FrequencyType.FiscalYearEndDate;
            this.toDateTextBox.Catalog  = AppUsers.GetCurrentUserDB();
            this.toDateTextBox.OfficeId = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();

            using (HtmlGenericControl field = this.GetDateField(Titles.To, this.toDateTextBox))
            {
                container.Controls.Add(field);
            }
        }
Пример #2
0
        public Collection <ListItem> GetBankAccounts()
        {
            int officeId = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();

            Collection <ListItem> values = new Collection <ListItem>();

            foreach (BankAccount bankAccount in Data.Helpers.Accounts.GetBankAccounts(AppUsers.GetCurrentUserDB(), officeId))
            {
                values.Add(new ListItem(bankAccount.BankName + " (" + bankAccount.BankAccountNumber + ")", bankAccount.AccountId.ToString(CultureInfo.InvariantCulture)));
            }

            return(values);
        }
Пример #3
0
        private void BindGrid()
        {
            DateTime from   = Conversion.TryCastDate(this.fromDateTextBox.Text);
            DateTime to     = Conversion.TryCastDate(this.toDateTextBox.Text);
            decimal  factor = Conversion.TryCastDecimal(this.factorInputText.Value);

            bool compact = this.ShowCompact();

            int userId   = AppUsers.GetCurrentLogin().View.UserId.ToInt();
            int officeId = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();

            this.plAccountGridView.DataSource = Data.Reports.ProfitAndLossAccount.GetPLAccount(AppUsers.GetCurrentUserDB(), from, to, userId, officeId, compact, factor);
            this.plAccountGridView.DataBind();
        }
Пример #4
0
        public string GetMenus()
        {
            SignInView view = AppUsers.GetCurrentLogin().View;

            string catalog  = AppUsers.GetCurrentUserDB();
            int    userId   = view.UserId.ToInt();
            int    officeId = view.OfficeId.ToInt();
            string culture  = view.Culture;

            Navigation nav   = new Navigation(catalog, userId, officeId, culture);
            var        menus = nav.GetMenus();

            return(JsonConvert.SerializeObject(menus));
        }
Пример #5
0
        private void BindGrid()
        {
            DateTime previousTerm = Conversion.TryCastDate(this.previousPeriodDateTextBox.Text);
            DateTime currentTerm  = Conversion.TryCastDate(this.currentPeriodDateTextBox.Text);
            int      factor       = Conversion.TryCastInteger(this.factorInputText.Value);
            int      userId       = AppUsers.GetCurrentLogin().View.UserId.ToInt();
            int      officeId     = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();

            using (DataTable table = Data.Reports.BalanceSheet.GetBalanceSheet(AppUsers.GetCurrentUserDB(), previousTerm, currentTerm, userId, officeId, factor))
            {
                this.grid.DataSource = table;
                this.grid.DataBind();
            }
        }
Пример #6
0
        private void Flag_Updated(object sender, FlagUpdatedEventArgs e)
        {
            int flagTypeId = e.FlagId;

            const string resource    = "account_statement";
            const string resourceKey = "transaction_code";

            int userId = AppUsers.GetCurrentLogin().View.UserId.ToInt();

            Flags.CreateFlag(AppUsers.GetCurrentUserDB(), userId, flagTypeId, resource, resourceKey, this.GetSelectedValues());

            this.BindGridView();
            this.CreateAccountOverviewPanel(this.accountOverviewTab);
        }
Пример #7
0
        private void BindGrid()
        {
            int    userId   = Conversion.TryCastInteger(this.userSelect.SelectedValue);
            int    officeId = Conversion.TryCastInteger(this.officeSelect.SelectedValue);
            string culture  = AppUsers.GetCurrentLogin().View.Culture;

            if (userId.Equals(0) || officeId.Equals(0))
            {
                return;
            }

            grid.DataSource = Menu.GetMenuPolicy(AppUsers.GetCurrentUserDB(), userId, officeId, culture);
            grid.DataBind();
        }
Пример #8
0
        private void BindGridView()
        {
            DateTime from          = Conversion.TryCastDate(this.fromDateTextBox.Text);
            DateTime to            = Conversion.TryCastDate(this.toDateTextBox.Text);
            int      userId        = AppUsers.GetCurrentLogin().View.UserId.ToInt();
            string   accountNumber = this.accountNumberInputText.Value;
            int      officeId      = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();

            this.statementGridView.DataSource =
                Data.Reports.AccountStatement.GetAccountStatement(AppUsers.GetCurrentUserDB(), from, to, userId,
                                                                  accountNumber, officeId);
            this.statementGridView.DataBound += this.StatementGridViewDataBound;
            this.statementGridView.DataBind();
        }
Пример #9
0
        private void AddGridView()
        {
            int officeId = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();

            using (GridView grid = new GridView())
            {
                grid.GridLines = GridLines.None;
                this.CreateColumns(grid);
                grid.DataSource          = Data.Transactions.Reorder.GetReorderView(AppUsers.GetCurrentUserDB(), officeId);
                grid.ID                  = "ReorderGrid";
                grid.AutoGenerateColumns = false;
                grid.DataBind();
                this.Placeholder1.Controls.Add(grid);
            }
        }
Пример #10
0
        public Collection <ListItem> GetCashRepositories()
        {
            Collection <ListItem> values = new Collection <ListItem>();

            int officeId = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();

            foreach (
                CashRepository cashRepository in
                CashRepositories.GetCashRepositories(AppUsers.GetCurrentUserDB(), officeId))
            {
                values.Add(new ListItem(cashRepository.CashRepositoryName,
                                        cashRepository.CashRepositoryId.ToString(CultureInfo.InvariantCulture)));
            }
            return(values);
        }
Пример #11
0
        public Collection <ListItem> GetStores()
        {
            int userId   = AppUsers.GetCurrentLogin().View.UserId.ToInt();
            int officeId = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();
            Collection <ListItem> values = new Collection <ListItem>();

            IEnumerable <Store> stores = Stores.GetStores(AppUsers.GetCurrentUserDB(), officeId, userId);

            foreach (Store store in stores)
            {
                values.Add(new ListItem(store.StoreName, store.StoreId.ToString(CultureInfo.InvariantCulture)));
            }

            return(values);
        }
Пример #12
0
        public override void OnControlLoad(object sender, EventArgs e)
        {
            using (StockTransactionForm product = new StockTransactionForm())
            {
                product.Book           = TranBook.Purchase;
                product.SubBook        = SubTranBook.Receipt;
                product.Text           = Titles.GoodsReceiptNote;
                product.ShowStore      = true;
                product.ShowCostCenter = true;
                product.Catalog        = AppUsers.GetCurrentUserDB();
                product.OfficeId       = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();

                this.Placeholder1.Controls.Add(product);
            }
        }
Пример #13
0
        public Collection <ListItem> GetCashRepositoriesByAccountNumber(string accountNumber)
        {
            Collection <ListItem> values = new Collection <ListItem>();

            if (AccountHelper.IsCashAccount(AppUsers.GetCurrentUserDB(), accountNumber))
            {
                int officeId = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();
                foreach (CashRepository cashRepository in CashRepositories.GetCashRepositories(AppUsers.GetCurrentUserDB(), officeId))
                {
                    values.Add(new ListItem(cashRepository.CashRepositoryName, cashRepository.CashRepositoryCode));
                }
            }

            return(values);
        }
Пример #14
0
        public bool SaveExchangeRates(List <Data.Models.ExchangeRate> exchangeRates)
        {
            if (exchangeRates == null || exchangeRates.Count().Equals(0))
            {
                return(false);
            }

            string catalog      = AppUsers.GetCurrentUserDB();
            int    officeId     = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();
            string baseCurrency = AppUsers.GetCurrentLogin().View.CurrencyCode;


            ExchangeRates.SaveExchangeRates(catalog, officeId, baseCurrency, exchangeRates);
            return(true);
        }
Пример #15
0
        public bool Reconcile(string tranCode, int year, int month, int day)
        {
            DateTime bookDate = new DateTime(year, month, day);
            string   catalog  = AppUsers.GetCurrentUserDB();
            int      officeId = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();

            ApplicationDateModel model = DatePersister.GetApplicationDates(catalog, officeId);


            if (bookDate > model.FiscalYearEndDate)
            {
                throw new MixERPException(Warnings.InvalidDate);
            }

            return(Transaction.Reconcile(AppUsers.GetCurrentUserDB(), tranCode, bookDate));
        }
Пример #16
0
        private static long PostTransaction(string partyCode, string currencyCode, decimal amount,
                                            decimal debitExchangeRate, decimal creditExchangeRate, string referenceNumber, string statementReference,
                                            int costCenterId, int cashRepositoryId, DateTime?postedDate, long bankAccountId, int paymentCardId,
                                            string bankInstrumentCode, string bankTransactionCode)
        {
            int  userId   = AppUsers.GetCurrentLogin().View.UserId.ToInt();
            int  officeId = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();
            long loginId  = AppUsers.GetCurrentLogin().View.LoginId.ToLong();

            long transactionMasterID = Data.Transactions.Receipt.PostTransaction(AppUsers.GetCurrentUserDB(), userId,
                                                                                 officeId, loginId, partyCode, currencyCode, amount, debitExchangeRate, creditExchangeRate,
                                                                                 referenceNumber, statementReference, costCenterId, cashRepositoryId, postedDate, bankAccountId,
                                                                                 paymentCardId, bankInstrumentCode, bankTransactionCode);

            return(transactionMasterID);
        }
Пример #17
0
        private void CheckAccessLevel()
        {
            var    login     = AppUsers.GetCurrentLogin();
            bool   hasAccess = true;
            string userName  = string.Empty;
            string ipAddress = string.Empty;

            if (login == null || login.View == null)
            {
                hasAccess = false;
            }
            else
            {
                userName  = AppUsers.GetCurrentLogin().View.UserName;
                ipAddress = AppUsers.GetCurrentLogin().View.IpAddress;

                bool isDevelopmentMode =
                    DbConfig.GetMixERPParameter(AppUsers.GetCurrentUserDB(), "Mode")
                    .ToUpperInvariant()
                    .Equals("DEVELOPMENT");
                bool isLocalHost = PageUtility.IsLocalhost(this.Page);
                bool adminOnly   = (this.AccessLevel.Equals(AccessLevel.AdminOnly) ||
                                    this.AccessLevel.Equals(AccessLevel.LocalhostAdmin));


                if (adminOnly)
                {
                    hasAccess = AppUsers.GetCurrentLogin().View.IsAdmin.ToBool();
                }

                if (hasAccess && isDevelopmentMode)
                {
                    if (this.AccessLevel.Equals(AccessLevel.LocalhostAdmin) && !isLocalHost)
                    {
                        hasAccess = false;
                    }
                }
            }

            if (!hasAccess)
            {
                Log.Information("Access to {Control} is denied to {User} from {IP}.", this,
                                userName, ipAddress);

                this.Page.Server.Transfer("~/Site/AccessIsDenied.aspx");
            }
        }
Пример #18
0
        public long Save(DateTime valueDate, int storeId, string partyCode, int priceTypeId, int paymentTermId, string referenceNumber, string data, string statementReference, int salespersonId, int shipperId, string shippingAddressCode, decimal shippingCharge, int costCenterId, string transactionIds, string attachmentsJSON, bool nonTaxable)
        {
            try
            {
                Collection <StockDetail> details = CollectionHelper.GetStockMasterDetailCollection(data, storeId);
                Collection <long>        tranIds = new Collection <long>();

                Collection <Attachment> attachments = CollectionHelper.GetAttachmentCollection(attachmentsJSON);

                if (!Data.Helpers.Stores.IsSalesAllowed(AppUsers.GetCurrentUserDB(), storeId))
                {
                    throw new InvalidOperationException("Sales is not allowed here.");
                }

                foreach (StockDetail model in details)
                {
                    if (Data.Helpers.Items.IsStockItem(AppUsers.GetCurrentUserDB(), model.ItemCode))
                    {
                        decimal available = Data.Helpers.Items.CountItemInStock(AppUsers.GetCurrentUserDB(), model.ItemCode, model.UnitName, model.StoreId);

                        if (available < model.Quantity)
                        {
                            throw new InvalidOperationException(string.Format(CultureInfo.CurrentCulture, Warnings.InsufficientStockWarning, available, model.UnitName, model.ItemCode));
                        }
                    }
                }

                if (!string.IsNullOrWhiteSpace(transactionIds))
                {
                    foreach (string transactionId in transactionIds.Split(','))
                    {
                        tranIds.Add(Common.Conversion.TryCastLong(transactionId));
                    }
                }

                int  officeId = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();
                int  userId   = AppUsers.GetCurrentLogin().View.UserId.ToInt();
                long loginId  = AppUsers.GetCurrentLogin().View.LoginId.ToLong();

                return(Data.Transactions.Delivery.Add(AppUsers.GetCurrentUserDB(), officeId, userId, loginId, valueDate, storeId, partyCode, priceTypeId, paymentTermId, details, shipperId, shippingAddressCode, shippingCharge, costCenterId, referenceNumber, salespersonId, statementReference, tranIds, attachments, nonTaxable));
            }
            catch (Exception ex)
            {
                Log.Warning("Could not save sales delivery entry. {Exception}", ex);
                throw;
            }
        }
Пример #19
0
        public override void OnControlLoad(object sender, EventArgs e)
        {
            using (StockTransactionView view = new StockTransactionView())
            {
                view.Text         = Titles.PurchaseReturn;
                view.Book         = TranBook.Purchase;
                view.SubBook      = SubTranBook.Return;
                view.PreviewUrl   = "~/Modules/Purchase/Reports/PurchaseReturnReport.mix";
                view.ChecklistUrl = "~/Modules/Purchase/Confirmation/Return.mix";

                view.UserId   = AppUsers.GetCurrentLogin().View.UserId.ToInt();
                view.OfficeId = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();
                view.Catalog  = AppUsers.GetCurrentUserDB();

                this.Placeholder1.Controls.Add(view);
            }
        }
Пример #20
0
        public override void OnControlLoad(object sender, EventArgs e)
        {
            using (FormView form = new FormView())
            {
                form.Text                 = Titles.StockTransferJournal;
                form.StoreServiceUrl      = "/Modules/Inventory/Services/ItemData.asmx/GetStores";
                form.ItemServiceUrl       = "/Modules/Inventory/Services/ItemData.asmx/GetItems";
                form.UnitServiceUrl       = "/Modules/Inventory/Services/ItemData.asmx/GetUnits";
                form.ItemPopupUrl         = "/Modules/Inventory/Setup/ItemsPopup.mix?modal=1&CallBackFunctionName=loadItems&AssociatedControlId=ItemIdHidden";
                form.ItemIdQuerySericeUrl = "/Modules/Inventory/Services/ItemData.asmx/GetItemCodeByItemId";
                form.ValidateSides        = true;
                form.Catalog              = AppUsers.GetCurrentUserDB();
                form.OfficeId             = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();

                this.Placeholder1.Controls.Add(form);
            }
        }
Пример #21
0
        public override void OnControlLoad(object sender, EventArgs e)
        {
            using (StockTransactionForm product = new StockTransactionForm())
            {
                product.Book                    = TranBook.Sales;
                product.SubBook                 = SubTranBook.Quotation;
                product.Text                    = Titles.SalesQuotation;
                product.ShowPriceTypes          = true;
                product.ShowShippingInformation = true;
                product.ShowSalesAgents         = true;
                product.ShowStore               = true;
                product.ShowSalesType           = true;
                product.Catalog                 = AppUsers.GetCurrentUserDB();
                product.OfficeId                = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();

                this.Placeholder1.Controls.Add(product);
            }
        }
Пример #22
0
        public override void OnControlLoad(object sender, EventArgs e)
        {
            using (StockTransactionView view = new StockTransactionView())
            {
                view.Text         = Titles.StockTransferJournal;
                view.Book         = TranBook.Inventory;
                view.SubBook      = SubTranBook.Transfer;
                view.AddNewUrl    = "~/Modules/Inventory/Entry/Transfer.mix";
                view.PreviewUrl   = "~/Modules/Inventory/Reports/InventoryTransferReport.mix";
                view.ChecklistUrl = "~/Modules/Inventory/Confirmation/Transfer.mix";

                view.UserId   = AppUsers.GetCurrentLogin().View.UserId.ToInt();
                view.OfficeId = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();
                view.Catalog  = AppUsers.GetCurrentUserDB();

                this.Placeholder1.Controls.Add(view);
            }
        }
Пример #23
0
        public void ChangePasswordButton_Click(object sender, EventArgs e)
        {
            string userName        = AppUsers.GetCurrentLogin().View.UserName;
            string currentPassword = this.passwordInputPassword.Value;
            string newPassword     = this.newPasswordInputPassword.Value;
            string confirmPassword = this.confirmPasswordInputPassword.Value;

            if (string.IsNullOrWhiteSpace(currentPassword))
            {
                this.errorMessage.InnerText = Warnings.PleaseEnterCurrentPassword;
                return;
            }

            if (string.IsNullOrWhiteSpace(newPassword))
            {
                this.errorMessage.InnerText = Warnings.PleaseEnterNewPassword;
                return;
            }

            if (currentPassword.Equals(newPassword))
            {
                this.errorMessage.InnerText = Warnings.NewPasswordCannotBeOldPassword;
                return;
            }

            if (!newPassword.Equals(confirmPassword))
            {
                this.errorMessage.InnerText = Warnings.ConfirmationPasswordDoesNotMatch;
                return;
            }

            try
            {
                if (Data.Office.User.ChangePassword(AppUsers.GetCurrentUserDB(), userName, currentPassword, newPassword))
                {
                    this.ShowMessage(Labels.YourPasswordWasChanged, "ui large green header");
                }
            }
            catch (MixERPException ex)
            {
                Log.Warning("Could not change password: {Message}.", ex.Message);
                this.ShowMessage(ex.Message, "ui large red header");
            }
        }
Пример #24
0
        public override void OnControlLoad(object sender, EventArgs e)
        {
            this.CreateHeader(this.Placeholder1);
            this.CreateTopPanel(this.Placeholder1);

            bool allowMultipleOpeningInventory = DbConfig.GetSwitch(AppUsers.GetCurrentUserDB(), "AllowMultipleOpeningInventory");
            bool entryExists = Data.OpeningInventory.Exists(AppUsers.GetCurrentUserDB(),
                                                            AppUsers.GetCurrentLogin().View.OfficeId.ToInt());

            if (entryExists && !allowMultipleOpeningInventory)
            {
                this.CreateMessage(this.Placeholder1);
                return;
            }

            this.CreateGridView(this.Placeholder1);
            this.CreateBottomPanel(this.Placeholder1);
            this.RegisterJavascript();
        }
Пример #25
0
        public void Reject(long tranId, string reason)
        {
            try
            {
                int       officeId             = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();
                int       userId               = AppUsers.GetCurrentLogin().View.UserId.ToInt();
                long      loginId              = AppUsers.GetCurrentLogin().View.LoginId.ToLong();
                const int verificationStatusId = -3;

                Transaction.Verify(AppUsers.GetCurrentUserDB(), tranId, officeId, userId, loginId, verificationStatusId,
                                   reason);
            }
            catch (Exception ex)
            {
                Log.Warning("Could not reject transaction #{TranId} with reason {Reason}. {Exception}", tranId, reason,
                            ex);
                throw;
            }
        }
Пример #26
0
        private void BindGrid()
        {
            DateTime from   = Conversion.TryCastDate(this.fromDateTextBox.Text);
            DateTime to     = Conversion.TryCastDate(this.toDateTextBox.Text);
            decimal  factor = Conversion.TryCastDecimal(this.factorInputText.Value);

            bool compact    = this.ShowCompact();
            bool changeSide = this.ChangeSideWhenNegative();
            bool includeZeroBalanceAccounts = this.IncludeZeroBalanceAccounts();

            int userId   = AppUsers.GetCurrentLogin().View.UserId.ToInt();
            int officeId = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();

            using (DataTable table = Data.Reports.TrialBalance.GetTrialBalance(AppUsers.GetCurrentUserDB(), from, to, userId, officeId, compact, factor, changeSide, includeZeroBalanceAccounts))
            {
                this.trialBalanceGridView.DataSource = table;
                this.trialBalanceGridView.DataBind();
            }
        }
Пример #27
0
        private void AddFromDateTextBoxField(HtmlGenericControl container)
        {
            using (HtmlGenericControl field = HtmlControlHelper.GetField())
            {
                using (HtmlGenericControl label = HtmlControlHelper.GetLabel(Titles.From, "FromDateTextBox"))
                {
                    field.Controls.Add(label);
                }
                this.fromDateTextBox          = new DateTextBox();
                this.fromDateTextBox.ID       = "FromDateTextBox";
                this.fromDateTextBox.Mode     = FrequencyType.FiscalYearStartDate;
                this.fromDateTextBox.Catalog  = AppUsers.GetCurrentUserDB();
                this.fromDateTextBox.OfficeId = AppUsers.GetCurrentLogin().View.OfficeId.ToInt();

                field.Controls.Add(this.fromDateTextBox);

                container.Controls.Add(field);
            }
        }
Пример #28
0
        public Collection <ListItem> GetAccounts()
        {
            if (Switches.AllowParentAccountInGlTransaction())
            {
                if (AppUsers.GetCurrentLogin().View.IsAdmin.ToBool())
                {
                    return(GetValues(AccountHelper.GetAccounts(AppUsers.GetCurrentUserDB())));
                }


                return(GetValues(AccountHelper.GetNonConfidentialAccounts(AppUsers.GetCurrentUserDB())));
            }

            if (AppUsers.GetCurrentLogin().View.IsAdmin.ToBool())
            {
                return(GetValues(AccountHelper.GetChildAccounts(AppUsers.GetCurrentUserDB())));
            }

            return(GetValues(AccountHelper.GetNonConfidentialChildAccounts(AppUsers.GetCurrentUserDB())));
        }
Пример #29
0
        public override void OnControlLoad(object sender, EventArgs e)
        {
            using (Checklist checklist = new Checklist())
            {
                checklist.ViewReportButtonText = Titles.ViewThisRequest;
                checklist.Text = Titles.StockTransferRequest;
                checklist.AttachmentBookName      = "inventory.transfer.request";
                checklist.OverridePath            = "/Modules/Inventory/TransferRequest.mix";
                checklist.DisplayWithdrawButton   = true;
                checklist.DisplayViewReportButton = true;
                checklist.DisplayAttachmentButton = true;
                checklist.ReportPath = "~/Modules/Inventory/Reports/InventoryTransferRequest.mix";
                checklist.ViewPath   = "/Modules/Inventory/TransferRequest.mix";
                checklist.AddNewPath = "/Modules/Inventory/Entry/TransferRequest.mix";
                checklist.UserId     = AppUsers.GetCurrentLogin().View.UserId.ToInt();
                checklist.RestrictedTransactionMode = this.IsRestrictedMode;

                this.Placeholder1.Controls.Add(checklist);
            }
        }
Пример #30
0
        public override void OnControlLoad(object sender, EventArgs e)
        {
            using (Checklist checklist = new Checklist())
            {
                checklist.Text = Titles.JournalVoucherEntry;
                checklist.DisplayWithdrawButton     = true;
                checklist.DisplayPrintGlEntryButton = true;
                checklist.DisplayAttachmentButton   = true;
                checklist.AttachmentBookName        = "transaction";
                checklist.OverridePath = this.OverridePath;

                checklist.ViewPath     = "~/Modules/Finance/JournalVoucher.mix";
                checklist.AddNewPath   = "~/Modules/Finance/Entry/JournalVoucher.mix";
                checklist.GlAdvicePath = "~/Modules/Finance/Reports/GLAdviceReport.mix";
                checklist.UserId       = AppUsers.GetCurrentLogin().View.UserId.ToInt();
                checklist.RestrictedTransactionMode = this.IsRestrictedMode;

                this.Placeholder1.Controls.Add(checklist);
            }
        }