Exemplo n.º 1
0
        private static void ProduceReport()
        {
            int totalProducts = 0;
            int totalOrders   = 0;

            // Get the data for the report (any IEnumerable or LINQ query will work)
            var query = ProductRepository.GetAll();

            // Create the report and turn our query into a ReportSource
            var report = new Report(query.ToReportSource());

            // Customize the Text Fields
            report.TextFields.Title    = "Products Report";
            report.TextFields.SubTitle = "This is a sample report showing how Doddle Report works";
            report.TextFields.Footer   = "Copyright 2011 © The Doddle Project";
            report.TextFields.Header   = string.Format(@"
                Report Generated: {0}
                Total Products: {1}
                Total Orders: {2}
                Total Sales: {3:c}", DateTime.Now, totalProducts, totalOrders, totalProducts * totalOrders);

            // Render hints allow you to pass additional hints to the reports as they are being rendered
            report.RenderHints.BooleanCheckboxes = true;


            // Customize the data fields
            report.DataFields["Id"].Hidden = true;
            report.DataFields["Price"].DataFormatString        = "{0:c}";
            report.DataFields["LastPurchase"].DataFormatString = "{0:d}";

            var writer = new HtmlReportWriter();
            //  writer.WriteReport(report, HttpContext.Response.OutputStream);
        }
Exemplo n.º 2
0
 public void GenerateHTMLReport()
 {
     using (var fs = new StreamWriter(this._saveFilepath)) {
         var writer = new HtmlReportWriter();
         writer.WriteReport(this._report, fs.BaseStream);
     }
 }
Exemplo n.º 3
0
        public static void ReportData()
        {
            int totalProducts = 0;
            int totalOrders = 0;

            // Get the data for the report (any IEnumerable or LINQ query will work)
            var query = ProductRepository.GetAll();

            // Create the report and turn our query into a ReportSource
            var report = new Report(query.ToReportSource());

            // Customize the Text Fields
            report.TextFields.Title = "Products Report";
            report.TextFields.SubTitle = "This is a sample report showing how Doddle Report works";
            report.TextFields.Footer = "Copyright 2011 © The Doddle Project";
            report.TextFields.Header = string.Format(@"
                Report Generated: {0}
                Total Products: {1}
                Total Orders: {2}
                Total Sales: {3:c}", DateTime.Now, totalProducts, totalOrders, totalProducts * totalOrders);

            // Render hints allow you to pass additional hints to the reports as they are being rendered
            report.RenderHints.BooleanCheckboxes = true;

            // Customize the data fields
            report.DataFields["Id"].Hidden = true;
            report.DataFields["Price"].DataFormatString = "{0:c}";
            report.DataFields["LastPurchase"].DataFormatString = "{0:d}";

            //  Write now!
            var writer = new HtmlReportWriter();
            writer.WriteReport(report, HttpContext.Response.OutputStream);
        }
        private void btnPrint_Click(object sender, EventArgs e)
        {
            frmRaporDialog frm = new frmRaporDialog(true, true, true, false);

            frm.ShowDialog();
            try {
                ReportTo?dest = frm.GetReportDestination();
                if (dest.HasValue)
                {
                    if (dest.Value != ReportTo.CrytalReport)
                    {
                        // Create the report and turn our query into a ReportSource
                        var report = new Report(_data.ToReportSource());
                        // Customize the Text Fields
                        report.TextFields.Title  = "Gün gün Kasa Raporu";
                        report.TextFields.Header = string.Format(@"
    Kasa  :{0}
    Rapor Tarihi: {1}
    Tarih Aralığı:{2}
",
                                                                 cmboxKasalar.Text, DateTime.Now, GetTarihAraligi());


                        // Render hints allow you to pass additional hints to the reports as they are being rendered
                        report.DataFields["Gelir"].ShowTotals  = true;
                        report.DataFields["Gider"].ShowTotals  = true;
                        report.DataFields["Bakiye"].ShowTotals = true;
                        // Customize the data fields
                        report.RenderHints["HtmlStyle"]              = "th { font-size: 14px !important;font-weight:bold !important}";
                        report.DataFields["Gelir"].DataFormatString  = "{0:F2}";
                        report.DataFields["Gider"].DataFormatString  = "{0:F2}";
                        report.DataFields["Bakiye"].DataFormatString = "{0:F2}";
                        report.DataFields["Tarih"].DataFormatString  = "{0:d}";
                        string        fileName = "gunGunKasaRaporu.xls";
                        IReportWriter writer   = new ExcelReportWriter();
                        if (dest.Value == ReportTo.Html)
                        {
                            writer   = new HtmlReportWriter();
                            fileName = "gunGunKasaRaporu.html";
                        }
                        else if (dest.Value == ReportTo.Csv)
                        {
                            writer   = new DelimitedTextReportWriter();
                            fileName = "gunGunKasaRaporu.txt";
                        }
                        string     file = Path.Combine(Engine.DokumanPath(), fileName);
                        FileStream fs   = new FileStream(file, FileMode.Create);

                        writer.WriteReport(report, fs);
                        fs.Close();
                        Process prc = new Process();
                        prc.StartInfo.FileName = file;
                        prc.Start();
                    }
                }
            } catch (Exception exc) {
                MessageBox.Show(exc.Message);
                LogWrite.Write(exc);
            }
        }
Exemplo n.º 5
0
        private void btnPrint_Click(object sender, EventArgs e)
        {
            frmRaporDialog frm = new frmRaporDialog(true, true, true, false);

            frm.ShowDialog();
            ReportTo?dest = frm.GetReportDestination();

            if (dest.HasValue)
            {
                try {
                    if (dest != ReportTo.CrytalReport)
                    {
                        var report = new Report(_source.ToReportSource());
                        // Customize the Text Fields
                        report.RenderHints.IncludePageNumbers = true;
                        report.TextFields.Title  = tabPage2.Text;
                        report.TextFields.Header = string.Format(@"
            Rapor Tarihi:{0}
            Rapor Tarih Aralığı:{1}
            Cari:{2}         
            ", DateTime.Now, GetTarihAraligi(), RaporCariString());
                        report.DataFields["Tarih"].DataFormatString  = "{0:d}";
                        report.DataFields["Borc"].DataFormatString   = "{0:F2}";
                        report.DataFields["Alacak"].DataFormatString = "{0:F2}";
                        report.DataFields["Alacak"].ShowTotals       = true;
                        report.DataFields["Borc"].ShowTotals         = true;
                        string        fileName = "cariHareketDokumu.xls";
                        IReportWriter writer   = new ExcelReportWriter();

                        if (dest.Value == ReportTo.Html)
                        {
                            writer   = new HtmlReportWriter();
                            fileName = "cariHareketDokumu.html";
                        }
                        else if (dest.Value == ReportTo.Csv)
                        {
                            writer   = new DelimitedTextReportWriter();
                            fileName = "cariHareketDokumu.txt";
                        }
                        string     file = Path.Combine(Engine.DokumanPath(), fileName);
                        FileStream fs   = new FileStream(file, FileMode.Create);

                        writer.WriteReport(report, fs);
                        fs.Close();
                        Process prc = new Process();
                        prc.StartInfo.FileName = file;
                        prc.Start();
                    }
                    else
                    {
                        //frmStokAlisSatisRaporCrytalRapor frm2 = new frmStokAlisSatisRaporCrytalRapor(_source);
                        //frm2.Show();
                    }
                } catch (Exception exc) {
                    MessageBox.Show(exc.Message);
                    LogWrite.Write(exc);
                }
            }
        }
        public void CreatesHtmlReport()
        {
            var mapper = Substitute.For <ITargetMapper>();
            var writer = new HtmlReportWriter(mapper);

            var response = new AnalyzeResponse
            {
                MissingDependencies = new List <MemberInfo>
                {
                    new MemberInfo {
                        MemberDocId = "Type1.doc1", DefinedInAssemblyIdentity = "Assembly1", TypeDocId = "Type1"
                    },
                    new MemberInfo {
                        MemberDocId = "Type2.doc2", DefinedInAssemblyIdentity = "Assembly2", TypeDocId = "Type2"
                    }
                },
                SubmissionId = Guid.NewGuid().ToString(),
                Targets      = new List <FrameworkName> {
                    new FrameworkName("target1", Version.Parse("1.0.0.0"))
                },
                UnresolvedUserAssemblies = new List <string> {
                    "UnresolvedAssembly", "UnresolvedAssembly2", "UnresolvedAssembly3"
                },
                BreakingChangeSkippedAssemblies = new List <AssemblyInfo>(),
                BreakingChanges = new List <BreakingChangeDependency>(),
            };

            var reportingResult = new ReportingResult(response.Targets, response.MissingDependencies, response.SubmissionId, AnalyzeRequestFlags.NoTelemetry);

            response.ReportingResult = reportingResult;

            var tempFile = Path.GetTempFileName();

            try
            {
                using (var file = File.OpenWrite(tempFile))
                {
                    writer.WriteStream(file, response);
                }

                Assert.True(File.Exists(tempFile));

                var contents = File.ReadAllText(tempFile);

                Assert.True(!string.IsNullOrEmpty(contents));
                Assert.Contains(response.SubmissionId, contents);
            }
            finally
            {
                if (File.Exists(tempFile))
                {
                    File.Delete(tempFile);
                }
            }
        }
Exemplo n.º 7
0
    private void btnPrint_Click(object sender, EventArgs e) {
        frmRaporDialog frm = new frmRaporDialog(true, true, true, false);
        frm.ShowDialog();
        ReportTo? dest = frm.GetReportDestination();
        if (dest.HasValue) {
            try {
                if (dest.Value != ReportTo.CrytalReport) {


                    // Create the report and turn our query into a ReportSource
                    var report = new Report(_source.ToReportSource());
                    // Customize the Text Fields

                    report.TextFields.Title = "Kasa Hareket Dökümü";
                    report.TextFields.Header = string.Format(@"
            Rapor Tarihi:{0}
            Tarih Aralığı:{1}
            Kasa:{2} 
            ", DateTime.Now,GetTarihAraligi(), _source.Rows[0]["KasaKod"].ToStringOrEmpty());
                    // Render hints allow you to pass additional hints to the reports as they are being rendered
                    report.RenderHints.BooleanCheckboxes = true;
                    // Customize the data fields
                    report.DataFields["Tutar"].ShowTotals = true;
                    report.DataFields["KasaKod"].Hidden = true;
                    //report.DataFields["Tutar"].DataFormatString = "{0:c}";
                    report.DataFields["Tarih"].DataFormatString = "{0:d}";
                    string fileName = "kasahareketDokumu.xls";
                    IReportWriter writer = new ExcelReportWriter();
                    if (dest.Value == ReportTo.Html) {
                        writer = new HtmlReportWriter();
                        fileName = "kasahareketDokumu.html";
                    } else if (dest.Value == ReportTo.Csv) {
                        writer = new DelimitedTextReportWriter();
                        fileName = "kasahareketDokumu.txt";
                    }
                    string file = Path.Combine(Engine.DokumanPath(), fileName);
                    FileStream fs = new FileStream(file, FileMode.Create);

                    writer.WriteReport(report, fs);
                    fs.Close();
                    Process prc = new Process();
                    prc.StartInfo.FileName = file;
                    prc.Start();

                }
            } catch (Exception exc) {
                MessageBox.Show(exc.Message);
                LogWrite.Write(exc);
            }

        }
    }
Exemplo n.º 8
0
 public Jenkins(Harness harness, IProcessManager processManager, IResultParser resultParser, ITunnelBore tunnelBore)
 {
     this.processManager   = processManager ?? throw new ArgumentNullException(nameof(processManager));
     this.TunnelBore       = tunnelBore ?? throw new ArgumentNullException(nameof(tunnelBore));
     Harness               = harness ?? throw new ArgumentNullException(nameof(harness));
     Simulators            = new SimulatorLoader(processManager);
     Devices               = new HardwareDeviceLoader(processManager);
     testSelector          = new TestSelector(this, processManager, new GitHub(harness, processManager));
     testVariationsFactory = new TestVariationsFactory(this, processManager);
     DeviceLoader          = new JenkinsDeviceLoader(Simulators, Devices, Logs);
     resourceManager       = new ResourceManager();
     htmlReportWriter      = new HtmlReportWriter(jenkins: this, resourceManager: resourceManager, resultParser: resultParser);
     markdownReportWriter  = new MarkdownReportWriter();
 }
Exemplo n.º 9
0
        public void Test2()
        {
            var dc = new DataContext();

            dc.AddTable("data", new[] {
                new Item {
                    Col1 = "A", Col2 = 2
                }
            });

            var flow = new Flow {
                Orientation = FlowOrientation.Vertical
            };
            var table = flow.AddTable <Item>("data");

            table.Columns.Single(a => a.DataField == "Col2").ConditionalFormatting = (value) => {
                if (!(value is int))
                {
                    return(null);
                }
                var v = (int)value;
                if (v > 0)
                {
                    return new Styling.CellStyle
                           {
                               FontStyle = new Styling.FontStyle
                               {
                                   FontColor = Styling.Color.FromHtml("#00FF00")
                               }
                           }
                }
                ;
                return(null);
            };

            var rep   = Report.CreateReport(flow, dc);
            var cells = ReportUtil.GetCellMatrix(rep);

            Assert.IsNull(cells[0][0].CustomStyle);
            Assert.IsNotNull(cells[0][1].CustomStyle);

            var html = HtmlReportWriter.RenderReport(rep, new DefaultHtmlReportTheme());

            Assert.IsTrue(html.Contains("style=\"color:"));
            Assert.IsTrue(html.Contains("#00FF00"));
        }
    }
Exemplo n.º 10
0
        public IErrorsInfo RunReport(ReportType reportType, string outputFile)
        {
            try

            {
                reportOutput            = new ReportOutput();
                reportOutput.Definition = Definition;
                reportOutput.DMEEditor  = DMEEditor;

                if (reportOutput.GetBlockDataIntoTables())
                {
                    CopyReportDefinition2Doodle();
                    switch (reportType)
                    {
                    case ReportType.html:
                        break;

                    case ReportType.xls:
                        break;

                    case ReportType.csv:
                        break;

                    case ReportType.pdf:
                        break;

                    default:
                        break;
                    }
                    FileStream fileStream = new FileStream(outputFile + "." + reportType.ToString(), FileMode.Create);
                    outputstream = fileStream;
                    var writer = new HtmlReportWriter();
                    writer.WriteReport(report, outputstream);
                    OutputFile = outputFile + "." + reportType.ToString();
                    DMEEditor.AddLogMessage("Success", $"Creating Doddle Report", DateTime.Now, 0, null, Errors.Ok);
                }
            }
            catch (Exception ex)
            {
                string errmsg = "Error Saving Function Mapping ";
                DMEEditor.AddLogMessage("Fail", $"{errmsg}:{ex.Message}", DateTime.Now, 0, null, Errors.Failed);
            }
            return(DMEEditor.ErrorObject);
        }
Exemplo n.º 11
0
 public Jenkins(IHarness harness, IProcessManager processManager, IResultParser resultParser, ITunnelBore tunnelBore)
 {
     this.processManager            = processManager ?? throw new ArgumentNullException(nameof(processManager));
     this.TunnelBore                = tunnelBore ?? throw new ArgumentNullException(nameof(tunnelBore));
     Harness                        = harness ?? throw new ArgumentNullException(nameof(harness));
     Simulators                     = new SimulatorLoader(processManager);
     Devices                        = new HardwareDeviceLoader(processManager);
     testSelector                   = new TestSelector(this, processManager, new GitHub(harness, processManager));
     testVariationsFactory          = new TestVariationsFactory(this, processManager);
     DeviceLoader                   = new JenkinsDeviceLoader(Simulators, Devices, Logs);
     resourceManager                = new ResourceManager();
     xamarinStorageHtmlReportWriter = new HtmlReportWriter(jenkins: this, resourceManager: resourceManager, resultParser: resultParser);
     // we only care about the vsdrops writer if we are in the CI, locally makes no sense
     if (harness.InCI && !string.IsNullOrEmpty(Harness.VSDropsUri))
     {
         vsdropsHtmlReportWriter = new HtmlReportWriter(this, resourceManager, resultParser, linksPrefix: Harness.VSDropsUri, embeddedResources: true);
     }
     markdownReportWriter = new MarkdownReportWriter();
 }
Exemplo n.º 12
0
        public static void CreatesHtmlReport()
        {
            var mapper = Substitute.For <ITargetMapper>();
            var writer = new HtmlReportWriter(mapper);

            var response = GetAnalyzeResponse();

            // setting all show... flags renders every section of the report
            var flags = AnalyzeRequestFlags.NoTelemetry
                        | AnalyzeRequestFlags.ShowBreakingChanges
                        | AnalyzeRequestFlags.ShowNonPortableApis
                        | AnalyzeRequestFlags.ShowRetargettingIssues;

            var reportingResult = new ReportingResult(response.Targets, response.MissingDependencies, response.SubmissionId, flags);

            response.ReportingResult = reportingResult;

            var tempFile = Path.GetTempFileName();

            try
            {
                using (var file = File.OpenWrite(tempFile))
                {
                    writer.WriteStream(file, response);
                }

                Assert.True(File.Exists(tempFile));

                var contents = File.ReadAllText(tempFile);

                Assert.True(!string.IsNullOrEmpty(contents));
                Assert.Contains(response.SubmissionId, contents, StringComparison.Ordinal);
            }
            finally
            {
                if (File.Exists(tempFile))
                {
                    File.Delete(tempFile);
                }
            }
        }
Exemplo n.º 13
0
        static void Main(string[] args)
        {
            var options = new CommandLineOptions();

            try
            {
                if (!Parser.Default.ParseArguments(args, options))
                {
                    return;
                }

                Console.WriteLine("Start");
                Validate.FileExist(options.TestResultXmlPath, "Test Result Xml Path");
                TestLoadResult   testLoadResult = TestLoadResult.ConvertFrom(options.TestResultXmlPath);
                HtmlReportWriter writer         = new HtmlReportWriter(options.OutputFolderPath, options.OutputName);
                writer.Write(testLoadResult);
            }
            catch (Exception ex)
            {
                Console.Error.WriteLine(ex.Message);
                Console.WriteLine(options.GetUsage());
            }
            Console.WriteLine("End");
        }
Exemplo n.º 14
0
        private void btnPrint_Click(object sender, EventArgs e)
        {
            frmRaporDialog frm = new frmRaporDialog(true, true, true, false);

            frm.ShowDialog();
            ReportTo?dest = frm.GetReportDestination();

            if (dest.HasValue)
            {
                try {
                    if (dest != ReportTo.CrytalReport)
                    {
                        var report = new Report(ListToDataTable().ToReportSource());
                        // Customize the Text Fields

                        report.TextFields.Title  = "Banka Hareket Raporu";
                        report.TextFields.Header = string.Format(@"
            Rapor Tarihi  :{0}
            HesapNo       :{1}
            BankaAdı      :{2}
            HesapSahibi   :{3}
            ŞubeAdı       :{4}
            ParaBirimi    :{5}           
            Tarih Aralığı :{6} 
            ", DateTime.Now, txtHesapNo.Text, txtBankaAdi.Text, txtHesapSahip.Text, txtSubeAdi.Text
                                                                 , txtParaBirimi.Text, GetTarihAraligi());
                        report.DataFields["Tarih"].DataFormatString = "{0:d}";
                        report.DataFields["Tutar"].DataFormatString = "{0:F2}";
                        report.DataFields["Tutar"].ShowTotals       = true;
                        string        fileName = "bankaRaporu";
                        IReportWriter writer   = new ExcelReportWriter();
                        if (dest.Value == ReportTo.Excel)
                        {
                            fileName = fileName + ".xls";
                        }
                        else if (dest.Value == ReportTo.Html)
                        {
                            writer   = new HtmlReportWriter();
                            fileName = fileName + ".html";
                        }
                        else if (dest.Value == ReportTo.Csv)
                        {
                            writer   = new DelimitedTextReportWriter();
                            fileName = fileName + ".txt";
                        }
                        string     file = Path.Combine(Engine.DokumanPath(), fileName);
                        FileStream fs   = new FileStream(file, FileMode.Create);

                        writer.WriteReport(report, fs);
                        fs.Close();
                        Process prc = new Process();
                        prc.StartInfo.FileName = file;
                        prc.Start();
                    }
                    else
                    {
                        //frmBankaHarReport frm2 = new frmBankaHarReport(hareketList);
                        //frm2.Show();
                    }
                } catch (Exception exc) {
                    MessageBox.Show(exc.Message);
                    LogWrite.Write(exc);
                }
            }
        }
        public void SaveReport(string fileName)
        {
            string ext = Path.GetExtension(fileName);

            if (ext == null)
            {
                return;
            }

            ext = ext.ToLower();

            var r           = this.CreateReport(fileName);
            var reportStyle = new ReportStyle();

            switch (ext)
            {
            case ".txt":
                using (var s = File.Create(fileName))
                {
                    using (var w = new TextReportWriter(s))
                    {
                        r.Write(w);
                    }
                }

                break;

            case ".html":
                using (var s = File.Create(fileName))
                {
                    using (var w = new HtmlReportWriter(s))
                    {
                        w.WriteReport(r, reportStyle);
                    }
                }

                break;

            case ".pdf":
                using (var w = new PdfReportWriter(fileName))
                {
                    w.WriteReport(r, reportStyle);
                }

                break;

            case ".rtf":
                using (var w = new RtfReportWriter(fileName))
                {
                    w.WriteReport(r, reportStyle);
                }

                break;

            case ".tex":
                using (var s = File.Create(fileName))
                {
                    using (var w = new LatexReportWriter(s, "Example report", "oxyplot"))
                    {
                        w.WriteReport(r, reportStyle);
                    }
                }

                break;

            case ".xps":
                using (var w = new FlowDocumentReportWriter())
                {
                    w.WriteReport(r, reportStyle);
                    w.Save(fileName);
                }

                break;

            case ".docx":
                using (var w = new WordDocumentReportWriter(fileName))
                {
                    w.WriteReport(r, reportStyle);
                    w.Save();
                }

                break;
            }
        }
Exemplo n.º 16
0
        public Task RunAsync(Jenkins jenkins, HtmlReportWriter htmlReportWriter)
        {
            var server = new HttpListener();

            // Try and find an unused port
            int    attemptsLeft = 50;
            int    port         = 51234;  // Try this port first, to try to not vary between runs just because.
            Random r            = new Random((int)DateTime.Now.Ticks);

            while (attemptsLeft-- > 0)
            {
                var newPort = port != 0 ? port : r.Next(49152, 65535);                  // The suggested range for dynamic ports is 49152-65535 (IANA)
                server.Prefixes.Clear();
                server.Prefixes.Add("http://*:" + newPort + "/");
                try {
                    server.Start();
                    port = newPort;
                    break;
                } catch (Exception ex) {
                    jenkins.MainLog.WriteLine("Failed to listen on port {0}: {1}", newPort, ex.Message);
                    port = 0;
                }
            }
            jenkins.MainLog.WriteLine($"Created server on localhost:{port}");

            var tcs    = new TaskCompletionSource <bool> ();
            var thread = new System.Threading.Thread(() =>
            {
                while (server.IsListening)
                {
                    var context   = server.GetContext();
                    var request   = context.Request;
                    var response  = context.Response;
                    var arguments = System.Web.HttpUtility.ParseQueryString(request.Url.Query);
                    try {
                        var allTasks = jenkins.Tasks.SelectMany((v) =>
                        {
                            var rv     = new List <ITestTask> ();
                            var runsim = v as AggregatedRunSimulatorTask;
                            if (runsim != null)
                            {
                                rv.AddRange(runsim.Tasks);
                            }
                            rv.Add(v);
                            return(rv);
                        });

                        IEnumerable <ITestTask> find_tasks(StreamWriter writer, string ids)
                        {
                            IEnumerable <ITestTask> tasks;
                            switch (request.Url.Query)
                            {
                            case "?all":
                                tasks = jenkins.Tasks;
                                break;

                            case "?selected":
                                tasks = allTasks.Where((v) => !v.Ignored);
                                break;

                            case "?failed":
                                tasks = allTasks.Where((v) => v.Failed);
                                break;

                            case "?":
                                writer.WriteLine("No tasks specified");
                                return(Array.Empty <AppleTestTask> ());

                            default:
                                var id_inputs = ids.Substring(1).Split(',');
                                var rv        = new List <ITestTask> (id_inputs.Length);
                                foreach (var id_input in id_inputs)
                                {
                                    if (int.TryParse(id_input, out var id))
                                    {
                                        var task = jenkins.Tasks.FirstOrDefault((t) => t.ID == id);
                                        if (task == null)
                                        {
                                            task = jenkins.Tasks.Where((v) => v is AggregatedRunSimulatorTask).Cast <AggregatedRunSimulatorTask> ().SelectMany((v) => v.Tasks).FirstOrDefault((t) => t.ID == id);
                                        }
                                        if (task == null)
                                        {
                                            writer.WriteLine($"Could not find test {id}");
                                        }
                                        else
                                        {
                                            rv.Add(task);
                                        }
                                    }
                                    else
                                    {
                                        writer.WriteLine($"Could not parse {arguments ["id"]}");
                                    }
                                }
                                tasks = rv;
                                break;
                            }
                            return(tasks);
                        }

                        string serveFile = null;
                        switch (request.Url.LocalPath)
                        {
                        case "/":
                            response.ContentType = System.Net.Mime.MediaTypeNames.Text.Html;
                            using (var writer = new StreamWriter(response.OutputStream)) {
                                htmlReportWriter.Write(jenkins.Tasks, writer);
                            }
                            break;

                        case "/set-option":
                            response.ContentType = System.Net.Mime.MediaTypeNames.Text.Plain;
                            switch (request.Url.Query)
                            {
                            case "?clean":
                                jenkins.CleanSuccessfulTestRuns = true;
                                break;

                            case "?do-not-clean":
                                jenkins.CleanSuccessfulTestRuns = false;
                                break;

                            case "?uninstall-test-app":
                                jenkins.UninstallTestApp = true;
                                break;

                            case "?do-not-uninstall-test-app":
                                jenkins.UninstallTestApp = false;
                                break;

                            case "?skip-permission-tests":
                                jenkins.Harness.IncludeSystemPermissionTests = false;
                                break;

                            case "?include-permission-tests":
                                jenkins.Harness.IncludeSystemPermissionTests = true;
                                break;

                            case "?clear-permission-tests":
                                jenkins.Harness.IncludeSystemPermissionTests = null;
                                break;

                            default:
                                throw new NotImplementedException(request.Url.Query);
                            }
                            using (var writer = new StreamWriter(response.OutputStream)) {
                                writer.WriteLine("OK");
                            }
                            break;

                        case "/select":
                        case "/deselect":
                            response.ContentType = System.Net.Mime.MediaTypeNames.Text.Plain;
                            using (var writer = new StreamWriter(response.OutputStream)) {
                                foreach (var task in allTasks)
                                {
                                    bool?is_match = null;
                                    if (!(task.Ignored || task.NotStarted))
                                    {
                                        continue;
                                    }
                                    switch (request.Url.Query)
                                    {
                                    case "?all":
                                        is_match = true;
                                        break;

                                    case "?all-device":
                                        is_match = task is RunDeviceTask;
                                        break;

                                    case "?all-simulator":
                                        is_match = task is RunSimulatorTask;
                                        break;

                                    case "?all-ios":
                                        switch (task.Platform)
                                        {
                                        case TestPlatform.iOS:
                                        case TestPlatform.iOS_TodayExtension64:
                                        case TestPlatform.iOS_Unified:
                                        case TestPlatform.iOS_Unified32:
                                        case TestPlatform.iOS_Unified64:
                                            is_match = true;
                                            break;

                                        default:
                                            if (task.Platform.ToString().StartsWith("iOS", StringComparison.Ordinal))
                                            {
                                                throw new NotImplementedException();
                                            }
                                            break;
                                        }
                                        break;

                                    case "?all-tvos":
                                        switch (task.Platform)
                                        {
                                        case TestPlatform.tvOS:
                                            is_match = true;
                                            break;

                                        default:
                                            if (task.Platform.ToString().StartsWith("tvOS", StringComparison.Ordinal))
                                            {
                                                throw new NotImplementedException();
                                            }
                                            break;
                                        }
                                        break;

                                    case "?all-watchos":
                                        switch (task.Platform)
                                        {
                                        case TestPlatform.watchOS:
                                        case TestPlatform.watchOS_32:
                                        case TestPlatform.watchOS_64_32:
                                            is_match = true;
                                            break;

                                        default:
                                            if (task.Platform.ToString().StartsWith("watchOS", StringComparison.Ordinal))
                                            {
                                                throw new NotImplementedException();
                                            }
                                            break;
                                        }
                                        break;

                                    case "?all-mac":
                                        switch (task.Platform)
                                        {
                                        case TestPlatform.Mac:
                                        case TestPlatform.Mac_Modern:
                                        case TestPlatform.Mac_Full:
                                        case TestPlatform.Mac_System:
                                            is_match = true;
                                            break;

                                        default:
                                            if (task.Platform.ToString().StartsWith("Mac", StringComparison.Ordinal))
                                            {
                                                throw new NotImplementedException();
                                            }
                                            break;
                                        }
                                        break;

                                    default:
                                        writer.WriteLine("unknown query: {0}", request.Url.Query);
                                        break;
                                    }
                                    if (request.Url.LocalPath == "/select")
                                    {
                                        if (is_match.HasValue && is_match.Value)
                                        {
                                            task.Ignored = false;
                                        }
                                    }
                                    else if (request.Url.LocalPath == "/deselect")
                                    {
                                        if (is_match.HasValue && is_match.Value)
                                        {
                                            task.Ignored = true;
                                        }
                                    }
                                }

                                writer.WriteLine("OK");
                            }
                            break;

                        case "/stop":
                            response.ContentType = System.Net.Mime.MediaTypeNames.Text.Plain;
                            using (var writer = new StreamWriter(response.OutputStream)) {
                                foreach (var task in find_tasks(writer, request.Url.Query))
                                {
                                    if (!task.Waiting)
                                    {
                                        writer.WriteLine($"Test '{task.TestName}' is not in a waiting state.");
                                    }
                                    else
                                    {
                                        task.Reset();
                                    }
                                }
                                writer.WriteLine("OK");
                            }
                            break;

                        case "/run":
                            response.ContentType = System.Net.Mime.MediaTypeNames.Text.Plain;
                            using (var writer = new StreamWriter(response.OutputStream)) {
                                // We want to randomize the order the tests are added, so that we don't build first the test for one device,
                                // then for another, since that would not take advantage of running tests on several devices in parallel.
                                foreach (var task in find_tasks(writer, request.Url.Query).Shuffle())
                                {
                                    if (task.InProgress || task.Waiting)
                                    {
                                        writer.WriteLine($"Test '{task.TestName}' is already executing.");
                                    }
                                    else
                                    {
                                        task.Reset();
                                        task.BuildOnly = false;
                                        task.RunAsync();
                                    }
                                }
                                writer.WriteLine("OK");
                            }
                            break;

                        case "/build":
                            response.ContentType = System.Net.Mime.MediaTypeNames.Text.Plain;
                            using (var writer = new StreamWriter(response.OutputStream)) {
                                foreach (var task in find_tasks(writer, request.Url.Query))
                                {
                                    if (task.InProgress || task.Waiting)
                                    {
                                        writer.WriteLine($"Test '{task.TestName}' is already executing.");
                                    }
                                    else if (task is RunTestTask rtt)
                                    {
                                        rtt.Reset();
                                        rtt.BuildAsync().ContinueWith((z) => {
                                            if (rtt.ExecutionResult == TestExecutingResult.Built)
                                            {
                                                rtt.ExecutionResult = TestExecutingResult.BuildSucceeded;
                                            }
                                        });
                                    }
                                    else
                                    {
                                        writer.WriteLine($"Test '{task.TestName}' is not a test that can be only built.");
                                    }
                                }

                                writer.WriteLine("OK");
                            }
                            break;

                        case "/reload-devices":
                            jenkins.DeviceLoader.LoadDevicesAsync().DoNotAwait();
                            break;

                        case "/reload-simulators":
                            jenkins.DeviceLoader.LoadSimulatorsAsync().DoNotAwait();
                            break;

                        case "/quit":
                            using (var writer = new StreamWriter(response.OutputStream)) {
                                writer.WriteLine("<!DOCTYPE html>");
                                writer.WriteLine("<html>");
                                writer.WriteLine("<body onload='close ();'>Closing web page...</body>");
                                writer.WriteLine("</html>");
                            }
                            server.Stop();
                            break;

                        case "/favicon.ico":
                            serveFile = Path.Combine(HarnessConfiguration.RootDirectory, "xharness", "favicon.ico");
                            goto default;

                        case "/index.html":
                            var redirect_to = request.Url.AbsoluteUri.Replace("/index.html", "/" + Path.GetFileName(jenkins.LogDirectory) + "/index.html");
                            response.Redirect(redirect_to);
                            break;

                        default:
                            var filename = Path.GetFileName(request.Url.LocalPath);
                            if (filename == "index.html" && Path.GetFileName(jenkins.LogDirectory) == Path.GetFileName(Path.GetDirectoryName(request.Url.LocalPath)))
                            {
                                // We're asked for the report for the current test run, so re-generate it.
                                jenkins.GenerateReport();
                            }

                            if (serveFile == null)
                            {
                                serveFile = Path.Combine(Path.GetDirectoryName(jenkins.LogDirectory), request.Url.LocalPath.Substring(1));
                            }
                            var path = serveFile;
                            if (File.Exists(path))
                            {
                                var buffer = new byte [4096];
                                using (var fs = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) {
                                    int read;
                                    response.ContentLength64 = fs.Length;
                                    switch (Path.GetExtension(path).ToLowerInvariant())
                                    {
                                    case ".html":
                                        response.ContentType = System.Net.Mime.MediaTypeNames.Text.Html;
                                        break;

                                    case ".css":
                                        response.ContentType = "text/css";
                                        break;

                                    case ".js":
                                        response.ContentType = "text/javascript";
                                        break;

                                    case ".ico":
                                        response.ContentType = "image/png";
                                        break;

                                    default:
                                        response.ContentType = System.Net.Mime.MediaTypeNames.Text.Plain + ";charset=UTF-8";
                                        break;
                                    }
                                    while ((read = fs.Read(buffer, 0, buffer.Length)) > 0)
                                    {
                                        response.OutputStream.Write(buffer, 0, read);
                                    }
                                }
                            }
                            else
                            {
                                Console.WriteLine($"404: {request.Url.LocalPath}");
                                response.StatusCode = 404;
                                response.OutputStream.WriteByte((byte)'?');
                            }
                            break;
                        }
                    } catch (IOException ioe) {
                        Console.WriteLine(ioe.Message);
                    } catch (Exception e) {
                        Console.WriteLine(e);
                    }
                    response.Close();
                }
                tcs.SetResult(true);
            })
            {
                IsBackground = true,
            };

            thread.Start();

            var url = $"http://localhost:{port}/" + Path.GetFileName(jenkins.LogDirectory) + "/index.html";

            Console.WriteLine($"Launching {url} in the system's default browser.");
            Process.Start("open", url);

            return(tcs.Task);
        }
Exemplo n.º 17
0
        private void btnPrint_Click(object sender, EventArgs e)
        {
            frmRaporDialog frm = new frmRaporDialog(true, true, true, false);

            frm.ShowDialog();
            ReportTo?dest = frm.GetReportDestination();

            if (dest.HasValue)
            {
                try {
                    if (dest != ReportTo.CrytalReport)
                    {
                        List <DurumGelirGider> liste = new List <DurumGelirGider>();

                        liste.Add(_gelirler);

                        var report = new Report(liste.ToReportSource());


                        // Customize the Text Fields
                        report.RenderHints.IncludePageNumbers = true;
                        report.TextFields.Title  = "Genel Durum Raporu";
                        report.TextFields.Header = string.Format(@"
            Rapor Tarihi:{0} 
            Toplam Gelir:{1:F}
            Toplam Gider:{2:F}
            Bakiye:{3:F}
            Rapor Tarih Aralığı:{4}
            
            ", DateTime.Now, toplamGelir(), toplamGider(), bakiye(), GetTarihAraligi());
                        //report.DataFields["Alacak"].DataFormatString = "{0:F2}";
                        //report.DataFields["Borc"].DataFormatString = "{0:F2}";
                        //report.DataFields["AlacakBakiyesi"].DataFormatString = "{0:F2}";
                        //report.DataFields["BorcBakiyesi"].DataFormatString = "{0:F2}";
                        string        fileName = "genelDurumRaporu.xls";
                        IReportWriter writer   = new ExcelReportWriter();

                        if (dest.Value == ReportTo.Html)
                        {
                            writer   = new HtmlReportWriter();
                            fileName = "genelDurumRaporu.html";
                        }
                        else if (dest.Value == ReportTo.Csv)
                        {
                            writer   = new DelimitedTextReportWriter();
                            fileName = "genelDurumRaporu.txt";
                        }
                        string     file = Path.Combine(Engine.DokumanPath(), fileName);
                        FileStream fs   = new FileStream(file, FileMode.Create);

                        writer.WriteReport(report, fs);
                        fs.Close();
                        Process prc = new Process();
                        prc.StartInfo.FileName = file;
                        prc.Start();
                    }
                    else
                    {
                        //frmStokHareketDokumuForCrytalReport frm2 = new frmStokHareketDokumuForCrytalReport(_source);
                        //frm2.Show();
                    }
                } catch (Exception exc) {
                    MessageBox.Show(exc.Message);
                    LogWrite.Write(exc);
                }
            }
        }
Exemplo n.º 18
0
        private void btnPrint_Click(object sender, EventArgs e)
        {
            frmRaporDialog frm = new frmRaporDialog(true, true, true, false);

            frm.ShowDialog();
            ReportTo?dest = frm.GetReportDestination();

            if (dest.HasValue)
            {
                try {
                    if (dest != ReportTo.CrytalReport)
                    {
                        var report = new Report(_source.ToReportSource());
                        // Customize the Text Fields
                        report.RenderHints.IncludePageNumbers = true;
                        report.TextFields.Title  = tabPage2.Text;
                        report.TextFields.Header = string.Format(@"
            Rapor Tarihi:{0}
            Stok:{2}
            Toplam Adet:{2}
            Toplam Tutar:{3}
            Rapor Tarih Aralığı:{4} 
            ", DateTime.Now, SecilenStok(), _source.Compute("sum(Miktar)", ""), _source.Compute("sum(Tutar)", ""), GetTarihAraligi());
                        report.DataFields["Tarih"].DataFormatString      = "{0:d}";
                        report.DataFields["BirimFiyat"].DataFormatString = "{0:F2}";
                        report.DataFields["Tutar"].DataFormatString      = "{0:F2}";
                        string        fileName = StokAlisSatisRapor.AlisRapor == _alisSatis ? "malAlisRapor" : "malSatisRapor";
                        IReportWriter writer   = new ExcelReportWriter();
                        if (dest.Value == ReportTo.Excel)
                        {
                            fileName = fileName + ".xls";
                        }
                        else if (dest.Value == ReportTo.Html)
                        {
                            writer   = new HtmlReportWriter();
                            fileName = fileName + ".html";
                        }
                        else if (dest.Value == ReportTo.Csv)
                        {
                            writer   = new DelimitedTextReportWriter();
                            fileName = fileName + ".txt";
                        }
                        string     file = Path.Combine(Engine.DokumanPath(), fileName);
                        FileStream fs   = new FileStream(file, FileMode.Create);

                        writer.WriteReport(report, fs);
                        fs.Close();
                        Process prc = new Process();
                        prc.StartInfo.FileName = file;
                        prc.Start();
                    }
                    else
                    {
                        //frmStokAlisSatisRaporCrytalRapor frm2 = new frmStokAlisSatisRaporCrytalRapor(_source);
                        //frm2.Show();
                    }
                } catch (Exception exc) {
                    MessageBox.Show(exc.Message);
                    LogWrite.Write(exc);
                }
            }
        }
Exemplo n.º 19
0
        private void btnPrint_Click(object sender, EventArgs e)
        {
            frmRaporDialog frm = new frmRaporDialog(true, true, true, false);

            frm.ShowDialog();
            ReportTo?dest = frm.GetReportDestination();

            if (dest.HasValue)
            {
                try {
                    if (dest != ReportTo.CrytalReport)
                    {
                        var report = new Report(_source.ToReportSource());
                        // Customize the Text Fields
                        report.RenderHints.IncludePageNumbers = true;
                        report.TextFields.Title  = tabPageFiltre.Text;
                        report.TextFields.Header = string.Format(@"
            Rapor Tarihi:{0}
            Stok:{1}
            Rapor Tarih Aralığı:{2}            
            ", DateTime.Now, SecilenStok(), GetTarihAraligi()
                                                                 );

                        //report.DataFields["Tarih"].DataFormatString = "{0:d}";
                        //report.DataFields["BirimFiyat"].DataFormatString = "{0:F2}";
                        //report.DataFields["Tutar"].DataFormatString = "{0:F2}";
                        report.RenderHints["HtmlStyle"]                    = "th { font-size: 13px !important;font-weight:bold !important;}";
                        report.RenderHints["HtmlStyle"]                    = "td { font-size: 11px !important;line-height:1em; }";
                        report.DataFields["KalanMiktar"].ShowTotals        = true;
                        report.DataFields["SatisMiktar"].ShowTotals        = true;
                        report.DataFields["AlisMiktar"].ShowTotals         = true;
                        report.DataFields["OrtalamaAlisFiyat"].ShowTotals  = true;
                        report.DataFields["OrtalamaSatisFiyat"].ShowTotals = true;
                        report.DataFields["AlisTutar"].ShowTotals          = true;

                        report.DataFields["SatisTutar"].ShowTotals         = true;
                        report.DataFields["KalanMalinMaliyeti"].ShowTotals = true;

                        string        fileName = "malMaliyetRaporu";
                        IReportWriter writer   = new ExcelReportWriter();

                        if (dest.Value == ReportTo.Excel)
                        {
                            fileName = fileName + ".xls";
                        }
                        else if (dest.Value == ReportTo.Html)
                        {
                            writer   = new HtmlReportWriter();
                            fileName = fileName + ".html";
                        }
                        else if (dest.Value == ReportTo.Csv)
                        {
                            writer   = new DelimitedTextReportWriter();
                            fileName = fileName + ".txt";
                        }
                        string     file = Path.Combine(Engine.DokumanPath(), fileName);
                        FileStream fs   = new FileStream(file, FileMode.Create);

                        writer.WriteReport(report, fs);
                        fs.Close();
                        Process prc = new Process();
                        prc.StartInfo.FileName = file;
                        prc.Start();
                    }
                    else
                    {
                        //frmStokAlisSatisRaporCrytalRapor frm2 = new frmStokAlisSatisRaporCrytalRapor(_source);
                        //frm2.Show();
                    }
                } catch (Exception exc) {
                    MessageBox.Show(exc.Message);
                    LogWrite.Write(exc);
                }
            }
        }
Exemplo n.º 20
0
        void RenderReport(HttpContext context)
        {
            var type = context.Request.QueryString["type"];

            Report report;

            switch (type)
            {
            case "GdpByYear":
                report = Reports.GdpByYearReport.Generate();
                break;

            case "GdpByCountry":
                report = Reports.GdpByCountryReport.Generate();
                break;

            case "BiggestCountries":
                report = Reports.GdpYearColumnReport.BiggestCountries();
                break;

            case "FastestGrowingCountries":
                report = Reports.GdpYearColumnReport.FastestGrowingCountries();
                break;

            case "BestCountries":
                report = Reports.GdpYearColumnReport.BestCountries();
                break;

            default:
                throw new InvalidOperationException("Invalid report type.");
            }


            try
            {
                switch (context.Request.QueryString["format"])
                {
                case "pdf":
                    var url = context.Request.Url.ToString().Replace("format=pdf", "print=1");
                    PdfConvert.ConvertHtmlToPdf(new PdfDocument {
                        Url = url
                    }, new PdfOutput {
                        OutputStream = context.Response.OutputStream
                    });
                    context.Response.SetFileDownloadHeaders(String.Format("Report{0}.pdf", DateTime.Now.Ticks));
                    break;

                case "text":
                    context.Response.SetFileDownloadHeaders(String.Format("Report{0}.txt", DateTime.Now.Ticks));
                    TextReportWriter.WriteTo(report, context.Response.Output);
                    break;

                case "xlsx":
                    context.Response.SetFileDownloadHeaders(String.Format("Report{0}.xlsx", DateTime.Now.Ticks));
                    XlsxReportWriter.WriteToStream(report, Themes.Default, context.Response.OutputStream);
                    break;

                default:
                    var output     = new HtmlTextWriter(context.Response.Output);
                    var htmlWriter = new HtmlReportWriter(output);
                    htmlWriter.RegisterCss(DextopUtil.AbsolutePath("client/css/report.css"));
                    if (context.Request.QueryString["print"] == null)
                    {
                        htmlWriter.RegisterCss(DextopUtil.AbsolutePath("client/css/report-preview.css"));
                    }
                    htmlWriter.Write(report, new DefaultHtmlReportTheme());
                    break;
                }
            }
            catch (Exception ex)
            {
                context.Response.Write(ex.ToString());
            }
        }