public DataSet GetAll(string empresaid, tb_cm_ordendecompradet BE)
 {
     using (SqlConnection cnx = new SqlConnection(conex.empConexion(empresaid)))
     {
         using (SqlCommand cmd = new SqlCommand("gspTbCmOrdendecompradet_SEARCH", cnx))
         {
             DataSet ds = new DataSet();
             {
                 cmd.CommandTimeout = 0;
                 cmd.CommandType = CommandType.StoredProcedure;
                 cmd.Parameters.Add("@moduloid", SqlDbType.Char, 4).Value = BE.moduloid;
                 cmd.Parameters.Add("@local", SqlDbType.Char, 3).Value = BE.local;
                 cmd.Parameters.Add("@tipodoc", SqlDbType.Char, 2).Value = BE.tipodoc;
                 cmd.Parameters.Add("@serdoc", SqlDbType.Char, 4).Value = BE.serdoc;
                 cmd.Parameters.Add("@numdoc", SqlDbType.Char, 10).Value = BE.numdoc;
             }
             try
             {
                 cnx.Open();
                 using (SqlDataAdapter da = new SqlDataAdapter(cmd))
                 {
                     ds.Clear();
                     da.Fill(ds);
                 }
                 return ds;
             }
             catch (Exception ex)
             {
                 throw new Exception(ex.Message);
             }
         }
     }
 }
 public bool Delete(string empresaid, tb_cm_ordendecompradet BE)
 {
     using (SqlConnection cnx = new SqlConnection(conex.empConexion(empresaid)))
     {
         using (SqlCommand cmd = new SqlCommand("gspTbCmOrdendecompradet_DELETE", cnx))
         {
             {
                 cmd.CommandTimeout = 0;
                 cmd.CommandType = CommandType.StoredProcedure;
                 cmd.Parameters.Add("@moduloid", SqlDbType.Char, 4).Value = BE.moduloid;
                 cmd.Parameters.Add("@local", SqlDbType.Char, 3).Value = BE.local;
                 cmd.Parameters.Add("@tipodoc", SqlDbType.Char, 2).Value = BE.tipodoc;
                 cmd.Parameters.Add("@serdoc", SqlDbType.Char, 4).Value = BE.serdoc;
                 cmd.Parameters.Add("@numdoc", SqlDbType.Char, 10).Value = BE.numdoc;
                 cmd.Parameters.Add("@items", SqlDbType.Char, 5).Value = BE.items;
             }
             try
             {
                 cnx.Open();
                 if (cmd.ExecuteNonQuery() > 0)
                 {
                     return true;
                 }
                 else
                 {
                     return false;
                 }
             }
             catch (Exception ex)
             {
                 throw new Exception(ex.Message);
             }
         }
     }
 }
        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;
            }
        }
 public bool Updatectacte(string empresaid, tb_cm_ordendecompradet BE)
 {
     return tablaDA.Updatectacte(empresaid, BE);
 }
 public bool Insert(string empresaid, tb_cm_ordendecompradet BE)
 {
     return tablaDA.Insert(empresaid, BE);
 }
 public DataSet GetOne(string empresaid, tb_cm_ordendecompradet BE)
 {
     return tablaDA.GetOne(empresaid, BE);
 }
 public DataSet GetAll_Producto(string empresaid, tb_cm_ordendecompradet BE)
 {
     return tablaDA.GetAll_Producto(empresaid, BE);
 }
 public DataSet GetAll_datosdetalle(string empresaid, tb_cm_ordendecompradet BE)
 {
     return tablaDA.GetAll_datosdetalle(empresaid, BE);
 }
 public bool Delete(string empresaid, tb_cm_ordendecompradet BE)
 {
     return tablaDA.Delete(empresaid, BE);
 }
        private DataTable Orden_Pendiente()
        {
            try
            {
                var Ord_pendiente = new DataTable("Ord_pendiente");

                var BL = new tb_cm_ordendecompradetBL();
                var BE = new tb_cm_ordendecompradet();
                BE.moduloiddes = moduloiddies;
                BE.perianio = perianio;
                BE.perimesini = perimesini;
                BE.perimesfin = perimesfin;
                BE.grupoid = grupoid;
                BE.productid = productid;
                BE.pendiente =  pendiente;
                BE.igv = igv;
                Ord_pendiente = BL.GetAll_ordendeCompra(VariablesPublicas.EmpresaID.ToString(), BE).Tables[0];
                if (Ord_pendiente.Rows.Count == 0)
                {
                    MessageBox.Show("No existe Información Procesada", "Mensaje del Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }

                return Ord_pendiente;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        private void listado_almacenes()
        {
            var listadoAlmacen = new CR_listado_almacen();
            var ds_listado_almacen = new DataSet();
            var nombrealmacen = new List<String>();
            var BL = new tb_cm_ordendecompradetBL();
            var BE = new tb_cm_ordendecompradet();
            BE.moduloiddes = moduloiddies.Trim();
            BE.perianio = perianio.Trim();
            BE.perimesini = perimesini.Trim();
            BE.perimesfin = perimesfin.Trim();
            BE.grupoid = grupoid.Trim();
            BE.pendiente = string.Empty;
            BE.status = " ";
            BE.igv = igv;

            ds_listado_almacen = BL.GetAll_ordendeCompra(VariablesPublicas.EmpresaID.ToString(), BE);
            if (ds_listado_almacen != null)
            {
                listadoAlmacen.OpenSubreport("ALMACEN DE TELAS").SetDataSource(ds_listado_almacen.Tables[0]);
                listadoAlmacen.OpenSubreport("ALMACEN DE AVIOS").SetDataSource(ds_listado_almacen.Tables[1]);
                listadoAlmacen.OpenSubreport("ALMACEN DE ESTAMPADOS ").SetDataSource(ds_listado_almacen.Tables[2]);
                listadoAlmacen.OpenSubreport("ALMACEN DE BORDADO").SetDataSource(ds_listado_almacen.Tables[3]);
                listadoAlmacen.OpenSubreport("ALMACEN DE CORREAS").SetDataSource(ds_listado_almacen.Tables[4]);
                listadoAlmacen.OpenSubreport("ALMACEN DE INSUMOS QUIMICOS").SetDataSource(ds_listado_almacen.Tables[5]);
                listadoAlmacen.OpenSubreport("MAQ Y REP SISTEMAS").SetDataSource(ds_listado_almacen.Tables[6]);
                listadoAlmacen.OpenSubreport("MAQ Y REP ELECTRICOS").SetDataSource(ds_listado_almacen.Tables[7]);
                listadoAlmacen.OpenSubreport("MAQ Y REP COSTURA").SetDataSource(ds_listado_almacen.Tables[8]);
                listadoAlmacen.OpenSubreport("ALMACEN DE VARIOS").SetDataSource(ds_listado_almacen.Tables[9]);
                nombrealmacen.Add("ALMACEN DE TELAS");
                nombrealmacen.Add("ALMACEN DE AVIOS");
                nombrealmacen.Add("ALMACEN DE ESTAMPADOS ");
                nombrealmacen.Add("ALMACEN DE BORDADO");
                nombrealmacen.Add("ALMACEN DE CORREAS");
                nombrealmacen.Add("ALMACEN DE INSUMOS QUIMICOS");
                nombrealmacen.Add("MAQ Y REP SISTEMAS");
                nombrealmacen.Add("MAQ Y REP ELECTRICOS");
                nombrealmacen.Add("MAQ Y REP COSTURA");
                nombrealmacen.Add("ALMACEN DE VARIOS");

                foreach (String almacen in nombrealmacen)
                {
                    listadoAlmacen.OpenSubreport(almacen).DataDefinition.FormulaFields["empresaname"].Text = "'EMPRESA: " + VariablesPublicas.EmpresaName.Trim() + "'";
                    listadoAlmacen.OpenSubreport(almacen).DataDefinition.FormulaFields["empresaruc"].Text = "'RUC: " + VariablesPublicas.EmpresaRuc.Trim() + "'";
                    listadoAlmacen.OpenSubreport(almacen).DataDefinition.FormulaFields["anio"].Text = "'" + perianio.Trim() + "'";
                    listadoAlmacen.OpenSubreport(almacen).DataDefinition.FormulaFields["inicio"].Text = "'" + VariablesPublicas.N_PrimerMes1.Trim() + "'";
                    listadoAlmacen.OpenSubreport(almacen).DataDefinition.FormulaFields["fin"].Text = "'" + VariablesPublicas.N_FinMes1.Trim() + "'";
                    if (igv == "0")
                    {
                        listadoAlmacen.OpenSubreport(almacen).DataDefinition.FormulaFields["nameigv"].Text = "'No Incluye IGV'";
                    }
                    else
                    {
                        listadoAlmacen.OpenSubreport(almacen).DataDefinition.FormulaFields["nameigv"].Text = "'Incluye  IGV'";
                    }
                }

                crystalReportViewer1.ReportSource = listadoAlmacen;
                crystalReportViewer1.Show();
                formulario = "otro";
            }
            else
            {
                MessageBox.Show("Informacion no encontrada", "Mensaje del Sistema");
            }
        }
        private DataSet listado_almacen()
        {
            try
            {
                var ds_listado_almacen = new DataSet();
                var BL = new tb_cm_ordendecompradetBL();
                var BE = new tb_cm_ordendecompradet();
                var dt = new DataSet();
                BE.moduloiddes = moduloiddies.Trim();
                BE.perianio = perianio.Trim();
                BE.perimesini = perimesini.Trim();
                BE.perimesfin = perimesfin.Trim();
                BE.grupoid = grupoid.Trim();
                BE.pendiente = string.Empty;
                BE.status = " ";
                ds_listado_almacen = BL.GetAll_ordendeCompra(VariablesPublicas.EmpresaID.ToString(), BE);
                if (ds_listado_almacen != null)
                {
                    foreach (DataTable tabla in ds_listado_almacen.Tables)
                    {
                        var _tabla = new DataTable();

                        if (tabla == ds_listado_almacen.Tables[0])
                        {
                            _tabla = ds_listado_almacen.Tables[0].Copy();
                        }
                        if (tabla == ds_listado_almacen.Tables[1])
                        {
                            _tabla = ds_listado_almacen.Tables[1].Copy();
                        }
                        if (tabla == ds_listado_almacen.Tables[2])
                        {
                            _tabla = ds_listado_almacen.Tables[2].Copy();
                        }
                        if (tabla == ds_listado_almacen.Tables[3])
                        {
                            _tabla = ds_listado_almacen.Tables[3].Copy();
                        }
                        if (tabla == ds_listado_almacen.Tables[5])
                        {
                            _tabla = ds_listado_almacen.Tables[5].Copy();
                        }
                        if (tabla == ds_listado_almacen.Tables[6])
                        {
                            _tabla = ds_listado_almacen.Tables[6].Copy();
                        }
                        if (tabla == ds_listado_almacen.Tables[7])
                        {
                            _tabla = ds_listado_almacen.Tables[7].Copy();
                        }
                        if (tabla == ds_listado_almacen.Tables[8])
                        {
                            _tabla = ds_listado_almacen.Tables[8].Copy();
                        }
                        if (tabla == ds_listado_almacen.Tables[9])
                        {
                            _tabla = ds_listado_almacen.Tables[9].Copy();
                        }
                        dt.Tables.Add(_tabla);
                    }
                }
                else
                {
                    return null;
                }

                return ds_listado_almacen;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public bool Updatectacte(string empresaid, tb_cm_ordendecompradet BE)
        {
            using (SqlConnection cnx = new SqlConnection(conex.empConexion(empresaid)))
            {
                using (SqlCommand cmd = new SqlCommand("gspTbCmOrdendecompractacte_UPDATE", cnx))
                {
                    cmd.CommandTimeout = 0;
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.Add("@moduloid", SqlDbType.Char, 4).Value = BE.moduloid;
                    cmd.Parameters.Add("@numdoc", SqlDbType.Char, 10).Value = BE.numdoc;
                    cmd.Parameters.Add("@tipodoc", SqlDbType.Char, 2).Value = BE.tipodoc;
                    cmd.Parameters.Add("@serdoc", SqlDbType.Char, 4).Value = BE.serdoc;
                    cmd.Parameters.Add("@ctactename", SqlDbType.VarChar, 70).Value = BE.ctactename;
                    cmd.Parameters.Add("@productid", SqlDbType.Char, 13).Value = BE.productid;

                    try
                    {
                        cnx.Open();
                        if (cmd.ExecuteNonQuery() > 0)
                        {
                            return true;
                        }
                        else
                        {
                            return false;
                        }

                    }
                    catch (Exception ex)
                    {
                        throw new Exception(ex.Message);
                    }
                }
            }
        }
 public bool Update(string empresaid, tb_cm_ordendecompradet BE)
 {
     using (SqlConnection cnx = new SqlConnection(conex.empConexion(empresaid)))
     {
         using (SqlCommand cmd = new SqlCommand("gspTbCmOrdendecompradet_UPDATE", cnx))
         {
             {
                 cmd.CommandTimeout = 0;
                 cmd.CommandType = CommandType.StoredProcedure;
                 cmd.Parameters.Add("@moduloid", SqlDbType.Char, 4).Value = BE.moduloid;
                 cmd.Parameters.Add("@local", SqlDbType.Char, 3).Value = BE.local;
                 cmd.Parameters.Add("@tipodoc", SqlDbType.Char, 2).Value = BE.tipodoc;
                 cmd.Parameters.Add("@serdoc", SqlDbType.Char, 4).Value = BE.serdoc;
                 cmd.Parameters.Add("@numdoc", SqlDbType.Char, 10).Value = BE.numdoc;
                 cmd.Parameters.Add("@items", SqlDbType.Char, 5).Value = BE.items;
                 cmd.Parameters.Add("@moduloiddes", SqlDbType.Char, 4).Value = BE.moduloiddes;
                 cmd.Parameters.Add("@localdes", SqlDbType.Char, 3).Value = BE.localdes;
                 cmd.Parameters.Add("@status", SqlDbType.Char).Value = BE.status;
                 cmd.Parameters.Add("@fechdoc", SqlDbType.DateTime).Value = BE.fechdoc;
                 cmd.Parameters.Add("@almacaccionid", SqlDbType.Char, 2).Value = BE.almacaccionid;
                 cmd.Parameters.Add("@ctacte", SqlDbType.Char, 7).Value = BE.ctacte;
                 cmd.Parameters.Add("@ctactename", SqlDbType.VarChar, 70).Value = BE.ctactename;
                 cmd.Parameters.Add("@productid", SqlDbType.Char, 13).Value = BE.productid;
                 cmd.Parameters.Add("@productname", SqlDbType.Char, 70).Value = BE.productname;
                 cmd.Parameters.Add("@itemref", SqlDbType.Char, 5).Value = BE.itemref;
                 cmd.Parameters.Add("@tipref", SqlDbType.Char, 2).Value = BE.tipref;
                 cmd.Parameters.Add("@serref", SqlDbType.Char, 4).Value = BE.serref;
                 cmd.Parameters.Add("@numref", SqlDbType.Char, 10).Value = BE.numref;
                 cmd.Parameters.Add("@fechref", SqlDbType.DateTime).Value = BE.fechref;
                 cmd.Parameters.Add("@tipped", SqlDbType.Char, 2).Value = BE.tipped;
                 cmd.Parameters.Add("@serped", SqlDbType.Char, 4).Value = BE.serped;
                 cmd.Parameters.Add("@numped", SqlDbType.Char, 10).Value = BE.numped;
                 cmd.Parameters.Add("@cantidad", SqlDbType.Decimal).Value = BE.cantidad;
                 cmd.Parameters.Add("@valor", SqlDbType.Decimal).Value = BE.valor;
                 cmd.Parameters.Add("@importe", SqlDbType.Decimal).Value = BE.importe;
                 cmd.Parameters.Add("@cantidadcta", SqlDbType.Decimal).Value = BE.cantidadcta;
                 cmd.Parameters.Add("@cantidadfac", SqlDbType.Decimal).Value = BE.cantidadfac;
                 cmd.Parameters.Add("@precinit", SqlDbType.Decimal).Value = BE.precinit;
                 cmd.Parameters.Add("@chkdcto", SqlDbType.Bit).Value = BE.chkdcto;
                 cmd.Parameters.Add("@pdscto", SqlDbType.Decimal).Value = BE.pdscto;
                 cmd.Parameters.Add("@idscto", SqlDbType.Decimal).Value = BE.idscto;
                 cmd.Parameters.Add("@precunit", SqlDbType.Decimal).Value = BE.precunit;
                 cmd.Parameters.Add("@importfac", SqlDbType.Decimal).Value = BE.importfac;
                 cmd.Parameters.Add("@incprec", SqlDbType.Char, 1).Value = BE.incprec;
                 cmd.Parameters.Add("@totimpto", SqlDbType.Decimal).Value = BE.totimpto;
                 cmd.Parameters.Add("@pigv", SqlDbType.Decimal).Value = BE.pigv;
                 cmd.Parameters.Add("@moneda", SqlDbType.Char, 1).Value = BE.moneda;
                 cmd.Parameters.Add("@tcamb", SqlDbType.Decimal).Value = BE.tcamb;
                 cmd.Parameters.Add("@compradorid", SqlDbType.Char, 4).Value = BE.compradorid;
                 cmd.Parameters.Add("@glosa", SqlDbType.VarChar, 100).Value = BE.glosa;
                 cmd.Parameters.Add("@perianio", SqlDbType.Char, 4).Value = BE.perianio;
                 cmd.Parameters.Add("@perimes", SqlDbType.Char, 2).Value = BE.perimes;
                 cmd.Parameters.Add("@fechentrega", SqlDbType.DateTime).Value = BE.fechentrega;
                 cmd.Parameters.Add("@aniosemana", SqlDbType.Char, 7).Value = BE.aniosemana;
                 cmd.Parameters.Add("@aniosemanaconfirm", SqlDbType.Char, 7).Value = BE.aniosemanaconfirm;
                 cmd.Parameters.Add("@precioanterior", SqlDbType.Decimal).Value = BE.precioanterior;
                 cmd.Parameters.Add("@usuar", SqlDbType.Char, 15).Value = BE.usuar;
             }
             try
             {
                 cnx.Open();
                 if (cmd.ExecuteNonQuery() > 0)
                 {
                     return true;
                 }
                 else
                 {
                     return false;
                 }
             }
             catch (Exception ex)
             {
                 throw new Exception(ex.Message);
             }
         }
     }
 }
 public DataSet GetAll_ordendeCompra(string empresaid, tb_cm_ordendecompradet BE)
 {
     using (SqlConnection cnx = new SqlConnection(conex.empConexion(empresaid)))
     {
         using (SqlCommand cmd = new SqlCommand("gspTb60Ordendecompra_CrystalReport", cnx))
         {
             DataSet ds = new DataSet();
             {
                 cmd.CommandTimeout = 0;
                 cmd.CommandType = CommandType.StoredProcedure;
                 cmd.Parameters.Add("@moduloid", SqlDbType.Char, 4).Value = BE.moduloiddes; // 0320
                 cmd.Parameters.Add("@perianio", SqlDbType.Char, 4).Value = BE.perianio;
                 cmd.Parameters.Add("@perimesini", SqlDbType.Char, 2).Value = BE.perimesini;
                 cmd.Parameters.Add("@perimesfin", SqlDbType.Char, 2).Value = BE.perimesfin;
                 cmd.Parameters.Add("@productid", SqlDbType.VarChar, 13).Value = BE.productid;
                 cmd.Parameters.Add("@grupoid", SqlDbType.Char, 7).Value = BE.grupoid;
                 cmd.Parameters.Add("@xpendiente", SqlDbType.Char, 1).Value = BE.pendiente;
             }
             try
             {
                 cnx.Open();
                 using (SqlDataAdapter da = new SqlDataAdapter(cmd))
                 {
                     da.Fill(ds);
                 }
                 return ds;
             }
             catch (SqlException ex)
             {
                 throw new Exception(ex.Message);
                 //Debug.WriteLine("info message event: " + ex.Message);
             }
         }
     }
 }
        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;
                }
            }
        }