Example #1
0
        public void Run()
        {
            var name = "test_0_2";

            Report report = new Report(Json.Read(Path.Combine("rrpt", name + ".rrpt")));

            report.GlobalScope.Add("time", DateTime.Now);
            report.GlobalScope.Add("lang", "core");

            report.Fill(DummyDataSource.GetInstance());
            ReportPages pages = report.GetPages();

            using (FileStream fs = new FileStream(Path.Combine("out", name + ".pdf"), FileMode.Create))
            {
                PdfRenderer renderer = new PdfRenderer(fs);
                pages.Render(renderer);
            }

            using (FileStream fs = new FileStream(Path.Combine("out", name + ".xlsx"), FileMode.Create))
            {
                XSSFWorkbook workbook = new XSSFWorkbook();
                XlsxRenderer renderer = new XlsxRenderer(workbook);
                renderer.NewSheet("sheet_name");
                pages.Render(renderer);
                workbook.Write(fs);
            }

            {
                var printer = new Printer(pages);
                var preview = new FmPrintPreview(printer);
                preview.ShowDialog();
            }
        }
Example #2
0
        public void GetValue()
        {
            var dummyData = new DummyDataSource(200);

            dummyData.Set(100, 42);

            var template = new SimpleNodeTemplate <int>();

            Assert.That(template.GetValue(dummyData, 100), Is.EqualTo(42));
        }
Example #3
0
        public static void Run()
        {
            ReportPages pages;

            {
                // 第2引数にCustomizerオブジェクトを渡します
                Report report = new Report(Json.Read("report\\example_page1.rrpt"), new Customizer());
                report.Fill(new ReportDataSource(getDataTable()));
                pages = report.GetPages();
            }

            {
                Report report = new Report(Json.Read("report\\example_page3.rrpt"));
                report.Fill(DummyDataSource.GetInstance());
                // 最後のページを追加します
                pages.AddRange(report.GetPages());
            }

            // PDF出力
            using (FileStream fs = new FileStream("output\\example_page.pdf", FileMode.Create))
            {
                pages.Render(new PdfRenderer(fs));
            }

            // XLS出力
            using (FileStream fs = new FileStream("output\\example_page.xls", FileMode.Create))
            {
                HSSFWorkbook workbook = new HSSFWorkbook();
                XlsRenderer  renderer = new XlsRenderer(workbook);
                renderer.NewSheet("example_page");
                pages.Render(renderer);
                workbook.Write(fs);
            }

            // XLSX出力
            using (FileStream fs = new FileStream("output\\example_page.xlsx", FileMode.Create))
            {
                XSSFWorkbook workbook = new XSSFWorkbook();
                XlsxRenderer renderer = new XlsxRenderer(workbook);
                renderer.NewSheet("example_page");
                pages.Render(renderer);
                workbook.Write(fs);
            }

            // プレビュー
            {
                Printer printer = new Printer(pages);
                // 用紙サイズの異なるページが含まれているので
                // 動的に用紙設定が行われるようにします
                printer.DynamicPageSetting = true;
                FmPrintPreview preview = new FmPrintPreview(printer);
                preview.StartUpZoomFit = true;
                preview.ShowDialog();
            }
        }
        public void NextValue()
        {
            Mock<IRandomExtensions> randMock = new Mock<IRandomExtensions>();
            var target = new DummyDataSource(randMock.Object);

            target.PublicNextValue();

            randMock.Verify(a => a.GetDateTime(RandomNullableDateTimeDataSource.MinValue, System.DateTime.MaxValue), @"
            GetDateTime was not called on the Random Extensions object.
            ");
        }
 // Get all the data (movie or serie) depending on type
 private void LoadData()
 {
     if (Type.Equals("movies"))
     {
         VideoList = DummyDataSource.MovieList();
     }
     if (Type.Equals("series"))
     {
         VideoList = DummyDataSource.SerieList();
     }
 }
        public void NextValue()
        {
            Mock<IRandomExtensions> randMock = new Mock<IRandomExtensions>();
            var target = new DummyDataSource(randMock.Object);

            target.PublicNextValue();

            randMock.Verify(a => a.GetInt32(System.Int32.MinValue, System.Int32.MaxValue), @"
            GetInt32 was not called on the Random Extensions object.
            ");
        }
        public void NextValue()
        {
            Mock<IRandomExtensions> randMock = new Mock<IRandomExtensions>();
            var target = new DummyDataSource(randMock.Object);

            target.PublicNextValue();

            randMock.Verify(a => a.GetBoolean(), @"
            GetBoolean was not called on the Random Extensions object.
            ");
        }
        public void GetValue()
        {
            const string Text      = "<enter-witty-remark-here>";
            var          data      = Encoding.UTF8.GetBytes(Text);
            var          dummyData = new DummyDataSource(200);

            dummyData.Set(100, data);

            var template = new TextNodeTemplate(data.Length, Encoding.UTF8);

            Assert.That(template.GetValue(dummyData, 100), Is.EqualTo(Text));
        }
Example #9
0
        public void Run()
        {
            var name = "test_5_14_date";

            Report report = new Report(Json.Read(Path.Combine("rrpt", name + ".rrpt")));

            report.Fill(DummyDataSource.GetInstance());
            ReportPages pages = report.GetPages();
            {
                var preview = new FmPrintPreview(new Printer(pages));
                preview.ShowDialog();
            }
        }
Example #10
0
        public static void Run()
        {
            Report report = new Report(Json.Read("report\\feature.rrpt"));

            // "feature-4"にgetDataTable1-4をそれぞれ割り当てます
            GroupDataProvider dataProvider = new GroupDataProvider();

            dataProvider.GroupDataMap.Add("feature1", new ReportDataSource(getDataTable1()));
            dataProvider.GroupDataMap.Add("feature2", new ReportDataSource(getDataTable2()));
            dataProvider.GroupDataMap.Add("feature3", new ReportDataSource(getDataTable3()));
            dataProvider.GroupDataMap.Add("feature4", new ReportDataSource(getDataTable4()));

            // 第2引数にdataProviderを渡します
            report.Fill(DummyDataSource.GetInstance(), dataProvider);
            ReportPages pages = report.GetPages();

            // PDF出力
            using (FileStream fs = new FileStream("output\\feature.pdf", FileMode.Create))
            {
                PdfRenderer renderer = new PdfRenderer(fs);
                renderer.Setting.ReplaceBackslashToYen = true;
                pages.Render(renderer);
            }

            // XLS出力
            using (FileStream fs = new FileStream("output\\feature.xls", FileMode.Create))
            {
                HSSFWorkbook workbook = new HSSFWorkbook();
                XlsRenderer  renderer = new XlsRenderer(workbook);
                renderer.NewSheet("feature");
                pages.Render(renderer);
                workbook.Write(fs);
            }

            // XLSX出力
            using (FileStream fs = new FileStream("output\\feature.xlsx", FileMode.Create))
            {
                XSSFWorkbook workbook = new XSSFWorkbook();
                XlsxRenderer renderer = new XlsxRenderer(workbook);
                renderer.NewSheet("feature");
                pages.Render(renderer);
                workbook.Write(fs);
            }

            // プレビュー
            {
                FmPrintPreview preview = new FmPrintPreview(new Printer(pages));
                preview.StartUpZoomFit = true;
                preview.ShowDialog();
            }
        }
Example #11
0
        public void Run()
        {
            var name = "test_5_14_pdfbarcode";

            Report report = new Report(Json.Read(Path.Combine("rrpt", name + ".rrpt")));

            report.Fill(DummyDataSource.GetInstance());
            ReportPages pages = report.GetPages();

            using (FileStream fs = new FileStream(Path.Combine("out", name + ".pdf"), FileMode.Create))
            {
                PdfRenderer renderer = new PdfRenderer(fs);
                pages.Render(renderer);
            }
        }
Example #12
0
        public void Run()
        {
            var name = "test_5_13_unit";

            Report report = new Report(Json.Read(Path.Combine("rrpt", name + ".rrpt")));

            report.GlobalScope.Add("time", DateTime.Now);
            report.GlobalScope.Add("lang", "core");

            report.Fill(DummyDataSource.GetInstance());
            ReportPages pages = report.GetPages();
            {
                var preview = new FmPrintPreview(new Printer(pages));
                preview.ShowDialog();
            }
        }
Example #13
0
        public void Run()
        {
            var name = "test_0_6";

            Report report = new Report(Json.Read(Path.Combine("rrpt", name + ".rrpt")));

            report.Fill(DummyDataSource.GetInstance());
            ReportPages pages = report.GetPages();

            using (FileStream fs = new FileStream(Path.Combine("out", name + ".pdf"), FileMode.Create))
            {
                PdfRenderer renderer = new PdfRenderer(fs);
                renderer.Setting.GaijiFont = BaseFont.CreateFont("font/eudc.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
                renderer.Setting.GaijiFontMap.Add("gothic", BaseFont.CreateFont("font/msgothic.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED));
                pages.Render(renderer);
            }
        }
Example #14
0
        /// <inheritdoc />
        /// <remarks>When using SharpZipLib, we create empty, dummy entries and immediately commit them. Subsequently when an
        /// entry is opened, and written to, the entry is populated. See the documentation for <see cref="OutputDataSource"/>.</remarks>
        public override ICompressedArchiveEntry CreateEntry(string name)
        {
            ZipFile.BeginUpdate();
            if (IsDirectoryName(name))
            {
                ZipFile.AddDirectory(name);
            }
            else
            {
                var dataSource = new DummyDataSource();
                ZipFile.Add(dataSource, name);
            }
            ZipFile.CommitUpdate();

            var zipArchiveEntry = GetEntry(name);

            return(zipArchiveEntry);
        }
        public void Run()
        {
            var name = "test_5_12_textmock";

            Report report = new Report(Json.Read(Path.Combine("rrpt", name + ".rrpt")));

            report.GlobalScope.Add("time", DateTime.Now);
            report.GlobalScope.Add("lang", "core");

            report.Fill(DummyDataSource.GetInstance());
            ReportPages pages = report.GetPages();

            using (FileStream fs = new FileStream(Path.Combine("out", name + ".pdf"), FileMode.Create))
            {
                PdfRenderer renderer = new PdfRenderer(fs);
                pages.Render(renderer);
            }
        }
Example #16
0
        public void Run()
        {
            var name = "test_0_1";

            Report report = new Report(Json.Read(Path.Combine("rrpt", name + ".rrpt")));

            report.GlobalScope.Add("time", DateTime.Now);
            report.GlobalScope.Add("lang", "core");

            report.Fill(DummyDataSource.GetInstance());
            ReportPages pages = report.GetPages();

            using (FileStream fs = new FileStream(Path.Combine("out", name + ".pdf"), FileMode.Create))
            {
                PdfRenderer renderer = new PdfRenderer(fs);
                renderer.Setting.FontMap.Add("meiryo", BaseFont.CreateFont(
                                                 Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Fonts), "meiryo.ttc,0"),
                                                 BaseFont.IDENTITY_H, BaseFont.EMBEDDED));
                pages.Render(renderer);
            }

            using (FileStream fs = new FileStream(Path.Combine("out", name + ".xlsx"), FileMode.Create))
            {
                XSSFWorkbook workbook = new XSSFWorkbook();
                XlsxRenderer renderer = new XlsxRenderer(workbook);
                renderer.Setting.FontMap.Add("meiryo", "メイリオ");
                renderer.NewSheet("sheet_name");
                pages.Render(renderer);
                workbook.Write(fs);
            }

            {
                var printer = new Printer(pages);
                printer.Setting.FontMap.Add("meiryo", "メイリオ");
                var preview = new FmPrintPreview(printer);
                preview.ShowDialog();
            }
        }
Example #17
0
		/// <summary>
		/// Creates the child hierarchy.
		/// </summary>
		/// <param name="parent"></param>
		protected internal virtual void CreateChildHierarchy(HierarchicalRepeaterItem parent)
		{
			IEnumerable enumerable = null;
			if (this.useDataSource)
			{
				if (parent.ItemCount > -1)
					return;

				TreeNode<object> node = this.data.FindRecursive(new Predicate<object>(delegate(object target)
				{
					return (parent.DataItem == target);
				}));
				
				if (node != null)
				{
					enumerable = node.Nodes;
				}
			}
			else
			{
				if (parent.ItemCount > -1 && parent.ChildPanel.Controls.Count == 0)
				{
					enumerable = new DummyDataSource(parent.ItemCount);
				}
			}

			if (enumerable != null)
			{
				bool isSeparated = (this.SeparatorTemplate != null);
				int itemLength = 0;

				foreach (object dataObject in enumerable)
				{
					if (isSeparated && (itemLength > 0))
					{
						this.CreateItem(parent, itemLength - 1, ListItemType.Separator, useDataSource, null);
					}
					ListItemType type = ((itemLength % 2) == 0) ? ListItemType.Item : ListItemType.AlternatingItem;
					HierarchicalRepeaterItem childItem = (HierarchicalRepeaterItem)this.CreateItem(parent, itemLength, type, useDataSource, dataObject);
					itemLength++;
				}
			}
		}
        /*
         * [TestMethod]
         * [Ignore]
         * public void TestGetUsersByGroup()
         * {
         *  var dataStore = GetSqlServerDataStore();
         *  var users = dataStore.GetUsersByGroup(2);
         *  Assert.IsTrue(users.Count == 3);
         * }
         *
         *
         * [TestMethod]
         * [Ignore]
         * public void TestGetUsersInNotificationList()
         * {
         *  var dataStore = GetSqlServerDataStore();
         *  var users = dataStore.GetUsersInNotificationList("JobArrived");
         *  Assert.IsTrue(users.Count == 2);
         * }
         *
         *
         * [TestMethod]
         * [Ignore]
         * public void TestGetGroupsInNotificationList()
         * {
         *  var dataStore = GetSqlServerDataStore();
         *  var groups = dataStore.GetGroupsInNotificationList("JobArrived");
         *  Assert.IsTrue(groups.Count == 2);
         * }
         *
         *
         * [TestMethod]
         * [Ignore]
         * public void TestGetUsersInGroup()
         * {
         *  var dataStore = GetSqlServerDataStore();
         *  var groups = dataStore.GetGroupsInNotificationList("JobArrived");
         *
         *  var users = dataStore.GetUsersByGroup(groups[0].GroupId);
         *  Assert.IsTrue(users.Count == 2);
         * }
         *
         *
         * [TestMethod]
         * [Ignore]
         * public void TestCreateUser()
         * {
         *  var dataStore = GetSqlServerDataStore();
         *
         *  var user = CreateUser("ctb");
         *  dataStore.CreateUser(user);
         * }
         *
         *
         * [TestMethod]
         * [Ignore]
         * public void TestCreateGroup()
         * {
         *  var dataStore = GetSqlServerDataStore();
         *
         *  var group = CreateGroup();
         *  dataStore.CreateGroup(group);
         * }
         *
         * [TestMethod]
         * [Ignore]
         * public void TestGetNotificationList()
         * {
         *  var datastore = GetSqlServerDataStore();
         *
         *  var notificationList = datastore.GetNotificationList("JobArrived");
         *  Assert.IsNotNull(notificationList);
         *
         *  int count = notificationList.Users.Count(u => u.UserName == "ctb");
         *  Assert.IsTrue(count == 1);
         * }
         */

        #region --- private

        /// <summary>
        /// return a data store using the dummy datasource
        /// </summary>
        /// <returns></returns>
        private CrsDataStore GetDataStore()
        {
            var dataSource = new DummyDataSource();

            return(new CrsDataStore(dataSource));
        }
Example #19
0
        /// <summary>
        /// </summary>
        /// <param name="useDataSource">True to create the hierarchy from the DataSource, False to create it from the ViewState.</param>
        private void CreateControlHierarchy(bool useDataSource)
        {
            IEnumerable dataSource = null;
            int count = -1;

            if (useDataSource == false)
            {
                // ViewState must have a non-null value for ItemCount because this is checked
                //  by CreateChildControls.
                count = (int) ViewState["ItemCount"];
                if (count != -1)
                {
                    dataSource = new DummyDataSource(count);
                }
            }
            else
            {
                dataSource = GetResolvedDataSource(_dataSource, null);
            }

            if (dataSource != null)
            {
                int index = 0;
                count = 0;
                object lastValue = null;
                foreach (object dataItem in dataSource)
                {
                    bool insertGroupRow;
                    if (useDataSource)
                    {
                        insertGroupRow = (_comparer.Compare(lastValue, dataItem) != 0);
                    }
                    else
                    {
                        insertGroupRow = (bool) ViewState["gotaGroup" + index];
                    }

                    if (insertGroupRow)
                    {
                        CreateItem(index, _groupTemplate, ListItemType.Separator, useDataSource, dataItem);
                        //count++;
                    }

                    CreateItem(index, _itemTemplate, ListItemType.Item, useDataSource, dataItem);
                    lastValue = dataItem;

                    if (useDataSource)
                    {
                        ViewState["gotaGroup" + index] = insertGroupRow;
                    }

                    count++;
                    index++;
                }
            }

            if (useDataSource)
            {
                // Save the number of items contained for use in round trips.
                ViewState["ItemCount"] = ((dataSource != null) ? count : -1);
            }
        }