Beispiel #1
0
        public XDocument GetReportXml(long masterReport_Id)
        {
            ReportXML report = this.dataContext
                               .ReportsXML
                               .FirstOrDefault(r => r.MasterReport_Id == masterReport_Id &&
                                               r.IsActiveVersion == true);

            if (report == null)
            {
                int reportXMLVersion = this.dataContext
                                       .ReportsXML
                                       .Where(r => r.MasterReport_Id == masterReport_Id)
                                       .Max(m => m.ReportXMLVersion);

                report = this.dataContext
                         .ReportsXML
                         .FirstOrDefault(xml => xml.MasterReport_Id == masterReport_Id &&
                                         xml.ReportXMLVersion == reportXMLVersion);
            }

            if (report == null)
            {
                return(null);
            }

            string rawXml = report.BinaryXML.UnzipFile().ParseToString();

            return(XDocument.Parse(rawXml));
        }
Beispiel #2
0
        public void UpdateXmlPrinteCount(long masterReport_Id)
        {
            ReportXML exists = this.dataContext
                               .ReportsXML
                               .FirstOrDefault(e => e.MasterReport_Id == masterReport_Id);

            if (exists == null)
            {
                return;
            }

            int reportXMLVersion = this.dataContext
                                   .ReportsXML
                                   .Where(r => r.MasterReport_Id == masterReport_Id)
                                   .Max(m => m.ReportXMLVersion);

            ReportXML report = this.dataContext
                               .ReportsXML
                               .FirstOrDefault(xml => xml.MasterReport_Id == masterReport_Id &&
                                               xml.ReportXMLVersion == reportXMLVersion);

            ++report.PrintCount;

            this.dataContext.SaveChanges();
        }
Beispiel #3
0
        new public void UpdateReportXML(ReportXMLModel model)
        {
            if (model.IsActiveVersion)
            {
                foreach (ReportXML xml in this.dataContext.ReportsXML.Where(rm => rm.MasterReport_Id == model.MasterReport_Id))
                {
                    xml.IsActiveVersion = false;
                }
            }

            ReportXML existing = this.dataContext
                                 .ReportsXML
                                 .Where(rx => rx.ReportXMLVersion == model.ReportXMLVersion && rx.MasterReport_Id == model.MasterReport_Id)
                                 .FirstOrDefault();

            if (existing == null)
            {
                existing = model.CopyToObject(new ReportXML()) as ReportXML;

                this.dataContext.ReportsXML.Add(existing);
            }
            else
            {
                existing = model.CopyToObject(existing) as ReportXML;
            }

            this.dataContext.SaveChanges();

            model = existing.CopyToObject(model) as ReportXMLModel;
        }
Beispiel #4
0
        public bool IsActiveVersion(long masterReport_Id, int reportXMLVersion)
        {
            ReportXML xml = base.dataContext
                            .ReportsXML
                            .FirstOrDefault(rx => rx.MasterReport_Id == masterReport_Id &&
                                            rx.ReportXMLVersion == reportXMLVersion);

            return(xml == null ? false : xml.IsActiveVersion);
        }
        public ReportXMLModel GetReportXMLByPrimaryKey(int ReportXMLVersion, Int64 MasterReport_Id)
        {
            ReportXML result = this.dataContext
                               .ReportsXML
                               .FirstOrDefault(pk => pk.ReportXMLVersion == ReportXMLVersion && pk.MasterReport_Id == MasterReport_Id);

            if (result == null)
            {
                return(null);
            }

            return(result.CopyToObject(new ReportXMLModel()) as ReportXMLModel);
        }
Beispiel #6
0
        public int GetReportXMLVersion(long MasterReport_Id)
        {
            ReportXML model = this.dataContext
                              .ReportsXML
                              .FirstOrDefault(r => r.MasterReport_Id == MasterReport_Id &&
                                              r.IsActiveVersion == true);

            if (model != null)
            {
                return(model.ReportXMLVersion);
            }

            int result = this.dataContext
                         .ReportsXML
                         .Where(r => r.MasterReport_Id == MasterReport_Id)
                         .Max(m => m.ReportXMLVersion);

            if (result == 0)
            {
                return(1);
            }

            return(result);
        }