private void SaveBtnClick(object sender, RoutedEventArgs e)
        {
            decimal ContractFee;
            decimal prehavalefee;

            if (CurrentDraft.PaymentDraftId == 0)
            {
                CurrentDraft.ContractId = CurrentContract.Contractid;
            }
            int ContractTypeId = DataManagement.RetrieveContractTypeId(CurrentDraft);

            ContractFee   = (Int64)DataManagement.RetrieveContractBudget(CurrentDraft);
            prehavalefee  = DataManagement.RetrieveSumPreHavale(ContractTypeId, CurrentDraft);
            prehavalefee += Convert.ToDecimal(t1.Text);

            if (Convert.ToInt64(prehavalefee) > Convert.ToInt64(ContractFee))
            {
                ErrorHandler.ShowErrorMessage("مبلغ كاركرد حواله از سقف مبلغ قرارداد بالاتر ميباشد");
                return;
            }
            if (Validate())
            {
                return;
            }
            CalcBtn_Click(sender, e);
            try
            {
                if (CurrentDraft.PaymentDraftId == 0)
                {
                    CurrentDraft.ContractId = CurrentContract.Contractid;
                    DataManagement.CreatePaymentDraft(CurrentDraft);
                }
                else
                {
                    CurrentDraft.PermanentRecord = false;
                    DataManagement.UpdatePaymentDrafts(CurrentDraft);
                }
                DataManagement.UpdatePaymentDraftTranscripts(Transcripts, CurrentDraft);
                Transcripts = DataManagement.RetrievePaymentDraftTranscripts(CurrentDraft);
                TranscriptGrid.ItemsSource = Transcripts;
                TranscriptGrid.Items.Refresh();
                ErrorHandler.NotifyUser("ثبت با موفقیت انجام شد");
            }
            catch
            {
                ErrorHandler.NotifyUser("ثبت با مشکل مواجه شد");
            }
        }