示例#1
0
        private void btadd_Click(object sender, EventArgs e)
        {
            int oritotalrow = gvproducts.Rows.Count;

            var form = new ManageProduct();

            form.userdata = userdata;
            form.ShowDialog();
            LoadData();

            int newtotalrow = gvproducts.Rows.Count;

            if (oritotalrow != newtotalrow)
            {
                var newProduct = new ProductColumns();
                newProduct = productRepository.GetByAny(1);
                int newId = newProduct.prodid;

                foreach (DataGridViewRow row in gvproducts.Rows)
                {
                    if (((int)row.Cells["id"].Value) == newId)
                    {
                        gvproducts.Rows[row.Index].Selected = true;
                        break;
                    }
                }
            }
        }
示例#2
0
        private void SetDataSource(ReportDocument Report)
        {
            ReportDataset rptds = new ReportDataset();

            //long lngProductGroupName = long.Parse(cboProductGroup.SelectedItem.Value);
            //long lngSubGroupName = long.Parse(cboSubGroup.SelectedItem.Value);

            string ProductGroupName = string.Empty;

            if (cboProductGroup.SelectedItem.Value != Constants.ZERO_STRING)
            {
                ProductGroupName = cboProductGroup.SelectedItem.Value;
            }
            string SubGroupName = string.Empty;

            if (cboSubGroup.SelectedItem.Value != Constants.ZERO_STRING)
            {
                SubGroupName = cboSubGroup.SelectedItem.Value;
            }

            string ReportType = cboReportType.SelectedItem.Text;

            ProductColumns clsProductColumns = new ProductColumns();

            #region clsProductColumns
            clsProductColumns.ProductCode         = true;
            clsProductColumns.BarCode             = true;
            clsProductColumns.BarCode2            = true;
            clsProductColumns.BarCode3            = true;
            clsProductColumns.ProductDesc         = true;
            clsProductColumns.ProductSubGroupName = true;
            clsProductColumns.BaseUnitName        = true;
            clsProductColumns.UnitName            = true;
            clsProductColumns.ProductGroupName    = true;
            clsProductColumns.DateCreated         = true;
            clsProductColumns.Price           = true;
            clsProductColumns.Quantity        = true;
            clsProductColumns.MinThreshold    = true;
            clsProductColumns.MaxThreshold    = true;
            clsProductColumns.PurchasePrice   = true;
            clsProductColumns.SupplierName    = true;
            clsProductColumns.QuantityIN      = true;
            clsProductColumns.QuantityOUT     = true;
            clsProductColumns.RIDMinThreshold = true;
            clsProductColumns.RIDMaxThreshold = true;
            clsProductColumns.RID             = true;
            //clsProductColumns.BranchActualQuantity = true;
            //clsProductColumns.BranchQuantity = true;
            //clsProductColumns.BranchQuantityIN = true;
            //clsProductColumns.BranchQuantityOUT = true;
            #endregion

            ProductDetails clsSearchKey = new ProductDetails();
            #region Search Key
            clsSearchKey.BranchID          = Convert.ToInt32(cboBranch.SelectedItem.Value);
            clsSearchKey.SupplierID        = Convert.ToInt32(cboContact.SelectedItem.Value);
            clsSearchKey.ProductGroupID    = Convert.ToInt64(cboProductGroup.SelectedItem.Value);
            clsSearchKey.ProductSubGroupID = Convert.ToInt64(cboSubGroup.SelectedItem.Value);
            clsSearchKey.ProductCode       = txtProductCode.Text;
            #endregion

            Products clsProduct = new Products();
            clsProduct.GetConnection();
            ProductInventories clsProductInventories = new ProductInventories(clsProduct.Connection, clsProduct.Transaction);


            DataTable dt;
            string    ProductIDs = null;

            switch (cboReportType.SelectedValue)
            {
            case ReportTypes.ProductList:
                #region Products List
                dt = clsProductInventories.ListAsDataTable(Int32.Parse(cboBranch.SelectedItem.Value), SupplierID: long.Parse(cboContact.SelectedItem.Value), ProductGroupID: long.Parse(cboProductGroup.SelectedItem.Value), ProductSubGroupID: long.Parse(cboSubGroup.SelectedItem.Value), ProductCode: txtProductCode.Text);
                clsProduct.CommitAndDispose();

                foreach (System.Data.DataRow dr in dt.Rows)
                {
                    DataRow drNew = rptds.Products.NewRow();

                    foreach (DataColumn dc in rptds.Products.Columns)
                    {
                        drNew[dc] = dr[dc.ColumnName];
                    }

                    rptds.Products.Rows.Add(drNew);
                }
                break;
                #endregion

            case ReportTypes.ProductPriceList:
                #region Products Price List
                dt = clsProductInventories.ListAsDataTable(int.Parse(cboBranch.SelectedItem.Value), SupplierID: long.Parse(cboContact.SelectedItem.Value), ProductGroupID: long.Parse(cboProductGroup.SelectedItem.Value), ProductSubGroupID: long.Parse(cboSubGroup.SelectedItem.Value), ProductCode: txtProductCode.Text);
                clsProduct.CommitAndDispose();
                foreach (DataRow dr in dt.Rows)
                {
                    DataRow drNew = rptds.Products.NewRow();

                    foreach (DataColumn dc in rptds.Products.Columns)
                    {
                        drNew[dc] = dr[dc.ColumnName];
                    }

                    rptds.Products.Rows.Add(drNew);
                    ProductIDs += dr["ProductID"].ToString() + ",";
                }
                break;
                #endregion

            case ReportTypes.ProductListWithInvalidMatrix:
                #region Products List With Invalid Unit Matrix
                dt = clsProductInventories.ListAsDataTable(int.Parse(cboBranch.SelectedItem.Value), SupplierID: long.Parse(cboContact.SelectedItem.Value), ProductGroupID: long.Parse(cboProductGroup.SelectedItem.Value), ProductSubGroupID: long.Parse(cboSubGroup.SelectedItem.Value), ProductCode: txtProductCode.Text, ShowOnlyWithInvalidUnitMatrix: true);
                clsProduct.CommitAndDispose();

                foreach (System.Data.DataRow dr in dt.Rows)
                {
                    DataRow drNew = rptds.Products.NewRow();

                    foreach (DataColumn dc in rptds.Products.Columns)
                    {
                        drNew[dc] = dr[dc.ColumnName];
                    }

                    rptds.Products.Rows.Add(drNew);
                }
                break;

                #endregion
            case ReportTypes.WeightedProductsForWeighingScale:
            case ReportTypes.CountedProductsForWeighingScale:
                #region Weighted and Counted Products For Weighing Scale
                dt = clsProductInventories.ListAsDataTable(int.Parse(cboBranch.SelectedItem.Value), SupplierID: long.Parse(cboContact.SelectedItem.Value), ProductGroupID: long.Parse(cboProductGroup.SelectedItem.Value), ProductSubGroupID: long.Parse(cboSubGroup.SelectedItem.Value), ProductCode: txtProductCode.Text);
                clsProduct.CommitAndDispose();
                foreach (DataRow dr in dt.Rows)
                {
                    if (dr[ProductColumnNames.BarCode].ToString() != null && dr[ProductColumnNames.BarCode].ToString() != string.Empty)
                    {
                        DataRow drNew = rptds.Products.NewRow();

                        foreach (DataColumn dc in rptds.Products.Columns)
                        {
                            drNew[dc] = dr[dc.ColumnName];
                        }

                        rptds.Products.Rows.Add(drNew);
                        ProductIDs += dr["ProductID"].ToString() + ",";
                    }
                }
                break;
                #endregion

            case ReportTypes.ProductsInDemoReport:
                #region Products In Demo
                DateTime StartTransactionDate = DateTime.TryParse(txtStartDate.Text + " " + txtStartTime.Text, out StartTransactionDate) ? StartTransactionDate : DateTime.MinValue;
                DateTime EndTransactionDate   = DateTime.TryParse(txtEndDate.Text + " " + txtEndTime.Text, out EndTransactionDate) ? EndTransactionDate : DateTime.MinValue;

                SalesTransactionItems clsSalesTransactionItemsDemo = new SalesTransactionItems();
                System.Data.DataTable dtDemo = clsSalesTransactionItemsDemo.ProductsInDemoReport(Int32.Parse(cboBranch.SelectedItem.Value), Int64.Parse(cboContact.SelectedItem.Value), cboProductGroup.SelectedItem.Text, cboSubGroup.SelectedItem.Text, txtProductCode.Text, "", StartTransactionDate, EndTransactionDate);
                clsSalesTransactionItemsDemo.CommitAndDispose();
                foreach (DataRow dr in dtDemo.Rows)
                {
                    DataRow drNew = rptds.ProductsInDemo.NewRow();

                    foreach (DataColumn dc in rptds.ProductsInDemo.Columns)
                    {
                        drNew[dc] = dr[dc.ColumnName];
                    }

                    rptds.ProductsInDemo.Rows.Add(drNew);
                }
                break;

                #endregion
            default:
                return;
            }

            Report.SetDataSource(rptds);
            SetParameters(Report);
        }
示例#3
0
        private void btsave_Click(object sender, EventArgs e)
        {
            ListProducts = productRepository.GetAll();
            int samenameinsamebrand = 0;
            int samebarcodeno       = 0;
            int sameprodcode        = 0;

            if (Editmode)
            {
                foreach (var existingdetails in ListProducts)
                {
                    if (existingdetails.name == tbprodname.Text && existingdetails.brandid == (int)cbbrand.SelectedValue)
                    {
                        if (existingdetails.prodid != ProductData.prodid)
                        {
                            samenameinsamebrand += 1;
                            break;
                        }
                    }

                    if (tbbarcodeno.Text == "")
                    {
                        samebarcodeno = 0;
                    }
                    else if (existingdetails.barcodeno == tbbarcodeno.Text)
                    {
                        if (existingdetails.prodid == ProductData.prodid)
                        {
                            samebarcodeno = 0;
                        }
                        else
                        {
                            samebarcodeno += 1;
                            break;
                        }
                    }

                    if (existingdetails.prodcode == tbprodcode.Text)
                    {
                        if (existingdetails.prodid != ProductData.prodid)
                        {
                            sameprodcode += 1;
                            break;
                        }
                    }
                }


                if (tbprodname.Text == "" || tbprodcode.Text == "")
                {
                    MessageBox.Show("Yang bertanda Bintang tidak boleh kosong");
                }
                else if (samenameinsamebrand > 0)
                {
                    MessageBox.Show("Nama barang yang anda masukkan sudah terdaftar");
                    samenameinsamebrand = 0;
                }
                else if (sameprodcode > 0)
                {
                    MessageBox.Show("Kode barang yang anda masukkan sudah terdaftar");
                    sameprodcode = 0;
                }
                else if (samebarcodeno > 0)
                {
                    MessageBox.Show("Nomor barcode yang anda masukkan sudah terdaftar");
                    samebarcodeno = 0;
                }
                else if (tbpurchaseprice.Value == 0)
                {
                    MessageBox.Show("Harga beli yang anda masukkan Rp 0, silahkan diganti");
                }
                else
                {
                    var Productdatabefore = new ProductColumns();
                    Productdatabefore.prodcat       = ProductData.prodcat;
                    Productdatabefore.brandid       = ProductData.brandid;
                    Productdatabefore.prodcode      = ProductData.prodcode;
                    Productdatabefore.name          = ProductData.name;
                    Productdatabefore.produnit      = ProductData.produnit;
                    Productdatabefore.purchaseprice = ProductData.purchaseprice;
                    Productdatabefore.barcodeno     = ProductData.barcodeno;


                    ProductData.prodcat       = (int)cbcategory.SelectedValue;
                    ProductData.brandid       = (int)cbbrand.SelectedValue;
                    ProductData.prodcode      = tbprodcode.Text;
                    ProductData.name          = tbprodname.Text;
                    ProductData.produnit      = (int)cbunit.SelectedValue;
                    ProductData.purchaseprice = Utils.ToNumbers(tbpurchaseprice.Text);
                    ProductData.barcodeno     = tbbarcodeno.Text;
                    ProductData.updated_by    = userdata.username;

                    bool havechanges = false;

                    if (Productdatabefore.prodcat == ProductData.prodcat && Productdatabefore.brandid == ProductData.brandid && Productdatabefore.prodcode == ProductData.prodcode && Productdatabefore.name == ProductData.name && Productdatabefore.produnit == ProductData.produnit && Productdatabefore.purchaseprice == ProductData.purchaseprice && Productdatabefore.barcodeno == ProductData.barcodeno)
                    {
                        havechanges = true;
                    }


                    if (havechanges)
                    {
                        MessageBox.Show("Tidak ada data yang anda ubah");
                        ProductData.prodcat       = Productdatabefore.prodcat;
                        ProductData.brandid       = Productdatabefore.brandid;
                        ProductData.prodcode      = Productdatabefore.prodcode;
                        ProductData.name          = Productdatabefore.name;
                        ProductData.produnit      = Productdatabefore.produnit;
                        ProductData.purchaseprice = Productdatabefore.purchaseprice;
                        ProductData.barcodeno     = Productdatabefore.barcodeno;
                    }
                    else if (productRepository.Update(ProductData))
                    {
                        MessageBox.Show("Data telah berhasil di ubah");
                        Close();
                    }
                    else
                    {
                        MessageBox.Show("Data gagal di ubah");
                        ProductData.prodcat       = Productdatabefore.prodcat;
                        ProductData.brandid       = Productdatabefore.brandid;
                        ProductData.prodcode      = Productdatabefore.prodcode;
                        ProductData.name          = Productdatabefore.name;
                        ProductData.produnit      = Productdatabefore.produnit;
                        ProductData.purchaseprice = Productdatabefore.purchaseprice;
                        ProductData.barcodeno     = Productdatabefore.barcodeno;
                    }
                }
            }
            else
            {
                foreach (var existingdetails in ListProducts)
                {
                    if (existingdetails.name == tbprodname.Text && existingdetails.brandid == (int)cbbrand.SelectedValue)
                    {
                        samenameinsamebrand += 1;
                        break;
                    }

                    if (tbbarcodeno.Text == "")
                    {
                        samebarcodeno = 0;
                    }
                    else if (existingdetails.barcodeno == tbbarcodeno.Text)
                    {
                        samebarcodeno += 1;
                        break;
                    }

                    if (existingdetails.prodcode == tbprodcode.Text)
                    {
                        if (existingdetails.prodid != ProductData.prodid)
                        {
                            sameprodcode += 1;
                            break;
                        }
                    }
                }



                if (tbprodname.Text == "" || tbprodcode.Text == "")
                {
                    MessageBox.Show(" Yang bertanda Bintang tidak boleh kosong");
                }
                else if (samenameinsamebrand > 0)
                {
                    MessageBox.Show("Nama barang yang anda masukkan sudah terdaftar");
                    samenameinsamebrand = 0;
                }
                else if (sameprodcode > 0)
                {
                    MessageBox.Show("Kode barang yang anda masukkan sudah terdaftar");
                    sameprodcode = 0;
                }
                else if (samebarcodeno > 0)
                {
                    MessageBox.Show("Nomor barcode yang anda masukkan sudah terdaftar");
                    samebarcodeno = 0;
                }
                else if (tbpurchaseprice.Value == 0)
                {
                    MessageBox.Show("Harga beli yang anda masukkan Rp 0, silahkan diganti");
                }
                else
                {
                    var product = new ProductColumns();

                    product.prodcat       = (int)cbcategory.SelectedValue;
                    product.brandid       = (int)cbbrand.SelectedValue;
                    product.prodcode      = tbprodcode.Text;
                    product.name          = tbprodname.Text;
                    product.produnit      = (int)cbunit.SelectedValue;
                    product.purchaseprice = Utils.ToNumbers(tbpurchaseprice.Text);
                    product.barcodeno     = tbbarcodeno.Text;
                    product.created_by    = userdata.username;


                    if (productRepository.Add(product))
                    {
                        MessageBox.Show("Data baru telah berhasil di tambahkan");
                        Close();
                    }
                    else
                    {
                        MessageBox.Show("Data baru gagal ditambahkan");
                    }
                }
            }
        }