public string Modifica_estado_salida_orden_compra(Orden_compra Orden_compra, string Operacion)
        {
            MySqlConnection connection = new MySqlConnection(Configura_Cadena_Conexion_MySQL_compras_partidas_orden_compra());

            try
            {
                connection.Open();
                MySqlCommand command = new MySqlCommand(Configura_cadena_comando_modificar_estado_salida_orden_compra(Orden_compra, Operacion), connection);
                command.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                connection.Close();
                return(ex.Message);
            }

            connection.Close();
            return("No Errores");
        }
 private string Configura_cadena_comando_modificar_estado_salida_orden_compra(Orden_compra orden_compra, string operacion)
 {
     if (operacion == "Cancelar")
     {
         return("UPDATE ordenes_compra set  estado_salida='Cancelada'" +
                "where codigo_orden_compra='" + orden_compra.Codigo + "';");
     }
     else if (operacion == "Parcial")
     {
         return("UPDATE ordenes_compra set  estado_salida='Parcial'" +
                "where codigo_orden_compra='" + orden_compra.Codigo + "';");
     }
     else if (operacion == "Cerrar")
     {
         return("UPDATE ordenes_compra set  estado_salida='Cerrada'" +
                "where codigo_orden_compra='" + orden_compra.Codigo + "';");
     }
     else
     {
         return("");
     }
 }
        private void Rellena_partida_materiales_salida_proyecto()
        {
            double Total_precio_proyecto_salidas = 0.0;
            double Total_precio    = 0.0;
            double Precio_unitario = 0.0;

            Ordenes_compra_disponibles = Class_Ordenes_Compra.
                                         Adquiere_ordenes_compra_disponibles_en_base_datos();
            foreach (Salida_Material material in Salida_materiales_disponibles)
            {
                Precio_unitario = 0.0;
                Total_precio    = 0.0;
                try
                {
                    if (material.Orden_compra != "NA")
                    {
                        Orden_compra_seleccion = Ordenes_compra_disponibles.
                                                 Find(orden_compra => orden_compra.Codigo.Contains(material.Orden_compra));
                        Partida_orden_compra_busqueda.Material     = material.Codigo_material;
                        Partida_orden_compra_busqueda.Codigo_orden = Orden_compra_seleccion.Codigo;
                        Partidas_ordenes_compra_disponibles        = class_Partidas_Orden_Compra.
                                                                     Adquiere_partidas_ordenes_compra_disponibles_material_orden_compra(Partida_orden_compra_busqueda);

                        Partida_orden_compra_seleccion = Partidas_ordenes_compra_disponibles.
                                                         Find(partida_orden_compra => partida_orden_compra.Codigo_orden.Contains(material.Orden_compra));
                        Material_busqueda.Codigo = material.Codigo_material;
                        Materiales_disponibles   = Class_Materiales.Adquiere_materiales_codigo_material_en_base_datos(Material_busqueda);
                        Material_seleccion       = Materiales_disponibles.
                                                   Find(material_combo => material_combo.Codigo.Contains(material.Codigo_material));
                        if (Material_seleccion.divisa == "Pesos")
                        {
                            Precio_unitario = Convert.ToDouble(Material_seleccion.precio);
                            Total_precio    = Convert.ToDouble(material.Cantidad) * Precio_unitario;
                        }
                        else if (Material_seleccion.divisa == "Dolares")
                        {
                            Precio_unitario = Convert.ToDouble(Material_seleccion.precio) * Convert.ToDouble(datos_generales.Tc);
                            Total_precio    = Convert.ToDouble(material.Cantidad) * Precio_unitario;
                        }
                        Total_precio_proyecto_salidas += Total_precio;
                        if (Material_seleccion.Generico == "1")
                        {
                            dataGridViewProyectoReportes.Rows.Add(Material_seleccion.Codigo,
                                                                  material.Codigo_proveedor,
                                                                  material.Descripcion_material, Material_seleccion.Marca,
                                                                  material.Cantidad, material.Nombre_empleado, material.Fecha,
                                                                  Precio_unitario.ToString("0.00"), Total_precio.ToString("0.00"),
                                                                  material.Proyecto,
                                                                  Partida_orden_compra_seleccion.Proyecto,
                                                                  Partida_orden_compra_seleccion.Cantidad,
                                                                  Partida_orden_compra_seleccion.Codigo_orden,
                                                                  "Salida", "");
                        }
                        else
                        {
                            dataGridViewProyectoReportes.Rows.Add(Material_seleccion.Codigo,
                                                                  Material_seleccion.Codigo_proveedor,
                                                                  Material_seleccion.Descripcion, Material_seleccion.Marca,
                                                                  material.Cantidad, material.Nombre_empleado, material.Fecha,
                                                                  Precio_unitario.ToString("0.00"), Total_precio.ToString("0.00"),
                                                                  material.Proyecto,
                                                                  Partida_orden_compra_seleccion.Proyecto,
                                                                  Partida_orden_compra_seleccion.Cantidad,
                                                                  Partida_orden_compra_seleccion.Codigo_orden,
                                                                  "Salida", "");
                        }
                    }
                    else if (material.Orden_compra == "NA")
                    {
                        Material_busqueda.Codigo = material.Codigo_material;
                        Materiales_disponibles   = Class_Materiales.Adquiere_materiales_codigo_material_en_base_datos(Material_busqueda);
                        Material_seleccion       = Materiales_disponibles.
                                                   Find(material_combo => material_combo.Codigo.Contains(material.Codigo_material));
                        if (Material_seleccion.divisa == "Pesos")
                        {
                            Precio_unitario = Convert.ToDouble(Material_seleccion.precio);
                            Total_precio    = Convert.ToDouble(material.Cantidad) * Precio_unitario;
                        }
                        else if (Material_seleccion.divisa == "Dolares")
                        {
                            Precio_unitario = Convert.ToDouble(Material_seleccion.precio) * Convert.ToDouble(datos_generales.Tc);
                            Total_precio    = Convert.ToDouble(material.Cantidad) * Precio_unitario;
                        }
                        dataGridViewProyectoReportes.Rows.Add(Material_seleccion.Codigo,
                                                              Material_seleccion.Codigo_proveedor,
                                                              Material_seleccion.Descripcion, Materiales_disponibles[0].Marca,
                                                              material.Cantidad, material.Nombre_empleado, material.Fecha,
                                                              Precio_unitario.ToString("0.00"), Total_precio.ToString("0.00"),
                                                              material.Proyecto,
                                                              "",
                                                              "",
                                                              "",
                                                              "Salida", "");
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
            textBoxTotalPrecioProyectoSalidas.Text = Total_precio_proyecto_salidas.ToString("0.00");
        }