private void Tabla_detOC2() { Decimal xxprecventa = 0, xxcostoultimo = 0, xxstock = 0, xxcostopromed = 0; griddetallemov.AutoGenerateColumns = false; var BL = new tb_cm_ordendecompradetBL(); var BE = new tb_cm_ordendecompradet(); var dt = new DataTable(); BE.moduloid = "0100"; BE.local = "001"; BE.tipodoc = tipref.SelectedValue.ToString(); BE.serdoc = serref.Text.Trim(); BE.numdoc = numdococ1.Text.Trim() + numdococ.Text.Trim(); dt = BL.GetAll2(EmpresaID, BE).Tables[0]; if (dt.Rows.Count > 0) { foreach (DataRow fila in dt.Rows) { var BL2 = new tb_60local_stockBL(); var BE2 = new tb_60local_stock(); var dt2 = new DataTable(); BE2.moduloid = modulo; BE2.productid = fila["productid"].ToString(); dt2 = BL2.GetAll(EmpresaID, BE2).Tables[0]; if (dt2.Rows.Count > 0) { if (almacaccionid.Trim() == "20" || almacaccionid.Trim() == "21") { lbl_valor.Text = "Cost.Prom"; xxprecventa = Convert.ToDecimal(dt2.Rows[0]["precventa"]); xxcostopromed = Convert.ToDecimal(dt2.Rows[0]["costopromed"]); } else { if (almacaccionid.Trim() == "10" || almacaccionid.Trim() == "11") { lbl_valor.Text = "Cost.Ultm"; xxcostoultimo = Convert.ToDecimal(dt2.Rows[0]["costoultimo"]); } } xxstock = Convert.ToDecimal(dt2.Rows[0]["stock"]); } tipoperacionid.Text = "COMPRA"; row = Tabladetallemov.NewRow(); row["itemref"] = fila["itemref"].ToString(); row["items"] = fila["items"].ToString(); row["productid"] = fila["productid"].ToString().Trim(); row["productname"] = fila["productname"].ToString().Trim(); var cantidad_c = Math.Round(Convert.ToDecimal(fila["cantidad_c"]), 4); var cantidadcta_c = Math.Round(Convert.ToDecimal(fila["cantidadcta_c"]), 4); if (tipref.SelectedIndex != -1) { var stock_old = Math.Round(Convert.ToDecimal(fila["cantidad_c"]), 4); var total = cantidad_c - cantidadcta_c; row["stock_old"] = total; row["stock"] = stock_old - total; } else { row["stock"] = xxstock; row["stock_old"] = xxstock; } row["precventa"] = xxprecventa; row["costoultimo"] = xxcostoultimo; row["costopromed"] = xxcostopromed; Decimal saldo; saldo = cantidad_c - cantidadcta_c; row["cantidad"] = saldo; row["cantidad_old"] = Math.Round(Convert.ToDecimal(fila["cantidad"]), 4); row["precunit"] = Math.Round(Convert.ToDecimal(Convert.ToDecimal(fila["precunit_c"]).ToString("###,###,##0.000000")), 6); var precunit = Math.Round(Convert.ToDecimal(Convert.ToDecimal(fila["precunit_c"]).ToString("###,###,##0.000000")), 6); Decimal importe; importe = cantidad_c * precunit; row["importfac"] = importe; row["valor"] = Math.Round(Convert.ToDecimal(fila["valor"]), 6); row["importe"] = Math.Round(Convert.ToDecimal(fila["importe"]), 6); row["totimpto"] = Math.Round(Math.Round(Convert.ToDecimal(fila["importe"]), 6) * (Convert.ToDecimal(18) / 100), 6); row["almacaccionid"] = almacaccionid.Trim(); Tabladetallemov.Rows.Add(row); griddetallemov.DataSource = Tabladetallemov; } _RecalculoGrid(); } else { MessageBox.Show(" !!!... Informacion de la Orden ...!!! \n" + "\n » La Orden Todabia no ha Sido Generada " + "\n » O la Orden esta Generada en Otra Guia " + "\n\n »» Verifica Tus Ordenes Pendientes ", "Localizando Orden", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); tipref.Enabled = true; tipref.SelectedIndex = -1; tipref.Enabled = true; numdococ1.Text = "2014"; numdococ.Text = string.Empty; return; } }
private void Tabla_detOC2() { Decimal xxprecventa = 0, xxcostoultimo = 0, xxstock = 0, xxcostopromed = 0; griddetallemov.AutoGenerateColumns = false; tb_cm_ordendecompradetBL BL = new tb_cm_ordendecompradetBL(); tb_cm_ordendecompradet BE = new tb_cm_ordendecompradet(); DataTable dt = new DataTable(); BE.moduloid = "0100"; BE.local = "001"; BE.tipodoc = tipref.SelectedValue.ToString(); BE.serdoc = serref.Text.Trim(); // Vendria Ser el Modulo de Cada Almacen BE.numdoc = numdococ1.Text.Trim() + numdococ.Text.Trim(); // Correlativo de Cada Orden de Compra Tabladetallemov = BL.GetAll2(EmpresaID, BE).Tables[0]; if (Tabladetallemov.Rows.Count > 0) { if (local == Tabladetallemov.Rows[0]["localdes"].ToString().Trim()) { #region *** Bloqueo Temporal //foreach (DataRow fila in dt.Rows) //{ // tb_60local_stockBL BL2 = new tb_60local_stockBL(); // tb_60local_stock BE2 = new tb_60local_stock(); // DataTable dt2 = new DataTable(); // BE2.moduloid = modulo; // BE2.productid = fila["productid"].ToString(); // dt2 = BL2.GetAll(EmpresaID, BE2).Tables[0]; // if (dt2.Rows.Count > 0) // { // if (almacaccionid.Trim() == "20" || almacaccionid.Trim() == "21") // { // lbl_valor.Text = "Cost.Prom"; // xxprecventa = Convert.ToDecimal(dt2.Rows[0]["precventa"]); // xxcostopromed = Convert.ToDecimal(dt2.Rows[0]["costopromed"]); // } // else if (almacaccionid.Trim() == "10" || almacaccionid.Trim() == "11") // { // lbl_valor.Text = "Cost.Ultm"; // xxcostoultimo = Convert.ToDecimal(dt2.Rows[0]["costoultimo"]); // } // xxstock = Convert.ToDecimal(dt2.Rows[0]["stock"]); // } // tipoperacionid.Text = "COMPRA"; // row = Tabladetallemov.NewRow(); // row["itemref"] = fila["itemref"].ToString(); // row["items"] = fila["items"].ToString(); // row["productid"] = fila["productid"].ToString().Trim(); // row["productname"] = fila["productname"].ToString().Trim(); // //row["rollo"] = fila["rollo"].ToString(); // Decimal cantidad_c = Math.Round(Convert.ToDecimal(fila["cantidad_c"]), 4); // Decimal cantidadcta_c = Math.Round(Convert.ToDecimal(fila["cantidadcta_c"]), 4); // if (tipref.SelectedIndex != -1) // { // Decimal stock_old = Math.Round(Convert.ToDecimal(fila["cantidad_c"]), 4); // Decimal total = cantidad_c - cantidadcta_c; // row["stock_old"] = total; // row["stock"] = stock_old - total; // } // else // { // row["stock"] = xxstock; // row["stock_old"] = xxstock; // } // row["precventa"] = xxprecventa; // row["costoultimo"] = xxcostoultimo; // row["costopromed"] = xxcostopromed; // Decimal saldo; // saldo = cantidad_c - cantidadcta_c; // row["cantidad"] = saldo; // row["cantidad_old"] = Math.Round(Convert.ToDecimal(fila["cantidad"]), 4); // row["precunit"] = Math.Round(Convert.ToDecimal(Convert.ToDecimal(fila["precunit_c"]).ToString("###,###,##0.000000")), 6); // Decimal precunit = Math.Round(Convert.ToDecimal(Convert.ToDecimal(fila["precunit_c"]).ToString("###,###,##0.000000")), 6); // Decimal importe; // importe = cantidad_c * precunit; // row["importfac"] = importe; // row["valor"] = Math.Round(Convert.ToDecimal(fila["valor"]), 6); // row["importe"] = Math.Round(Convert.ToDecimal(fila["importe"]), 6); // row["totimpto"] = Math.Round(Math.Round(Convert.ToDecimal(fila["importe"]), 6) * (Convert.ToDecimal(18) / 100), 6); // row["almacaccionid"] = almacaccionid.Trim(); // //row["ubicacion"] = fila["ubicacion"].ToString().Trim(); // Tabladetallemov.Rows.Add(row); //} #endregion griddetallemov.DataSource = Tabladetallemov; //_RecalculoGrid(); calcular_totales(); } else { MessageBox.Show(" !!!... Informacion de la Orden ...!!! \n" + "\n » La Orden Todabia no ha Sido Generada " + "\n » O la Orden esta Generada en Otra Guia " + "\n\n »» Verifica Tus Ordenes Pendientes ", "Localizando Orden", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); tipref.Enabled = true; tipref.SelectedIndex = -1; tipref.Enabled = true; numdococ1.Text = Convert.ToString(DateTime.Today.Year); numdococ.Text = ""; return; } } }