コード例 #1
0
        private void btnRenumber_Click(object sender, EventArgs e)
        {
            List <BankTrx> objToChange = new List <BankTrx>();

            if (!Int32.TryParse(txtStartNumber.Text, out int startNumber))
            {
                HostUI.ErrorMessageBox("Invalid starting check number.");
                return;
            }
            if (!Int32.TryParse(txtEndNumber.Text, out int endNumber))
            {
                HostUI.ErrorMessageBox("Invalid ending check number.");
                return;
            }
            if (!Int32.TryParse(txtAddNumber.Text, out int addNumber))
            {
                HostUI.ErrorMessageBox("Invalid amount to add to each check number.");
                return;
            }
            Register reg = HostUI.GetCurrentRegister();

            foreach (var objNormal in reg.GetDateRange <BankTrx>(ctlStartDate.Value, ctlEndDate.Value))
            {
                if (Int32.TryParse(objNormal.Number, out int checkNumber))
                {
                    if (checkNumber >= startNumber && checkNumber <= endNumber)
                    {
                        objToChange.Add(objNormal);
                        //HostUI.InfoMessageBox("Renumbering " + objNormal.ToString());
                    }
                }
            }
            // Cannot change number during initial scan, because this changes the register order.
            if (HostUI.OkCancelMessageBox("Found " + objToChange.Count + " checks to renumber. Continue?") == DialogResult.OK)
            {
                foreach (var objNormal in objToChange)
                {
                    NormalTrxManager objMgr = new NormalTrxManager(objNormal);
                    int checkNumber         = Int32.Parse(objNormal.Number);
                    objMgr.UpdateStart();
                    string newNumber = (checkNumber + addNumber).ToString();
                    lblProgress.Text = "Changing #" + objMgr.Trx.Number + " to #" + newNumber;
                    lblProgress.Refresh();
                    objMgr.Trx.Number = newNumber;
                    objMgr.UpdateEnd(new LogChange(), "RenumberChecksForm.ChangeNumber");
                }
                HostUI.InfoMessageBox("Renumbered " + objToChange.Count + " checks.");
                this.DialogResult = DialogResult.OK;
                this.Close();
            }
        }
コード例 #2
0
ファイル: UpdateNormalTrx.cs プロジェクト: timyaukey/CheckNET
        protected override void BeginProcessing()
        {
            if (OneSplit == null && Splits == null)
            {
                List <SplitContent> newSplits = new List <SplitContent>();
                foreach (TrxSplit oldSplit in NormalTrx.Splits)
                {
                    newSplits.Add(new SplitContent
                    {
                        strCatKey     = oldSplit.CategoryKey,
                        strPONumber   = oldSplit.PONumber,
                        strInvoiceNum = oldSplit.InvoiceNum,
                        datInvoice    = oldSplit.InvoiceDate,
                        datDue        = oldSplit.DueDate,
                        curAmount     = oldSplit.Amount,
                        strBudgetKey  = oldSplit.BudgetKey,
                        strMemo       = oldSplit.Memo,
                        strTerms      = oldSplit.Terms
                    });
                }
                Splits = newSplits.ToArray();
            }
            else if (OneSplit != null && Splits != null)
            {
                ThrowTerminatingError(ErrorUtilities.CreateInvalidOperation("-OneSplit and -Splits may not both be specified", "SplitError"));
            }
            NormalTrxManager mgr = new NormalTrxManager(NormalTrx);

            mgr.Update(delegate(BankTrx objTrx)
            {
                objTrx.UpdateStartNormal(
                    strNumber_: !string.IsNullOrEmpty(Number) ? Number : objTrx.Number,
                    datDate_: Date.HasValue ? Date.Value : objTrx.TrxDate,
                    strDescription_: !string.IsNullOrEmpty(Description) ? Description : objTrx.Description,
                    strMemo_: Memo != null ? Memo : objTrx.Memo,
                    lngStatus_: Status.HasValue ? Status.Value : objTrx.Status,
                    blnFake_: Fake.HasValue ? Fake.Value : objTrx.IsFake,
                    curNormalMatchRange_: NormalMatchRange.HasValue ? NormalMatchRange.Value : objTrx.NormalMatchRange,
                    blnAwaitingReview_: AwaitingReview.HasValue ? AwaitingReview.Value : objTrx.IsAwaitingReview,
                    blnAutoGenerated_: false,
                    intRepeatSeq_: objTrx.RepeatSeq,
                    strImportKey_: !string.IsNullOrEmpty(ImportKey) ? ImportKey : objTrx.ImportKey,
                    strRepeatKey_: objTrx.RepeatKey);
                if (OneSplit != null)
                {
                    OneSplit.AddToNormalTrx(objTrx);
                }
                else
                {
                    foreach (SplitContent split in Splits)
                    {
                        split.AddToNormalTrx(objTrx);
                    }
                }
                objTrx.Register.ValidationError += Register_ValidationError;
                try
                {
                    objTrx.Validate();
                    if (TrxValidationError != null)
                    {
                        ThrowTerminatingError(ErrorUtilities.CreateInvalidOperation(TrxValidationError, "InvalidTrx"));
                    }
                }
                finally
                {
                    objTrx.Register.ValidationError -= Register_ValidationError;
                }
            }, new LogChange(), "PowershellAddNormalTrx");
        }