Как сохранить 2 и более таблицы C# access?

Такая проблема. Не получается сохранить 2 таблицы.

Есть 2 таблицы : договоры и детали договоров. Форма договора заполняет сам договор и ниже таблица с деталями и навигатором через который я добавляю детали договора на другой форме.Сохранение 2ух таблиц сразу И так же имеется кнопка сохранить... однако она сохраняет только таблицу договоров но не детали Код привязан к кнопке сохранить

private void productsReceiptBindingNavigatorSaveItem_Click(object sender, EventArgs e)
        {
            this.Validate();
            this.productsReceiptBindingSource.EndEdit();
            this.productsReceiptDetailsBindingSource.EndEdit();
            this.tableAdapterManager.UpdateAll(this.comfortHouseDataSet);
        }`

Код привязан к добавлению деталей накладной

private void DetailsAddNewItem_Click(object sender, EventArgs e)
    {
        DataRowView newDetail = (DataRowView)this.productsReceiptDetailsBindingSource.AddNew();

        frmPructsReceiptDetails detailForm = new frmPructsReceiptDetails();

        using (detailForm)
        {
            detailForm.EditDetails(this.productsReceiptDetailsBindingSource, this.productsBindingSource);
        }
    }

А этот на форме с деталями

 using MaterialSkin.Controls;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace ComfortHouse
{
    public partial class frmPructsReceiptDetails : MaterialForm
    {
        public frmPructsReceiptDetails()
        {
            InitializeComponent();
        }

        private void frmPructsReceiptDetails_Load(object sender, EventArgs e)
        {

        }
        BindingSource productsReceiptDetailsBindingSource, productsBindingSource;
        ComfortHouseDataSet.ProductsDataTable productsTable;
        DataRowView productsReceiptDetailsDataRowView;

        public void EditDetails(BindingSource ProductsReceiptDetailsBindingSource,
                               BindingSource ProductsBindingSource)
        {
            this.productsBindingSource = ProductsBindingSource;
            this.productsTable = (ComfortHouseDataSet.ProductsDataTable)((DataView)this.productsBindingSource.List).Table;

            this.productsReceiptDetailsBindingSource = ProductsReceiptDetailsBindingSource;
            this.productsReceiptDetailsDataRowView = (DataRowView)this.productsReceiptDetailsBindingSource.Current;

            if (productsReceiptDetailsDataRowView.IsNew)
            {
                ComfortHouseDataSet.ProductsRow product = this.productsTable[0];
                productsReceiptDetailsDataRowView["ProductID"] = product.ProductID;
                productsReceiptDetailsDataRowView["ReceiptQuantity"] = 0;
                productsReceiptDetailsDataRowView["ReceiptPrice"] = product.ReceiptPrice;
                productsReceiptDetailsDataRowView["Sum"] = 0.00;
            }

            this.productIDComboBox.DisplayMember = "ProductName";
            this.productIDComboBox.ValueMember = "ProductID";
            this.productIDComboBox.DataSource = this.productsBindingSource;
            this.productIDComboBox.DataBindings.Add("SelectedValue", this.productsReceiptDetailsBindingSource, "ProductID");
            this.productIDComboBox.SelectionChangeCommitted += new EventHandler
                (productIDComboBox_SelectionChangeCommitted);

            this.ReceiptQuantityTextBox.DataBindings.Add("Text",
                this.productsReceiptDetailsBindingSource, "ReceiptQuantity", true,
                DataSourceUpdateMode.OnValidation, "<Null>", "");


            this.ReceiptPriceTextBox.DataBindings.Add("Text",
                this.productsReceiptDetailsBindingSource, "ReceiptPrice", true,
                DataSourceUpdateMode.OnValidation, "<Null>", "C2");

            if (this.productsReceiptDetailsDataRowView.IsNew)
            {
                this.ReceiptQuantityTextBox.Text = this.ReceiptPriceTextBox.Text;
            }

            if (this.ShowDialog() == DialogResult.OK)
            {
                this.productsReceiptDetailsBindingSource.EndEdit();
                this.Dispose();
            }
            else
            {
                this.productsReceiptDetailsBindingSource.CancelEdit();
                this.Dispose();
            }
        }

        void productIDComboBox_SelectionChangeCommitted(object sender, EventArgs e)
        {
            int productID = (int)this.productIDComboBox.SelectedValue;
            ComfortHouseDataSet.ProductsRow productRow = this.productsTable.FindByProductID(productID);
            this.ReceiptPriceTextBox.Text = productRow.ReceiptPrice.ToString("C");
        }

        private void btnOk_Click(object sender, EventArgs e)
        {
            this.productsReceiptDetailsBindingSource.EndEdit();
            this.Dispose();
        }
    }
}

Ответы (0 шт):