using System; using System.Data; using System.IO; using BeWo.Data.Access; using BeWo.Data.Entities; using BeWo.Report; using BeWo.Report.ReportObjects; using BS.Shared.Core; using DevExpress.XtraReports.UI; namespace KommMit { public class CustomReportCreator : DefaultReportCreator { public override XtraReport CreateQueryReport(long queryOid, string queryReportId) { if (queryOid == 100) return CreateJahresabgrenzung(queryOid, queryReportId); return base.CreateQueryReport(queryOid, queryReportId); } private XtraReport CreateJahresabgrenzung(long queryOid, string queryReportId) { var query = DAOFactory.GenericDAO.LoadByID(queryOid); if (query == null) return new XtraReport(); var path = Path.Combine(TempPath, queryReportId + ".xml"); var table = Utils.XMLDeserialize(path); var qro = QueryRO.Create(query, table); if (qro.Rows.Count > 0) { DateTime monat = DateTime.Parse(qro.Rows[0].Field1.ToString()); DateTime start = new DateTime(monat.Year, 1, 1); DateTime end = monat.AddMonths(1).AddDays(-1); var ro = FinanceRO.Create(start, end); var druck = new Jahresabgrenzung(); druck.SetReportDataSource(ro); return druck; } return new XtraReport(); } } }