Beispiel #1
0
        private DamaiDataSet.AccVouchRow CalcTotalAndSetMoney()
        {
            var rowView = accVouchBindingSource.Current as DataRowView;

            if (rowView == null)
            {
                return(null);
            }
            DamaiDataSet.AccVouchRow parent = rowView.Row as DamaiDataSet.AccVouchRow;
            if (parent == null)
            {
                return(parent);
            }
            decimal credit = 0, debt = 0;
            var     details = parent.GetAccVouchDetailRows();

            foreach (var row in details)
            {
                if (!row.IsCreditNull())
                {
                    credit += row.Credit;
                }
                if (!row.IsDebtNull())
                {
                    debt += row.Debt;
                }
            }
            labelDebt.Text   = debt.ToString("N2");
            labelCredit.Text = credit.ToString("N2");
            if (parent.IsMoneyNull() || parent.Money != debt)
            {
                parent.Money = debt;
            }
            return(parent);
        }
Beispiel #2
0
        private void dgvAccVoucher_UserDeletingRow(object sender, DataGridViewRowCancelEventArgs e)
        {
            var             view    = sender as DataGridView;
            DataGridViewRow viewRow = e.Row;
            var             rowView = viewRow.DataBoundItem as DataRowView;

            if (rowView == null)
            {
                return;
            }
            DamaiDataSet.AccVouchRow acc = rowView.Row as DamaiDataSet.AccVouchRow;
            var details = acc.GetAccVouchDetailRows();
            var dic     = new Dictionary <AccDataSource, List <int> >();

            dic.Add(AccDataSource.Voucher, new List <int>());
            dic.Add(AccDataSource.Expense, new List <int>());
            dic.Add(AccDataSource.PosRevenue, new List <int>());
            dic.Add(AccDataSource.Shipment, new List <int>());
            dic.Add(AccDataSource.Bank, new List <int>());
            List <int> list = new List <int>();

            foreach (var acc1 in details)
            {
                if ((!acc1.IsSourceDataTypeNull()) && (!acc1.IsSourceDataIDNull()))
                {
                    if (dic.TryGetValue((AccDataSource)acc1.SourceDataType, out list))
                    {
                        list.Add(acc1.SourceDataID);
                    }
                }
                acc1.Delete();
            }
            foreach (var pair in dic)
            {
                DeleteRelatedDGV(pair.Key, pair.Value);
            }
        }