コード例 #1
0
 private void AddTreeView(TreeNode[] nodes)
 {
     treeViewItemTop.Header = CurrentDataSet.GetTreeNodeHeader();
     treeViewItemTop.Items.Clear();
     foreach (TreeNode node in nodes)
     {
         TreeViewItem item = new TreeViewItem();
         SetTreeView(item, node);
         treeViewItemTop.Items.Add(item);
     }
     FilterTreeView(true);
 }
コード例 #2
0
        private void UpdateTreeViewDB()
        {
            TreeViewStatusStore store = new TreeViewStatusStore(treeViewDB, treeViewItemTop);

            try
            {
                TreeNode[] nodes = CurrentDataSet.GetVisualTree();
                AddTreeView(nodes);
            }
            finally
            {
                treeViewDB.UpdateLayout();
                if (store.IsEmpty)
                {
                    treeViewItemTop.IsExpanded = true;

                    TreeViewItem itemDb = null;
                    foreach (TreeViewItem item in treeViewItemTop.Items)
                    {
                        TreeNode node = item.Tag as TreeNode;
                        Database db   = node?.Target as Database;
                        if (db != null && db.IsCurrent)
                        {
                            itemDb            = item;
                            itemDb.IsExpanded = true;
                            break;
                        }
                    }
                    string cur = CurrentDataSet.CurrentSchema;
                    if (itemDb != null && !string.IsNullOrEmpty(cur))
                    {
                        foreach (TreeViewItem item in itemDb.Items)
                        {
                            if (item.Header.ToString() == cur)
                            {
                                item.IsExpanded = true;
                                break;
                            }
                        }
                    }
                }
                else
                {
                    store.Restore(treeViewDB, treeViewItemTop);
                }
            }
        }
コード例 #3
0
        /// <summary>
        /// Makes this object render itself as an RDL Report type to an XmlWriter instance.
        /// It calls upon all objects immediately beneath it (TableHeader, TableGroup,
        /// TableDetails, Datasets, ReportParameters) to render themselves also.
        /// </summary>
        /// <returns>A Byte array containing the raw RDL data.</returns>
        public Byte[] Render2010()
        {
            // Styles for the textboxes
            ReportingServicesStyle _textboxStyle14pt = new ReportingServicesStyle(
                ReportingServicesStyle.TextBoxStyle.TabularReport14pt);
            ReportingServicesStyle _textboxStyle10pt = new ReportingServicesStyle(
                ReportingServicesStyle.TextBoxStyle.TabularReport10pt);

            _xmlWriter.WriteStartDocument();

            _xmlWriter.WriteStartElement("Report");
            _xmlWriter.WriteAttributeString("xmlns",
                                            "http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition");
            _xmlWriter.WriteAttributeString("xmlns:cl",
                                            "http://schemas.microsoft.com/sqlserver/reporting/2010/01/componentdefinition");

            RdlRender.AddLine(_xmlWriter, "AutoRefresh", "0");
            // DataSources
            _xmlWriter.WriteStartElement("DataSources");
            _xmlWriter.WriteStartElement("DataSource");
            _xmlWriter.WriteAttributeString("Name", "DataSource1");
            RdlRender.AddLine(_xmlWriter, "DataSourceReference", "/" + _dataSource);

            /*_xmlWriter.WriteStartElement("ConnectionProperties");
             * RdlRender.AddLine( _xmlWriter, "DataProvider", "SQL");
             * RdlRender.AddLine( _xmlWriter, "ConnectString", _dbConnectionString);
             * RdlRender.AddLine( _xmlWriter, "IntegratedSecurity", "false");
             * RdlRender.AddLine( _xmlWriter, "Prompt", "false");
             * _xmlWriter.WriteEndElement(); // ConnectionProperties */
            _xmlWriter.WriteEndElement(); // DataSource
            _xmlWriter.WriteEndElement(); // DataSources

            // Datasets
            _xmlWriter.WriteStartElement("DataSets");
            foreach (Dataset CurrentDataSet in _datasetList)
            {
                CurrentDataSet.Render2010(_xmlWriter);
            }
            _xmlWriter.WriteEndElement(); //DataSets

            //ReportSections
            _xmlWriter.WriteStartElement("ReportSections");
            //ReportSection
            _xmlWriter.WriteStartElement("ReportSection");



            _xmlWriter.WriteStartElement("Body");
            RdlRender.AddLine(_xmlWriter, "Height", "5in");

            _xmlWriter.WriteStartElement("ReportItems");
            _xmlWriter.WriteStartElement("Tablix");
            _xmlWriter.WriteAttributeString("Name", "Table1");
            RdlRender.AddLine(_xmlWriter, "DataSetName", "TableDataSet");
            RdlRender.AddLine(_xmlWriter, "NoRowsMessage", Resource.GetString("RES_REPORT_NOROWSRETURNED"));
            RdlRender.AddLine(_xmlWriter, "Top", "0in");
            RdlRender.AddLine(_xmlWriter, "Left", ".5in");
            RdlRender.AddLine(_xmlWriter, "Height", "0in");
            RdlRender.AddLine(_xmlWriter, "Width", "6in");

            _xmlWriter.WriteStartElement("TablixBody");

            // Write table columns
            _xmlWriter.WriteStartElement("TablixColumns");
            for (int i = 0; i < _fieldDataItems.Count; i++)
            {
                _xmlWriter.WriteStartElement("TablixColumn");
                RdlRender.AddLine(_xmlWriter, "Width", "1.5in");
                _xmlWriter.WriteEndElement(); // TablixColumn
            }
            _xmlWriter.WriteEndElement();     // TablixColumns

            // Write table rows
            _xmlWriter.WriteStartElement("TablixRows");

            // TableHeader
            _tableHeader.Render2010(_xmlWriter);

            // TableGroups
            if (_tableGroupList != null && _tableGroupList.Count > 0)
            {
                foreach (TableGroup group in _tableGroupList)
                {
                    group.Render2010(_xmlWriter);
                }
            }

            // TableDetails
            if (_isSummaryReport == false)
            {
                _tableDetails.Render2010(_xmlWriter);
            }



            // TableFooter
            _tableFooter.Render2010(_xmlWriter);

            _xmlWriter.WriteEndElement(); // TablixRows

            _xmlWriter.WriteEndElement(); // TablixBody
            _xmlWriter.WriteStartElement("TablixColumnHierarchy");
            _xmlWriter.WriteStartElement("TablixMembers");
            for (int i = 0; i < _fieldDataItems.Count; i++)
            {
                _xmlWriter.WriteStartElement("TablixMember");
                _xmlWriter.WriteEndElement(); // TablixMember
            }
            _xmlWriter.WriteEndElement();     // TablixMembers

            _xmlWriter.WriteEndElement();     // TablixColumnHierarchy


            _xmlWriter.WriteStartElement("TablixRowHierarchy");
            _xmlWriter.WriteStartElement("TablixMembers");

            //Add Header row member
            _xmlWriter.WriteStartElement("TablixMember");
            RdlRender.AddLine(_xmlWriter, "KeepWithGroup", "After");
            RdlRender.AddLine(_xmlWriter, "FixedData", "true");
            RdlRender.AddLine(_xmlWriter, "RepeatOnNewPage", "true");
            RdlRender.AddLine(_xmlWriter, "KeepTogether", "true");
            _xmlWriter.WriteEndElement(); // TablixMember

            //Add Group and details hierarchy members
            if (_tableGroupList != null && _tableGroupList.Count > 0)
            {
                for (int i = 0; i < _tableGroupList.Count; i++)//
                {
                    _xmlWriter.WriteStartElement("TablixMember");
                    _xmlWriter.WriteStartElement("Group");
                    _xmlWriter.WriteAttributeString("Name", "Grouping" + _tableGroupList[i].Name);
                    if (_tableGroupList[i].IsDataMapDisplayedGroup) // check if data map neds displaying
                    {
                        RdlRender.AddLine(_xmlWriter, "DocumentMapLabel", "=Fields!" + _tableGroupList[i].Name + ".Value");
                    }
                    if (_isPageOnFirstItem && i == 0)
                    {
                        _xmlWriter.WriteStartElement("PageBreak");
                        RdlRender.AddLine(_xmlWriter, "BreakLocation", "Between");
                        _xmlWriter.WriteEndElement(); // PageBreak
                    }

                    _xmlWriter.WriteStartElement("GroupExpressions");
                    RdlRender.AddLine(_xmlWriter, "GroupExpression", "=Fields!" + _tableGroupList[i].Name + ".Value");
                    _xmlWriter.WriteEndElement(); // GroupExpressions
                    _xmlWriter.WriteEndElement(); // Group

                    _xmlWriter.WriteStartElement("SortExpressions");
                    _xmlWriter.WriteStartElement("SortExpression");

                    RdlRender.AddLine(_xmlWriter, "Value", "=Fields!" + _tableGroupList[i].Name + ".Value");
                    //RdlRender.AddLine(xmlWriter, "Direction", "Ascending");
                    _xmlWriter.WriteEndElement(); // SortExpression
                    _xmlWriter.WriteEndElement(); // SortExpressions
                    _xmlWriter.WriteStartElement("TablixMembers");
                    _xmlWriter.WriteStartElement("TablixMember");
                    if (i > 0 && _isDrillDown)
                    {
                        _xmlWriter.WriteStartElement("Visibility");
                        RdlRender.AddLine(_xmlWriter, "Hidden", "true");
                        RdlRender.AddLine(_xmlWriter, "ToggleItem", "Group" + _tableGroupList[i - 1].Name);
                        _xmlWriter.WriteEndElement(); // Visibility
                    }
                    RdlRender.AddLine(_xmlWriter, "KeepWithGroup", "After");
                    RdlRender.AddLine(_xmlWriter, "KeepTogether", "true");
                    _xmlWriter.WriteEndElement(); // TablixMember
                }
            }

            // TableDetails
            if (_isSummaryReport == false)
            {
                _xmlWriter.WriteStartElement("TablixMember");
                _xmlWriter.WriteStartElement("Group");
                _xmlWriter.WriteAttributeString("Name", "Table1_Details_Group");
                //if (_isDataMapDisplayedGroup == true) // check if data map neds displaying
                //{
                //    RdlRender.AddLine(xmlWriter, "Label", "=Fields!" + _name + ".Value");
                //}
                RdlRender.AddLine(_xmlWriter, "DataElementName", "Detail");
                _xmlWriter.WriteEndElement(); // Group


                _xmlWriter.WriteStartElement("TablixMembers");
                _xmlWriter.WriteStartElement("TablixMember");
                if (_isDrillDown)
                {
                    _xmlWriter.WriteStartElement("Visibility");
                    RdlRender.AddLine(_xmlWriter, "Hidden", "true");
                    RdlRender.AddLine(_xmlWriter, "ToggleItem", "Group" + _tableGroupList[_tableGroupList.Count - 1].Name);
                    _xmlWriter.WriteEndElement(); // Visibility
                }
                _xmlWriter.WriteEndElement();     // TablixMember
                _xmlWriter.WriteEndElement();     // TablixMembers
                RdlRender.AddLine(_xmlWriter, "DataElementName", "Detail_Collection");
                RdlRender.AddLine(_xmlWriter, "DataElementOutput", "Output");
                RdlRender.AddLine(_xmlWriter, "KeepTogether", "true");
                _xmlWriter.WriteEndElement(); // TablixMember
            }

            //Close down the group hierarchies
            if (_tableGroupList != null && _tableGroupList.Count > 0)
            {
                for (int i = 0; i < _tableGroupList.Count; i++) //
                {
                    _xmlWriter.WriteEndElement();               // TablixMembers
                    _xmlWriter.WriteEndElement();               // TablixMember
                }
            }

            //Add Footer report name member
            _xmlWriter.WriteStartElement("TablixMember");
            RdlRender.AddLine(_xmlWriter, "KeepWithGroup", "Before");
            RdlRender.AddLine(_xmlWriter, "RepeatOnNewPage", "true");
            RdlRender.AddLine(_xmlWriter, "KeepTogether", "true");
            _xmlWriter.WriteEndElement(); // TablixMember

            //Add Footer filter selections
            for (int i = 0; i < _noOfFilters; i++)
            {
                _xmlWriter.WriteStartElement("TablixMember");
                RdlRender.AddLine(_xmlWriter, "KeepWithGroup", "Before");
                RdlRender.AddLine(_xmlWriter, "RepeatOnNewPage", "true");
                RdlRender.AddLine(_xmlWriter, "KeepTogether", "true");
                _xmlWriter.WriteEndElement(); // TablixMember
            }

            _xmlWriter.WriteEndElement(); // TablixMembers
            _xmlWriter.WriteEndElement(); // TablixRowHierarchy



            _xmlWriter.WriteStartElement("Style");
            _xmlWriter.WriteEndElement();



            _xmlWriter.WriteEndElement(); // Tablix

            foreach (Chart currentChart in _chartList)
            {
                currentChart.Render2010(_xmlWriter);
            }

            _xmlWriter.WriteEndElement(); // ReportItems
            _xmlWriter.WriteEndElement(); // Body

            RdlRender.AddLine(_xmlWriter, "Width", (_selectedDataItems.Count * 1.5 < 11.5)?"11.5in":(_selectedDataItems.Count * 1.5).ToString() + "in");



            _xmlWriter.WriteStartElement("Page");
            _xmlWriter.WriteStartElement("PageHeader");


            _xmlWriter.WriteStartElement("ReportItems");

            RdlRender.AddTextbox2010(_xmlWriter, "TitleTextbox", "DWP Small Systems Ad Hoc Reporting System",
                                     _textboxStyle14pt, "Left", "0.3cm", "2in", "6in", "true", "0.95cm", "2", "",
                                     "", "", "", "", "", "", "");

            RdlRender.AddTextbox2010(_xmlWriter, "PageHeader", "=Globals!ReportName", _textboxStyle14pt,
                                     "Left", "2.85714cm", "0.5in", "6in", "true", "1cm", "", "", "",
                                     "", "", "", "", "", "");

            RdlRender.AddImage2010(_xmlWriter, "Image1", "2.59259cm", "1.5in",
                                   "0.5in", "Embedded", "Esf", "AutoSize");
            int    ParameterCount = 0;
            int    X = 0;
            string ParameterHeight = "";

            foreach (String _parameterName in _parameterList)
            {
                ParameterCount++;
                X = ParameterCount;
                X = X + 3;
                ParameterHeight = X.ToString() + "cm";
                RdlRender.AddTextbox2010(_xmlWriter, "Parameter" + ParameterCount.ToString(), _parameterName, _textboxStyle14pt,
                                         "Left", ParameterHeight, "0.5in", "6in", "true", "1cm", "", "", "",
                                         "", "", "", "", "", "");
            }
            _xmlWriter.WriteEndElement(); // ReportItems
            X = ParameterCount;
            X = X + 4;
            ParameterHeight = X.ToString() + ".8cm";
            RdlRender.AddLine(_xmlWriter, "PrintOnLastPage", "true");
            RdlRender.AddLine(_xmlWriter, "PrintOnFirstPage", "true");
            RdlRender.AddLine(_xmlWriter, "Height", ParameterHeight);
            _xmlWriter.WriteEndElement(); // PagHeader


            // Report footer
            _xmlWriter.WriteStartElement("PageFooter");
            RdlRender.AddLine(_xmlWriter, "Height", "1.0cm");
            RdlRender.AddLine(_xmlWriter, "PrintOnFirstPage", "true");
            RdlRender.AddLine(_xmlWriter, "PrintOnLastPage", "true");
            _xmlWriter.WriteStartElement("ReportItems");

            RdlRender.AddTextbox2010(_xmlWriter, "UserTextBox", "=Parameters!ReportUserName.Value",
                                     _textboxStyle10pt, "", "0.25cm", "1.0cm", "6.00cm", "true", "0.5cm", "1",
                                     "", "", "", "", "", "", "", "");
            RdlRender.AddTextbox2010(_xmlWriter, "ExecutionTimeTextBox", "=Globals!ExecutionTime",
                                     _textboxStyle10pt, "", "0.25cm", "7.00cm", "6.00cm", "true", "0.5cm", "1",
                                     "", "", "", "", "", "", "", "");
            RdlRender.AddTextbox2010(_xmlWriter, "PageNumberTextBox", "=Globals!PageNumber",
                                     _textboxStyle10pt, "", "0.25cm", "15.00cm", "3.00cm", "true", "0.5cm", "1",
                                     "", "", "", "", "", "", "", "");

            _xmlWriter.WriteEndElement(); // ReportItems
            _xmlWriter.WriteEndElement(); // PageFooter


            _xmlWriter.WriteEndElement(); // Page

            _xmlWriter.WriteEndElement(); // RepoetSection
            _xmlWriter.WriteEndElement(); // ReportSections


            //Add a report parameter for user id

            _xmlWriter.WriteStartElement("ReportParameters");


            _xmlWriter.WriteStartElement("ReportParameter");
            _xmlWriter.WriteAttributeString("Name", "ReportUserName");
            // Render relevant data type
            RdlRender.AddLine(_xmlWriter, "DataType", "String");
            RdlRender.AddLine(_xmlWriter, "Prompt", "User Name");
            RdlRender.AddLine(_xmlWriter, "Hidden", "true");
            _xmlWriter.WriteEndElement(); // ReportParameter

            _xmlWriter.WriteStartElement("ReportParameter");
            _xmlWriter.WriteAttributeString("Name", "ReportUserCode");
            // Render relevant data type
            RdlRender.AddLine(_xmlWriter, "DataType", "String");
            RdlRender.AddLine(_xmlWriter, "Prompt", "User Name");
            RdlRender.AddLine(_xmlWriter, "Hidden", "true");
            _xmlWriter.WriteEndElement(); // ReportParameter

            // ReportParameters
            if (_reportParametersList != null && _reportParametersList.Count > 0)
            {
                foreach (ReportParameter CurrentParameter in _reportParametersList)
                {
                    CurrentParameter.Render2010(_xmlWriter);
                }
            }
            _xmlWriter.WriteEndElement();



            // EmbeddedImages
            _xmlWriter.WriteStartElement("EmbeddedImages");
            _xmlWriter.WriteStartElement("EmbeddedImage");
            _xmlWriter.WriteAttributeString("Name", "Esf");
            RdlRender.AddLine(_xmlWriter, "MIMEType", "image/bmp");
            _xmlWriter.WriteStartElement("ImageData");

            // Image data
            FileStream ImageStream = new FileStream(
                HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["SmallSystemsLogoImage"]), FileMode.Open, FileAccess.Read);

            byte[] ImageByteArray = new byte[ImageStream.Length];
            ImageStream.Read(ImageByteArray, 0, (int)ImageStream.Length);
            ImageStream.Close();
            _xmlWriter.WriteBase64(ImageByteArray, 0, ImageByteArray.Length);

            _xmlWriter.WriteEndElement(); // ImageData
            _xmlWriter.WriteEndElement(); // EmbeddedImage
            _xmlWriter.WriteEndElement(); // EmbeddedImages

            RdlRender.AddLine(_xmlWriter, "ConsumeContainerWhitespace", "true");
            _xmlWriter.WriteEndElement(); // Report
            _xmlWriter.WriteEndDocument();
            //****TESTING*************
            // _xmlWriter.Flush();
            // XmlDocument doc = RdlRender.CreateXmlDocument(_memoryStream);
            //*****************/
            _xmlWriter.Flush();

            _memoryStream.Close();
            return(_memoryStream.ToArray());// GetBuffer();

            //_stream.Close();
            // return new byte[0];
        }
コード例 #4
0
        //TODO: Code Review Issue 11/05/05: Give a more detailed summary.
        // Done 24/05/2005
        /// <summary>
        /// Makes this object render itself as an RDL Report type to an XmlWriter instance.
        /// It calls upon all objects immediately beneath it (TableHeader, TableGroup,
        /// TableDetails, Datasets, ReportParameters) to render themselves also.
        /// </summary>
        /// <returns>A Byte array containing the raw RDL data.</returns>
        public Byte[] Render()
        {
            // Styles for the textboxes
            ReportingServicesStyle _textboxStyle14pt = new ReportingServicesStyle(
                ReportingServicesStyle.TextBoxStyle.TabularReport14pt);
            ReportingServicesStyle _textboxStyle10pt = new ReportingServicesStyle(
                ReportingServicesStyle.TextBoxStyle.TabularReport10pt);

            _xmlWriter.WriteStartDocument();

            _xmlWriter.WriteStartElement("Report");
            _xmlWriter.WriteAttributeString("xmlns",
                                            "http://schemas.microsoft.com/sqlserver/reporting/2003/10/reportdefinition");

            RdlRender.AddLine(_xmlWriter, "Width", "1.0in");
            RdlRender.AddLine(_xmlWriter, "PageWidth", "11.5in");
            RdlRender.AddLine(_xmlWriter, "TopMargin", "0.25in");
            RdlRender.AddLine(_xmlWriter, "BottomMargin", "0.25in");
            RdlRender.AddLine(_xmlWriter, "LeftMargin", "0.25in");
            RdlRender.AddLine(_xmlWriter, "RightMargin", "0.25in");
            RdlRender.AddLine(_xmlWriter, "PageHeight", "7.9375in");
            RdlRender.AddLine(_xmlWriter, "Language", "en-GB");

            _xmlWriter.WriteStartElement("PageHeader");
            _xmlWriter.WriteStartElement("ReportItems");

            RdlRender.AddTextbox(_xmlWriter, "TitleTextbox", "DWP Small Systems Ad Hoc Reporting System",
                                 _textboxStyle14pt, "Left", "0.3cm", "5.0cm", "10cm", "true", "0.95cm", "2", "",
                                 "", "", "", "", "", "", "");

            RdlRender.AddTextbox(_xmlWriter, "PageHeader", "=Globals!ReportName", _textboxStyle14pt,
                                 "Left", "2.85714cm", "1.26984cm", "14.92063cm", "true", "1cm", "", "", "",
                                 "", "", "", "", "", "");

            RdlRender.AddImage(_xmlWriter, "Image1", "2.59259cm", "3.8cm",
                               "1.0cm", "Embedded", "Esf", "AutoSize");
            int    ParameterCount = 0;
            int    X = 0;
            string ParameterHeight = "";

            foreach (String _parameterName in _parameterList)
            {
                ParameterCount++;
                X = ParameterCount;
                X = X + 3;
                ParameterHeight = X.ToString() + "cm";
                RdlRender.AddTextbox(_xmlWriter, "Parameter" + ParameterCount.ToString(), _parameterName, _textboxStyle14pt,
                                     "Left", ParameterHeight, "1.26984cm", "14.92063cm", "true", "1cm", "", "", "",
                                     "", "", "", "", "", "");
            }
            _xmlWriter.WriteEndElement();             // ReportItems
            X = ParameterCount;
            X = X + 4;
            ParameterHeight = X.ToString() + ".8cm";
            RdlRender.AddLine(_xmlWriter, "PrintOnLastPage", "true");
            RdlRender.AddLine(_xmlWriter, "PrintOnFirstPage", "true");
            RdlRender.AddLine(_xmlWriter, "Height", ParameterHeight);
            _xmlWriter.WriteEndElement();             // PagHeader

            _xmlWriter.WriteStartElement("Body");
            RdlRender.AddLine(_xmlWriter, "Height", "5in");

            _xmlWriter.WriteStartElement("ReportItems");
            _xmlWriter.WriteStartElement("Table");
            _xmlWriter.WriteAttributeString("Name", "Table1");
            RdlRender.AddLine(_xmlWriter, "DataSetName", "TableDataSet");
            RdlRender.AddLine(_xmlWriter, "Top", "0in");
            RdlRender.AddLine(_xmlWriter, "Left", ".5in");
            RdlRender.AddLine(_xmlWriter, "Height", "0in");
            RdlRender.AddLine(_xmlWriter, "Width", "6in");

            // TableHeader
            _tableHeader.Render(_xmlWriter);

            // TableGroups
            if (_tableGroupList == null || _tableGroupList.Count > 0)
            {
                _xmlWriter.WriteStartElement("TableGroups");

                foreach (TableGroup group in _tableGroupList)
                {
                    group.Render(_xmlWriter);
                }

                _xmlWriter.WriteEndElement();                 // TableGroups
            }

            _xmlWriter.WriteStartElement("Style");
            _xmlWriter.WriteEndElement();

            // Write table columns
            _xmlWriter.WriteStartElement("TableColumns");
            for (int i = 0; i < _selectedDataItems.Count; i++)
            {
                _xmlWriter.WriteStartElement("TableColumn");
                RdlRender.AddLine(_xmlWriter, "Width", "1.5in");
                _xmlWriter.WriteEndElement();
            }
            _xmlWriter.WriteEndElement();             // TableColumns


            // TableDetails
            if (_isSummaryReport == false)
            {
                _tableDetails.Render(_xmlWriter);
            }
            RdlRender.AddLine(_xmlWriter, "NoRows", Resource.GetString("RES_REPORT_NOROWSRETURNED"));
            // TableFooter
            _tableFooter.Render(_xmlWriter);

            _xmlWriter.WriteEndElement();             // Table
            _xmlWriter.WriteEndElement();             // ReportItems
            _xmlWriter.WriteEndElement();             // Body

            // DataSources
            _xmlWriter.WriteStartElement("DataSources");
            _xmlWriter.WriteStartElement("DataSource");
            _xmlWriter.WriteAttributeString("Name", "DataSource1");
            RdlRender.AddLine(_xmlWriter, "DataSourceReference", "/" + _dataSource);

            /*_xmlWriter.WriteStartElement("ConnectionProperties");
             * RdlRender.AddLine( _xmlWriter, "DataProvider", "SQL");
             * RdlRender.AddLine( _xmlWriter, "ConnectString", _dbConnectionString);
             * RdlRender.AddLine( _xmlWriter, "IntegratedSecurity", "false");
             * RdlRender.AddLine( _xmlWriter, "Prompt", "false");
             * _xmlWriter.WriteEndElement(); // ConnectionProperties */
            _xmlWriter.WriteEndElement();             // DataSource
            _xmlWriter.WriteEndElement();             // DataSources

            // Datasets
            _xmlWriter.WriteStartElement("DataSets");
            foreach (Dataset CurrentDataSet in _datasetList)
            {
                CurrentDataSet.Render(_xmlWriter);
            }
            _xmlWriter.WriteEndElement();

            // ReportParameters
            if (_reportParametersList != null && _reportParametersList.Count > 0)
            {
                _xmlWriter.WriteStartElement("ReportParameters");
                foreach (ReportParameter CurrentParameter in _reportParametersList)
                {
                    CurrentParameter.Render(_xmlWriter);
                }
                _xmlWriter.WriteEndElement();
            }

            // EmbeddedImages
            _xmlWriter.WriteStartElement("EmbeddedImages");
            _xmlWriter.WriteStartElement("EmbeddedImage");
            _xmlWriter.WriteAttributeString("Name", "Esf");
            RdlRender.AddLine(_xmlWriter, "MIMEType", "image/bmp");
            _xmlWriter.WriteStartElement("ImageData");

            // Image data
            FileStream ImageStream = new FileStream(
                ConfigurationManager.AppSettings["SmallSystemsLogoImage"], FileMode.Open, FileAccess.Read);

            byte[] ImageByteArray = new byte[ImageStream.Length];
            ImageStream.Read(ImageByteArray, 0, (int)ImageStream.Length);
            ImageStream.Close();
            _xmlWriter.WriteBase64(ImageByteArray, 0, ImageByteArray.Length);

            _xmlWriter.WriteEndElement();             // ImageData
            _xmlWriter.WriteEndElement();             // EmbeddedImage
            _xmlWriter.WriteEndElement();             // EmbeddedImages


            // Report footer
            _xmlWriter.WriteStartElement("PageFooter");
            RdlRender.AddLine(_xmlWriter, "Height", "1.0cm");
            RdlRender.AddLine(_xmlWriter, "PrintOnFirstPage", "true");
            RdlRender.AddLine(_xmlWriter, "PrintOnLastPage", "true");
            _xmlWriter.WriteStartElement("ReportItems");

            RdlRender.AddTextbox(_xmlWriter, "UserTextBox", "=User!UserID",
                                 _textboxStyle10pt, "", "0.25cm", "1.0cm", "6.00cm", "true", "0.5cm", "1",
                                 "", "", "", "", "", "", "", "");
            RdlRender.AddTextbox(_xmlWriter, "ExecutionTimeTextBox", "=Globals!ExecutionTime",
                                 _textboxStyle10pt, "", "0.25cm", "7.00cm", "6.00cm", "true", "0.5cm", "1",
                                 "", "", "", "", "", "", "", "");
            RdlRender.AddTextbox(_xmlWriter, "PageNumberTextBox", "=Globals!PageNumber",
                                 _textboxStyle10pt, "", "0.25cm", "15.00cm", "3.00cm", "true", "0.5cm", "1",
                                 "", "", "", "", "", "", "", "");

            _xmlWriter.WriteEndElement(); // ReportItems
            _xmlWriter.WriteEndElement(); // PageFooter

            _xmlWriter.WriteEndElement(); // Report
            _xmlWriter.WriteEndDocument();

            _xmlWriter.Flush();

            _memoryStream.Close();
            return(_memoryStream.GetBuffer());

            //_stream.Close();
            // return new byte[0];
        }
コード例 #5
0
ファイル: QueryControl.xaml.cs プロジェクト: calc33/PgTools
 private void textBoxSqlCommandNormalizeSql_Executed(object sender, ExecutedRoutedEventArgs e)
 {
     textBoxSql.Text = CurrentDataSet.NormalizeSQL(textBoxSql.Text);
     e.Handled       = true;
 }
コード例 #6
0
ファイル: QueryControl.xaml.cs プロジェクト: calc33/PgTools
        private void UpdateDataGridResult(SQLParts sqls)
        {
            Db2SourceContext ctx = CurrentDataSet;

            using (IDbConnection conn = ctx.NewConnection(true))
            {
                bool modified;
                Parameters = ParameterStore.GetParameterStores(sqls.ParameterNames, Parameters, out modified);
                if (modified)
                {
                    return;
                }

                foreach (ParameterStore p in Parameters)
                {
                    if (p.IsError)
                    {
                        dataGridParameters.Focus();
                        dataGridParameters.SelectedItem = p;
                        MessageBox.Show(string.Format("パラメータ{0}の値が不正です", p.ParameterName), "エラー", MessageBoxButton.OK, MessageBoxImage.Error);
                        return;
                    }
                }
                foreach (SQLPart sql in sqls.Items)
                {
                    IDbCommand cmd = ctx.GetSqlCommand(sql.SQL, Command_Log, conn);
                    ParameterStoreCollection stores = ParameterStore.GetParameterStores(cmd, Parameters, out modified);
                    DateTime start = DateTime.Now;
                    try
                    {
                        using (IDataReader reader = cmd.ExecuteReader())
                        {
                            DataGridControllerResult.Load(reader);
                            if (0 <= reader.RecordsAffected)
                            {
                                AddLog(string.Format("{0}行反映しました。", reader.RecordsAffected), null, null, LogStatus.Normal, true);
                            }
                            else if (0 < reader.FieldCount)
                            {
                                tabControlResult.SelectedItem = tabItemDataGrid;
                            }
                        }
                        AddToHistory(sql, stores);
                    }
                    catch (Exception t)
                    {
                        Tuple <int, int> errPos = CurrentDataSet.GetErrorPosition(t, sql.SQL, 0);
                        AddLog(CurrentDataSet.GetExceptionMessage(t), sql.SQL, stores, LogStatus.Error, true, errPos);
                        Db2SrcDataSetController.ShowErrorPosition(t, textBoxSql, CurrentDataSet, sql.Offset);
                        return;
                    }
                    finally
                    {
                        ParameterStore.GetParameterStores(cmd, stores, out modified);
                        UpdateDataGridParameters();
                        DateTime end  = DateTime.Now;
                        TimeSpan time = end - start;
                        string   s    = string.Format("{0}:{1:00}:{2:00}.{3:000}", (int)time.TotalHours, time.Minutes, time.Seconds, time.Milliseconds);
                        AddLog(string.Format("実行しました (所要時間 {0})", s), cmd.CommandText, stores, LogStatus.Aux, false);
                        textBlockGridResult.Text = string.Format("{0}件見つかりました。  所要時間 {1}", DataGridControllerResult.Rows.Count, s);
                    }
                }
            }
        }
コード例 #7
0
    protected void Page_Load(object sender, EventArgs e)

    {
        functionName = Request.Form["action"].ToString();
        switch (functionName.Trim())
        {
        case "getProblemSpan":
            DataSet datasetProblemSpan = null;
            datasetProblemSpan = SHS.BaseLayer.BaseCommonFunctions.ScreenInfo.CurrentDocument.DocumentDataSet.Copy();
            string[] service = (from pc in datasetProblemSpan.Tables["CustomPsychiatricNoteProblems"].AsEnumerable()
                                select getProblemCount(pc.Field <int>("PsychiatricNoteProblemId").ToString())
                                ).ToArray();
            string serviceHtml = string.Join("", service);
            Response.Clear();
            Response.Write(serviceHtml.Trim());
            Response.End();
            break;

        case "bindProblems":
            int PsychiatricServiceNoteProblemId = 0;
            int.TryParse(Request.Form["PsychiatricNoteSubjectiveId"].ToString(), out PsychiatricServiceNoteProblemId);
            Response.Clear();
            Response.Write(PsychiatricServiceNoteProblemId.ToString().Trim());
            Response.End();
            break;

        case "LoadVitals":
            DataSet Vitals = new DataSet();
            Vitals = dataSetGetVitals();
            Response.Write(Vitals.Tables["CustomDocumentPsychiatricServiceNoteExams"].Rows[0]["VitalsCurrent"].ToString() + "#8#2#3$" + Vitals.Tables["CustomDocumentPsychiatricServiceNoteExams"].Rows[0]["VitalsPrevious"].ToString() + "#8#2#3$" + Vitals.Tables["CustomDocumentPsychiatricServiceNoteExams"].Rows[0]["ThirdPreviousVitals"].ToString() + "#8#2#3$" + Vitals.Tables["CustomDocumentPsychiatricServiceNoteExams"].Rows[0]["CurreentVitalDate"].ToString() + "#8#2#3$" + Vitals.Tables["CustomDocumentPsychiatricServiceNoteExams"].Rows[0]["PreviousVitalDate"].ToString() + "#8#2#3$" + Vitals.Tables["CustomDocumentPsychiatricServiceNoteExams"].Rows[0]["ThirdPreviousVitalDate"].ToString());
            Response.End();
            break;

        case "GetMedications":
            string MedicationsString = "";
            MedicationsString = getMedicationsString();
            Response.Clear();
            Response.Write(MedicationsString);
            Response.End();
            break;

        case "GetDisconMedications":
            string DisconMedicationsString = "";
            DisconMedicationsString = getNonMedicationsString();
            Response.Clear();
            Response.Write(DisconMedicationsString);
            Response.End();
            //DataSet DisconMedicationsString = new DataSet();
            //DisconMedicationsString = getNonMedicationsString();
            //StringWriter sw = new StringWriter();
            //DisconMedicationsString.WriteXml(sw);
            //string discontinued = sw.ToString();
            //Response.Clear();
            //Response.Write(discontinued);
            //Response.End();
            break;

        case "LoadAllergirs":
            DataSet Allergies = new DataSet();
            Allergies = dataSetGetAllergies();
            StringWriter sw1 = new StringWriter();
            Allergies.WriteXml(sw1);
            string resultPIE1 = sw1.ToString();
            Response.Write(resultPIE1);
            Response.End();
            break;

        case "UpdateDiagnosis":
            string DiagnosisString = string.Empty;
            DiagnosisString = Convert.ToString(Request.Form["DiagnosisText"]);
            string[] diagResult;
            string[] stringSeparator = new string[] { "$$$" };
            diagResult = DiagnosisString.Split(stringSeparator, StringSplitOptions.None);
            string ICD10Code   = diagResult[0];
            string Description = diagResult[1];
            string ICD9Code    = diagResult[2];
            int    ICD10CodeId = Convert.ToInt32(diagResult[4]);
            int    SeverityId  = Convert.ToInt32(diagResult[6]);
            string Substance   = string.Empty;
            Substance = Convert.ToString(Request.Form["SourceSubstance"]);
            AddDiagnosis(ICD10Code, ICD9Code, ICD10CodeId, Description, Substance, SeverityId);
            CurrentDataSet objectCoutComeList = new CurrentDataSet();
            DataSet        ds_ScreenDataset   = BaseCommonFunctions.GetScreenInfoDataSet();
            objectCoutComeList.AutoSaveXml = ds_ScreenDataset.GetXml();
            Response.Clear();
            Response.Write(new JavaScriptSerializer().Serialize(objectCoutComeList));
            Response.End();
            break;

        case "RemoveDiagnosis":
            Substance = Convert.ToString(Request.Form["SourceSubstance"]);
            RemoveDiagnosis(Substance);
            CurrentDataSet objectCoutComeList1 = new CurrentDataSet();
            DataSet        ds_ScreenDataset1   = BaseCommonFunctions.GetScreenInfoDataSet();
            objectCoutComeList1.AutoSaveXml = ds_ScreenDataset1.GetXml();
            Response.Clear();
            Response.Write(new JavaScriptSerializer().Serialize(objectCoutComeList1));
            Response.End();
            break;

        case "VitalsCheck":
            var    DateOfService  = Convert.ToString(Request.Form["DateOfService"]);
            int    ServiceId      = Convert.ToInt32(Request.Form["ServiceId"]);
            string strVitalsCheck = "";
            strVitalsCheck = VitalsCheck(DateOfService, ServiceId);
            Response.Clear();
            Response.Write(strVitalsCheck);
            Response.End();
            break;

        default:
            break;
        }
    }