public override string Propiedad(string NombrePropiedad) { if (NombrePropiedad == "NombreArchivoGenerado") { string res = ""; if (Lib.NoBoolNulo(this["EsAceptacion"])) { res = "Aceptación firmada"; } else { if (this["IDPresupuestoVersion"] is DBNull) { res = BaseSistemaNumeracion.DescripcionCodigoAnyoSinObra((BasePresupuesto)ObjetoAsociado("Presupuesto")).Replace('/', '_'); res = "Presupuesto " + res; } else { res = ObjetoAsociado("PresupuestoVersion").Propiedad(NombrePropiedad); } if (IDGenDocModelo > 0) { res += " _" + ProveedorListas.TextoDeCombo("GenDocModelo", IDGenDocModelo); } } return(res); } if (NombrePropiedad == "PermiteCreacionArchivo") { if (ObjetoAsociado("Presupuesto") == null) { return(""); } else { return("1"); } } if (NombrePropiedad == "RutaArchivos") { return(ObjetoAsociado("Presupuesto").Propiedad(NombrePropiedad)); } return(base.Propiedad(NombrePropiedad)); }
public override string Propiedad(string NombrePropiedad) { Decimal Total = 0; double Unidades = 0; string est = ""; ColPresupuestoVersionDetalle cpvd; if (NombrePropiedad == "ESTILO_CSS") { return(CrearTablaHTMLTarifas.CSSTablaHTML); } if (NombrePropiedad == "TablaPresupuesto") { return((new CrearTablaHTMLTarifas()).CrearTabla(this)); } if (NombrePropiedad == "Estado") { if ((bool)this["Principal"]) { est = "Principal"; } else { if ((bool)this["Ampliacion"]) { est = "Ampliación"; } else { est = "Versión"; } } if ((bool)this["Aceptado"]) { est += " - Aceptado"; } return(est); } if (NombrePropiedad == "DescripcionCorta") { if ((bool)this["Principal"]) { est = "Principal"; } else { if ((bool)this["Ampliacion"]) { est = "Ampliación"; } else { est = "Versión"; } est += " " + this["Version"].ToString(); } return(est); } if (NombrePropiedad == "EsAmpliacionVersion") { if ((bool)this["Principal"]) { est = ""; } else { if ((bool)this["Ampliacion"]) { est = "Ampliación " + this["Version"].ToString() + ". de tarifas unidades del presupuesto inicial: "; } else { est = "Versión " + this["Version"].ToString() + ". del presupuesto: "; } } return(est); } if (NombrePropiedad == "NombreArchivoGenerado") { est = BaseSistemaNumeracion.DescripcionCodigoAnyoSinObra((BasePresupuesto)ObjetoAsociado("Presupuesto")).Replace('/', '_'); if (!(bool)this["Principal"]) { if ((bool)this["Ampliacion"]) { est += " Ampliación"; } else { est += " Versión"; } est += " " + this["Version"].ToString(); } return("Presupuesto " + est); } if (NombrePropiedad == "SumaTotalPresupuesto") { //if (!(bool)this["Principal"]) //{ NombrePropiedad = "TotalVersionAceptado"; //} } if (NombrePropiedad == "FechaEmision") { DateTime fe = new DateTime(); if ((bool)this["Aceptado"]) { fe = (DateTime)this["FechaAceptacion"]; } else { fe = (DateTime)this["FechaEmision"]; } return(Lib.FormateaFecha(fe)); } if (NombrePropiedad == "FechaEmisionLarga") { DateTime fe = new DateTime(); if ((bool)this["Aceptado"]) { fe = (DateTime)this["FechaAceptacion"]; } else { fe = (DateTime)this["FechaEmision"]; } return(fe.Day.ToString() + " de " + fe.ToString("MMMM") + " de " + fe.Year.ToString()); } if (NombrePropiedad == "TotalVersion" || NombrePropiedad == "TotalUnidades") { cpvd = (ColPresupuestoVersionDetalle)Coleccion("ColPresupuestoVersionDetalle"); Total = cpvd.CalcularTotal(false, ref Unidades); if (NombrePropiedad == "TotalVersion") { return(LCC.Negocio.Util.DarFormatoMonedaConDecimales(Total)); } else { return(Unidades.ToString("0.##")); } } if (NombrePropiedad == "TotalVersionAceptado" || NombrePropiedad == "TotalUnidadesAceptado" || NombrePropiedad == "TotalConBonificacion") { cpvd = (ColPresupuestoVersionDetalle)Coleccion("ColPresupuestoVersionDetalle"); Total = cpvd.CalcularTotal(true, ref Unidades); if (NombrePropiedad == "TotalVersionAceptado") { return(LCC.Negocio.Util.DarFormatoMonedaConDecimales(Total)); } else if (NombrePropiedad == "TotalConBonificacion") { float porcentaje = (float)ObjetoAsociado("Presupuesto")["Descuento"]; if (porcentaje != 0) { decimal TotalConBonificacion = Total - ((Total * Lib.NoDecimalNulo(porcentaje)) / 100); return("TOTAL PRESUPUESTO CON BONIFICACIÓN: " + LCC.Negocio.Util.DarFormatoMonedaConDecimales(TotalConBonificacion)); } } else { return(Unidades.ToString("0.##")); } } //[Prop.Con1] [Prop.NF1] [Prop.Pr1] [Prop.Importe1] [Prop.Precio1] for (int p = 1; p <= 9; ++p) { if (NombrePropiedad == "Con" + p.ToString() || NombrePropiedad == "NF" + p.ToString() || NombrePropiedad == "Pr" + p.ToString() || NombrePropiedad == "Importe" + p.ToString() || NombrePropiedad == "Precio" + p.ToString()) { PresupuestoVersionDetalle det = null; if (p <= Coleccion("ColPresupuestoVersionDetalle").Count) { det = (PresupuestoVersionDetalle)Coleccion("ColPresupuestoVersionDetalle")[p - 1]; } if (det != null) { if (NombrePropiedad.StartsWith("NF")) { return(p.ToString()); } if (NombrePropiedad.StartsWith("Con")) { return(det["Concepto"].ToString()); } if (NombrePropiedad.StartsWith("Pr")) { return((det.TotalUnidades * 100).ToString("0") + "%"); } if (NombrePropiedad.StartsWith("Importe")) { return(String.Format("{0:#,##0 €}", (decimal)det["Total"])); } if (NombrePropiedad.StartsWith("Precio")) { return(String.Format("{0:#,##0 €}", (decimal)det["Precio"])); } } return(""); } } return(ObjetoAsociado("Presupuesto").Propiedad(NombrePropiedad)); }