public override void obtenerValoresIniciales(DocumentoInstanciaXbrlDto instancia) { String claveCotizacion = ReporteXBRLUtil.obtenerValorHecho(reporteXBRLDTO.PrefijoTaxonomia + ReportConstants.NOMBRE_CONCEPTO_EMISORA, instancia); String moneda = ReporteXBRLUtil.obtenerValorMoneda(instancia); String fechaReporte = obtenerFechaReporteAnual(instancia); reporteXBRLDTO.ClaveCotizacion = claveCotizacion; reporteXBRLDTO.Moneda = moneda; reporteXBRLDTO.FechaReporte = fechaReporte; }
/// /// (non-Javadoc) /// @see com.bmv.spread.xbrl.reportes.builder.ReporteBuilder#obtenerValoresIniciales(com.hh.xbrl.abax.viewer.application.dto.DocumentoInstanciaXbrlDto) //// public override void obtenerValoresIniciales(DocumentoInstanciaXbrlDto instancia) { String nombreReporte = ReporteXBRLUtil.NOMBRE_REPORTE_FIDU; String claveCotizacion = ReporteXBRLUtil.obtenerValorHecho(reporteXBRLDTO.PrefijoTaxonomia + ReportConstants.NOMBRE_CONCEPTO_EMISORA, instancia); String fechaReporte = ReporteXBRLUtil.obtenerValorHecho(ReportConstants.ID_FECHA_CIERRE_REPORTE_2014, instancia); String anio = fechaReporte.Substring(0, fechaReporte.IndexOf("-")); String trimestre = ReporteXBRLUtil.obtenerValorHecho(reporteXBRLDTO.PrefijoTaxonomia + ReportConstants.NOMBRE_CONCEPTO_NUMERO_TRIMESTRE, instancia); String moneda = ReporteXBRLUtil.obtenerValorMoneda(instancia); Boolean consolidado = false; String fideicomiso = ReporteXBRLUtil.obtenerValorHecho(reporteXBRLDTO.PrefijoTaxonomia + ReportConstants.NOMBRE_CONCEPTO_NUMERO_FIDEICOMISO, instancia); String fechaCreacion = DateTime.Now.ToString(ReporteXBRLUtil.FORMATO_FECHA_CREACION); if (reporteXBRLDTO.Taxonomia.Equals(ReportConstants.CLAVE_CCD)) { consolidado = ReporteXBRLUtil.obtenerValorHecho(ReportConstants.NOMBRE_CONCEPTO_CCD_CONSOLIDADO, instancia).ToUpper().Trim().Equals(ReportConstants.VALOR_SI) || ReporteXBRLUtil.obtenerValorHecho(ReportConstants.NOMBRE_CONCEPTO_CCD_CONSOLIDADO, instancia).ToLower().Trim().Equals(ReportConstants.VALOR_SI_TRUE) || ReporteXBRLUtil.obtenerValorHecho(ReportConstants.NOMBRE_CONCEPTO_CCD_CONSOLIDADO, instancia).ToLower().Trim().Equals(ReportConstants.VALOR_SI_2) ? true : false; reporteXBRLDTO.AplicaConsolidado = true; } else { reporteXBRLDTO.AplicaConsolidado = false; } reporteXBRLDTO.ClaveCotizacion = claveCotizacion; reporteXBRLDTO.FechaReporte = fechaReporte; reporteXBRLDTO.RazonSocial = ReporteXBRLUtil.obtenerValorHecho(ReportConstants.ID_NOMBRE_RAZON_SOCIAL, instancia); reporteXBRLDTO.Anio = anio; reporteXBRLDTO.Trimestre = trimestre; reporteXBRLDTO.Moneda = moneda; reporteXBRLDTO.Consolidado = consolidado; reporteXBRLDTO.Fideicomiso = fideicomiso; reporteXBRLDTO.FechaCreacion = fechaCreacion; if (claveCotizacion != null && fechaReporte != null && trimestre != null && moneda != null && consolidado != null) { nombreReporte = nombreReporte. Replace(ReporteXBRLUtil.CLAVE_COTIZACION, claveCotizacion). Replace(ReporteXBRLUtil.ANIO, anio). Replace(ReporteXBRLUtil.TRIMESTRE, trimestre). Replace(ReporteXBRLUtil.MONEDA, moneda). Replace(ReporteXBRLUtil.CONSOLIDACION, (consolidado ? ReporteXBRLUtil.CONSOLIDADO : ReporteXBRLUtil.NO_CONSOLIDADO)). Replace(ReporteXBRLUtil.FIDEICOMISO, fideicomiso). Replace(ReporteXBRLUtil.FECHA_CREACION, fechaCreacion); reporteXBRLDTO.NombreReporte = nombreReporte; } }
public override void obtenerValoresIniciales(DocumentoInstanciaXbrlDto instancia) { String claveCotizacion = ReporteXBRLUtil.obtenerValorHecho(reporteXBRLDTO.PrefijoTaxonomia + ReportConstants.NOMBRE_CONCEPTO_EMISORA, instancia); String fideicomiso = ReporteXBRLUtil.obtenerValorHecho(ReportConstants.CONCEPTO_ANNEXT_NUMERO_FIDEICOMISO, instancia); String fechaReporte = obtenerFechaAnexoT(instancia); String razonSocial = ReporteXBRLUtil.obtenerValorHecho(ReportConstants.CONCEPTO_ANNEXT_RAZON_SOCIAL, instancia); String series = ReporteXBRLUtil.obtenerValorHecho(ReportConstants.CONCEPTO_ANNEXT_SERIES, instancia); String moneda = ReporteXBRLUtil.obtenerValorMoneda(instancia); reporteXBRLDTO.ClaveCotizacion = claveCotizacion; reporteXBRLDTO.Fideicomiso = fideicomiso; reporteXBRLDTO.FechaReporte = fechaReporte; reporteXBRLDTO.RazonSocial = razonSocial; reporteXBRLDTO.Series = series; reporteXBRLDTO.Moneda = moneda; }
/** * Elimina del listado de roles 510 o 520 dependiendo de la bande que indica * si se va a usar el estado de flujo de efectivo por método indirecto o no * @param instancia documento de instancia procesado. */ private void quitarRolesNoUsadosDeEstadoDeFlujoDeEfectivo(DocumentoInstanciaXbrlDto instancia) { if (!reporteXBRLDTO.PrefijoTaxonomia.Equals(ReportConstants.PREFIJO_ID_TRAC)) { //Si existe la bandera CashFlowStatementForInderectMethod se elige si se elimina 510 o 520 String idCashFlowIndirect = reporteXBRLDTO.PrefijoTaxonomia + "CashFlowStatementForInderectMethod"; String indicadorCashFlowIndirect = ReporteXBRLUtil.obtenerValorHecho(idCashFlowIndirect, instancia); if (indicadorCashFlowIndirect != null) { IndiceReporteDTO indiceEliminar = null; String rolEliminar = null; if ("SI".Equals(indicadorCashFlowIndirect)) { //Se usa 520, elimina 510 rolEliminar = "510000"; } else { //Se usa 510, elimina 520 rolEliminar = "520000"; } foreach (IndiceReporteDTO indiceActual in reporteXBRLDTO.Indices) { if (indiceActual.Rol.Contains(rolEliminar)) { indiceEliminar = indiceActual; break; } } if (indiceEliminar != null) { reporteXBRLDTO.Indices.Remove(indiceEliminar); reporteXBRLDTO.Roles.Remove(indiceEliminar.Rol); int index = Array.BinarySearch(reporteXBRLDTO.NombresHojas, indiceEliminar.Rol); if (index >= 0) { reporteXBRLDTO.NombresHojas = reporteXBRLDTO.NombresHojas.Where((val, i) => i != index).ToArray(); } } } } }
/// <summary> /// (non-Javadoc) /// </summary> /// @see com.bmv.spread.xbrl.reportes.builder.ReporteBuilder#obtenerValoresIniciales(com.hh.xbrl.abax.viewer.application.dto.DocumentoInstanciaXbrlDto) public override void obtenerValoresIniciales(DocumentoInstanciaXbrlDto instancia) { String nombreReporte = ReporteXBRLUtil.NOMBRE_REPORTE_IFRS; String claveCotizacion = ReporteXBRLUtil.obtenerValorHecho(ReportConstants.ID_CLAVE_COTIZACION_2014, instancia); String fechaReporte = ReporteXBRLUtil.obtenerValorHecho(ReportConstants.ID_FECHA_CIERRE_REPORTE_2014, instancia); String anio = fechaReporte.Substring(0, fechaReporte.IndexOf("-")); String trimestre = ReporteXBRLUtil.obtenerValorHecho(ReportConstants.ID_TRIMESTRE_REPORTADO, instancia); String moneda = ReporteXBRLUtil.obtenerValorMoneda(instancia); String fechaCreacion = DateUtil.ToFormatString(DateTime.Now, ReporteXBRLUtil.FORMATO_FECHA_CREACION); String stringConsolidado = ReporteXBRLUtil.obtenerValorHecho(ReportConstants.ID_CUENTA_CONSOLIDADO, instancia); Boolean consolidado = false; Boolean.TryParse(stringConsolidado, out consolidado); reporteXBRLDTO.AplicaConsolidado = true; reporteXBRLDTO.ClaveCotizacion = claveCotizacion; reporteXBRLDTO.RazonSocial = ReporteXBRLUtil.obtenerValorHecho(ReportConstants.ID_NOMBRE_RAZON_SOCIAL, instancia); reporteXBRLDTO.FechaReporte = fechaReporte; reporteXBRLDTO.Anio = anio; reporteXBRLDTO.Trimestre = trimestre; reporteXBRLDTO.Moneda = moneda; reporteXBRLDTO.Consolidado = consolidado; reporteXBRLDTO.FechaCreacion = fechaCreacion; if (claveCotizacion != null && fechaReporte != null && trimestre != null && moneda != null && consolidado != null) { nombreReporte = nombreReporte. Replace(ReporteXBRLUtil.CLAVE_COTIZACION, claveCotizacion). Replace(ReporteXBRLUtil.ANIO, anio). Replace(ReporteXBRLUtil.TRIMESTRE, trimestre). Replace(ReporteXBRLUtil.MONEDA, moneda). Replace(ReporteXBRLUtil.CONSOLIDACION, (consolidado ? ReporteXBRLUtil.CONSOLIDADO : ReporteXBRLUtil.NO_CONSOLIDADO)). Replace(ReporteXBRLUtil.FECHA_CREACION, fechaCreacion); reporteXBRLDTO.NombreReporte = nombreReporte; } }
public override void obtenerValoresIniciales(Viewer.Application.Dto.DocumentoInstanciaXbrlDto instancia) { String nombreReporte = ReporteXBRLUtil.NOMBRE_REPORTE_EVENTO_RELEVANTE; String claveCotizacion = ReporteXBRLUtil.obtenerValorHecho("rel_ev_Ticker", instancia); String razonSocial = ReporteXBRLUtil.obtenerValorHecho("rel_ev_BusinessName", instancia); String fechaReporte = ReporteXBRLUtil.obtenerValorHecho("rel_ev_Date", instancia); String fechaCreacion = DateUtil.ToFormatString(DateTime.Now, ReporteXBRLUtil.FORMATO_FECHA_CREACION); if (String.IsNullOrEmpty(claveCotizacion)) { claveCotizacion = ReporteXBRLUtil.obtenerValorHecho("rel_news_Ticker", instancia); } if (String.IsNullOrEmpty(razonSocial)) { razonSocial = ReporteXBRLUtil.obtenerValorHecho("rel_news_BusinessName", instancia); } if (String.IsNullOrEmpty(fechaReporte)) { fechaReporte = ReporteXBRLUtil.obtenerValorHecho("rel_news_Date", instancia); } reporteXBRLDTO.ClaveCotizacion = claveCotizacion; reporteXBRLDTO.RazonSocial = razonSocial; reporteXBRLDTO.FechaReporte = fechaReporte; reporteXBRLDTO.FechaCreacion = fechaCreacion; if (claveCotizacion != null && fechaReporte != null) { nombreReporte = nombreReporte. Replace(ReporteXBRLUtil.CLAVE_COTIZACION, claveCotizacion). Replace(ReporteXBRLUtil.FECHA_CREACION, fechaCreacion).Replace(ReporteXBRLUtil.FECHA, fechaReporte); reporteXBRLDTO.NombreReporte = nombreReporte; } }
public static IList <IngresosProductoReporteDto> generaContenidoReporte(DocumentoInstanciaXbrlDto documentoInstancia, ReporteXBRLDTO reporteXBRLDTO, int ContadorNotasAlPie, out int outContadorNotasAlPie) { contadorTMP = ContadorNotasAlPie; IDictionary <String, IDictionary <String, IngresosProductoReporteDto> > marcas = new Dictionary <String, IDictionary <String, IngresosProductoReporteDto> >(); IList <IngresosProductoReporteDto> contenido = null; IngresosProductoReporteDto total = new IngresosProductoReporteDto(); total.Total = true; total.PrincipalesProductos = tituloRenglonTotal; String finPeriodo = ReporteXBRLUtil.obtenerValorHecho(ReportConstants.ID_FECHA_CIERRE_REPORTE_2014, documentoInstancia); String inicioPeriodo = DateReporteUtil.obtenerPeriodos(finPeriodo)["acum_anio_actual"].Split(new String[] { "_" }, StringSplitOptions.None)[0]; var dateInicioPeriodo = DateReporteUtil.obtenerFecha(inicioPeriodo); var dateFinPeriodo = DateReporteUtil.obtenerFecha(finPeriodo); foreach (ContextoDto contexto in documentoInstancia.ContextosPorId.Values) { if (contexto.Periodo.Tipo == PeriodoDto.Instante) { if (!contexto.Periodo.FechaInstante.Equals(dateFinPeriodo)) { continue; } } else { if (!contexto.Periodo.FechaInicio.Equals(dateInicioPeriodo) || !contexto.Periodo.FechaFin.Equals(dateFinPeriodo)) { continue; } } if (contexto.ValoresDimension != null && contexto.ValoresDimension.Count() > 0) { DimensionInfoDto dimensionMarca = obtenerPrimero(contexto.ValoresDimension, IdDimensionMarcas); DimensionInfoDto dimensionProducto = obtenerPrimero(contexto.ValoresDimension, IdDimensionProductos); if (dimensionMarca != null && dimensionProducto != null) { String marca = obtenerNombreMarcaProducto(dimensionMarca.ElementoMiembroTipificado).Trim(); String producto = obtenerNombreMarcaProducto(dimensionProducto.ElementoMiembroTipificado).Trim(); String idMiembro = obtenerIdItemMiembro(contexto.ValoresDimension); HechoDto hecho = documentoInstancia.HechosPorId[documentoInstancia.HechosPorIdContexto[contexto.Id][0]]; if (marca.Equals(todasLasMarcas) && producto.Equals(todosLosProductos)) { actualizarIngresosProducto(total, producto, idMiembro, hecho, reporteXBRLDTO); } else { actualizarHechosProducto(marcas, marca, producto, idMiembro, hecho, reporteXBRLDTO); } } } } contenido = crearIngresosProducto(marcas); contenido.Add(total); outContadorNotasAlPie = contadorTMP; contadorTMP = 0; return(contenido); }
private IList <ConceptoReporteDTO> llenarRol800003(IList <ConceptoReporteDTO> conceptos, DocumentoInstanciaXbrlDto instancia) { foreach (ConceptoReporteDTO concepto in conceptos) { HechoReporteDTO hechoReporte = null; llenarConcepto(concepto, instancia); IDictionary <String, HechoReporteDTO> hechosReporte = concepto.Hechos; if (!concepto.Abstracto && hechosReporte != null) { if (hechosReporte.ContainsKey("cierre_trim_actual")) { hechoReporte = hechosReporte["cierre_trim_actual"]; hechoReporte.Valor = ReporteXBRLUtil.obtenerValorHecho(concepto.IdConcepto, instancia); } else { IList <String> hechos; if (!instancia.HechosPorIdConcepto.TryGetValue(concepto.IdConcepto, out hechos)) { //var detalleError = CreaDetalleError(instancia, "No fue posible obtener el listado de hechos para el concepto \"" + concepto.IdConcepto + "\"."); //detalleError.Add("ConceptoError", concepto); //LogUtil.Error(detalleError); continue; } if (hechos != null) { foreach (String idHecho in hechos) { String fecha = null; HechoDto hecho; ContextoDto contexto; if (instancia.HechosPorId.TryGetValue(idHecho, out hecho) && instancia.ContextosPorId.TryGetValue(hecho.IdContexto, out contexto) && contexto.ContieneInformacionDimensional) { //log.info(hecho.Valor); if (contexto.Periodo.Tipo == PeriodoDto.Instante) { fecha = DateReporteUtil.formatoFechaEstandar(contexto.Periodo.FechaInstante); String fechaCierrreTrimestreActual; String idItemMiembroContexto = contexto.ValoresDimension[0].IdItemMiembro; if (reporteXBRLDTO.PeriodosReporte.TryGetValue("cierre_trim_actual", out fechaCierrreTrimestreActual) && fecha.Equals(fechaCierrreTrimestreActual) && concepto.Hechos.TryGetValue(idItemMiembroContexto, out hechoReporte)) { llenarHecho(concepto, hecho, hechoReporte); } } } } } } } } return(conceptos); }