Пример #1
0
        public bool FillTableStockDocuments(MDataSet.InvoiceMasterDataTable source, int numPeriods)
        {
            MDataSet.InvoiceMasterDataTable _tmpMaster = new MDataSet.InvoiceMasterDataTable();
            MDataSet.InvoiceDetailDataTable _tmpDetail = new MDataSet.InvoiceDetailDataTable();
            MDataSet.RemainsDataTable       _rem       = new MDataSet.RemainsDataTable();
            MDataSet.ProductDataTable       _prod      = new MDataSet.ProductDataTable();


            try
            {
                this.invoiceMasterTableAdapter.FillByPeriodNum(_tmpMaster, numPeriods);

                this.mDataSet.InvoiceMaster.Merge(_tmpMaster);

                foreach (MDataSet.InvoiceMasterRow mr in  _tmpMaster)
                {
                    this.invoiceDetailTableAdapter.FillByInvoiceMasterRef(_tmpDetail, mr.ID);


                    this.RemainsTableAdapter.FillByInvoiceMasterID(_rem, mr.ID);

                    foreach (MDataSet.RemainsRow _remrow in _rem)
                    {
                        if (_remrow.ProductRow == null)
                        {
                            this.productTableAdapter.FillById(_prod, _remrow.ProductRef);
                            this.mDataSet.Product.Merge(_prod);
                        }
                    }
                    this.mDataSet.Remains.Merge(_rem);
                    this.mDataSet.InvoiceDetail.Merge(_tmpDetail);
                }
            }
            catch (SqlException sqlerr)
            {
                if (sqlerr.Class < 17)
                {
                    MessageBox.Show(sqlerr.Message);
                }
                else
                {
                    caughtGlobalError(sqlerr);
                }

                Log("FillTableStockDocuments(MDataSet.InvoiceMasterDataTable source) ERROR" + sqlerr.Message + " " + sqlerr.Source + sqlerr.InnerException.Message);

                return(false);
            }
            catch (Exception err)
            {
                MessageBox.Show(err.Message);
                Log("FillTableStockDocuments(MDataSet.InvoiceMasterDataTable source) ERROR" + err.Message + " " + err.Source);

                return(false);
            }
            finally
            {
            }
            return(true);
        }
Пример #2
0
        public bool RefreshData(MDataSet.InvoiceMasterRow sourceRow)
        {
            if (sourceRow == null)
            {
                return(false);
            }

            MDataSet.InvoiceMasterDataTable _invoiceMasterDataTable = new MDataSet.InvoiceMasterDataTable();
            MDataSet.InvoiceDetailDataTable _invoiceDetailDataTable = new MDataSet.InvoiceDetailDataTable();
            MDataSet.RemainsDataTable       _remainsDataTable       = new MDataSet.RemainsDataTable();

            try
            {
                this.RemainsTableAdapter.FillByInvoiceMasterID(_remainsDataTable, sourceRow.ID);
                this.invoiceMasterTableAdapter.FillNew(_invoiceMasterDataTable);
                this.invoiceDetailTableAdapter.FillByInvoiceMasterRef(_invoiceDetailDataTable, sourceRow.ID);
            }
            catch (Exception err)
            {
                MessageBox.Show(err.Message);
                Log("RefreshData(MDataSet.InvoiceMasterRow sourceRow) " + err.Message + " " + err.Source);

                return(false);
            }
            finally
            {
                this.mDataSet.Remains.Merge(_remainsDataTable);
                this.mDataSet.InvoiceMaster.Merge(_invoiceMasterDataTable);
                this.mDataSet.InvoiceDetail.Merge(_invoiceDetailDataTable);
            }
            return(true);
        }
Пример #3
0
        public RemainsLocal(MDataSet.RemainsDataTable source)
        {
            InitializeComponent();


            this.remainsBindingSource.DataSource = new DataView(source, "quantityRemains<>0", null, DataViewRowState.CurrentRows);
        }
Пример #4
0
        public bool SaveToBase(MDataSet.InvoiceMasterRow sourceRow)
        {
            MDataSet.RemainsDataTable _rem = new MDataSet.RemainsDataTable();

            try
            {
                int res = this.invoiceMasterTableAdapter.Update(sourceRow);


                int res1 = this.invoiceDetailTableAdapter.Update(this.mDataSet.InvoiceDetail);

                if (sourceRow.HasVersion(DataRowVersion.Current))
                {
                    this.RemainsTableAdapter.FillByInvoiceMasterID(_rem, sourceRow.ID);

                    this.mDataSet.Remains.Merge(_rem);
                }
            }
            catch (DBConcurrencyException dbcx)
            {
                this.onInvoiceMasterDBCError(dbcx);
                return(false);
            }

            catch (SqlException sqlerr)
            {
                if (sqlerr.Class < 17)
                {
                    OnInvoiceMasterSQLError(sqlerr, sourceRow);
                }
                else
                {
                    caughtGlobalError(sqlerr);
                }

                Log("SaveToBase(MDataSet.InvoiceMasterRow sourceRow) ERROR" + sqlerr.Message + " " + sqlerr.Source + sqlerr.InnerException.Message);


                return(false);
            }
            catch (Exception err)

            {
                MessageBox.Show(err.Message);
                Log("SaveToBase(MDataSet.InvoiceMasterRow sourceRow) ERROR" + err.Message + " " + err.Source);

                return(false);
            }
            finally
            {
                RefreshData(sourceRow.Table as MDataSet.InvoiceMasterDataTable);
            }
            return(true);
        }
Пример #5
0
        public bool RefreshData(MDataSet.InvoiceMasterRow sourceRow)
        {
            if (sourceRow == null)
            {
                return(false);
            }

            MDataSet.InvoiceMasterDataTable _invoiceMasterDataTable = new MDataSet.InvoiceMasterDataTable();
            MDataSet.InvoiceDetailDataTable _invoiceDetailDataTable = new MDataSet.InvoiceDetailDataTable();
            MDataSet.RemainsDataTable       _remainsDataTable       = new MDataSet.RemainsDataTable();

            try
            {
                this.invoiceDetailTableAdapter.Update(this.mDataSet.InvoiceDetail);

                this.RemainsTableAdapter.FillByInvoiceMasterID(_remainsDataTable, sourceRow.ID);

                this.invoiceMasterTableAdapter.FillNew(_invoiceMasterDataTable);

                this.invoiceDetailTableAdapter.FillNew(_invoiceDetailDataTable);
            }

            catch (DBConcurrencyException dbcx)
            {
                this.onInvoiceDetailDBCError(dbcx);
                this.LabelUser.Text = "Ошибка совмесного доступа";
                MainForm.Log(dbcx.Message);
                RefreshData(sourceRow);

                return(false);
            }

            catch (Exception err)
            {
                MessageBox.Show(err.Message);
                Log("RefreshData(MDataSet.InvoiceMasterRow sourceRow) " + err.Message + " " + err.Source);

                return(false);
            }
            finally
            {
                MergeRemains(_remainsDataTable);

                this.mDataSet.InvoiceMaster.Merge(_invoiceMasterDataTable);
                this.mDataSet.InvoiceDetail.Merge(_invoiceDetailDataTable);
            }
            return(true);
        }
Пример #6
0
        public bool FillTableNewDocuments(MDataSet.InvoiceMasterDataTable source)
        {
            MDataSet.InvoiceMasterDataTable _tmpMaster  = new MDataSet.InvoiceMasterDataTable();
            MDataSet.InvoiceDetailDataTable _tmpDetail  = new MDataSet.InvoiceDetailDataTable();
            MDataSet.RemainsDataTable       _tmpRemains = new MDataSet.RemainsDataTable();

            try
            {
                this.RemainsTableAdapter.Fill(_tmpRemains);

                this.invoiceMasterTableAdapter.Fill(_tmpMaster);
                this.invoiceDetailTableAdapter.Fill(_tmpDetail);
            }

            catch (SqlException sqlerr)
            {
                if (sqlerr.Class < 17)
                {
                    MessageBox.Show(sqlerr.Message);
                }
                else
                {
                    caughtGlobalError(sqlerr);
                }

                Log("FillTableNewDocuments(MDataSet.ReceiptMasterDataTable source) ERROR" + sqlerr.Message + " " + sqlerr.Source + sqlerr.InnerException.Message);


                return(false);
            }
            catch (Exception err)
            {
                MessageBox.Show(err.Message);

                Log("FillTableNewDocuments(MDataSet.ReceiptMasterDataTable source) ERROR" + err.Message + " " + err.Source);


                return(false);
            }
            finally
            {
                this.mDataSet.Remains.Merge(_tmpRemains);
                this.mDataSet.InvoiceMaster.Merge(_tmpMaster);
                this.mDataSet.InvoiceDetail.Merge(_tmpDetail);
            }
            return(true);
        }
Пример #7
0
        public bool RefreshData(MDataSet.RemainsDataTable table)
        {
            try
            {
                this.RemainsTableAdapter.Fill(table);
            }
            catch (Exception err)
            {
                MessageBox.Show(err.Message);

                Log("RefreshData(MDataSet.RemainsDataTable table) " + err.Message + " " + err.Source + err.InnerException.Message);

                return(false);
            }
            finally
            {
            }
            return(true);
        }
Пример #8
0
        private void MergeRemains(MDataSet.RemainsDataTable _remainsDataTable)
        {
            foreach (RetailTradeClient.MDataSet.RemainsRow row in _remainsDataTable.Rows)
            {
                RetailTradeClient.MDataSet.RemainsRow parent = this.mDataSet.Remains.FindByReceiptDetailRef(row.ReceiptDetailRef);
                if (parent == null)
                {
                    this.mDataSet.Remains.ImportRow(row);
                    continue;
                }

                if (parent.QuantityRemains != row.QuantityRemains)
                {
                    parent.QuantityRemains = row.QuantityRemains;
                }
            }

            this.mDataSet.Remains.AcceptChanges();
        }
Пример #9
0
        //При удалении вызвать

        public bool RefreshData(MDataSet.RemainsRow sourceRow)
        {
            MDataSet.RemainsDataTable _RemainsDataTable = new MDataSet.RemainsDataTable();

            try
            {
                this.RemainsTableAdapter.FillByReceiptDetailRef(_RemainsDataTable, sourceRow.ReceiptDetailRef);
            }
            catch (Exception err)
            {
                MessageBox.Show(err.Message);

                Log("(MDataSet.RemainsRow sourceRow) " + err.Message + " " + err.Source + err.InnerException.Message);

                return(false);
            }
            finally
            {
                this.mDataSet.Remains.Merge(_RemainsDataTable);
            }
            return(true);
        }
Пример #10
0
 public virtual MDataSet.RemainsDataTable GetDataNew() {
     this.Adapter.SelectCommand = this.CommandCollection[3];
     MDataSet.RemainsDataTable dataTable = new MDataSet.RemainsDataTable();
     this.Adapter.Fill(dataTable);
     return dataTable;
 }
Пример #11
0
 public virtual MDataSet.RemainsDataTable GetDataByReceiptDetailRef(System.Nullable<int> id) {
     this.Adapter.SelectCommand = this.CommandCollection[2];
     if ((id.HasValue == true)) {
         this.Adapter.SelectCommand.Parameters[1].Value = ((int)(id.Value));
     }
     else {
         this.Adapter.SelectCommand.Parameters[1].Value = System.DBNull.Value;
     }
     MDataSet.RemainsDataTable dataTable = new MDataSet.RemainsDataTable();
     this.Adapter.Fill(dataTable);
     return dataTable;
 }
Пример #12
0
        public bool SaveToBase(MDataSet.InvoiceDetailRow sourceRow)
        {
            if (sourceRow.HasErrors)
            {
                return(false);
            }
            if ((sourceRow.RowState == DataRowState.Detached) | (sourceRow.RowState == DataRowState.Unchanged))
            {
                return(true);
            }
            if (_changesInvoiceDetail.Count == 0)
            {
                return(true);
            }

            MDataSet.InvoiceMasterRow _invoiceMasterRow;
            _invoiceMasterRow = sourceRow.InvoiceMasterRow;
            /*если  после Update полей на сервере*/

            if ((sourceRow.RowState == DataRowState.Modified) & sourceRow.HasVersion(DataRowVersion.Current))
            {
                if (Convert.ToInt32(sourceRow["ID", DataRowVersion.Original]) != Convert.ToInt32(sourceRow["ID", DataRowVersion.Current]))
                {
                    return(true);
                }
            }
            //*Если удаление *//
            if (sourceRow.RowState == DataRowState.Deleted)
            {
                _invoiceMasterRow = this.mDataSet.InvoiceMaster.FindByID(Convert.ToInt32((sourceRow as MDataSet.InvoiceDetailRow)["InvoiceMasterRef", DataRowVersion.Original]));
            }


            MDataSet.RemainsDataTable _rem = new MDataSet.RemainsDataTable();


            try
            {
                int res = this.invoiceDetailTableAdapter.Update(sourceRow);

                if (sourceRow.RemainsRow != null)
                {
                    this.RemainsTableAdapter.FillByReceiptDetailRef(_rem, sourceRow.RemainsRow.ReceiptDetailRef);
                }
                else
                {
                    this.RemainsTableAdapter.FillNew(_rem);
                }


                this.mDataSet.Remains.Merge(_rem);



                this.actionStatusLabel.Text = "Успешно обновлена строка";
            }

            catch (DBConcurrencyException dbcx)
            {
                this.onInvoiceDetailDBCError(dbcx);
                this.actionStatusLabel.Text = "Ошибка совмесного доступа";
                return(false);
            }

            catch (SqlException sqlerr)
            {
                if (sqlerr.Class < 17)
                {
                    OnInvoiceDetailSQLError(sqlerr, sourceRow);
                }
                else
                {
                    caughtGlobalError(sqlerr);
                }

                Log("SaveToBase(MDataSet.InvoiceDetailRow sourceRow) ERROR" + sqlerr.Message + " " + sqlerr.Source);

                return(false);
            }
            catch (Exception err)
            {
                MessageBox.Show(err.Message);

                Log("SaveToBase(MDataSet.InvoiceDetailRow sourceRow) ERROR" + err.Message + " " + err.Source);


                return(false);
            }
            finally
            {
                RefreshData(_invoiceMasterRow, false);
            }

            return(true);
        }
Пример #13
0
 public virtual MDataSet.RemainsDataTable GetDataBy(System.Nullable<int> Original_ID, byte[] Original_RowVersion) {
     this.Adapter.SelectCommand = this.CommandCollection[1];
     if ((Original_ID.HasValue == true)) {
         this.Adapter.SelectCommand.Parameters[1].Value = ((int)(Original_ID.Value));
     }
     else {
         this.Adapter.SelectCommand.Parameters[1].Value = System.DBNull.Value;
     }
     if ((Original_RowVersion == null)) {
         this.Adapter.SelectCommand.Parameters[2].Value = System.DBNull.Value;
     }
     else {
         this.Adapter.SelectCommand.Parameters[2].Value = ((byte[])(Original_RowVersion));
     }
     MDataSet.RemainsDataTable dataTable = new MDataSet.RemainsDataTable();
     this.Adapter.Fill(dataTable);
     return dataTable;
 }