コード例 #1
0
        public Boolean GuardarDB(prod_GestionProductivaTechos_CusTalme_X_in_movi_inve_Info Info, ref string Men)
        {
            try
            {
                using (EntitiesProduccion Context = new EntitiesProduccion())
                {
                    var Address = new prod_GestionProductivaTechos_CusTalme_X_in_movi_inve();

                    Address.IdBodega            = Info.IdBodega;
                    Address.IdEmpresa           = Info.IdEmpresa;
                    Address.IdGestionProductiva = Info.IdGestionProductiva;
                    Address.IdMovi_inven_tipo   = Info.IdMovi_inven_tipo;
                    Address.IdNumMovi           = Info.IdNumMovi;
                    Address.IdSucursal          = Info.IdSucursal;
                    Address.prod_IdEmpresa      = Info.prod_IdEmpresa;
                    Address.sec = null;

                    Context.prod_GestionProductivaTechos_CusTalme_X_in_movi_inve.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 Guardar(prod_GestionProductivaTechos_CusTalme_X_in_movi_inve_Info Info, ref string Men)
 {
     try
     {
         return(Data.GuardarDB(Info, ref Men));
     }
     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("", "Guardar", ex.Message), ex)
               {
                   EntityType = typeof(prod_GestionProductivaTechos_CusTalme_X_in_movi_inve_Bus)
               };
     }
 }
コード例 #3
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                txtIdGestion.Focus();
                Get();

                string mensaje_cbte_cble = "";


                if (validar())
                {
                    decimal Id = 0;
                    prod_GestionProductivaTechos_CusTalme_X_in_movi_inve_Bus BusprodXMovi = new prod_GestionProductivaTechos_CusTalme_X_in_movi_inve_Bus();
                    if (Bus.GuardarDB(Info, ref Id))
                    {
                        var Parametros_Techo = ((List <prod_ModeloProduccion_CusTalme_Info>)CmbTipoModelo.Properties.DataSource).First(var => var.IdModeloProd == Convert.ToInt32(CmbTipoModelo.EditValue));
                        #region MovimientoInventarioMateriaPrima


                        var ProdMateriaPrima       = _ProdXBode_B.Get_Info_Producto_x_Producto(param.IdEmpresa, Convert.ToInt32(Parametros_Techo.IdSucursal_EgrxMateriaPrima), Convert.ToInt32(Parametros_Techo.IdBodega_EgrxMateriaPrima), Convert.ToDecimal(cmbMateriaPrima.EditValue));
                        in_movi_inve_Info InfoMovi = new in_movi_inve_Info();
                        InfoMovi.IdEmpresa         = param.IdEmpresa;
                        InfoMovi.cm_observacion    = "Egr. Materia P. X Gestion Productiva " + CmbTipoModelo.Text + "# " + Id;
                        InfoMovi.cm_tipo           = "-";
                        InfoMovi.cm_fecha          = DateTime.Now;
                        InfoMovi.Fecha_Transac     = param.Fecha_Transac;
                        InfoMovi.IdUsuario         = param.IdUsuario;
                        InfoMovi.IdUsuarioUltModi  = param.IdUsuario;
                        InfoMovi.Fecha_UltMod      = param.Fecha_Transac;
                        InfoMovi.IdBodega          = Convert.ToInt32(Parametros_Techo.IdBodega_EgrxMateriaPrima);
                        InfoMovi.IdSucursal        = Convert.ToInt32(Parametros_Techo.IdSucursal_EgrxMateriaPrima);
                        InfoMovi.IdMovi_inven_tipo = Convert.ToInt32(Parametros_Techo.IdMovi_inven_tipo_x_EgrxProduc_MatPri);
                        InfoMovi.nom_pc            = param.nom_pc;
                        Info.ip = param.ip;
                        string  men    = "";
                        decimal Idmovi = 0;
                        if (_movi_B.GrabarDB(InfoMovi, ref Idmovi, ref mensaje_cbte_cble, ref men) == false)
                        {
                            MessageBox.Show(men);
                        }
                        prod_GestionProductivaTechos_CusTalme_X_in_movi_inve_Info InfoMovxPro = new prod_GestionProductivaTechos_CusTalme_X_in_movi_inve_Info();
                        InfoMovxPro.IdEmpresa           = InfoMovxPro.prod_IdEmpresa = param.IdEmpresa;
                        InfoMovxPro.IdBodega            = InfoMovi.IdBodega;
                        InfoMovxPro.IdGestionProductiva = Id;
                        InfoMovxPro.IdMovi_inven_tipo   = InfoMovi.IdMovi_inven_tipo;
                        InfoMovxPro.IdNumMovi           = Idmovi;
                        InfoMovxPro.IdSucursal          = InfoMovi.IdSucursal;
                        if (BusprodXMovi.Guardar(InfoMovxPro, ref men) == false)
                        {
                            MessageBox.Show(men);
                        }


                        #region DetalleMovimiento
                        List <in_movi_inve_detalle_Info> ListDetalle = new List <in_movi_inve_detalle_Info>();
                        in_movi_inve_detalle_Info        _DetMovi_I  = new in_movi_inve_detalle_Info();
                        _DetMovi_I.IdBodega          = Convert.ToInt32(Parametros_Techo.IdBodega_EgrxMateriaPrima);
                        _DetMovi_I.IdEmpresa         = param.IdEmpresa;
                        _DetMovi_I.IdMovi_inven_tipo = Convert.ToInt32(Parametros_Techo.IdMovi_inven_tipo_x_EgrxProduc_MatPri);
                        _DetMovi_I.IdNumMovi         = Idmovi;
                        _DetMovi_I.IdProducto        = Info.IdProducto_MateriaPrima;
                        _DetMovi_I.IdSucursal        = Convert.ToInt32(Parametros_Techo.IdSucursal_EgrxMateriaPrima);
                        _DetMovi_I.dm_cantidad       = Convert.ToDouble(txtConsumo.EditValue);
                        _DetMovi_I.dm_observacion    = InfoMovi.cm_observacion;
                        _DetMovi_I.dm_precio         = ProdMateriaPrima.pr_precio_publico;
                        _DetMovi_I.mv_costo          = ProdMateriaPrima.pr_costo_promedio;
                        _DetMovi_I.mv_tipo_movi      = "-";
                        _DetMovi_I.dm_stock_ante     = ProdMateriaPrima.pr_stock;
                        _DetMovi_I.dm_stock_actu     = ProdMateriaPrima.pr_stock - _DetMovi_I.dm_cantidad;
                        ListDetalle.Add(_DetMovi_I);

                        #endregion
                        if (_movidet_b.GrabarDB(ListDetalle, ref men) == false)
                        {
                            MessageBox.Show(men);
                        }
                        ListDetalle.ForEach(var => var.dm_cantidad = var.dm_cantidad * -1);
                        _ProdXBode_B.ActualizarStock_x_Bodega_con_moviInven(ListDetalle, ref men);
                        #endregion
                        #region MovimientoInvenarioProducto
                        InfoMovi                   = new in_movi_inve_Info();
                        ListDetalle                = new List <in_movi_inve_detalle_Info>();
                        InfoMovi.IdEmpresa         = param.IdEmpresa;
                        InfoMovi.cm_observacion    = "Ing. Produ Ter. X Gestion Productiva " + CmbTipoModelo.Text + "# " + Id;
                        InfoMovi.cm_tipo           = "+";
                        InfoMovi.cm_fecha          = DateTime.Now;
                        InfoMovi.Fecha_Transac     = param.Fecha_Transac;
                        InfoMovi.IdUsuario         = param.IdUsuario;
                        InfoMovi.IdUsuarioUltModi  = param.IdUsuario;
                        InfoMovi.Fecha_UltMod      = param.Fecha_Transac;
                        InfoMovi.IdBodega          = Convert.ToInt32(Parametros_Techo.IdBodega_IngxProduc);
                        InfoMovi.IdSucursal        = Convert.ToInt32(Parametros_Techo.IdSucursal_IngxProduc);
                        InfoMovi.IdMovi_inven_tipo = Convert.ToInt32(Parametros_Techo.IdMovi_inven_tipo_x_IngxProduc_ProdTermi);
                        InfoMovi.nom_pc            = param.nom_pc;
                        Info.ip = param.ip;
                        if (_movi_B.GrabarDB(InfoMovi, ref Idmovi, ref mensaje_cbte_cble, ref men) == false)
                        {
                            MessageBox.Show(men);
                        }
                        InfoMovxPro                     = new prod_GestionProductivaTechos_CusTalme_X_in_movi_inve_Info();
                        InfoMovxPro.IdEmpresa           = InfoMovxPro.prod_IdEmpresa = param.IdEmpresa;
                        InfoMovxPro.IdBodega            = InfoMovi.IdBodega;
                        InfoMovxPro.IdGestionProductiva = Id;
                        InfoMovxPro.IdMovi_inven_tipo   = InfoMovi.IdMovi_inven_tipo;
                        InfoMovxPro.IdNumMovi           = Idmovi;
                        InfoMovxPro.IdSucursal          = InfoMovi.IdSucursal;
                        if (BusprodXMovi.Guardar(InfoMovxPro, ref men) == false)
                        {
                            MessageBox.Show(men);
                        }
                        Boolean segunda = false;
                        foreach (var item in Info.ListaDetalle)
                        {
                            var Producto = _ProdXBode_B.Get_Info_Producto_x_Producto(param.IdEmpresa, Convert.ToInt32(Parametros_Techo.IdSucursal_EgrxMateriaPrima), Convert.ToInt32(Parametros_Techo.IdBodega_EgrxMateriaPrima), Convert.ToDecimal(cmbMateriaPrima.EditValue));
                            _DetMovi_I                   = new in_movi_inve_detalle_Info();
                            _DetMovi_I.IdBodega          = Convert.ToInt32(Parametros_Techo.IdBodega_IngxProduc);
                            _DetMovi_I.IdEmpresa         = param.IdEmpresa;
                            _DetMovi_I.IdMovi_inven_tipo = Convert.ToInt32(Parametros_Techo.IdMovi_inven_tipo_x_IngxProduc_ProdTermi);
                            _DetMovi_I.IdNumMovi         = Idmovi;
                            _DetMovi_I.IdProducto        = item.Prod_IdProducto;
                            _DetMovi_I.IdSucursal        = Convert.ToInt32(Parametros_Techo.IdSucursal_IngxProduc);
                            _DetMovi_I.dm_cantidad       = item.Prducc_Unidades;
                            _DetMovi_I.dm_observacion    = InfoMovi.cm_observacion;
                            _DetMovi_I.dm_precio         = Producto.pr_precio_publico;
                            _DetMovi_I.mv_costo          = Producto.pr_costo_promedio;
                            _DetMovi_I.mv_tipo_movi      = "+";
                            _DetMovi_I.dm_stock_ante     = Producto.pr_stock;
                            _DetMovi_I.dm_stock_actu     = Producto.pr_stock - _DetMovi_I.dm_cantidad;
                            ListDetalle.Add(_DetMovi_I);

                            if (segunda)
                            {
                                _DetMovi_I = new in_movi_inve_detalle_Info();
                                var Producto2 = _ProdXBode_B.Get_Info_Producto_x_Producto(param.IdEmpresa, Convert.ToInt32(Parametros_Techo.IdSucursal_EgrxMateriaPrima), Convert.ToInt32(Parametros_Techo.IdBodega_EgrxMateriaPrima), Convert.ToDecimal(item.Segunda_IdProducto));
                                _DetMovi_I                   = new in_movi_inve_detalle_Info();
                                _DetMovi_I.IdBodega          = Convert.ToInt32(Parametros_Techo.IdBodega_IngxProduc);
                                _DetMovi_I.IdEmpresa         = param.IdEmpresa;
                                _DetMovi_I.IdMovi_inven_tipo = Convert.ToInt32(Parametros_Techo.IdMovi_inven_tipo_x_IngxProduc_ProdTermi);
                                _DetMovi_I.IdNumMovi         = Idmovi;
                                _DetMovi_I.IdProducto        = item.Segunda_IdProducto;
                                _DetMovi_I.IdSucursal        = Convert.ToInt32(Parametros_Techo.IdSucursal_IngxProduc);
                                _DetMovi_I.dm_cantidad       = item.Segunda_Unidades;
                                _DetMovi_I.dm_observacion    = InfoMovi.cm_observacion;
                                _DetMovi_I.dm_precio         = Producto2.pr_precio_publico;
                                _DetMovi_I.mv_costo          = Producto2.pr_costo_promedio;
                                _DetMovi_I.mv_tipo_movi      = "+";
                                _DetMovi_I.dm_stock_ante     = Producto2.pr_stock;
                                _DetMovi_I.dm_stock_actu     = Producto2.pr_stock - _DetMovi_I.dm_cantidad;
                                ListDetalle.Add(_DetMovi_I);
                            }
                            _ProdXBode_B.ActualizarStock_x_Bodega_con_moviInven(ListDetalle, ref men);
                        }
                        if (_movidet_b.GrabarDB(ListDetalle, ref men) == false)
                        {
                            MessageBox.Show(men);
                        }
                        ;

                        #endregion
                        txtIdGestion.EditValue = Id;

                        MessageBox.Show("Se ha Ingresado con exito el Registro #: " + Id);
                        btnGuardar.Enabled       = false;
                        btnGuardarYSalir.Enabled = false;
                    }
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
            }
        }