private void openTemplate(MoneyDataSet.TransactionTemplatesRow template)
        {
            TemplateForm form = new TemplateForm(template);

            if (form.ShowDialog(this) == DialogResult.OK)
            {
                fillTemplates();
            }
        }
Example #2
0
 public PlanEditForm(MoneyDataSet.TransactionTemplatesRow template,
     MoneyDataSet.PlannedTransactionsRow sourcePlan = null, MoneyDataSet.PlannedTransactionsRow destinationPlan = null, bool isCopy = false)
 {
     InitializeComponent();
     this.keeper = MoneyDataKeeper.Instance;
     this.template = template;
     this.sourcePlan = sourcePlan;
     this.destinationPlan = destinationPlan;
     this.isCopy = isCopy;
 }
Example #3
0
 public PlanEditForm(MoneyDataSet.TransactionTemplatesRow template,
                     MoneyDataSet.PlannedTransactionsRow sourcePlan = null, MoneyDataSet.PlannedTransactionsRow destinationPlan = null, bool isCopy = false)
 {
     InitializeComponent();
     this.keeper          = MoneyDataKeeper.Instance;
     this.template        = template;
     this.sourcePlan      = sourcePlan;
     this.destinationPlan = destinationPlan;
     this.isCopy          = isCopy;
 }
Example #4
0
 public ImportedRecord(DateTime date, MoneyDataSet.TransactionTemplatesRow template, String title,
                       Double amount, MoneyDataSet.AccountTypesRow accountType, String tags)
 {
     Date        = date;
     Template    = template;
     Title       = title;
     Amount      = amount;
     AccountType = accountType;
     Tags        = tags;
 }
Example #5
0
        /// <summary>
        /// Add template to a specific list
        /// </summary>
        /// <param name="collection">List, where to add template</param>
        /// <param name="template">Template to add</param>
        /// <param name="onClick">Click handlers</param>
        public static void InsertTemplate(ToolStripItemCollection collection, MoneyDataSet.TransactionTemplatesRow template, EventHandler onClick)
        {
            Image image = null;

            if (template.ID.Equals(MoneyDataSet.IDs.TransactionTemplates.Transfer))
            {
                image = Properties.Resources.table_relationship;
            }
            ToolStripMenuItem tsmiFromTemplate = new ToolStripMenuItem(template.Title, image, onClick);

            tsmiFromTemplate.Tag         = template;
            tsmiFromTemplate.ToolTipText = template.Message;

            collection.Add(tsmiFromTemplate);
        }
        public TransactionEditForm(MoneyDataSet.TransactionTemplatesRow template, MoneyDataSet.PlannedTransactionsRow plan = null)
        {
            InitializeComponent();
            this.keeper = MoneyDataKeeper.Instance;
            this.template = template;
            this.sourcePlan = plan;

            sourceAccounts = keeper.GetAccounts(template.AccountTypesRowByFK_AccountTypes_Source_TransactionTemplates,
                template.ExactSourceAccountType);

            if (template.HasDestinationAccount)
            {
                if (sourcePlan != null)
                {
                    int pairID = sourcePlan.PairReferenceID;
                    sourcePlan = null;

                    // trying to find source and destination plans
                    foreach(MoneyDataSet.PlannedTransactionsRow pairedPlan in keeper.PlannedTransactions.Where(p =>
                        ((!p.IsPairReferenceIDNull()) && (p.PairReferenceID != 0) && (p.PairReferenceID == pairID))))
                    {
                        if (pairedPlan.TransactionTypeID.Equals(template.SourceTransactionTypeID))
                        {
                            sourcePlan = pairedPlan;
                        }
                        if (pairedPlan.TransactionTypeID.Equals(template.DestinationTransactionTypeID))
                        {
                            destinationPlan = pairedPlan;
                        }
                    }
                }

                destinationAccounts = keeper.GetAccounts(template.AccountTypesRowByFK_AccountTypes_Destination_TransactionTemplates,
                    template.ExactDestinationAccountType);
            }
        }
        public TransactionEditForm(MoneyDataSet.TransactionTemplatesRow template, MoneyDataSet.PlannedTransactionsRow plan = null)
        {
            InitializeComponent();
            this.keeper     = MoneyDataKeeper.Instance;
            this.template   = template;
            this.sourcePlan = plan;

            sourceAccounts = keeper.GetAccounts(template.AccountTypesRowByFK_AccountTypes_Source_TransactionTemplates,
                                                template.ExactSourceAccountType);

            if (template.HasDestinationAccount)
            {
                if (sourcePlan != null)
                {
                    int pairID = sourcePlan.PairReferenceID;
                    sourcePlan = null;

                    // trying to find source and destination plans
                    foreach (MoneyDataSet.PlannedTransactionsRow pairedPlan in keeper.PlannedTransactions.Where(p =>
                                                                                                                ((!p.IsPairReferenceIDNull()) && (p.PairReferenceID != 0) && (p.PairReferenceID == pairID))))
                    {
                        if (pairedPlan.TransactionTypeID.Equals(template.SourceTransactionTypeID))
                        {
                            sourcePlan = pairedPlan;
                        }
                        if (pairedPlan.TransactionTypeID.Equals(template.DestinationTransactionTypeID))
                        {
                            destinationPlan = pairedPlan;
                        }
                    }
                }

                destinationAccounts = keeper.GetAccounts(template.AccountTypesRowByFK_AccountTypes_Destination_TransactionTemplates,
                                                         template.ExactDestinationAccountType);
            }
        }
Example #8
0
 public TemplateForm(MoneyDataSet.TransactionTemplatesRow existingItem)
 {
     InitializeComponent();
     this.keeper       = MoneyDataKeeper.Instance;
     this.existingItem = existingItem;
 }
Example #9
0
        private void btnOk_Click(object sender, EventArgs e)
        {
            // TODO: consider adding some validation or plausibility checks

            if (existingItem != null)
            {
                if (existingItem.ID.StartsWith(Consts.Keeper.UserMetadataPrefix))
                {
                    existingItem.Title   = tbTitle.Text.Trim();
                    existingItem.Message = tbMessage.Text.Trim();
                    existingItem.TransactionDefaultTitle = tbTransactionDefaultTitle.Text.Trim();
                    existingItem.TransactionTypesRowByFK_TransactionTypes_Source_TransactionTemplates =
                        cbSourceTransactionType.SelectedItem as MoneyDataSet.TransactionTypesRow;
                    existingItem.AccountTypesRowByFK_AccountTypes_Source_TransactionTemplates =
                        cbSourceAccountType.SelectedItem as MoneyDataSet.AccountTypesRow;
                    existingItem.ExactSourceAccountType = cbExactSourceAccountType.Checked;
                    if (cbIsIncome.CheckState == CheckState.Indeterminate)
                    {
                        existingItem.SetIsIncomeNull();
                    }
                    else
                    {
                        existingItem.IsIncome = cbIsIncome.Checked;
                    }
                    existingItem.HasDestinationAccount = cbHasDestinationAccount.Checked;
                    if (cbHasDestinationAccount.Checked)
                    {
                        existingItem.TransactionTypesRowByFK_TransactionTypes_Destination_TransactionTemplates =
                            cbDestinationTransactionType.SelectedItem as MoneyDataSet.TransactionTypesRow;
                        existingItem.AccountTypesRowByFK_AccountTypes_Destination_TransactionTemplates =
                            cbDestinationAccountType.SelectedItem as MoneyDataSet.AccountTypesRow;
                        existingItem.ExactDestinationAccountType = cbExactDestinationAccountType.Checked;
                        existingItem.IsAmountIdentical           = cbIsAmountIdentical.Checked;
                    }
                }
                existingItem.IsVisible = cbIsVisible.Checked;
            }
            else
            {
                String ID = tbID.Text.Trim().ToUpper();
                if (keeper.DataSet.TransactionTemplates.FindByID(ID) != null)
                {
                    MessageBox.Show(String.Format(Resources.Labels.RecordExistFormat, ID),
                                    Resources.Labels.ErrorSavingTitle, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                else if (!ID.StartsWith(Consts.Keeper.UserMetadataPrefix))
                {
                    MessageBox.Show(String.Format(Resources.Labels.UserIDShouldHavePrefixFormat, Consts.Keeper.UserMetadataPrefix),
                                    Resources.Labels.ErrorSavingTitle, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                MoneyDataSet.TransactionTemplatesRow template = keeper.DataSet.TransactionTemplates.NewTransactionTemplatesRow();
                template.ID      = ID;
                template.Title   = tbTitle.Text.Trim();
                template.Message = tbMessage.Text.Trim();
                template.TransactionDefaultTitle = tbTransactionDefaultTitle.Text.Trim();
                template.TransactionTypesRowByFK_TransactionTypes_Source_TransactionTemplates =
                    cbSourceTransactionType.SelectedItem as MoneyDataSet.TransactionTypesRow;
                template.AccountTypesRowByFK_AccountTypes_Source_TransactionTemplates =
                    cbSourceAccountType.SelectedItem as MoneyDataSet.AccountTypesRow;
                template.ExactSourceAccountType = cbExactSourceAccountType.Checked;
                template.IsVisible = cbIsVisible.Checked;
                if (cbIsIncome.CheckState == CheckState.Indeterminate)
                {
                    template.SetIsIncomeNull();
                }
                else
                {
                    template.IsIncome = cbIsIncome.Checked;
                }
                template.HasDestinationAccount = cbHasDestinationAccount.Checked;
                if (cbHasDestinationAccount.Checked)
                {
                    template.TransactionTypesRowByFK_TransactionTypes_Destination_TransactionTemplates =
                        cbDestinationTransactionType.SelectedItem as MoneyDataSet.TransactionTypesRow;
                    template.AccountTypesRowByFK_AccountTypes_Destination_TransactionTemplates =
                        cbDestinationAccountType.SelectedItem as MoneyDataSet.AccountTypesRow;
                    template.ExactDestinationAccountType = cbExactDestinationAccountType.Checked;
                    template.IsAmountIdentical           = cbIsAmountIdentical.Checked;
                }

                keeper.DataSet.TransactionTemplates.AddTransactionTemplatesRow(template);
            }
            keeper.DataSet.AcceptChanges();
            this.DialogResult = DialogResult.OK;
            this.Close();
        }
Example #10
0
 public TemplateForm(MoneyDataSet.TransactionTemplatesRow existingItem)
 {
     InitializeComponent();
     this.keeper = MoneyDataKeeper.Instance;
     this.existingItem = existingItem;
 }