예제 #1
0
        public Boolean GrabarDB(Af_Activo_fijo_Info info, ref int id, ref string CodActivo, ref string msg)
        {
            try
            {
                Boolean respuesta = false;


                respuesta = Validar_y_corregir_objeto(ref info, ref msg);

                if (respuesta == true)
                {
                    respuesta = data.GrabarDB(info, ref id, ref CodActivo, ref msg);

                    if (respuesta)
                    {
                        activos_relacionados.EliminarDB(info.IdEmpresa, info.IdActivoFijo);
                        if ((bool)info.Es_carroceria)
                        {
                            if (info.lista_Activo_relacionados != null)
                            {
                                foreach (var item in info.lista_Activo_relacionados)
                                {
                                    item.IdEmpresa         = info.IdEmpresa;
                                    item.IdActivoFijo_hijo = id;
                                }
                                activos_relacionados.EliminarDB(info.IdEmpresa, id);
                                activos_relacionados.GuardarDB(info.lista_Activo_relacionados);
                            }
                        }


                        Af_Activo_fijo_CtasCbles_Bus BusCtas_AF = new Af_Activo_fijo_CtasCbles_Bus();
                        BusCtas_AF.EliminarDB(info.IdEmpresa, info.IdActivoFijo);

                        int c = 1;
                        foreach (var item in info.ListAf_Activo_fijo_CtasCbles)
                        {
                            item.IdActivoFijo = info.IdActivoFijo;
                            item.Secuencia    = c++;
                        }

                        BusCtas_AF.GuardarDB(info.ListAf_Activo_fijo_CtasCbles, ref msg);
                    }
                }

                return(respuesta);
            }
            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("", "GrabarDB", ex.Message), ex)
                      {
                          EntityType = typeof(Af_Activo_fijo_Bus)
                      };
            }
        }