using System; using System.Text; using BeWo.Report; using BeWo.Report.ReportObjects; namespace ChristianLuft { public partial class InvoiceCustomerReport : DevExpress.XtraReports.UI.XtraReport, IBeWoReport { public InvoiceCustomerReport() { InitializeComponent(); } public void SetReportDataSource(InvoiceCustomerRO pRO) { if (!String.IsNullOrWhiteSpace(pRO.CustomerSalutation) && pRO.CustomerSalutation == "Herr") { pRO.CustomerSalutation = "Herrn"; } StringBuilder sb = new StringBuilder(); if (!String.IsNullOrEmpty(pRO.RecipientOrganisation) && !String.IsNullOrEmpty(pRO.RecipientOrganisation.Trim())) { sb.AppendLine(pRO.RecipientOrganisation); } if (!String.IsNullOrEmpty(pRO.RecipientDivision) && !String.IsNullOrEmpty(pRO.RecipientDivision.Trim())) { sb.AppendLine(pRO.RecipientDivision); } if ((!String.IsNullOrEmpty(pRO.RecipientFirstName) && !String.IsNullOrEmpty(pRO.RecipientFirstName.Trim())) || (!String.IsNullOrEmpty(pRO.RecipientLastName) && !String.IsNullOrEmpty(pRO.RecipientLastName.Trim()))) { sb.AppendLine(String.Format("{0} {1}", pRO.RecipientFirstName, pRO.RecipientLastName).Trim()); } if (!String.IsNullOrEmpty(pRO.RecipientStreet) && !String.IsNullOrEmpty(pRO.RecipientStreet.Trim())) { sb.AppendLine(pRO.RecipientStreet); } if (!String.IsNullOrEmpty(pRO.RecipientPostCode) && !String.IsNullOrEmpty(pRO.RecipientPostCode.Trim())) { sb.Append(pRO.RecipientPostCode); sb.Append(" "); } if (!String.IsNullOrEmpty(pRO.RecipientTown) && !String.IsNullOrEmpty(pRO.RecipientTown.Trim())) { sb.Append(pRO.RecipientTown); } lblAdresse.Text = sb.ToString(); foreach (var ii in pRO.InvoiceItems) { decimal preis = 0; if (!String.IsNullOrWhiteSpace(ii.UnitPrice) && Decimal.TryParse(ii.UnitPrice.Replace("€","").Trim(), out preis)) { ii.AmountPerUnit = preis; } if (ii.AccountingPeriodStartDateTime.Value.Month == ii.AccountingPeriodEndDateTime.Value.Month && ii.AccountingPeriodStartDateTime.Value.Year == ii.AccountingPeriodEndDateTime.Value.Year) { ii.UnitPrice = String.Format("{0:MM}/{0:yy}", ii.AccountingPeriodStartDateTime); } else { ii.UnitPrice = String.Format("{0:MM}/{0:yy}-{1:MM}/{1:yy}", ii.AccountingPeriodStartDateTime, ii.AccountingPeriodEndDateTime); } } lblBemerkungen.Text = lblBemerkungen.Text.Replace("{Frist}", String.Format("{0:dd.MM.yyyy}", pRO.InvoiceDateTime.AddDays(14))); this.bindingSource1.DataSource = pRO; } } }