public Boolean GuardarDB(prod_GestionProductivaAcero_CusTalme_x_in_movi_inven_Info Info)
        {
            try
            {
                using (EntitiesProduccion Context = new EntitiesProduccion())
                {
                    var Address = new prod_GestionProductivaAcero_CusTalme_x_in_movi_inven();

                    Address.gp_IdEmpresa         = Info.gp_IdEmpresa;
                    Address.gp_IdSucursal        = Info.gp_IdSucursal;
                    Address.gp_IdGestionAceria   = Info.gp_IdGestionAceria;
                    Address.mv_IdEmpresa         = Info.mv_IdEmpresa;
                    Address.mv_IdSucursal        = Info.mv_IdSucursal;
                    Address.mv_IdBodega          = Info.mv_IdBodega;
                    Address.mv_IdMovi_inven_tipo = Info.mv_IdMovi_inven_tipo;
                    Address.mv_IdNumMovi         = Info.mv_IdNumMovi;

                    Context.prod_GestionProductivaAcero_CusTalme_x_in_movi_inven.Add(Address);
                    Context.SaveChanges();
                }
                return(true);
            }
            catch (Exception ex)
            {
                string arreglo = ToString();
                tb_sis_Log_Error_Vzen_Data oDataLog      = new tb_sis_Log_Error_Vzen_Data();
                tb_sis_Log_Error_Vzen_Info Log_Error_sis = new tb_sis_Log_Error_Vzen_Info(ex.ToString(), "", arreglo, "", "", "", "", "", DateTime.Now);
                mensaje = ex.ToString() + " " + ex.Message;
                oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                throw new Exception(ex.ToString());
            }
        }
 public Boolean GuardarDB(prod_GestionProductivaAcero_CusTalme_x_in_movi_inven_Info Info)
 {
     try
     {
         return(Data.GuardarDB(Info));
     }
     catch (Exception ex)
     {
         Core.Erp.Info.Log_Exception.LoggingManager.Logger.Log(Core.Erp.Info.Log_Exception.LoggingCategory.Error, ex.Message);
         throw new Core.Erp.Info.Log_Exception.DalException(string.Format("", "GuardarDB", ex.Message), ex)
               {
                   EntityType = typeof(prod_GestionProductivaAcero_CusTalme_x_in_movi_inven_Bus)
               };
     }
 }
        void GenerarMovimientos(decimal IdGestion)
        {
            try
            {
                #region MovimientoxIngresoPalanquilla

                string mensaje_cbte_cble = "";


                in_producto_Bus   Prod_b            = new in_producto_Bus();
                var               ProductoTerminado = Prod_b.Get_info_Product(param.IdEmpresa, Convert.ToDecimal(cmbTipo.EditValue));
                in_movi_inve_Info _in_movi_inven_I  = new in_movi_inve_Info();
                _in_movi_inven_I.IdEmpresa         = param.IdEmpresa;
                _in_movi_inven_I.IdSucursal        = _Parametros.IdSucursal_IngxProduc;
                _in_movi_inven_I.IdBodega          = _Parametros.IdBodega_IngxProduc;
                _in_movi_inven_I.cm_tipo           = "+";
                _in_movi_inven_I.cm_observacion    = txtObservacion.Text + " IdGestionPrdAceria #" + IdGestion;
                _in_movi_inven_I.cm_fecha          = Convert.ToDateTime(Convert.ToDateTime(dtpFecha.EditValue).ToShortDateString());
                _in_movi_inven_I.IdMovi_inven_tipo = _Parametros.IdMovi_inven_tipo_x_IngXProdAceriaProdTerm;
                in_movi_inve_detalle_Info Det_in_movi_inven = new in_movi_inve_detalle_Info();
                Det_in_movi_inven.dm_cantidad    = Convert.ToDouble(txtPalanquilla.EditValue);
                Det_in_movi_inven.dm_observacion = _in_movi_inven_I.cm_observacion;
                Det_in_movi_inven.dm_precio      = ProductoTerminado.pr_precio_publico;
                //Det_in_movi_inven.dm_stock_actu = ProductoTerminado.kr_stockActual + Det_in_movi_inven.dm_cantidad;
                //Det_in_movi_inven.dm_stock_ante = ProductoTerminado.kr_stockActual;
                Det_in_movi_inven.IdMovi_inven_tipo = _in_movi_inven_I.IdMovi_inven_tipo;
                Det_in_movi_inven.IdBodega          = _in_movi_inven_I.IdBodega;
                Det_in_movi_inven.IdSucursal        = _in_movi_inven_I.IdSucursal;
                Det_in_movi_inven.IdEmpresa         = _in_movi_inven_I.IdEmpresa;
                Det_in_movi_inven.IdProducto        = Convert.ToDecimal(cmbTipo.EditValue);
                Det_in_movi_inven.mv_tipo_movi      = _in_movi_inven_I.cm_tipo;
                _in_movi_inven_I.listmovi_inve_detalle_Info.Add(Det_in_movi_inven);

                decimal IdMovimientoInventario = 0;
                string  Mensaje = "";
                if (BusMOvi_B.GrabarDB(_in_movi_inven_I, ref IdMovimientoInventario, ref mensaje_cbte_cble, ref Mensaje) == false)
                {
                    MessageBox.Show(Mensaje, "Error Movimiento Inventario");
                }

                prod_GestionProductivaAcero_CusTalme_x_in_movi_inven_Info InfoXMovi = new prod_GestionProductivaAcero_CusTalme_x_in_movi_inven_Info();
                InfoXMovi.gp_IdEmpresa         = param.IdEmpresa;
                InfoXMovi.gp_IdGestionAceria   = IdGestion;
                InfoXMovi.gp_IdSucursal        = _Info.IdSucursal;
                InfoXMovi.mv_IdMovi_inven_tipo = _in_movi_inven_I.IdMovi_inven_tipo;
                InfoXMovi.mv_IdBodega          = _in_movi_inven_I.IdBodega;
                InfoXMovi.mv_IdSucursal        = _in_movi_inven_I.IdSucursal;
                InfoXMovi.mv_IdEmpresa         = param.IdEmpresa;
                InfoXMovi.mv_IdNumMovi         = IdMovimientoInventario;
                BusInter.GuardarDB(InfoXMovi);

                #endregion
                #region MOvimientoChatarraNoProcesada


                var ProductoChatarraNoProcesada = Prod_b.Get_info_Product(param.IdEmpresa, 822);
                _in_movi_inven_I.IdNumMovi         = 0;
                _in_movi_inven_I.IdMovi_inven_tipo = 53;
                _in_movi_inven_I.IdSucursal        = _Parametros.IdSucursal_IngxProduc;
                _in_movi_inven_I.IdBodega          = _Parametros.IdBodega_IngxProduc;

                Det_in_movi_inven.IdMovi_inven_tipo = _in_movi_inven_I.IdMovi_inven_tipo;
                Det_in_movi_inven.dm_cantidad       = Convert.ToDouble(txtMarrano.EditValue);
                Det_in_movi_inven.dm_precio         = ProductoChatarraNoProcesada.pr_precio_publico;
                //Det_in_movi_inven.dm_stock_actu = ProductoChatarraNoProcesada.kr_stockActual + Det_in_movi_inven.dm_cantidad;
                //Det_in_movi_inven.dm_stock_ante = ProductoChatarraNoProcesada.kr_stockActual;
                Det_in_movi_inven.IdBodega   = _in_movi_inven_I.IdBodega;
                Det_in_movi_inven.IdSucursal = _in_movi_inven_I.IdSucursal;
                Det_in_movi_inven.IdProducto = 822;
                if (BusMOvi_B.GrabarDB(_in_movi_inven_I, ref IdMovimientoInventario, ref mensaje_cbte_cble, ref Mensaje) == false)
                {
                    MessageBox.Show(Mensaje, "Error Movimiento Inventario");
                }

                InfoXMovi = new prod_GestionProductivaAcero_CusTalme_x_in_movi_inven_Info();
                InfoXMovi.gp_IdEmpresa         = param.IdEmpresa;
                InfoXMovi.gp_IdGestionAceria   = IdGestion;
                InfoXMovi.gp_IdSucursal        = _Info.IdSucursal;
                InfoXMovi.mv_IdMovi_inven_tipo = _in_movi_inven_I.IdMovi_inven_tipo;
                InfoXMovi.mv_IdBodega          = _in_movi_inven_I.IdBodega;
                InfoXMovi.mv_IdSucursal        = _in_movi_inven_I.IdSucursal;
                InfoXMovi.mv_IdEmpresa         = param.IdEmpresa;
                InfoXMovi.mv_IdNumMovi         = IdMovimientoInventario;
                BusInter.GuardarDB(InfoXMovi);

                #endregion
                #region MovimientoChatarraProcesada //OJO             //Ojo Valores Quemados


                var ProductoChatarraProcesada = Prod_b.Get_info_Product(param.IdEmpresa, 823);
                _in_movi_inven_I                   = new in_movi_inve_Info();
                _in_movi_inven_I.IdEmpresa         = param.IdEmpresa;
                _in_movi_inven_I.IdSucursal        = 2;
                _in_movi_inven_I.IdBodega          = 1;
                _in_movi_inven_I.cm_tipo           = "-";
                _in_movi_inven_I.cm_observacion    = txtObservacion.Text + " IdGestionPrdAceria #" + IdGestion;
                _in_movi_inven_I.cm_fecha          = Convert.ToDateTime(Convert.ToDateTime(dtpFecha.EditValue).ToShortDateString());
                _in_movi_inven_I.IdMovi_inven_tipo = 54;
                Det_in_movi_inven                  = new in_movi_inve_detalle_Info();
                Det_in_movi_inven.dm_cantidad      = Convert.ToDouble(txtPalanquilla.EditValue);
                Det_in_movi_inven.dm_observacion   = _in_movi_inven_I.cm_observacion;
                Det_in_movi_inven.dm_precio        = ProductoChatarraProcesada.pr_precio_publico;
                //Det_in_movi_inven.dm_stock_actu = ProductoChatarraProcesada.kr_stockActual - Det_in_movi_inven.dm_cantidad;
                //Det_in_movi_inven.dm_stock_ante = ProductoChatarraProcesada.kr_stockActual;
                Det_in_movi_inven.IdMovi_inven_tipo = _in_movi_inven_I.IdMovi_inven_tipo;
                Det_in_movi_inven.IdBodega          = _in_movi_inven_I.IdBodega;
                Det_in_movi_inven.IdSucursal        = _in_movi_inven_I.IdSucursal;
                Det_in_movi_inven.IdEmpresa         = _in_movi_inven_I.IdEmpresa;
                Det_in_movi_inven.IdProducto        = Convert.ToDecimal(cmbTipo.EditValue);
                Det_in_movi_inven.mv_tipo_movi      = _in_movi_inven_I.cm_tipo;
                _in_movi_inven_I.listmovi_inve_detalle_Info.Add(Det_in_movi_inven);


                if (BusMOvi_B.GrabarDB(_in_movi_inven_I, ref IdMovimientoInventario, ref mensaje_cbte_cble, ref Mensaje) == false)
                {
                    MessageBox.Show(Mensaje, "Error Movimiento Inventario " + Mensaje);
                }

                InfoXMovi = new prod_GestionProductivaAcero_CusTalme_x_in_movi_inven_Info();
                InfoXMovi.gp_IdEmpresa         = param.IdEmpresa;
                InfoXMovi.gp_IdGestionAceria   = IdGestion;
                InfoXMovi.gp_IdSucursal        = _Info.IdSucursal;
                InfoXMovi.mv_IdMovi_inven_tipo = _in_movi_inven_I.IdMovi_inven_tipo;
                InfoXMovi.mv_IdBodega          = _in_movi_inven_I.IdBodega;
                InfoXMovi.mv_IdSucursal        = _in_movi_inven_I.IdSucursal;
                InfoXMovi.mv_IdEmpresa         = param.IdEmpresa;
                InfoXMovi.mv_IdNumMovi         = IdMovimientoInventario;
                BusInter.GuardarDB(InfoXMovi);

                #endregion
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
            }
        }