private void FillWithRemains()
        {
            int num = 1;

            // получить список приходов, по которым есть остатки
            List <SpareInSpareIncomeView> incomes = da.GetActualIncomes();

            foreach (SpareInSpareIncomeView income in incomes)
            {
                int SpareID = income.SpareID.Value;

                // создаем новую запись в таблице переоценки
                spare_in_overpricing sio = new spare_in_overpricing();

                // наполняем данными
                sio.num = num++;

                sio.percentOld    = (int)income.Markup;
                sio.priceOld      = income.POut.Value;
                sio.purchasePrice = income.PIn.Value;
                sio.quantity      = (int)income.QIn;
                sio.receiptDate   = income.SpareIncomeDate;
                sio.spare         = da.GetSpare(SpareID);
                sio.sumOld        = income.S;

                sio.overpricing           = da.OverpricingGet(Item.id);
                sio.spare_in_spare_income = da.InOfferingGet(income.id);

                // сохраняем в БД
                da.OverpricingOfferingCreate(sio);
            }
        }
        private void AddSelectedSpareToOverpricing()
        {
            // получаем ID запчасти
            int SpareID = (dgSpares.SelectedItem as SpareView).id;

            // получаем список неизрасходованных поступлений данной запчасти
            List <SpareInSpareIncomeView> incomes = da.GetIncomes(SpareID);

            // каждое поступление прикрепляем к переоценке
            foreach (SpareInSpareIncomeView income in incomes)
            {
                // создаем новую запись в таблице переоценки
                spare_in_overpricing sio = new spare_in_overpricing();

                // наполняем данными
                sio.num                   = 0;
                sio.overpricing           = da.OverpricingGet(_ParentItemID);
                sio.percentOld            = (int)income.Markup;
                sio.priceOld              = income.POut.Value;
                sio.purchasePrice         = income.PIn.Value;
                sio.quantity              = (int)income.QIn;
                sio.receiptDate           = income.SpareIncomeDate;
                sio.spare                 = da.GetSpare(SpareID);
                sio.sumOld                = income.S;
                sio.spare_in_spare_income = da.InOfferingGet(income.id);

                // сохраняем в БД
                da.OverpricingOfferingCreate(sio);
            }
            if (ParentWindow != null)
            {
                ParentWindow.LoadOfferings();
                ParentWindow.dgSpares.UpdateLayout();
                ParentWindow.dgSpares.ScrollIntoView(dgSpares.Items[dgSpares.Items.Count - 1]);
            }
        }