private void Recostear()
        {
            try
            {
                recosteo = true;
                correccion_transferencias = false;
                if (!Validar())
                {
                    return;
                }

                toolStripCabecera.Focus();

                List <in_producto_x_tb_bodega_Costo_Historico_Info> lista_resultado = new List <in_producto_x_tb_bodega_Costo_Historico_Info>();
                blst_costo_historico = new BindingList <in_producto_x_tb_bodega_Costo_Historico_Info>();

                int IdSucursal = ucIn_Sucursal_Bodega_multiple1.Get_info_sucursal() == null ? 0 : ucIn_Sucursal_Bodega_multiple1.Get_info_sucursal().IdSucursal;
                lst_bodega = ucIn_Sucursal_Bodega_multiple1.Get_list_bodegas();
                DateTime Fecha_ini = de_Fecha_ini_recosteo.EditValue == null ? DateTime.Now : Convert.ToDateTime(de_Fecha_ini_recosteo.EditValue);
                ProgressBar_recosteo.EditValue              = 0;
                ProgressBar_recosteo.Properties.Minimum     = 1;
                ProgressBar_recosteo.Properties.Maximum     = lst_bodega.Count;
                ProgressBar_recosteo.Properties.Step        = 1;
                ProgressBar_recosteo.Properties.PercentView = true;

                foreach (var item in lst_bodega)
                {
                    lista_resultado = bus_costo_historico.Proceso_recosteo_y_correccion_contable_inv(param.IdEmpresa, IdSucursal, item.IdBodega, Fecha_ini, 5);
                    item.Chek       = true;
                    foreach (var item_res in lista_resultado)
                    {
                        blst_costo_historico.Add(item_res);
                    }
                    gridControlRecosteo.DataSource = blst_costo_historico;
                    gridControlRecosteo.RefreshDataSource();
                    gridControlRecosteo.Refresh();
                    ProgressBar_recosteo.PerformStep();
                    ProgressBar_recosteo.Update();
                    Application.DoEvents();
                }
                gridControlRecosteo.DataSource = blst_costo_historico.OrderBy(q => q.IdSucursal).ThenBy(q => q.IdBodega).ThenBy(q => q.IdProducto).ThenBy(q => q.IdFecha).ThenBy(q => q.Secuencia).ToList();

                if (lst_bodega.Count == lst_bodega.Where(q => q.Chek == true).ToList().Count)
                {
                    MessageBox.Show("Recosteo exitoso", param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                }
                else
                {
                    MessageBox.Show("Fallo al momento de realizar el recosteo", param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show("Comuníquese con sistemas, " + ex.Message, param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Esempio n. 2
0
        private bool Aprobar()
        {
            try
            {
                ListaParametrizacion = new List <in_producto_x_tb_bodega_Info>();

                string mensaje = string.Empty;
                ProgressBar_recosteo.EditValue              = 0;
                ProgressBar_recosteo.Properties.Minimum     = 1;
                ProgressBar_recosteo.Properties.Maximum     = blist_ing_egr.Where(q => q.Checked == true).ToList().Count;
                ProgressBar_recosteo.Properties.Step        = 1;
                ProgressBar_recosteo.Properties.PercentView = true;



                foreach (var item in blist_ing_egr.Where(q => q.Checked == true).ToList())
                {
                    ListaParametrizacion.AddRange(bus_productoPorBodega.GetListMovimientosSinParametrizacion(item.IdEmpresa, item.IdSucursal, item.IdMovi_inven_tipo, item.IdNumMovi));

                    if (!bus_movi.AprobarData(item.IdEmpresa, item.IdSucursal, item.IdMovi_inven_tipo, item.IdNumMovi, item.signo, param.IdUsuario, ref mensaje))
                    {
                        MessageBox.Show("Error al Actualizar Estados, " + mensaje, param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
                        Buscar();
                        return(false);
                    }
                    ProgressBar_recosteo.PerformStep();
                    ProgressBar_recosteo.Update();
                    Application.DoEvents();
                }
                MessageBox.Show("Registros aprobados exitósamente", param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Asterisk);

                if (ListaParametrizacion.Count > 0)
                {
                    FrmIn_ProductoPorBodegaParametrizados frm = new FrmIn_ProductoPorBodegaParametrizados();
                    frm.ListaDetalle = ListaParametrizacion;
                    frm.ShowDialog();
                }

                Buscar();
                return(true);
            }
            catch (Exception ex)
            {
                Buscar();
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return(false);
            }
        }