public void TestReportTemplates() { var reportTemplates = new ReportTemplates(); reportTemplates.Parse("TeamLadder, Description, ShowColours, ChartType=bar with rug, OrderBy=score, to 2018-09-11 23:59&SoloLadder, ChartType=bar with rug, OrderBy=score, , Drop worst 10% best 10% "); Assert.AreEqual(2, reportTemplates.Count, "Number of report templates"); Assert.That(reportTemplates[0].ReportType == ReportType.TeamLadder, "team ladder"); Assert.That(reportTemplates[0].Settings.Contains("ShowColours"), "ShowColours"); Assert.That(reportTemplates[0].To == new DateTime(2018, 09, 11, 23, 59, 00), "to 2018-09-11 23:59"); Assert.AreEqual("bar with rug", reportTemplates[0].Setting("ChartType"), "ChartType"); Assert.That(ChartTypeExtensions.ToChartType(reportTemplates[0].Setting("ChartType")) == (ChartType.Bar | ChartType.Rug), "parse ChartType"); Assert.That(reportTemplates[1].ReportType == ReportType.SoloLadder, "solo ladder"); Assert.That(reportTemplates[1].Drops != null, "drops"); Assert.That(reportTemplates[1].Drops.PercentWorst == 10.0, "worst 10%"); Assert.That(reportTemplates[1].Drops.PercentBest == 10.0, "best 10%"); Assert.That(reportTemplates[1].Drops.CountWorst == 0, "worst 0"); var doc = new XmlDocument(); XmlNode docNode = doc.CreateXmlDeclaration("1.0", "UTF-8", null); doc.AppendChild(docNode); XmlNode bodyNode = doc.CreateElement("body"); doc.AppendChild(bodyNode); var root = doc.DocumentElement; reportTemplates.ToXml(doc, bodyNode); var reportTemplates2 = new ReportTemplates(); reportTemplates2.FromXml(bodyNode.FirstChild); Assert.AreEqual(2, reportTemplates2.Count, "XML Number of report templates"); Assert.That(reportTemplates2[0].ReportType == ReportType.TeamLadder, "XML team ladder"); Assert.That(reportTemplates2[0].Settings.Contains("ShowColours"), "XML ShowColours"); Assert.That(reportTemplates2[0].To == new DateTime(2018, 09, 11, 23, 59, 00), "XML to 2018-09-11 23:59"); Assert.AreEqual("bar with rug", reportTemplates2[0].Setting("ChartType"), "XML ChartType"); Assert.That(ChartTypeExtensions.ToChartType(reportTemplates2[0].Setting("ChartType")) == (ChartType.Bar | ChartType.Rug), "XML parse ChartType"); Assert.That(reportTemplates2[1].ReportType == ReportType.SoloLadder, "XML solo ladder"); Assert.That(reportTemplates2[1].Drops != null, "XML drops"); Assert.That(reportTemplates2[1].Drops.PercentWorst == 10.0, "XML worst 10%"); Assert.That(reportTemplates2[1].Drops.PercentBest == 10.0, "XML best 10%"); Assert.That(reportTemplates2[1].Drops.CountWorst == 0, "XML worst 0"); }
private void Initialize() { try { var reportTypes = Directory.EnumerateFiles(Environment.CurrentDirectory) .Where(filename => filename.EndsWith(".dll")) .Select(filepath => Assembly.LoadFrom(filepath)) .SelectMany(assembly => assembly.GetTypes() .Where(type => typeof(IFetchReportTemplate).IsAssignableFrom(type) && type.IsClass)); foreach (var type in reportTypes) { var instance = Activator.CreateInstance(type) as IFetchReportTemplate; ReportTemplates.Add(instance); } } catch (Exception ex) { XtraMessageBox.Show($"Error loading analysis report extensions. Please find the error message below\n{ex.Message}"); } }
/// <summary> /// Dependent type names of this entity /// </summary> public void DeleteChildren(DatabaseEntities dbContext) { foreach (var x in ClassificationsWhereYouAreTheKeyImageFileResourceInfo.ToList()) { x.DeleteFull(dbContext); } foreach (var x in CustomPageImages.ToList()) { x.DeleteFull(dbContext); } foreach (var x in DocumentLibraryDocuments.ToList()) { x.DeleteFull(dbContext); } foreach (var x in FieldDefinitionDataImages.ToList()) { x.DeleteFull(dbContext); } foreach (var x in FileResourceDatas.ToList()) { x.DeleteFull(dbContext); } foreach (var x in FirmaHomePageImages.ToList()) { x.DeleteFull(dbContext); } foreach (var x in FirmaPageImages.ToList()) { x.DeleteFull(dbContext); } foreach (var x in GeospatialAreaImages.ToList()) { x.DeleteFull(dbContext); } foreach (var x in OrganizationsWhereYouAreTheLogoFileResourceInfo.ToList()) { x.DeleteFull(dbContext); } foreach (var x in OrganizationImages.ToList()) { x.DeleteFull(dbContext); } foreach (var x in PerformanceMeasureImages.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectAttachmentsWhereYouAreTheAttachment.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectAttachmentUpdatesWhereYouAreTheAttachment.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectImages.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ProjectImageUpdates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in ReportTemplates.ToList()) { x.DeleteFull(dbContext); } foreach (var x in TenantAttributesWhereYouAreTheTenantBannerLogoFileResourceInfo.ToList()) { x.DeleteFull(dbContext); } foreach (var x in TenantAttributesWhereYouAreTheTenantFactSheetLogoFileResourceInfo.ToList()) { x.DeleteFull(dbContext); } foreach (var x in TenantAttributesWhereYouAreTheTenantSquareLogoFileResourceInfo.ToList()) { x.DeleteFull(dbContext); } foreach (var x in TenantAttributesWhereYouAreTheTenantStyleSheetFileResourceInfo.ToList()) { x.DeleteFull(dbContext); } }
/// <summary> /// Active Dependent type names of this object /// </summary> public List <string> DependentObjectNames() { var dependentObjects = new List <string>(); if (ClassificationsWhereYouAreTheKeyImageFileResourceInfo.Any()) { dependentObjects.Add(typeof(Classification).Name); } if (CustomPageImages.Any()) { dependentObjects.Add(typeof(CustomPageImage).Name); } if (DocumentLibraryDocuments.Any()) { dependentObjects.Add(typeof(DocumentLibraryDocument).Name); } if (FieldDefinitionDataImages.Any()) { dependentObjects.Add(typeof(FieldDefinitionDataImage).Name); } if (FileResourceDatas.Any()) { dependentObjects.Add(typeof(FileResourceData).Name); } if (FirmaHomePageImages.Any()) { dependentObjects.Add(typeof(FirmaHomePageImage).Name); } if (FirmaPageImages.Any()) { dependentObjects.Add(typeof(FirmaPageImage).Name); } if (GeospatialAreaImages.Any()) { dependentObjects.Add(typeof(GeospatialAreaImage).Name); } if (OrganizationsWhereYouAreTheLogoFileResourceInfo.Any()) { dependentObjects.Add(typeof(Organization).Name); } if (OrganizationImages.Any()) { dependentObjects.Add(typeof(OrganizationImage).Name); } if (PerformanceMeasureImages.Any()) { dependentObjects.Add(typeof(PerformanceMeasureImage).Name); } if (ProjectAttachmentsWhereYouAreTheAttachment.Any()) { dependentObjects.Add(typeof(ProjectAttachment).Name); } if (ProjectAttachmentUpdatesWhereYouAreTheAttachment.Any()) { dependentObjects.Add(typeof(ProjectAttachmentUpdate).Name); } if (ProjectImages.Any()) { dependentObjects.Add(typeof(ProjectImage).Name); } if (ProjectImageUpdates.Any()) { dependentObjects.Add(typeof(ProjectImageUpdate).Name); } if (ReportTemplates.Any()) { dependentObjects.Add(typeof(ReportTemplate).Name); } if (TenantAttributesWhereYouAreTheTenantBannerLogoFileResourceInfo.Any()) { dependentObjects.Add(typeof(TenantAttribute).Name); } if (TenantAttributesWhereYouAreTheTenantFactSheetLogoFileResourceInfo.Any()) { dependentObjects.Add(typeof(TenantAttribute).Name); } if (TenantAttributesWhereYouAreTheTenantSquareLogoFileResourceInfo.Any()) { dependentObjects.Add(typeof(TenantAttribute).Name); } if (TenantAttributesWhereYouAreTheTenantStyleSheetFileResourceInfo.Any()) { dependentObjects.Add(typeof(TenantAttribute).Name); } return(dependentObjects.Distinct().ToList()); }
/// <summary> /// Does this object have any dependent objects? (If it does have dependent objects, these would need to be deleted before this object could be deleted.) /// </summary> /// <returns></returns> public bool HasDependentObjects() { return(ClassificationsWhereYouAreTheKeyImageFileResourceInfo.Any() || CustomPageImages.Any() || DocumentLibraryDocuments.Any() || FieldDefinitionDataImages.Any() || FileResourceDatas.Any() || FirmaHomePageImages.Any() || FirmaPageImages.Any() || GeospatialAreaImages.Any() || OrganizationsWhereYouAreTheLogoFileResourceInfo.Any() || OrganizationImages.Any() || PerformanceMeasureImages.Any() || ProjectAttachmentsWhereYouAreTheAttachment.Any() || ProjectAttachmentUpdatesWhereYouAreTheAttachment.Any() || ProjectImages.Any() || ProjectImageUpdates.Any() || ReportTemplates.Any() || TenantAttributesWhereYouAreTheTenantBannerLogoFileResourceInfo.Any() || TenantAttributesWhereYouAreTheTenantFactSheetLogoFileResourceInfo.Any() || TenantAttributesWhereYouAreTheTenantSquareLogoFileResourceInfo.Any() || TenantAttributesWhereYouAreTheTenantStyleSheetFileResourceInfo.Any()); }