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; } } } }
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); }
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"); } } } }