private string ArmarCadenaConsulta(vConsultaContratosDinamicaDto Reg) { string Query = "SELECT " + CamposTraer(Reg) + " FROM CONTRATOS " + InnersJoins(); Query = AgregarFiltro(Query, true, "CONTRATOS.VAL_ADI", "<", "10000000"); Query = AgregarFiltro(Query, Reg.chkVigencia, "VIG_CON", "=", Reg.Vigencia); Query = AgregarFiltro(Query, !Reg.chkAnulados, "EST_CON", "!=", "07"); Query = AgregarFiltro(Query, Reg.chkNumeroContrato, "CONTRATOS.COD_CON", "=", Reg.NumeroContrato); Query = AgregarFiltro(Query, Reg.chkTipoContrato, "TIP_CON", "=", Reg.TipoContrato); Query = AgregarFiltro(Query, Reg.chkSubTipoContrato, "STIP_CON", "=", Reg.SubTipoContrato); Query = AgregarFiltro(Query, Reg.chkUltimaActa, "EST_CON", "=", Reg.UltimaActa); Query = AgregarFiltroEstado(Query, Reg.chkEstado, Reg.Estado); Query = AgregarFiltro(Query, Reg.chkSectorDestino, "COD_SEC", "=", Reg.SectorDestino); Query = AgregarFiltroProyecto(Query, Reg.chkProyecto, Reg.Proyecto); Query = AgregarFiltro(Query, Reg.chkDependenciaAcargo, "DEP_CON", "=", Reg.DependenciaAcargo); Query = AgregarFiltro(Query, Reg.chkDependenciaNecesidad, "DEP_PCON", "=", Reg.DependenciaNecesidad); Query = AgregarFiltroFecha(Query, Reg.chkFechaSuscripcion, "FEC_SUS_CON", ">=", Reg.FechaISuscripcion.ToString()); Query = AgregarFiltroFecha(Query, Reg.chkFechaSuscripcion, "FEC_SUS_CON", "<=", Reg.FechaFSuscripcion.ToString()); Query = AgregarFiltroFecha(Query, Reg.chkFechaRegistro, "FEC_REG", ">=", Reg.FechaIRegistro.ToString()); Query = AgregarFiltroFecha(Query, Reg.chkFechaRegistro, "FEC_REG", "<=", Reg.FechaFRegistro.ToString()); Query = AgregarFiltro(Query, Reg.chkContratista, "IDE_CON", "=", Reg.IdContratista); Query = AgregarFiltro(Query, Reg.chkInterventor, "IDE_REP", "=", Reg.IdInterventor); Query = AgregarFiltro(Query, Reg.chkTipoProceso, "COD_TPRO", "=", Reg.TipoProceso); Query = AgregarFiltroCDP(Query, Reg.chkDisponibilidadPresupuestal, Reg.DisponibilidadPresupuestal, Reg.VigenciaDisponibilidadPresupuestal); Query = AgregarFiltroRP(Query, Reg.chkRegistroPresupuestal, Reg.RegistroPresupuestal, Reg.VigenciaRegistroPresupuestal); Query = AgregarFiltroObjeto(Query, Reg.chkObjeto, Reg.Objeto); Query = AgregarFiltro(Query, Reg.chkValorContratoConvenio, "VAL_CON", ">=", Reg.ValorDesdePrecontractual); Query = AgregarFiltro(Query, Reg.chkValorContratoConvenio, "VAL_CON", "<=", Reg.ValorHastaPrecontractual); Query = AgregarFiltroRecurso(Query, Reg.chkRecurso, Reg.Recurso, Reg.Vigencia); return Query; }
public List<vRptaReporteDinamicoContratos> Consultar(vConsultaContratosDinamicaDto Reg) { using (ctx = new Entities()) { List<vRptaReporteDinamicoContratos> lr = new List<vRptaReporteDinamicoContratos>(); List<vCON_CONTRATOS_DINAMICO> lrContratos = new List<vCON_CONTRATOS_DINAMICO>(); string Query = ArmarCadenaConsulta(Reg); List<vCON_CONTRATOS_DINAMICO> lContratos = ctx.Database.SqlQuery<vCON_CONTRATOS_DINAMICO>(Query).ToList(); vRptaReporteDinamicoContratos ReportePrincipal = new vRptaReporteDinamicoContratos(); ReportePrincipal.Nombre = "Reporte principal"; ReportePrincipal.Html = ArmarTablaReporte(lContratos, Reg.lCamposMostrar); lr.Add(ReportePrincipal); List<vRptaReporteDinamicoContratos> lConsolidados = new List<vRptaReporteDinamicoContratos>(); if (Reg.lCamposAgrupar.Count() >= 1) lConsolidados = Consolidados(Reg, Query); lConsolidados.ForEach(t => lr.Add(t)); return lr; } }
public List<vRptaReporteDinamicoContratos> RealizarReporteDinamico(vConsultaContratosDinamicaDto Reg) { ReporteDinamico o = new ReporteDinamico(); return o.Consultar(Reg); }
private string CamposTraer(vConsultaContratosDinamicaDto Reg) { string Campos = ""; Campos += " CONTRATOS.NRO_CON," + "CONTRATOS.IDE_CON," + "CONTRATOS.OBJ_CON," + "CONTRATOS.PRO_CON," + "CONTRATOS.FEC_SUS_CON," + "CONTRATOS.PLA_EJE_CON," + "CONTRATOS.DEP_CON," + "CONTRATOS.VIG_CON," + "CONTRATOS.TIP_CON," + "CONTRATOS.STIP_CON," + "CONTRATOS.EST_CON," + "CONTRATOS.VAL_CON," + "CONTRATOS.DOC_CON," + "CONTRATOS.COD_CON," + "CONTRATOS.CAN_ADI," + "(SELECT SUM(VAL_ADI) FROM ADICIONES WHERE COD_CON=CONTRATOS.COD_CON) AS VAL_ADI," + "CONTRATOS.COD_SEC," + "CONTRATOS.TIP_FOR," + "CONTRATOS.OTR_CNS," + "CONTRATOS.COD_TPRO," + "CONTRATOS.NRO_PLA_CON," + "CONTRATOS.IDE_REP," + "CONTRATOS.USUARIO," + "CONTRATOS.FEC_REG," + "CONTRATOS.OBS_DOC_CON," + "CONTRATOS.URG_MAN," + "CONTRATOS.EST_CONV," + "CONTRATOS.FEC_APR_POL," + "CONTRATOS.EXO_IMP," + "CONTRATOS.EXO_OBS," + "CONTRATOS.PRO_SEL_NRO," + "CONTRATOS.DEP_PCON," + "CONTRATOS.VAL_APO_GOB," + "CONTRATOS.COD_CON0," + "CONTRATOS.FEC_ULT_MOD," + "CONTRATOS.USER_ACT," + "CONTRATOS.LEGALIZADO," + "CONTRATOS.PER_APO," + "CONTRATOS.ANTICIPO," + "CONTRATOS.NEMPLEOS," + "CONTRATOS.AGOTAR_PPTO," + "CONTRATOS.LUG_EJE," + "CONTRATOS.NUM_PROC," + "CONTRATOS.TIPO_PLAZO," + "CONTRATOS.TIP_RADICACION," + "CONTRATOS.GRUPO," + "CONTRATOS.ENCARGADO," + "CONTRATOS.CONSIDERANDOS," + "CONTRATOS.APORTES," + "CONTRATOS.PLAZO2_EJE_CON," + "CONTRATOS.TIPO_PLAZO2," + "CONTRATOS.VAL_SIN_IVA," + "CONTRATOS.INTERVENTORIA," + "CONTRATOS.EXENPOL," + "CONTRATOS.OBS_POLIZA," + "CONTRATOS.OBS_CDP," + "CONTRATOS.OBS_PROYECTOS," + "CONTRATOS.REVISADOPOR," + "CONTRATOS.RES_APR_POL," + "CONTRATOS.DEP_SUP," + "CONTRATOS.TIPO_FP," + "CONTRATOS.ANTI_PORC," + "CONTRATOS.PLIQ_EP," + "CONTRATOS.OBLIGC," + "CONTRATOS.OBLIGE," + "DEPENDENCIA.NOM_DEP AS DEPENDENCIA, " + "TIPOSCONT.NOM_TIP AS TIPOCONT," + "CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(CON.NOM1_TER,' '),CON.NOM2_TER), ' '),CON.APE1_TER),' '), CON.APE2_TER) AS CONTRATISTA," + "ESTADOS.ESTADO AS ESTADO," + "SECTOR.NOM_SEC AS SECTOR," + "CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(REP_LEG.NOM1_TER,' '),REP_LEG.NOM2_TER), ' '),REP_LEG.APE1_TER),' '), REP_LEG.APE2_TER) AS REP_LEG," + "SUB_TIPOS.NOM_STIP AS SUB_TIPO," + "TP.NOM_TPROC AS TIPO_PROCESO," + "DEPENDENCIAP.NOM_DEP AS DEPENDENCIAP," + "INT_TER_CON.IDE_TER AS IDE_TER_INTV," + "SUP_TER_CON.IDE_TER AS IDE_TER_SUP," + "CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(INT_TER_CON.NOM1_TER,' '),INT_TER_CON.NOM2_TER), ' '),INT_TER_CON.APE1_TER),' '), INT_TER_CON.APE2_TER) AS NOM_TER_INTV," + "CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(SUP_TER_CON.NOM1_TER,' '),SUP_TER_CON.NOM2_TER), ' '),SUP_TER_CON.APE1_TER),' '), SUP_TER_CON.APE2_TER) AS NOM_TER_SUP," + "CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(ABOG.NOM1_TER,' '),ABOG.NOM2_TER), ' '),ABOG.APE1_TER),' '), ABOG.APE2_TER) AS ABOGADO," + "CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(REVPOR.NOM1_TER,' '),REVPOR.NOM2_TER), ' '),REVPOR.APE1_TER),' '), REVPOR.APE2_TER) AS REVISADO_POR," + "TP.NOM_PLA AS TTIPO_PLAZO," + "TP2.NOM_PLA AS TTIPO_PLAZO2," + "ESTCONFI.FEC_ENT AS FECHA_INICIAL," + "ESTCONFF.FEC_ENT AS FECHA_FINAL," + "ESTCONLQ.FEC_ENT AS FECHA_LIQ," + " (CASE " + " WHEN CONTRATOS.TIPO_PLAZO = 'A' THEN CONTRATOS.PLA_EJE_CON * 360 " + " WHEN CONTRATOS.TIPO_PLAZO = 'M' THEN CONTRATOS.PLA_EJE_CON * 30 " + " WHEN CONTRATOS.TIPO_PLAZO = 'D' THEN CONTRATOS.PLA_EJE_CON " + " ELSE 0 " + " END) + " + " (CASE " + " WHEN CONTRATOS.TIPO_PLAZO2 = 'A' THEN CONTRATOS.PLAZO2_EJE_CON * 360 " + " WHEN CONTRATOS.TIPO_PLAZO2 = 'M' THEN CONTRATOS.PLAZO2_EJE_CON * 30 " + " WHEN CONTRATOS.TIPO_PLAZO2 = 'D' THEN CONTRATOS.PLAZO2_EJE_CON " + " ELSE 0 " + " END) AS TOTAL_PLAZO, " + " (SELECT " + " SUM( " + " (CASE " + " WHEN AD.TIPO_PLAZO1_ADI = 'A' THEN AD.PLA_EJE_ADI * 360 " + " WHEN AD.TIPO_PLAZO1_ADI = 'M' THEN AD.PLA_EJE_ADI * 30 " + " WHEN AD.TIPO_PLAZO1_ADI = 'D' THEN AD.PLA_EJE_ADI " + " ELSE 0 " + " END) " + " + " + " (CASE " + " WHEN AD.TIPO_PLAZO2_ADI = 'A' THEN AD.PLAZO2_ADI * 360 " + " WHEN AD.TIPO_PLAZO2_ADI = 'M' THEN AD.PLAZO2_ADI * 30 " + " WHEN AD.TIPO_PLAZO2_ADI = 'D' THEN AD.PLAZO2_ADI " + " ELSE 0 " + " END) " + " ) AS TOTAL_PLAZO_ADICION " + " FROM CONTRATOS CON " + " LEFT JOIN ADICIONES AD ON CON.COD_CON = AD.COD_CON " + " WHERE CON.COD_CON = CONTRATOS.COD_CON " + " GROUP BY " + " CON.COD_CON) AS TOTAL_PLAZO_ADICION " + ""; return Campos; #region SoloCamposMostar //string Campos = ""; //if (Reg.lCamposMostrar.Where(t => t == "NRO_CON").FirstOrDefault() != null) Campos += " CONTRATOS.NRO_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "IDE_CON").FirstOrDefault() != null) Campos += " CONTRATOS.IDE_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "OBJ_CON").FirstOrDefault() != null) Campos += " CONTRATOS.OBJ_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "PRO_CON").FirstOrDefault() != null) Campos += " CONTRATOS.PRO_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "FEC_SUS_CON").FirstOrDefault() != null) Campos += " CONTRATOS.FEC_SUS_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "PLA_EJE_CON").FirstOrDefault() != null) Campos += " CONTRATOS.PLA_EJE_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "DEP_CON").FirstOrDefault() != null) Campos += " CONTRATOS.DEP_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "VIG_CON").FirstOrDefault() != null) Campos += " CONTRATOS.VIG_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "TIP_CON").FirstOrDefault() != null) Campos += " CONTRATOS.TIP_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "STIP_CON").FirstOrDefault() != null) Campos += " CONTRATOS.STIP_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "EST_CON").FirstOrDefault() != null) Campos += " CONTRATOS.EST_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "VAL_CON").FirstOrDefault() != null) Campos += " CONTRATOS.VAL_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "DOC_CON").FirstOrDefault() != null) Campos += " CONTRATOS.DOC_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "COD_CON").FirstOrDefault() != null) Campos += " CONTRATOS.COD_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "CAN_ADI").FirstOrDefault() != null) Campos += " CONTRATOS.CAN_ADI,"; //if (Reg.lCamposMostrar.Where(t => t == "VAL_ADI").FirstOrDefault() != null) Campos += " (SELECT SUM(VAL_ADI) FROM ADICIONES WHERE COD_CON=CONTRATOS.COD_CON) AS VAL_ADI,"; //if (Reg.lCamposMostrar.Where(t => t == "COD_SEC").FirstOrDefault() != null) Campos += " CONTRATOS.COD_SEC,"; //if (Reg.lCamposMostrar.Where(t => t == "TIP_FOR").FirstOrDefault() != null) Campos += " CONTRATOS.TIP_FOR,"; //if (Reg.lCamposMostrar.Where(t => t == "OTR_CNS").FirstOrDefault() != null) Campos += " CONTRATOS.OTR_CNS,"; //if (Reg.lCamposMostrar.Where(t => t == "COD_TPRO").FirstOrDefault() != null) Campos += " CONTRATOS.COD_TPRO,"; //if (Reg.lCamposMostrar.Where(t => t == "NRO_PLA_CON").FirstOrDefault() != null) Campos += " CONTRATOS.NRO_PLA_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "IDE_REP").FirstOrDefault() != null) Campos += " CONTRATOS.IDE_REP,"; //if (Reg.lCamposMostrar.Where(t => t == "USUARIO").FirstOrDefault() != null) Campos += " CONTRATOS.USUARIO,"; //if (Reg.lCamposMostrar.Where(t => t == "FEC_REG").FirstOrDefault() != null) Campos += " CONTRATOS.FEC_REG,"; //if (Reg.lCamposMostrar.Where(t => t == "OBS_DOC_CON").FirstOrDefault() != null) Campos += " CONTRATOS.OBS_DOC_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "URG_MAN").FirstOrDefault() != null) Campos += " CONTRATOS.URG_MAN,"; //if (Reg.lCamposMostrar.Where(t => t == "EST_CONV").FirstOrDefault() != null) Campos += " CONTRATOS.EST_CONV,"; //if (Reg.lCamposMostrar.Where(t => t == "FEC_APR_POL").FirstOrDefault() != null) Campos += " CONTRATOS.FEC_APR_POL,"; //if (Reg.lCamposMostrar.Where(t => t == "EXO_IMP").FirstOrDefault() != null) Campos += " CONTRATOS.EXO_IMP,"; //if (Reg.lCamposMostrar.Where(t => t == "EXO_OBS").FirstOrDefault() != null) Campos += " CONTRATOS.EXO_OBS,"; //if (Reg.lCamposMostrar.Where(t => t == "PRO_SEL_NRO").FirstOrDefault() != null) Campos += " CONTRATOS.PRO_SEL_NRO,"; //if (Reg.lCamposMostrar.Where(t => t == "DEP_PCON").FirstOrDefault() != null) Campos += " CONTRATOS.DEP_PCON,"; //if (Reg.lCamposMostrar.Where(t => t == "VAL_APO_GOB").FirstOrDefault() != null) Campos += " CONTRATOS.VAL_APO_GOB,"; //if (Reg.lCamposMostrar.Where(t => t == "COD_CON0").FirstOrDefault() != null) Campos += " CONTRATOS.COD_CON0,"; //if (Reg.lCamposMostrar.Where(t => t == "FEC_ULT_MOD").FirstOrDefault() != null) Campos += " CONTRATOS.FEC_ULT_MOD,"; //if (Reg.lCamposMostrar.Where(t => t == "USER_ACT").FirstOrDefault() != null) Campos += " CONTRATOS.USER_ACT,"; //if (Reg.lCamposMostrar.Where(t => t == "LEGALIZADO").FirstOrDefault() != null) Campos += " CONTRATOS.LEGALIZADO,"; //if (Reg.lCamposMostrar.Where(t => t == "PER_APO").FirstOrDefault() != null) Campos += " CONTRATOS.PER_APO,"; //if (Reg.lCamposMostrar.Where(t => t == "ANTICIPO").FirstOrDefault() != null) Campos += " CONTRATOS.ANTICIPO,"; //if (Reg.lCamposMostrar.Where(t => t == "NEMPLEOS").FirstOrDefault() != null) Campos += " CONTRATOS.NEMPLEOS,"; //if (Reg.lCamposMostrar.Where(t => t == "AGOTAR_PPTO").FirstOrDefault() != null) Campos += " CONTRATOS.AGOTAR_PPTO,"; //if (Reg.lCamposMostrar.Where(t => t == "LUG_EJE").FirstOrDefault() != null) Campos += " CONTRATOS.LUG_EJE,"; //if (Reg.lCamposMostrar.Where(t => t == "NUM_PROC").FirstOrDefault() != null) Campos += " CONTRATOS.NUM_PROC,"; //if (Reg.lCamposMostrar.Where(t => t == "TIPO_PLAZO").FirstOrDefault() != null) Campos += " CONTRATOS.TIPO_PLAZO,"; //if (Reg.lCamposMostrar.Where(t => t == "TIP_RADICACION").FirstOrDefault() != null) Campos += " CONTRATOS.TIP_RADICACION,"; //if (Reg.lCamposMostrar.Where(t => t == "GRUPO").FirstOrDefault() != null) Campos += " CONTRATOS.GRUPO,"; //if (Reg.lCamposMostrar.Where(t => t == "ENCARGADO").FirstOrDefault() != null) Campos += " CONTRATOS.ENCARGADO,"; //if (Reg.lCamposMostrar.Where(t => t == "CONSIDERANDOS").FirstOrDefault() != null) Campos += " CONTRATOS.CONSIDERANDOS,"; //if (Reg.lCamposMostrar.Where(t => t == "APORTES").FirstOrDefault() != null) Campos += " CONTRATOS.APORTES,"; //if (Reg.lCamposMostrar.Where(t => t == "PLAZO2_EJE_CON").FirstOrDefault() != null) Campos += " CONTRATOS.PLAZO2_EJE_CON,"; //if (Reg.lCamposMostrar.Where(t => t == "TIPO_PLAZO2").FirstOrDefault() != null) Campos += " CONTRATOS.TIPO_PLAZO2,"; //if (Reg.lCamposMostrar.Where(t => t == "VAL_SIN_IVA").FirstOrDefault() != null) Campos += " CONTRATOS.VAL_SIN_IVA,"; //if (Reg.lCamposMostrar.Where(t => t == "INTERVENTORIA").FirstOrDefault() != null) Campos += " CONTRATOS.INTERVENTORIA,"; //if (Reg.lCamposMostrar.Where(t => t == "EXENPOL").FirstOrDefault() != null) Campos += " CONTRATOS.EXENPOL,"; //if (Reg.lCamposMostrar.Where(t => t == "OBS_POLIZA").FirstOrDefault() != null) Campos += " CONTRATOS.OBS_POLIZA,"; //if (Reg.lCamposMostrar.Where(t => t == "OBS_CDP").FirstOrDefault() != null) Campos += " CONTRATOS.OBS_CDP,"; //if (Reg.lCamposMostrar.Where(t => t == "OBS_PROYECTOS").FirstOrDefault() != null) Campos += " CONTRATOS.OBS_PROYECTOS,"; //if (Reg.lCamposMostrar.Where(t => t == "REVISADOPOR").FirstOrDefault() != null) Campos += " CONTRATOS.REVISADOPOR,"; //if (Reg.lCamposMostrar.Where(t => t == "RES_APR_POL").FirstOrDefault() != null) Campos += " CONTRATOS.RES_APR_POL,"; //if (Reg.lCamposMostrar.Where(t => t == "DEP_SUP").FirstOrDefault() != null) Campos += " CONTRATOS.DEP_SUP,"; //if (Reg.lCamposMostrar.Where(t => t == "TIPO_FP").FirstOrDefault() != null) Campos += " CONTRATOS.TIPO_FP,"; //if (Reg.lCamposMostrar.Where(t => t == "ANTI_PORC").FirstOrDefault() != null) Campos += " CONTRATOS.ANTI_PORC,"; //if (Reg.lCamposMostrar.Where(t => t == "PLIQ_EP").FirstOrDefault() != null) Campos += " CONTRATOS.PLIQ_EP,"; //if (Reg.lCamposMostrar.Where(t => t == "OBLIGC").FirstOrDefault() != null) Campos += " CONTRATOS.OBLIGC,"; //if (Reg.lCamposMostrar.Where(t => t == "OBLIGE").FirstOrDefault() != null) Campos += " CONTRATOS.OBLIGE,"; //if (Reg.lCamposMostrar.Where(t => t == "DEPENDENCIA").FirstOrDefault() != null) Campos += " DEPENDENCIA.NOM_DEP AS DEPENDENCIA,"; //if (Reg.lCamposMostrar.Where(t => t == "TIPOCONT").FirstOrDefault() != null) Campos += " TIPOSCONT.NOM_TIP AS TIPOCONT,"; //if (Reg.lCamposMostrar.Where(t => t == "CONTRATISTA").FirstOrDefault() != null) Campos += " CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(CON.NOM1_TER,' '),CON.NOM2_TER), ' '),CON.APE1_TER),' '), CON.APE2_TER) AS CONTRATISTA,"; //if (Reg.lCamposMostrar.Where(t => t == "ESTADO").FirstOrDefault() != null) Campos += " ESTADOS.ESTADO AS ESTADO,"; //if (Reg.lCamposMostrar.Where(t => t == "SECTOR").FirstOrDefault() != null) Campos += " SECTOR.NOM_SEC AS SECTOR,"; //if (Reg.lCamposMostrar.Where(t => t == "REP_LEG").FirstOrDefault() != null) Campos += " CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(REP_LEG.NOM1_TER,' '),REP_LEG.NOM2_TER), ' '),REP_LEG.APE1_TER),' '), REP_LEG.APE2_TER) AS REP_LEG,"; //if (Reg.lCamposMostrar.Where(t => t == "SUB_TIPO").FirstOrDefault() != null) Campos += " SUB_TIPOS.NOM_STIP AS SUB_TIPO,"; //if (Reg.lCamposMostrar.Where(t => t == "TIPO_PROCESO").FirstOrDefault() != null) Campos += " TP.NOM_TPROC AS TIPO_PROCESO,"; //if (Reg.lCamposMostrar.Where(t => t == "DEPENDENCIAP").FirstOrDefault() != null) Campos += " DEPENDENCIAP.NOM_DEP AS DEPENDENCIAP,"; //if (Reg.lCamposMostrar.Where(t => t == "IDE_TER_INTV").FirstOrDefault() != null) Campos += " INT_TER_CON.IDE_TER AS IDE_TER_INTV,"; //if (Reg.lCamposMostrar.Where(t => t == "IDE_TER_SUP").FirstOrDefault() != null) Campos += " SUP_TER_CON.IDE_TER AS IDE_TER_SUP,"; //if (Reg.lCamposMostrar.Where(t => t == "NOM_TER_INTV").FirstOrDefault() != null) Campos += " CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(INT_TER_CON.NOM1_TER,' '),INT_TER_CON.NOM2_TER), ' '),INT_TER_CON.APE1_TER),' '), INT_TER_CON.APE2_TER) AS NOM_TER_INTV,"; //if (Reg.lCamposMostrar.Where(t => t == "NOM_TER_SUP").FirstOrDefault() != null) Campos += " CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(SUP_TER_CON.NOM1_TER,' '),SUP_TER_CON.NOM2_TER), ' '),SUP_TER_CON.APE1_TER),' '), SUP_TER_CON.APE2_TER) AS NOM_TER_SUP,"; //if (Reg.lCamposMostrar.Where(t => t == "ABOGADO").FirstOrDefault() != null) Campos += " CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(ABOG.NOM1_TER,' '),ABOG.NOM2_TER), ' '),ABOG.APE1_TER),' '), ABOG.APE2_TER) AS ABOGADO,"; //if (Reg.lCamposMostrar.Where(t => t == "REVISADO_POR").FirstOrDefault() != null) Campos += " CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(CONCAT(REVPOR.NOM1_TER,' '),REVPOR.NOM2_TER), ' '),REVPOR.APE1_TER),' '), REVPOR.APE2_TER) AS REVISADO_POR,"; //if (Reg.lCamposMostrar.Where(t => t == "TTIPO_PLAZO").FirstOrDefault() != null) Campos += " TP.NOM_PLA AS TTIPO_PLAZO,"; //if (Reg.lCamposMostrar.Where(t => t == "TTIPO_PLAZO2").FirstOrDefault() != null) Campos += " TP2.NOM_PLA AS TTIPO_PLAZO2,"; //if (Reg.lCamposMostrar.Where(t => t == "FECHA_INICIAL").FirstOrDefault() != null) Campos += " ESTCONFI.FEC_ENT AS FECHA_INICIAL,"; //if (Reg.lCamposMostrar.Where(t => t == "FECHA_FINAL").FirstOrDefault() != null) Campos += " ESTCONFF.FEC_ENT AS FECHA_FINAL,"; //if (Reg.lCamposMostrar.Where(t => t == "FECHA_LIQ").FirstOrDefault() != null) Campos += " ESTCONLQ.FEC_ENT AS FECHA_LIQ,"; //if (Reg.lCamposMostrar.Where(t => t == "TOTAL_PLAZO").FirstOrDefault() != null) Campos += " (CASE " + // " WHEN CONTRATOS.TIPO_PLAZO = 'A' THEN CONTRATOS.PLA_EJE_CON * 360 " + // " WHEN CONTRATOS.TIPO_PLAZO = 'M' THEN CONTRATOS.PLA_EJE_CON * 30 " + // " WHEN CONTRATOS.TIPO_PLAZO = 'D' THEN CONTRATOS.PLA_EJE_CON " + // " ELSE 0 " + // " END) + " + // " (CASE " + // " WHEN CONTRATOS.TIPO_PLAZO2 = 'A' THEN CONTRATOS.PLAZO2_EJE_CON * 360 " + // " WHEN CONTRATOS.TIPO_PLAZO2 = 'M' THEN CONTRATOS.PLAZO2_EJE_CON * 30 " + // " WHEN CONTRATOS.TIPO_PLAZO2 = 'D' THEN CONTRATOS.PLAZO2_EJE_CON " + // " ELSE 0 " + // " END) AS TOTAL_PLAZO,"; //if (Reg.lCamposMostrar.Where(t => t == "TOTAL_PLAZO_ADICION").FirstOrDefault() != null) Campos += " (SELECT " + // " SUM( " + // " (CASE " + // " WHEN AD.TIPO_PLAZO1_ADI = 'A' THEN AD.PLA_EJE_ADI * 360 " + // " WHEN AD.TIPO_PLAZO1_ADI = 'M' THEN AD.PLA_EJE_ADI * 30 " + // " WHEN AD.TIPO_PLAZO1_ADI = 'D' THEN AD.PLA_EJE_ADI " + // " ELSE 0 " + // " END) " + // " + " + // " (CASE " + // " WHEN AD.TIPO_PLAZO2_ADI = 'A' THEN AD.PLAZO2_ADI * 360 " + // " WHEN AD.TIPO_PLAZO2_ADI = 'M' THEN AD.PLAZO2_ADI * 30 " + // " WHEN AD.TIPO_PLAZO2_ADI = 'D' THEN AD.PLAZO2_ADI " + // " ELSE 0 " + // " END) " + // " ) AS TOTAL_PLAZO_ADICION " + // " FROM CONTRATOS CON " + // " LEFT JOIN ADICIONES AD ON CON.COD_CON = AD.COD_CON " + // " WHERE CON.COD_CON = CONTRATOS.COD_CON " + // " GROUP BY " + // " CON.COD_CON) AS TOTAL_PLAZO_ADICION,"; //Campos = Campos.TrimEnd(','); //return Campos; #endregion }
private List<vRptaReporteDinamicoContratos> Consolidados(vConsultaContratosDinamicaDto Reg, string Query) { int id_tabla = 1; List<vRptaReporteDinamicoContratos> lr = new List<vRptaReporteDinamicoContratos>(); if (!Reg.AgruparIndividuales) { string newQuery = ArmarConsultaAgrupada(Reg.lCamposAgrupar, Query); List<vConsultaConsolidado> lConsolidadosUnico = ctx.Database.SqlQuery<vConsultaConsolidado>(newQuery).ToList(); vRptaReporteDinamicoContratos ConsolidadoUnico = new vRptaReporteDinamicoContratos(); ConsolidadoUnico.Nombre = "Consolidado"; ConsolidadoUnico.Html = ArmarTablaConsolidado(lConsolidadosUnico, Reg.lCamposAgrupar, id_tabla.ToString()); lr.Add(ConsolidadoUnico); return lr; } else { foreach (vCampos item in Reg.lCamposAgrupar) { List<vCampos> l = new List<vCampos>(); l.Add(item); string newQuery = ArmarConsultaAgrupada(l, Query); List<vConsultaConsolidado> lConsolidadosIndividual = ctx.Database.SqlQuery<vConsultaConsolidado>(newQuery).ToList(); vRptaReporteDinamicoContratos ConsolidadoIndividual = new vRptaReporteDinamicoContratos(); ConsolidadoIndividual.Nombre = "Consolidado " + item.name; List<vCampos> lAux = new List<vCampos>(); lAux.Add(item); ConsolidadoIndividual.Html = ArmarTablaConsolidado(lConsolidadosIndividual, lAux, id_tabla.ToString()); id_tabla++; lr.Add(ConsolidadoIndividual); } } return lr; }