public int generarArchivo(string rutaArchivo, DateTime fecha) { FondoDA fondoDA = new FondoDA(); DataTable dtPortaPadres = fondoDA.ObtenerLista("PORTA_PADRE"); DataTable dtProporciones; ComposicionPatrimonioDA composicionPatrimonioDA = new ComposicionPatrimonioDA(); StringBuilder sbLinea; sbLinea = new StringBuilder(); StringBuilder ruta = new StringBuilder(); ruta.Append(""); foreach (DataRow drPortaPadre in dtPortaPadres.Rows) { dtProporciones = composicionPatrimonioDA.ObtenerProporciones(fecha, drPortaPadre["LLAVE_TABLA"].ToString()); StreamWriter sw; if (dtProporciones.Rows.Count > 0) { if (ruta.Length > 0) { ruta.Remove(0, ruta.Length); } ruta.Append("PR_"); ruta.Append(dtProporciones.Rows[0]["PORTA_PADRE"].ToString() + "_"); ruta.Append(fecha.ToString("yyyyMMdd") + ".txt"); sw = new StreamWriter(rutaArchivo + "\\" + ruta.ToString()); if (sbLinea.Length > 0) { sbLinea.Remove(0, sbLinea.Length); } foreach (DataRow drProporcion in dtProporciones.Rows) { sbLinea.Append(drProporcion["PORTA_PADRE"].ToString() + ";"); sbLinea.Append(fecha.ToString("dd/MM/yyyy") + ";"); sbLinea.Append(drProporcion["CODIGO_SERIE"].ToString() + ";"); sbLinea.Append(drProporcion["PORCENTAJE"].ToString()); sbLinea.Append("\r\n"); } sw.WriteLine(sbLinea); sw.Close(); } } return(dtPortaPadres.Rows.Count); }
/// <summary> /// Retorna DataSet con la tabla LISTA que contiene los tipo fondo y la tabla FONDO /// que obtiene la lista de fondos con su fecha de precierre, valor cuota y si se ha ejecutado el /// proceso tributario. /// </summary> public DataSet obtenerFondos() { DataSet ds = new DataSet(); FondoDA da = new FondoDA(); ds.Tables.Add(da.ObtenerLista("TIPFON")); DataTable fondo = da.ObtenerFondosPrecierre(); /*INICIO 8844*/ TablaGeneralDA tgDa = new TablaGeneralDA(); DataTable dtFondosInversiones = tgDa.ListarTablaGeneral(ConstantesING.CODIGO_TABLA_FONDOS_INVERSIONES); /*FIN 8844*/ if (da.obtenerParametroXCodigo("GENERAR_RETENCIONES").Equals("S")) { foreach (DataRow rw in fondo.Rows) { //OT 4792 PSC2 Inicio------------------------------------------------------ /*da.Database = INGFondos.Constants.Conexiones.BaseDeDatosTributacion; * da.Server = INGFondos.Constants.Conexiones.ServidorTributacion;*/ //OT 4792 PSC2 Fin--------------------------------------------------------- //rw["FLAG_EJECUTO_TRIBUTACION"] = da.verificarTributacionEjecutada(Int32.Parse(rw["ID_FONDO"].ToString()),Convert.ToDateTime(rw["FECHA_PRECIERRE"].ToString()))?"S":"N"; /*rw["FLAG_EJECUTO_TRIBUTACION"] = da.verificarTributacionEjecutada(Convert.ToInt32(rw["ID_FONDO"].ToString()),Convert.ToDateTime(rw["FECHA_PRECIERRE"]))?"S":"N";*/ da.Database = INGFondos.Constants.Conexiones.BaseDeDatosOperaciones; da.Server = INGFondos.Constants.Conexiones.ServidorOperaciones; int resultado = 0; resultado = da.ObtenerCantidadOperacionesTipoFlu(Convert.ToInt32(rw["ID_FONDO"].ToString()), Convert.ToDateTime(rw["FECHA_PRECIERRE"].ToString())); if (resultado == 0)//!= null && pagoCupon.Equals("S")) { //OT 4792 PSC2 Inicio------------------------------------------------------ da.Database = INGFondos.Constants.Conexiones.BaseDeDatosTributacion; da.Server = INGFondos.Constants.Conexiones.ServidorTributacion; //OT 4792 PSC2 Fin--------------------------------------------------------- //rw["FLAG_EJECUTO_TRIBUTACION"] = da.verificarTributacionEjecutada(Convert.ToInt32(rw["ID_FONDO"].ToString()), Convert.ToDateTime(rw["FECHA_PRECIERRE"])) ? "S" : "S"; rw["FLAG_EJECUTO_TRIBUTACION"] = "S"; } else { //OT 4792 PSC2 Inicio------------------------------------------------------ da.Database = INGFondos.Constants.Conexiones.BaseDeDatosTributacion; da.Server = INGFondos.Constants.Conexiones.ServidorTributacion; //OT 4792 PSC2 Fin--------------------------------------------------------- //rw["FLAG_EJECUTO_TRIBUTACION"] = da.verificarTributacionEjecutada(Int32.Parse(rw["ID_FONDO"].ToString()),Convert.ToDateTime(rw["FECHA_PRECIERRE"].ToString()))?"S":"N"; rw["FLAG_EJECUTO_TRIBUTACION"] = da.verificarTributacionEjecutada(Convert.ToInt32(rw["ID_FONDO"].ToString()), Convert.ToDateTime(rw["FECHA_PRECIERRE"])) ? "S" : "N"; } /*INICIO 8844: Se obtienen los datos tributarios. No se incluyó en el método anterior porque la idea es que ya no se verifique la atribucion ejecutada.*/ DataRow[] dr = dtFondosInversiones.Select("LLAVE_TABLA = '" + rw["ID_FONDO"].ToString() + "'"); if (dr.Length == 1) { string descripcionLarga = dr[0]["DESCRIPCION_LARGA"].ToString().Trim(); string[] portafolioSerie = descripcionLarga.Split("|".ToCharArray()); rw["PORTAFOLIO"] = dr[0]["DESCRIPCION_CORTA"].ToString().Trim(); rw["SERIE"] = portafolioSerie.Length == 2 ? portafolioSerie[1] : ""; } /*FIN 8844*/ } } ds.Tables.Add(fondo); return(ds); }
public void PrepararPlantilla(string sourcePath, string savePath, string codigoUsuario) { ExcelApplication excelApplication = new ExcelApplication(); ExcelWorkBook workBook = null; workBook = excelApplication.OpenWorkBook(sourcePath, ExcelMode.Full); ExcelWorkSheet sheet = workBook.GetSheet(2); ExcelWorkSheet sheetCucs = workBook.GetSheet(3); //Obtiene los prospectos vacios CargaContratoDA cargaContratoDA = new CargaContratoDA(); DataTable dtProspectos = cargaContratoDA.ObtenerListaProspectosVacios(); sheetCucs.EscribirDatatable("B", 2, dtProspectos); DataTable dtDISTRITO = cargaContratoDA.ObtenerListaDistritos(); int indis = 2; foreach (DataRow dr in dtDISTRITO.Rows) { sheet.SetValue(string.Format("W{0}", indis), dr["NOMBRE"]); sheet.SetValue(string.Format("X{0}", indis), dr["ID"]); sheet.SetValue(string.Format("Y{0}", indis++), dr["CIUDAD"]); } FondoDA fondoDA = new FondoDA(); DataTable dtTiposDocumentos = fondoDA.ObtenerLista("TPDOCS"); int index = 2; foreach (DataRow dr in dtTiposDocumentos.Rows) { sheet.SetValue(string.Format("K{0}", index), dr["DESCRIPCION_LARGA"]); sheet.SetValue(string.Format("L{0}", index++), dr["LLAVE_TABLA"]); } index = 2; DataTable dtAgenciasOrigen = fondoDA.ObtenerLista("AGEORI"); foreach (DataRow dr in dtAgenciasOrigen.Rows) { sheet.SetValue(string.Format("H{0}", index), dr["DESCRIPCION_LARGA"]); sheet.SetValue(string.Format("I{0}", index++), dr["LLAVE_TABLA"]); } index = 2; DataTable dtFondos = cargaContratoDA.ObtenerListaFondos(); DataRow[] drFondos = dtFondos.Select("1=1", "NOMBRE"); foreach (DataRow dr in drFondos) { sheet.SetValue(string.Format("E{0}", index), dr["NOMBRE"]); sheet.SetValue(string.Format("F{0}", index++), dr["ID"]); } sheet.Hide(); excelApplication.GetWorkBook(1).SaveAs(savePath); workBook.Close(); excelApplication.Close(); workBook = excelApplication.OpenWorkBook(savePath, ExcelMode.Full); excelApplication.Show(); }