示例#1
0
        public void CargarData()
        {
            try
            {
                if (gridLkUOrdenTaller.EditValue != null && gridLkUOrdenTaller.EditValue != "")
                {
                    ListadoDisponible = new BindingList <in_Producto_Info>();
                    List <vwin_movi_inve_detalle_x_Producto_CusCider_Saldos_Info> LstDetxProd = new List <vwin_movi_inve_detalle_x_Producto_CusCider_Saldos_Info>();


                    in_movi_inve_detalle_x_Producto_CusCider_Bus BusDetxProd = new in_movi_inve_detalle_x_Producto_CusCider_Bus();

                    LstDetxProd = BusDetxProd.ObtenerMateriaPrima(param.IdEmpresa, param.IdSucursal, Convert.ToInt32(ucIn_Sucursal_Bodega.cmb_bodega.EditValue), Convert.ToInt32(OT.CodObra), Convert.ToInt32(OT.IdOrdenTaller));
                    gridControlDisponible.DataSource = LstDetxProd;

                    foreach (var item in LstDetxProd)
                    {
                        in_Producto_Info prod = new in_Producto_Info();

                        prod.pr_codigo_barra = item.CodigoBarra;
                        prod.IdProducto      = item.IdProducto;
                        prod.IdEmpresa       = item.IdEmpresa;
                        prod.IdSucursal      = item.IdSucursal;
                        prod.IdBodega        = item.IdBodega;
                        prod.pr_descripcion  = item.pr_descripcion;// busprod.DescripcionTot_Producto(item.IdEmpresa, item.IdProducto);
                        ListadoDisponible.Add(prod);
                    }

                    gridControlDisponible.DataSource = ListadoDisponible;
                }
                else
                {
                    MessageBox.Show("No hay codigos de Barra para OT Seleccionada");
                    ListadoDisponible = new BindingList <in_Producto_Info>();
                    gridControlDisponible.DataSource = ListadoDisponible;
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
            }
        }
示例#2
0
        private void gridLkUGrupoTrabajo_EditValueChanged(object sender, EventArgs e)
        {
            try
            {
                if (gridLkUGrupoTrabajo.EditValue != null && gridLkUGrupoTrabajo.EditValue != "")
                {
                    ListadoDisponible = new BindingList <in_Producto_Info>();
                    List <vwin_movi_inve_detalle_x_Producto_CusCider_Saldos_Info> LstDetxProd = new List <vwin_movi_inve_detalle_x_Producto_CusCider_Saldos_Info>();

                    GT = busGT.OBtenerGT(param.IdEmpresa, Convert.ToInt32(UCSuc_Bod.cmb_sucursal.EditValue), Convert.ToDecimal(gridLkUGrupoTrabajo.EditValue));

                    int et_anterior = etapaanterior(GT.IdEtapa, GT.IdProcesoProductivo);
                    in_movi_inve_detalle_x_Producto_CusCider_Bus BusDetxProd = new in_movi_inve_detalle_x_Producto_CusCider_Bus();
                    LstDetxProd = BusDetxProd.ObtenerMateriaPrima(param.IdEmpresa, _sucursalInfo.IdSucursal, _bodegaInfo.IdBodega,
                                                                  OT.IdSucursal, OT.IdOrdenTaller, OT.CodObra, OT.IdEmpresa);

                    foreach (var item in LstDetxProd)
                    {
                        in_Producto_Info prod = new in_Producto_Info();

                        prod.pr_codigo_barra = item.CodigoBarra;
                        prod.IdProducto      = item.IdProducto;
                        prod.IdEmpresa       = item.IdEmpresa;
                        prod.IdSucursal      = item.IdSucursal;
                        prod.IdBodega        = item.IdBodega;
                        prod.pr_descripcion  = busprod.Get_DescripcionTot_Producto(item.IdEmpresa, item.IdProducto);
                        ListadoDisponible.Add(prod);
                    }

                    gridControlDisponible.DataSource = ListadoDisponible;
                }
                else
                {
                    ListadoDisponible = new BindingList <in_Producto_Info>(); gridControlDisponible.DataSource = ListadoDisponible;
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
            }
        }
示例#3
0
        void GenerarMovimientoInvenario()
        {
            try
            {
                decimal IdMoviInvenIngres = 0;
                string  mensaje_cbte_cble = "";

                in_producto_x_tb_bodega_Bus prod_B = new in_producto_x_tb_bodega_Bus();
                in_movi_inve_detalle_x_Producto_CusCider_Bus CusCidersus_B = new in_movi_inve_detalle_x_Producto_CusCider_Bus();

                in_movi_inve_Bus in_Movi_B = new in_movi_inve_Bus();
                in_movi_inve_detalle_x_Producto_CusCider_Bus BusCusCidersu = new in_movi_inve_detalle_x_Producto_CusCider_Bus();
                var OrdenTaller = ((List <prd_OrdenTaller_Info>)(cmbOrdenTaller.Properties.DataSource)).First(v => v.IdOrdenTaller == Convert.ToDecimal(cmbOrdenTaller.EditValue));
                var Parametros  = BusParmetros.ObtenerObjeto(param.IdEmpresa);
                prd_ControlProduccion_Obrero_x_in_movi_inve_Info MoviXcConv;
                in_movi_inve_Info MoviInfo = new in_movi_inve_Info();
                MoviInfo.IdEmpresa      = param.IdEmpresa;
                MoviInfo.cm_fecha       = Convert.ToDateTime(dtpFecha.Value);
                MoviInfo.cm_observacion = txtObservacion.Text +
                                          " Eg x Prd x Ob" + cmbObra.Text +
                                          " Ot " + cmbOrdenTaller.Text +
                                          " Gt " + cmbGrupoAsignado.Text +
                                          " Et I " + txtEtapaAnterior.Text +
                                          " Et F " + txtEtapa.Text
                ;
                MoviInfo.cm_tipo           = "-";
                MoviInfo.IdBodega          = Convert.ToInt32(ctrl_Sucbod.cmb_bodega.EditValue);
                MoviInfo.IdSucursal        = Convert.ToInt32(ctrl_Sucbod.cmb_sucursal.EditValue);
                MoviInfo.IdMovi_inven_tipo = Convert.ToInt32(Parametros.IdMovi_inven_tipo_egr_ContrlProduccion);

                in_producto_Bus busprod = new in_producto_Bus();
                List <in_movi_inve_detalle_Info> Listdetalle = new List <in_movi_inve_detalle_Info>();

                foreach (var item in _ListDetalle)
                {
                    in_movi_inve_detalle_Info Obj = new in_movi_inve_detalle_Info();

                    var Producto = prod_B.Get_Info_Producto_x_Producto(param.IdEmpresa, MoviInfo.IdSucursal, MoviInfo.IdBodega, item.IdProducto);
                    Obj.IdProducto        = item.IdProducto;
                    Obj.IdSucursal        = MoviInfo.IdSucursal;
                    Obj.IdBodega          = MoviInfo.IdBodega;
                    Obj.IdEmpresa         = param.IdEmpresa;
                    Obj.IdMovi_inven_tipo = MoviInfo.IdMovi_inven_tipo;
                    Obj.IdProducto        = item.IdProducto;
                    Obj.mv_costo          = ProductosXEtapa.First(v => v.IdProducto == item.IdProducto).mv_costo;
                    Obj.dm_precio         = ProductosXEtapa.First(v => v.IdProducto == item.IdProducto).dm_precio;
                    Obj.mv_tipo_movi      = "-";
                    Obj.dm_stock_actu     = Producto.pr_stock - 1;
                    Obj.dm_stock_ante     = Producto.pr_stock;

                    var prod = busprod.Get_Info_BuscarProducto(item.IdProducto, param.IdEmpresa);
                    Obj.dm_observacion = " Prod " + prod.pr_descripcion;
                    Obj.dm_observacion = MoviInfo.cm_observacion + Obj.dm_observacion;

                    Obj.dm_cantidad = -1;


                    MoviInfo.listmovi_inve_detalle_Info.Add(Obj);
                }

                decimal IdMoviInven = 0;
                string  Msj         = "";
                int     c           = 1;
                //MoviInfo.listmovi_inve_detalle_Info.ForEach(var => var.dm_cantidad = var.dm_cantidad * -1);
                if (in_Movi_B.GrabarDB(MoviInfo, ref IdMoviInven, ref mensaje_cbte_cble, ref Msj) == false)
                {
                    MessageBox.Show(Msj, "Movimiento Egreso");
                }
                else
                {
                    MoviXcConv                      = new prd_ControlProduccion_Obrero_x_in_movi_inve_Info();
                    MoviXcConv.mv_IdBodega          = MoviInfo.IdBodega;
                    MoviXcConv.mv_IdEmpresa         = MoviInfo.IdEmpresa;
                    MoviXcConv.mv_IdMovi_inven_tipo = MoviInfo.IdMovi_inven_tipo;
                    MoviXcConv.mv_IdNumMovi         = IdMoviInven;
                    MoviXcConv.mv_IdSucursal        = MoviInfo.IdSucursal;
                    listMovi.Add(MoviXcConv);

                    MoviInfo.cm_tipo           = "+";
                    MoviInfo.IdNumMovi         = 0;
                    MoviInfo.IdMovi_inven_tipo = Convert.ToInt32(Parametros.IdMovi_inven_tipo_ing_ContrlProduccion);
                    MoviInfo.cm_observacion    = txtObservacion.Text +
                                                 " Ing x Prd x Ob" + cmbObra.Text +
                                                 " Ot " + cmbOrdenTaller.Text +
                                                 " Gt " + cmbGrupoAsignado.Text +
                                                 " Et I " + txtEtapaAnterior.Text +
                                                 " Et F " + txtEtapa.Text
                    ;

                    foreach (var v in MoviInfo.listmovi_inve_detalle_Info)
                    {
                        v.mv_tipo_movi  = "+"; v.IdMovi_inven_tipo = MoviInfo.IdMovi_inven_tipo; v.dm_cantidad = 1;
                        v.dm_stock_actu = v.dm_stock_actu + 1;
                        v.dm_stock_ante = v.dm_stock_actu;
                        var prod = busprod.Get_Info_BuscarProducto(v.IdProducto, param.IdEmpresa);
                        v.dm_observacion = " Prod " + prod.pr_descripcion;
                        v.dm_observacion = MoviInfo.cm_observacion + v.dm_observacion;
                    }

                    if (in_Movi_B.GrabarDB(MoviInfo, ref IdMoviInvenIngres, ref mensaje_cbte_cble, ref Msj) == false)
                    {
                        MessageBox.Show(Msj, "Movimiento Ingreso");
                    }
                    MoviXcConv                      = new prd_ControlProduccion_Obrero_x_in_movi_inve_Info();
                    MoviXcConv.mv_IdBodega          = MoviInfo.IdBodega;
                    MoviXcConv.mv_IdEmpresa         = MoviInfo.IdEmpresa;
                    MoviXcConv.mv_IdMovi_inven_tipo = MoviInfo.IdMovi_inven_tipo;
                    MoviXcConv.mv_IdNumMovi         = IdMoviInvenIngres;
                    MoviXcConv.mv_IdSucursal        = MoviInfo.IdSucursal;
                    listMovi.Add(MoviXcConv);
                }

                List <in_movi_inve_detalle_x_Producto_CusCider_Info> ListCidersusInfo = new List <in_movi_inve_detalle_x_Producto_CusCider_Info>();
                foreach (var item in _ListDetalle)
                {
                    in_movi_inve_detalle_x_Producto_CusCider_Info CusCidersusInfo = new in_movi_inve_detalle_x_Producto_CusCider_Info();
                    CusCidersusInfo.IdEmpresa   = param.IdEmpresa;
                    CusCidersusInfo.CodigoBarra = item.CodBarraMaestro;
                    CusCidersusInfo.dm_cantidad = -1;
                    var prod = busprod.Get_Info_BuscarProducto(item.IdProducto, param.IdEmpresa);
                    CusCidersusInfo.dm_observacion =
                        txtObservacion.Text +
                        " Eg x Prd x Ob" + cmbObra.Text +
                        " Ot " + cmbOrdenTaller.Text +
                        " Gt " + cmbGrupoAsignado.Text +
                        " Et I " + txtEtapaAnterior.Text +
                        " Et F " + txtEtapa.Text +
                        " Prod " + prod.pr_descripcion
                    ;

                    CusCidersusInfo.dm_precio              = ProductosXEtapa.First(v => v.IdProducto == item.IdProducto).dm_precio;
                    CusCidersusInfo.et_IdEmpresa           = param.IdEmpresa;
                    CusCidersusInfo.et_IdEtapa             = EtapaAnterior.IdEtapa;
                    CusCidersusInfo.et_IdProcesoProductivo = EtapaAnterior.IdProcesoProductivo;
                    CusCidersusInfo.IdBodega          = MoviInfo.IdBodega;
                    CusCidersusInfo.IdSucursal        = MoviInfo.IdSucursal;
                    CusCidersusInfo.IdMovi_inven_tipo = Convert.ToInt32(Parametros.IdMovi_inven_tipo_egr_ContrlProduccion);
                    CusCidersusInfo.IdNumMovi         = IdMoviInven;
                    CusCidersusInfo.IdProducto        = item.IdProducto;
                    CusCidersusInfo.mv_costo          = ProductosXEtapa.First(v => v.IdProducto == item.IdProducto).mv_costo;
                    CusCidersusInfo.ot_CodObra        = OrdenTaller.CodObra;
                    CusCidersusInfo.ot_IdEmpresa      = OrdenTaller.IdEmpresa;
                    CusCidersusInfo.ot_IdOrdenTaller  = OrdenTaller.IdOrdenTaller;
                    CusCidersusInfo.ot_IdSucursal     = OrdenTaller.IdSucursal;
                    CusCidersusInfo.mv_Secuencia      = c;
                    CusCidersusInfo.mv_tipo_movi      = "-";
                    c++;
                    ListCidersusInfo.Add(CusCidersusInfo);
                }


                if (BusCusCidersu.GuardarDB(ListCidersusInfo, ref Msj) == false)
                {
                    MessageBox.Show(Msj, "Cus Cidersus Egreso");
                }
                else
                {
                    foreach (var v in ListCidersusInfo)
                    {
                        v.dm_cantidad            = 1;
                        v.et_IdEtapa             = Etapa.IdEtapa;
                        v.et_IdProcesoProductivo = Etapa.IdProcesoProductivo;
                        v.IdMovi_inven_tipo      = Convert.ToInt32(Parametros.IdMovi_inven_tipo_ing_ContrlProduccion);
                        v.IdNumMovi = IdMoviInvenIngres; v.mv_tipo_movi = "+";
                        var prod = busprod.Get_Info_BuscarProducto(v.IdProducto, param.IdEmpresa);
                        v.dm_observacion =
                            txtObservacion.Text +
                            " Ing x Prd x Ob" + cmbObra.Text +
                            " Ot " + cmbOrdenTaller.Text +
                            " Gt " + cmbGrupoAsignado.Text +
                            " Et I " + txtEtapaAnterior.Text +
                            " Et F " + txtEtapa.Text +
                            " Prod " + prod.pr_descripcion
                        ;
                    }
                    if (BusCusCidersu.GuardarDB(ListCidersusInfo, ref Msj) == false)
                    {
                        MessageBox.Show(Msj, "Cus Cidersus Ingreso");
                    }
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());

                MessageBox.Show(ex.ToString());
            }
        }
        private void gridVwEnsamblado_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
        {
            string codbarra = "";
            List <vwin_movi_inve_detalle_x_Producto_CusCider_Saldos_Info> LstDetxProd = new List <vwin_movi_inve_detalle_x_Producto_CusCider_Saldos_Info>();
            in_movi_inve_detalle_x_Producto_CusCider_Bus           BusDetxProd        = new in_movi_inve_detalle_x_Producto_CusCider_Bus();
            vwin_movi_inve_detalle_x_Producto_CusCider_Saldos_Info SaldoDetXProd      = new vwin_movi_inve_detalle_x_Producto_CusCider_Saldos_Info();
            var row = (in_Producto_Info)gridVwEnsamblado.GetRow(e.RowHandle);

            try
            {
                if (e.Column.Name == "colpr_codigo_barra")
                {
                    if (UCObra.get_item_info() == null)
                    {
                        MessageBox.Show("Debe seleccionar la Obra Asignada y la Orden de Taller", "Sistema", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        panelObra.Focus();
                    }
                    else if (gridLkUOrdenTaller.EditValue == null)
                    {
                        MessageBox.Show("Debe seleccionar la Orden de Taller Asignada", "Sistema", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        gridLkUOrdenTaller.Focus();
                    }
                    else
                    {
                        codbarra = Convert.ToString(gridVwEnsamblado.GetFocusedRowCellValue(colpr_codigo_barra));

                        codbarra = row.pr_codigo_barra;

                        if (codbarra != "")
                        {
                            // LstDetxProd = BusDetxProd.ObtenerMateriaPrima(param.IdEmpresa, _sucursalInfo.IdSucursal, _bodegaInfo.IdBodega,
                            //  OT.IdSucursal, OT.IdOrdenTaller, OT.CodObra, OT.IdEmpresa);

                            LstDetxProd = LstDetxProd.FindAll(var =>
                                                              var.CodigoBarra == codbarra);

                            if (LstDetxProd.Count > 0)
                            {
                                foreach (var item in LstDetxProd)
                                {
                                    if (item.Saldo <= 0)
                                    {
                                        MessageBox.Show("No hay en stock el producto. Verifique el código", "Sistema", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                                        gridVwEnsamblado.DeleteRow(gridVwEnsamblado.FocusedRowHandle);
                                    }
                                    else
                                    {
                                        in_Producto_Info prod = new in_Producto_Info();

                                        prod.CodBarra       = item.CodigoBarra;
                                        prod.IdProducto     = item.IdProducto;
                                        prod.IdEmpresa      = item.IdEmpresa;
                                        prod.IdSucursal     = item.IdSucursal;
                                        prod.IdBodega       = item.IdBodega;
                                        prod.pr_descripcion = busprod.Get_DescripcionTot_Producto(item.IdEmpresa, item.IdProducto);
                                        gridVwEnsamblado.SetFocusedRowCellValue(colProducto, prod.pr_descripcion);
                                        gridVwEnsamblado.SetFocusedRowCellValue("IdProducto", prod.IdProducto);
                                    }
                                }
                            }
                            else
                            {
                                MessageBox.Show("El producto no existe en la bodega " + UCSuc_Bod.get_bodega().bo_Descripcion
                                                + " o no esta asignado a esa Orden de Taller. \n Verifique el código",
                                                "Sistema", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                                gridVwEnsamblado.DeleteRow(gridVwEnsamblado.FocusedRowHandle);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString());
            }
        }