Пример #1
0
 public void ExportDatasetToXml(string xmlPath)
 {
     m_Maindataset.WriteXml(xmlPath);
 }
 private void SaveCacheEmpleados(DataSet emp)
 {
     emp.WriteXmlSchema(@"C:\temp\Empleados.xsd");
     emp.WriteXml(@"C:\temp\Empleados.xml", XmlWriteMode.DiffGram);
 }
Пример #3
0
        public void WriteXmlToStream()
        {
            string xml = "<set><table1><col1>sample text</col1><col2/></table1><table2 attr='value'><col3>sample text 2</col3></table2></set>";
            var ds = new DataSet();
            ds.ReadXml(new StringReader(xml));
            MemoryStream ms = new MemoryStream();
            ds.WriteXml(ms);
            MemoryStream ms2 = new MemoryStream(ms.ToArray());
            StreamReader sr = new StreamReader(ms2, Encoding.UTF8);
            string result = @"<set>
  <table1>
    <col1>sample text</col1>
    <col2 />
  </table1>
  <table2 attr=""value"">
    <col3>sample text 2</col3>
  </table2>
</set>";
            Assert.Equal(sr.ReadToEnd().Replace("\r\n", "\n"), result.Replace("\r\n", "\n"));
        }
        public static string WriteListToXml(List <object> listToWrite, string filename, bool append = false)
        {
            FileInfo finfo = new FileInfo(filename);

            if (!Directory.Exists(finfo.DirectoryName))
            {
                Directory.CreateDirectory(finfo.DirectoryName);
            }

            if (File.Exists(filename) && !append)
            {
                File.Delete(filename);
            }

            DataSet dsToWrite = new DataSet("DataSet");

            dsToWrite.Namespace = "NetFrameWork";
            DataTable table = new DataTable("table");

            //DataColumn keyColumn = new DataColumn("key", Type.GetType("System.String"));

            DataColumn valueColumn = new DataColumn("value");

            //table.Columns.Add(keyColumn);
            table.Columns.Add(valueColumn);
            dsToWrite.Tables.Add(table);

            DataRow newRow;

            if (append && File.Exists(filename))
            {
                List <object> tmpList        = new List <object>();
                DataSet       readingDataSet = new DataSet("DataSet");
                readingDataSet.ReadXml(filename);
                foreach (DataTable tmpTable in readingDataSet.Tables)
                {
                    foreach (DataRow row in tmpTable.Rows)
                    {
                        tmpList.Add(row[0]);
                    }
                }
                readingDataSet.Dispose();

                foreach (object obj in tmpList)
                {
                    newRow          = table.NewRow();
                    newRow["value"] = obj;
                    table.Rows.Add(newRow);
                }
                File.Delete(filename);
            }

            foreach (object obj in listToWrite)
            {
                newRow          = table.NewRow();
                newRow["value"] = obj;
                table.Rows.Add(newRow);
            }
            dsToWrite.AcceptChanges();

            dsToWrite.WriteXml(filename);

            dsToWrite.Dispose();

            return(filename);
        }
Пример #5
0
        public void WriteXmlSchema2()
        {
            string xml = @"<myDataSet xmlns='NetFrameWork'><myTable><id>0</id><item>item 0</item></myTable><myTable><id>1</id><item>item 1</item></myTable><myTable><id>2</id><item>item 2</item></myTable><myTable><id>3</id><item>item 3</item></myTable><myTable><id>4</id><item>item 4</item></myTable><myTable><id>5</id><item>item 5</item></myTable><myTable><id>6</id><item>item 6</item></myTable><myTable><id>7</id><item>item 7</item></myTable><myTable><id>8</id><item>item 8</item></myTable><myTable><id>9</id><item>item 9</item></myTable></myDataSet>";
            string schema = @"<?xml version='1.0' encoding='utf-16'?>
<xs:schema id='myDataSet' targetNamespace='NetFrameWork' xmlns:mstns='NetFrameWork' xmlns='NetFrameWork' xmlns:xs='http://www.w3.org/2001/XMLSchema' xmlns:msdata='urn:schemas-microsoft-com:xml-msdata' attributeFormDefault='qualified' elementFormDefault='qualified'>
  <xs:element name='myDataSet' msdata:IsDataSet='true' " +
            "msdata:UseCurrentLocale='true'"
            + @">
    <xs:complexType>
      <xs:choice minOccurs='0' maxOccurs='unbounded'>
        <xs:element name='myTable'>
          <xs:complexType>
            <xs:sequence>
              <xs:element name='id' msdata:AutoIncrement='true' type='xs:int' minOccurs='0' />
              <xs:element name='item' type='xs:string' minOccurs='0' />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:choice>
    </xs:complexType>
  </xs:element>
</xs:schema>";
            DataSet OriginalDataSet = new DataSet("myDataSet");
            OriginalDataSet.Namespace = "NetFrameWork";
            DataTable myTable = new DataTable("myTable");
            DataColumn c1 = new DataColumn("id", typeof(int));
            c1.AutoIncrement = true;
            DataColumn c2 = new DataColumn("item");
            myTable.Columns.Add(c1);
            myTable.Columns.Add(c2);
            OriginalDataSet.Tables.Add(myTable);
            // Add ten rows.
            DataRow newRow;
            for (int i = 0; i < 10; i++)
            {
                newRow = myTable.NewRow();
                newRow["item"] = "item " + i;
                myTable.Rows.Add(newRow);
            }
            OriginalDataSet.AcceptChanges();

            StringWriter sw = new StringWriter();
            XmlTextWriter xtw = new XmlTextWriter(sw);
            xtw.QuoteChar = '\'';
            OriginalDataSet.WriteXml(xtw);
            string result = sw.ToString();

            Assert.Equal(xml, result);

            sw = new StringWriter();
            xtw = new XmlTextWriter(sw);
            xtw.Formatting = Formatting.Indented;
            OriginalDataSet.WriteXmlSchema(xtw);
            result = sw.ToString();

            result = result.Replace("\r\n", "\n").Replace('"', '\'');
            Assert.Equal(schema.Replace("\r\n", "\n"), result);
        }
Пример #6
0
        public void ReadWriteXml()
        {
            var ds = new DataSet();
            ds.ReadXml(new StringReader(DataProvider.region));
            TextWriter writer = new StringWriter();
            ds.WriteXml(writer);

            string TextString = writer.ToString();
            string substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("<Root>", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("  <Region>", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("    <RegionID>1</RegionID>", substring);
            // Here the end of line is text markup "\n"
            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("    <RegionDescription>Eastern", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("               </RegionDescription>", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("  </Region>", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("  <Region>", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("    <RegionID>2</RegionID>", substring);

            // Here the end of line is text markup "\n"
            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("    <RegionDescription>Western", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("               </RegionDescription>", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("  </Region>", substring);

            Assert.Equal("</Root>", TextString);
        }
        private void cmdDisplay1_Click(object sender, EventArgs e)
        {
            if (chkAll.Checked == true)
            {
                DataSet  dataSetReport = new DataSet();
                DateTime dtStartDate, dtEndDate;


                dtStartDate = MyMovRep.GetStartDate(int.Parse(cmbYear.Text.ToString()), int.Parse(cmbMonth.SelectedValue.ToString()));
                dtEndDate   = MyMovRep.GetEndDateOfMonth(dtStartDate);

                dataSetReport = MyMovRep.GetEmployeeMovements1(Convert.ToInt32(cmbYear.Text), Convert.ToInt32(cmbMonth.SelectedValue.ToString()));

                if (dataSetReport.Tables[0].Rows.Count > 0)
                {
                    dataSetReport.WriteXml("EmployeeMovementsRep.xml");

                    EmployeeMovementReport myMovementRep = new EmployeeMovementReport();
                    myMovementRep.SetDataSource(dataSetReport);
                    myMovementRep.SetParameterValue("Company Name", FTSPayRollBL.Company.getCompanyName());
                    myMovementRep.SetParameterValue("Estate", "Estate :" + mydiv.ListEstates().Rows[0][0].ToString());
                    myMovementRep.SetParameterValue("Period", "For the Month of " + cmbMonth.SelectedValue.ToString() + " / " + cmbYear.Text);

                    ReportViewer myReportViewer = new ReportViewer();
                    myReportViewer.crystalReportViewer1.ReportSource = myMovementRep;
                    myReportViewer.Show();
                }
                else
                {
                    MessageBox.Show(" No Data to Preview ");
                }
            }
            else
            {
                DataSet  dataSetReport = new DataSet();
                DateTime dtStartDate, dtEndDate;

                dtStartDate = MyMovRep.GetStartDate(int.Parse(cmbYear.Text.ToString()), int.Parse(cmbMonth.SelectedValue.ToString()));
                dtEndDate   = MyMovRep.GetEndDateOfMonth(dtStartDate);

                dataSetReport = MyMovRep.GetEmployeeMovements(Convert.ToInt32(cmbYear.Text), Convert.ToInt32(cmbMonth.SelectedValue.ToString()), cmbDivision.SelectedValue.ToString());

                if (dataSetReport.Tables[0].Rows.Count > 0)
                {
                    dataSetReport.WriteXml("EmployeeMovementsRep.xml");


                    EmployeeMovementReport myMovementRep = new EmployeeMovementReport();
                    myMovementRep.SetDataSource(dataSetReport);
                    ReportViewer myReportViewer = new ReportViewer();
                    myMovementRep.SetParameterValue("Company Name", FTSPayRollBL.Company.getCompanyName());
                    myMovementRep.SetParameterValue("Estate", "Estate :" + mydiv.ListEstates().Rows[0][0].ToString());
                    myMovementRep.SetParameterValue("Period", "For the Month of " + cmbMonth.SelectedValue.ToString() + " / " + cmbYear.Text);

                    myReportViewer.crystalReportViewer1.ReportSource = myMovementRep;
                    myReportViewer.Show();
                }
                else
                {
                    MessageBox.Show("No Data to Preview");
                }
            }
            //dataSetReport = myReports.getEmployeeMovements(Convert.ToInt32(cmbYear.Text), Convert.ToInt32(cmbMonth.SelectedValue.ToString()));
            //dataSetReport.WriteXml("EmployeeMovements.xml");
            //EmployeeMovementRPT myaclist = new EmployeeMovementRPT();
            //myaclist.SetDataSource(dataSetReport);
            //ReportViewer myReportViewer = new ReportViewer();

            //myaclist.SetParameterValue("Estate", FTSPayRollBL.Company.getCompanyName());
            //myaclist.SetParameterValue("Period", "Month of : " + cmbMonth.Text + "/" + cmbYear.Text);
            //myReportViewer.crystalReportViewer1.ReportSource = myaclist;
            //myReportViewer.Show();
        }
Пример #8
0
        public void DataSetExtendedPropertiesTest()
        {
            DataSet dataSet1 = new DataSet();
            dataSet1.ExtendedProperties.Add("DS1", "extended0");
            DataTable table = new DataTable("TABLE1");
            table.ExtendedProperties.Add("T1", "extended1");
            table.Columns.Add("C1", typeof(int));
            table.Columns.Add("C2", typeof(string));
            table.Columns[1].MaxLength = 20;
            table.Columns[0].ExtendedProperties.Add("C1Ext1", "extended2");
            table.Columns[1].ExtendedProperties.Add("C2Ext1", "extended3");
            dataSet1.Tables.Add(table);
            table.LoadDataRow(new object[] { 1, "One" }, false);
            table.LoadDataRow(new object[] { 2, "Two" }, false);
            string file = Path.Combine(Path.GetTempPath(), "schemas-test.xml");
            try
            {
                dataSet1.WriteXml(file, XmlWriteMode.WriteSchema);
            }
            catch (Exception ex)
            {
                Assert.False(true);
            }
            finally
            {
                File.Delete(file);
            }

            DataSet dataSet2 = new DataSet();
            dataSet2.ReadXml(new StringReader(
                @"<?xml version=""1.0"" standalone=""yes""?>
                <NewDataSet>
                  <xs:schema id=""NewDataSet"" xmlns=""""
                xmlns:xs=""http://www.w3.org/2001/XMLSchema""
                xmlns:msdata=""urn:schemas-microsoft-com:xml-msdata""
                xmlns:msprop=""urn:schemas-microsoft-com:xml-msprop"">
                    <xs:element name=""NewDataSet"" msdata:IsDataSet=""true""
                msdata:UseCurrentLocale=""true"" msprop:DS1=""extended0"">
                      <xs:complexType>
                        <xs:choice minOccurs=""0"" maxOccurs=""unbounded"">
                          <xs:element name=""TABLE1"" msprop:T1=""extended1"">
                            <xs:complexType>
                              <xs:sequence>
                                <xs:element name=""C1"" type=""xs:int"" minOccurs=""0""
                msprop:C1Ext1=""extended2"" />
                                <xs:element name=""C2"" type=""xs:string"" minOccurs=""0""
                msprop:C2Ext1=""extended3"" />
                              </xs:sequence>
                            </xs:complexType>
                          </xs:element>
                        </xs:choice>
                      </xs:complexType>
                    </xs:element>
                  </xs:schema>
                  <TABLE1>
                    <C1>1</C1>
                    <C2>One</C2>
                  </TABLE1>
                  <TABLE1>
                    <C1>2</C1>
                    <C2>Two</C2>
                  </TABLE1>
                </NewDataSet>"), XmlReadMode.ReadSchema);
            Assert.Equal(dataSet1.ExtendedProperties["DS1"], dataSet2.ExtendedProperties["DS1"]);

            Assert.Equal(dataSet1.Tables[0].ExtendedProperties["T1"], dataSet2.Tables[0].ExtendedProperties["T1"]);
            Assert.Equal(dataSet1.Tables[0].Columns[0].ExtendedProperties["C1Ext1"],
                             dataSet2.Tables[0].Columns[0].ExtendedProperties["C1Ext1"]);
            Assert.Equal(dataSet1.Tables[0].Columns[1].ExtendedProperties["C2Ext1"],
                             dataSet2.Tables[0].Columns[1].ExtendedProperties["C2Ext1"]);
        }
        public ActionResult Print()
        {
            ReportDocument rd = new ReportDocument();

            rd.Load(Path.Combine(Server.MapPath("~/Reports"), "PendingPARregister.rpt"));

            DataSet ds = new DataSet();

            ds.Tables.Add("Head");
            ds.Tables.Add("Items");
            //-------HEAD
            ds.Tables["Head"].Columns.Add("OrganizationName");
            ds.Tables["Head"].Columns.Add("Image1");

            //-------DT
            ds.Tables["Items"].Columns.Add("Request No.");
            ds.Tables["Items"].Columns.Add("Date");
            ds.Tables["Items"].Columns.Add("Material");
            ds.Tables["Items"].Columns.Add("Remarks");
            ds.Tables["Items"].Columns.Add("Request Qty");
            ds.Tables["Items"].Columns.Add("GRN Qty");
            ds.Tables["Items"].Columns.Add("Settled Qty");
            ds.Tables["Items"].Columns.Add("Balance Qty");



            PurchaseRequestRepository repo = new PurchaseRequestRepository();
            var Head = repo.PurchaseRequestRegisterHD(OrganizationId);


            DataRow dr = ds.Tables["Head"].NewRow();

            dr["OrganizationName"] = Head.OrganizationName;
            dr["Image1"]           = Server.MapPath("~/App_images/") + Head.Image1;
            ds.Tables["Head"].Rows.Add(dr);

            PurchaseRequestRepository repo1 = new PurchaseRequestRepository();
            var Items = repo1.GetPendingPARregisterDT(OrganizationId);

            foreach (var item in Items)
            {
                var PurchaseRequestRegItem = new PurchaseRequestRegister
                {
                    PurchaseRequestNo   = item.PurchaseRequestNo,
                    PurchaseRequestDate = item.PurchaseRequestDate,
                    ItemName            = item.ItemName,
                    Remarks             = item.Remarks,
                    ReqQty     = item.ReqQty,
                    GRNQTY     = item.GRNQTY,
                    SettledQty = item.SettledQty,
                    BALQTY     = item.BALQTY
                };

                DataRow dri = ds.Tables["Items"].NewRow();
                dri["Request No."] = PurchaseRequestRegItem.PurchaseRequestNo;
                dri["Date"]        = PurchaseRequestRegItem.PurchaseRequestDate.ToString("dd-MMM-yyyy");
                dri["Material"]    = PurchaseRequestRegItem.ItemName;
                dri["Remarks"]     = PurchaseRequestRegItem.Remarks;
                dri["Request Qty"] = PurchaseRequestRegItem.ReqQty;
                dri["GRN Qty"]     = PurchaseRequestRegItem.GRNQTY;
                dri["Settled Qty"] = PurchaseRequestRegItem.SettledQty;
                dri["Balance Qty"] = PurchaseRequestRegItem.BALQTY;


                ds.Tables["Items"].Rows.Add(dri);
            }

            ds.WriteXml(Path.Combine(Server.MapPath("~/XML"), "PendingPARregister.xml"), XmlWriteMode.WriteSchema);

            rd.SetDataSource(ds);

            Response.Buffer = false;
            Response.ClearContent();
            Response.ClearHeaders();


            try
            {
                Stream stream = rd.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                stream.Seek(0, SeekOrigin.Begin);
                return(File(stream, "application/pdf", String.Format("PendingPARregister.pdf")));
            }
            catch (Exception ex)
            {
                throw;
            }
        }
        private void DeliverGestures()
        {
            DAL dal = new DAL();

            #region SMS
            try
            {
                Logger.WriteLog("SMS Send", "SMS Sending");
                dal.SendSMS();
            }
            catch (Exception Error)
            {
                Logger.WriteLog("SMS Send", "SMS Send Error Occoured", Error.StackTrace);
            }
            #endregion

            #region Email
            try
            {
                Logger.WriteLog("Email Send", "Email Sending");
                dal.SendEmail();
            }
            catch (Exception Error)
            {
                Logger.WriteLog("Email Send", "Email Send Error Occoured", Error.StackTrace);
            }
            #endregion

            #region Notice
            //Ecard notice
            try
            {
                Logger.WriteLog("Notice Send", "Notice Sending");
                dal.SendNotice();
            }
            catch (Exception Error)
            {
                Logger.WriteLog("Notice Send", "Notice Send Error Occoured", Error.StackTrace);
            }
            #endregion

            #region APM
            int TotalUsers       = 0;
            int TotalAPMGestures = 0;

            DataTable dtAPMGestureRequests = new DataTable();
            dtAPMGestureRequests = dal.GetPedingAPMRequests();

            DataView  view          = new DataView(dtAPMGestureRequests);
            DataTable distinctUsers = view.ToTable(true, "UserCode");

            TotalUsers       = distinctUsers.Rows.Count;
            TotalAPMGestures = dtAPMGestureRequests.Rows.Count;

            Logger.WriteLog("APM Generate Gestures", "called", "Total Users: " + TotalUsers);
            Logger.WriteLog("APM Generate Gestures", "called", "Total Gestures: " + TotalAPMGestures);

            string ClientKey = string.Empty;
            ClientKey = Convert.ToString(ConfigurationManager.AppSettings["ShipmentClientKey"]);
            string[] Message;

            xshipment.ShipmentAPI obj = new xshipment.ShipmentAPI();

            for (int i = 0; i < TotalAPMGestures; i++)
            {
                int userId            = Convert.ToInt32(dtAPMGestureRequests.Rows[i]["UserCode"].ToString());
                int GestureDetailCode = Convert.ToInt32(dtAPMGestureRequests.Rows[i]["GestureDetailCode"].ToString());
                int GestureCode       = Convert.ToInt16(dtAPMGestureRequests.Rows[i]["GestureCode"].ToString());

                //Card APM //Letter APM
                if (GestureCode == Convert.ToInt16(OG_Gestures.Card) || GestureCode == Convert.ToInt16(OG_Gestures.Letter))
                {
                    try
                    {
                        Logger.WriteLog("APM Send", "APM Sending to User ID: " + userId, "", GestureDetailCode.ToString());
                        string DocumentIds = dtAPMGestureRequests.Rows[i]["DocumentIds"].ToString();

                        if (!string.IsNullOrEmpty(DocumentIds))
                        {
                            DataSet dsPrintDataset = dsPrintDataset = new DataSet();
                            dsPrintDataset = dal.GetDatasetForPrintingWebAPIInBulk(GestureDetailCode, DocumentIds);

                            if (dsPrintDataset != null && dsPrintDataset.Tables.Count > 3)
                            {
                                Message = obj.AddOrder(ClientKey, dsPrintDataset);

                                if (Message.Length >= 2)
                                {
                                    //error
                                    if (Convert.ToInt32(Message[0]) <= 0)
                                    {
                                        Logger.WriteLog("APM Send", "APM not send", Message[2].ToString(), GestureDetailCode.ToString());

                                        StringWriter sw = new StringWriter();
                                        dsPrintDataset.WriteXml(sw);
                                        string result = sw.ToString();
                                        Logger.WriteLog("User gesture detail code: " + GestureDetailCode, result);
                                    }
                                    else
                                    {
                                        dal.UpdateUserGestureDetail(GestureDetailCode, Convert.ToInt16(OG_GestureStatus.Pending), Convert.ToInt16(OG_PrintingStatus.SendForPrinting));
                                    }
                                }
                            }
                        }
                        else
                        {
                            Logger.WriteLog("APM Send", "APM not send", "Invalid Document Id", GestureDetailCode.ToString());
                        }
                    }
                    catch (Exception Error)
                    {
                        Logger.WriteLog("APM Send", "APM Send Error Occoured", Error.StackTrace, GestureDetailCode.ToString());
                    }
                }
            }
            #endregion
        }
Пример #11
0
        public void Serialize()
        {
            MemoryStream fs = new MemoryStream();

            // Construct a BinaryFormatter and use it 
            // to serialize the data to the stream.
            BinaryFormatter formatter = new BinaryFormatter();

            // Create an array with multiple elements refering to 
            // the one Singleton object.
            DataTable dt = new DataTable();

            dt.Columns.Add(new DataColumn("Id", typeof(string)));
            dt.Columns.Add(new DataColumn("ContactName", typeof(string)));
            dt.Columns.Add(new DataColumn("ContactTitle", typeof(string)));
            dt.Columns.Add(new DataColumn("ContactAreaCode", typeof(string)));
            dt.Columns.Add(new DataColumn("ContactPhone", typeof(string)));

            DataRow loRowToAdd;
            loRowToAdd = dt.NewRow();
            loRowToAdd[0] = "a";
            loRowToAdd[1] = "b";
            loRowToAdd[2] = "c";
            loRowToAdd[3] = "d";
            loRowToAdd[4] = "e";
            dt.Rows.Add(loRowToAdd);

            DataTable[] dtarr = new DataTable[] { dt };

            // Serialize the array elements.
            formatter.Serialize(fs, dtarr);

            // Deserialize the array elements.
            fs.Position = 0;
            DataTable[] a2 = (DataTable[])formatter.Deserialize(fs);

            var ds = new DataSet();
            ds.Tables.Add(a2[0]);

            StringWriter sw = new StringWriter();
            ds.WriteXml(sw);
            XmlDocument doc = new XmlDocument();
            doc.LoadXml(sw.ToString());
            Assert.Equal(5, doc.DocumentElement.FirstChild.ChildNodes.Count);
        }
Пример #12
0
        public void WriteXml_Morethan2Relations()
        {
            DataSet ds = new DataSet();
            DataTable p1 = ds.Tables.Add("parent1");
            DataTable p2 = ds.Tables.Add("parent2");
            DataTable p3 = ds.Tables.Add("parent3");
            DataTable c1 = ds.Tables.Add("child");

            c1.Columns.Add("col1");
            c1.Columns.Add("col2");
            c1.Columns.Add("col3");
            c1.Columns.Add("col4");

            p1.Columns.Add("col1");
            p2.Columns.Add("col1");
            p3.Columns.Add("col1");

            ds.Relations.Add("rel1", p1.Columns[0], c1.Columns[0], false);
            ds.Relations.Add("rel2", p2.Columns[0], c1.Columns[1], false);
            ds.Relations.Add("rel3", p3.Columns[0], c1.Columns[2], false);
            ds.Relations[2].Nested = true;

            p1.Rows.Add(new object[] { "p1" });
            p2.Rows.Add(new object[] { "p2" });
            p3.Rows.Add(new object[] { "p3" });

            c1.Rows.Add(new object[] { "p1", "p2", "p3", "c1" });

            StringWriter sw = new StringWriter();
            XmlTextWriter xw = new XmlTextWriter(sw);
            ds.WriteXml(xw);
            string dataset_xml = sw.ToString();
            string child_xml = "<child><col1>p1</col1><col2>p2</col2><col3>p3</col3><col4>c1</col4></child>";
            //the child table data must not be repeated.
            Assert.Equal(dataset_xml.IndexOf(child_xml), dataset_xml.LastIndexOf(child_xml));
        }
Пример #13
0
        public void ReadXml_Diffgram_MissingSchema()
        {
            DataSet ds = new DataSet();
            ds.Tables.Add("table");
            ds.Tables[0].Columns.Add("col1");
            ds.Tables[0].Columns.Add("col2");

            ds.Tables[0].Rows.Add(new object[] { "a", "b" });
            ds.Tables[0].Rows.Add(new object[] { "a", "b" });

            MemoryStream ms = new MemoryStream();
            ds.WriteXml(ms, XmlWriteMode.DiffGram);

            DataSet ds1 = new DataSet();
            ds1.Tables.Add("table");
            ds1.Tables[0].Columns.Add("col1");

            // When table schema is missing, it shud load up the data
            // for the existing schema
            ds1.ReadXml(new MemoryStream(ms.GetBuffer()), XmlReadMode.DiffGram);

            Assert.Equal(2, ds1.Tables[0].Rows.Count);
            Assert.Equal(1, ds1.Tables[0].Columns.Count);
            Assert.Equal("a", ds1.Tables[0].Rows[0][0]);
            Assert.Equal("a", ds1.Tables[0].Rows[1][0]);
        }
Пример #14
0
 private void cmb_Save_Click(object sender, RoutedEventArgs e)
 {
     ds.WriteXml(xmlFilePath);
     bindDataGrid();
 }
Пример #15
0
        /// <summary>
        /// Handles the Load event of the DotNetNukeModuleImport control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param>
        private void DotNetNukeModuleImport_Load(object sender, EventArgs e)
        {
            this.btnImportUsers.Text  = Localization.GetString("ImportNow.Text", this.LocalResourceFile);
            this.Close.Text           = Localization.GetString("Close.Text", this.LocalResourceFile);
            this.btnAddScheduler.Text = Localization.GetString("InstallSheduler.Text", this.LocalResourceFile);

            try
            {
                this.boardId = this.Settings["forumboardid"].ToType <int>();
            }
            catch (Exception)
            {
                this.boardId = 1;
            }

            if (this.IsPostBack || GetIdOfScheduleClient(TypeFullName) <= 0)
            {
                return;
            }

            var importFile = "{0}App_Data/YafImports.xml".FormatWith(HttpRuntime.AppDomainAppPath);

            var dsSettings = new DataSet();

            try
            {
                dsSettings.ReadXml(importFile);
            }
            catch (Exception)
            {
                var file = new FileStream(importFile, FileMode.Create);
                var sw   = new StreamWriter(file);

                sw.WriteLine("<?xml version=\"1.0\" encoding=\"utf-8\" ?>");
                sw.WriteLine("<YafImports>");
                sw.WriteLine("<Import PortalId=\"{0}\" BoardId=\"{1}\"/>".FormatWith(this.PortalId, this.boardId));
                sw.WriteLine("</YafImports>");

                sw.Close();
                file.Close();
            }

            var updateXml = false;

            foreach (DataRow oRow in dsSettings.Tables[0].Rows)
            {
                int iPortal = oRow["PortalId"].ToType <int>();
                int iBoard  = oRow["BoardId"].ToType <int>();

                if (iPortal.Equals(this.PortalId) && iBoard.Equals(this.boardId))
                {
                    updateXml = false;
                    break;
                }

                updateXml = true;
            }

            if (updateXml)
            {
                DataRow dr = dsSettings.Tables["Import"].NewRow();

                dr["PortalId"] = this.PortalId.ToString();
                dr["BoardId"]  = this.boardId.ToString();

                dsSettings.Tables[0].Rows.Add(dr);

                dsSettings.WriteXml(importFile);
            }

            this.btnAddScheduler.CommandArgument = "delete";
            this.btnAddScheduler.Text            = Localization.GetString("DeleteSheduler.Text", this.LocalResourceFile);
        }
        private void btnNewTransfer_Click(object sender, EventArgs e)
        {
            try
            {
                String FileName              = "";
                String StrCheckRoll          = "";
                String StrTeaBook            = "";
                String StrFieldDiary         = "";
                String StrBinBalances        = "";
                String StrEstateSales        = "";
                String StrGratis             = "";
                String StrSiftedTeas         = "";
                String StrInterEstateCropIn  = "";
                String StrInterEstateCropOut = "";
                String StrYieldDiary         = "";
                String StrBoughtLeaf         = "";
                String StrBoughtLeafPayments = "";
                String CashWork              = "";
                String StrDailyBinBalance    = "";
                String StrCropAdjustment     = "";
                String StrRefusedTea         = "";
                String StrInvoiceDispatch    = "";
                String StrTeaReturn          = "";
                String StrEmpMaster          = "";

                if (MessageBox.Show("Do you want to send your data to BPL Head Office? Make sure you have valid internet connection to proceed.", "Confirmation", MessageBoxButtons.YesNo) == DialogResult.Yes)
                {
                    Boolean UpdateSuccess                = true;
                    Boolean ChkDataAvailable             = false;
                    Boolean chkCashDataAvailable         = false;
                    Boolean chkAmalgamationDataAvailable = false;
                    String  strEmailBody = "<ul>";
                    lblStatus.Visible = true;

                    #region Checkroll
                    if (UpdateSuccess == true)
                    {
                        if (true)
                        {
                            if (chkCheckroll.Checked)
                            {
                                //if (myTransfer.IsConfirmationsOK(dtDate.Value.Date, dtToDate.Value.Date))
                                //{
                                lblStatus.Text = "Sending Check Roll Data...";
                                //lblConnection.Visible = true;
                                Application.DoEvents();

                                myTransfer.DatDateEntered = dtDate.Value.Date;
                                myTransfer.DatToDate      = dtToDate.Value.Date;


                                //DataTable dt = myTransfer.ListPendingCheckRollData();
                                DataTable dt = myTransfer.ListPendingCheckRollDataFromOLAX();
                                if (dt.Rows.Count > 0)
                                {
                                    dt.TableName = "checkroll";
                                    dt.WriteXml("checkroll.xml");
                                    FileName = "checkroll" + dtDate.Value.Day.ToString() + dtDate.Value.Month.ToString() + dtDate.Value.Year.ToString() + ".zip";
                                    Compress("checkroll.xml", FileName);

                                    UpdateSuccess    = Upload(FileName);
                                    StrCheckRoll     = "Check Roll Transffered from " + dtDate.Value.Date.ToShortDateString() + " To " + dtToDate.Value.Date.ToShortDateString();
                                    ChkDataAvailable = true;
                                    UpdateSuccess    = true;
                                    lblStatus.Text   = "Checkroll Normal Work Data Transfered";
                                    Application.DoEvents();
                                    strEmailBody += "<li> Checkroll-NormalWork " + "From:" + dtDate.Value.ToShortDateString() + " To:" + dtToDate.Value.ToShortDateString() + "</li>";
                                }

                                else
                                {
                                    MessageBox.Show("No Checkroll Normal Data For The Selected Date Range");
                                    UpdateSuccess  = false;
                                    lblStatus.Text = "Normal Work Data Transfer Failed";
                                    Application.DoEvents();
                                }


                                dt.Dispose();
                                //}
                                //else
                                //{
                                //    MessageBox.Show("Transfer Failed, Some Date Confirmations Pending..");
                                //}
                            }
                            /**/
                        }
                    }
                    #endregion

                    #region CashWork
                    if (UpdateSuccess == true)
                    {
                        if (true)
                        {
                            if (chkCashWork.Checked)
                            {
                                lblStatus.Text = "Sending Cash Work Data...";
                                Application.DoEvents();
                                DataTable dt;
                                myTransfer.DatDateEntered = dtDate.Value.Date;
                                myTransfer.DatToDate      = dtToDate.Value.Date;

                                /*get checkroll from OLAX or CHECKROLL*/
                                //if (myTransfer.IsCheckrollFromOLAXCheckroll())
                                //{
                                dt = myTransfer.getCashWorkFromOLAX();
                                //}
                                //else
                                //{
                                //    dt = myTransfer.getCashWork();
                                //}
                                if (dt.Rows.Count > 0)
                                {
                                    dt.TableName = "CashWork";
                                    dt.WriteXml("CashWork.xml");
                                    FileName = "CashWork" + dtDate.Value.Day.ToString() + dtDate.Value.Month.ToString() + dtDate.Value.Year.ToString() + ".zip";
                                    Compress("CashWork.xml", FileName);

                                    UpdateSuccess        = Upload(FileName);
                                    CashWork             = "Cash Work Transffered from " + dtDate.Value.Date.ToShortDateString() + " To " + dtToDate.Value.Date.ToShortDateString();
                                    chkCashDataAvailable = true;
                                    lblStatus.Text       = "Cash Work Data Transfered";
                                    Application.DoEvents();
                                    strEmailBody += "<li>Checkroll-CashWork " + "From:" + dtDate.Value.ToShortDateString() + " To:" + dtToDate.Value.ToShortDateString() + "</li>";
                                }
                                else
                                {
                                    MessageBox.Show("No Checkroll Cash Work Data For The Selected Date Range");
                                    UpdateSuccess  = false;
                                    lblStatus.Text = "Cash Work Data Transfer Failed";
                                    Application.DoEvents();
                                }

                                dt.Dispose();
                            }
                        }
                    }
                    #endregion

                    #region Amalgamation
                    if (UpdateSuccess == true)
                    {
                        if (chkAmalgamation.Checked)
                        {
                            DataTable dt1 = myTransfer.ListPendingAmalgamationSummary(dtDate.Value.Date.Year, dtDate.Value.Date.Month).Tables[0];
                            if (dt1.Rows.Count > 0)
                            {
                                dt1.TableName = "amalgamation";
                                dt1.WriteXml("amalgamation.xml");
                                FileName = "amalgamation" + dtDate.Value.Day.ToString() + dtDate.Value.Month.ToString() + dtDate.Value.Year.ToString() + ".zip";
                                Compress("amalgamation.xml", FileName);

                                UpdateSuccess        = Upload(FileName);
                                StrCheckRoll         = "Amalgamation Transfer";
                                chkCashDataAvailable = true;
                                lblStatus.Text       = "Amalgamation Data Transfered";
                                Application.DoEvents();
                                strEmailBody += "<li> Amalgamation  " + "Year:" + dtDate.Value.Year.ToString() + " Month:" + dtDate.Value.Month.ToString() + "</li>";
                            }
                            else
                            {
                                MessageBox.Show("No Amalgamation Data For The Selected Date Range");
                                UpdateSuccess  = false;
                                lblStatus.Text = "Amalgamation Data Transfer Failed";
                                Application.DoEvents();
                            }

                            dt1.Dispose();
                        }
                    }
                    #endregion

                    #region EmployeeMaster
                    /*Transfer Employee Master*/
                    if (UpdateSuccess == true)
                    {
                        if (true)
                        {
                            if (chkEmpMaster.Checked)
                            {
                                lblStatus.Text = "Sending Employee Master Data...";
                                //lblConnection.Visible = true;
                                Application.DoEvents();

                                myTransfer.DatDateEntered = dtDate.Value.Date;
                                myTransfer.DatToDate      = dtToDate.Value.Date;


                                //DataTable dt = myTransfer.ListPendingCheckRollData();
                                DataTable dt = myTransfer.ListEmpMasterData();
                                if (dt.Rows.Count > 0)
                                {
                                    dt.TableName = "OLAXEmp";
                                    dt.WriteXml("OLAXEmp.xml");
                                    FileName = "OLAXEmp" + dtDate.Value.Day.ToString() + dtDate.Value.Month.ToString() + dtDate.Value.Year.ToString() + ".zip";
                                    Compress("OLAXEmp.xml", FileName);

                                    UpdateSuccess    = Upload(FileName);
                                    StrCheckRoll     = "Employee Master Data Transffered ";
                                    ChkDataAvailable = true;
                                    UpdateSuccess    = true;
                                    lblStatus.Text   = "Employee Master Data Transffered";
                                    Application.DoEvents();
                                    strEmailBody += "<li> Employee Master Data  " + "To Date" + DateTime.Now.Date.ToShortDateString() + "</li>";
                                }
                                else
                                {
                                    MessageBox.Show("No Employee Master Data To Transfer");
                                    UpdateSuccess  = false;
                                    lblStatus.Text = "Normal Work Data Transfer Failed";
                                    Application.DoEvents();
                                }

                                dt.Dispose();
                            }

                            /**/
                        }
                    }
                    #endregion


                    #region Checkroll Summary
                    /*Summary*/
                    if (UpdateSuccess == true)
                    {
                        if (true)
                        {
                            if (chkMonthlySummary.Checked)
                            {
                                lblStatus.Text = "Sending Check Roll Monthly Summary....";
                                //lblConnection.Visible = true;
                                Application.DoEvents();

                                myTransfer.DatDateEntered = dtDate.Value.Date;
                                myTransfer.DatToDate      = dtToDate.Value.Date;

                                //if (UpdateSuccess == true)
                                //{
                                //    DataSet ds = myTransfer.ListCheckrollEstateFields();

                                //    ds.WriteXml("ChkFields.xml");
                                //    FileName = "ChkFields" + dtDate.Value.Day.ToString() + dtDate.Value.Month.ToString() + dtDate.Value.Year.ToString() + ".zip";
                                //    CompressToFirstFolder("ChkFields.xml", FileName);
                                //    UpdateSuccess = Upload(FileName);
                                //    ds.Dispose();
                                //}
                                //send only if processed the checkroll
                                if (myTransfer.IsCheckrollProcessed(dtToDate.Value.Year, dtToDate.Value.Month))
                                {
                                    #region EmpEarnings
                                    if (UpdateSuccess == true)
                                    {
                                        DataSet ds = myTransfer.ListCheckRollMonthlyEarnings(dtDate.Value.Year, dtDate.Value.Month);

                                        ds.WriteXml("EMEarnings.xml");
                                        FileName = "EMEarnings" + dtDate.Value.Day.ToString() + dtDate.Value.Month.ToString() + dtDate.Value.Year.ToString() + ".zip";
                                        Compress("EMEarnings.xml", FileName);
                                        UpdateSuccess  = Upload(FileName);
                                        lblStatus.Text = "Emp Monthly Earnings Transfered";
                                        Application.DoEvents();
                                        strEmailBody += "<li> Emp Monthly Earnings  " + "Year:" + dtDate.Value.Year.ToString() + " Month:" + dtDate.Value.Month.ToString() + "</li>";
                                        ds.Dispose();
                                    }
                                    #endregion

                                    #region CHKEmpDeductions_CRRecoveries
                                    DataTable dt = myTransfer.ListCheckRollRecoveries(dtDate.Value.Year, dtDate.Value.Month);
                                    if (dt.Rows.Count > 0)
                                    {
                                        dt.TableName = "CRRecoveries";
                                        dt.WriteXml("CRRecoveries.xml");
                                        FileName = "CRRecoveries" + dtDate.Value.Day.ToString() + dtDate.Value.Month.ToString() + dtDate.Value.Year.ToString() + ".zip";
                                        Compress("CRRecoveries.xml", FileName);
                                        UpdateSuccess  = Upload(FileName);
                                        lblStatus.Text = "Checkroll Recoveries Transfered";
                                        Application.DoEvents();
                                        strEmailBody += "<li> Checkroll Recoveries  " + "Year:" + dtDate.Value.Year.ToString() + " Month:" + dtDate.Value.Month.ToString() + "</li>";
                                    }
                                    dt.Dispose();
                                    #endregion

                                    #region EmpDeductions
                                    if (UpdateSuccess == true)
                                    {
                                        DataSet ds = myTransfer.ListCheckRollMonthlyDeductions(dtDate.Value.Year, dtToDate.Value.Month);

                                        ds.WriteXml("EMDeductions.xml");
                                        FileName = "EMDeductions" + dtDate.Value.Day.ToString() + dtDate.Value.Month.ToString() + dtDate.Value.Year.ToString() + ".zip";
                                        Compress("EMDeductions.xml", FileName);
                                        UpdateSuccess  = Upload(FileName);
                                        lblStatus.Text = "Emp Monthly Deductions Transfered";
                                        Application.DoEvents();
                                        strEmailBody += "<li> Emp Monthly Deductions  " + "Year:" + dtDate.Value.Year.ToString() + " Month:" + dtDate.Value.Month.ToString() + "</li>";
                                        ds.Dispose();
                                    }
                                    #endregion

                                    #region EmpFinlaPay_CRFinal
                                    if (UpdateSuccess == true)
                                    {
                                        DataSet ds = myTransfer.ListCheckRollFinalPay(dtDate.Value.Year, dtToDate.Value.Month);

                                        ds.WriteXml("CRFinalPay.xml");
                                        FileName = "CRFinalPay" + dtDate.Value.Day.ToString() + dtDate.Value.Month.ToString() + dtDate.Value.Year.ToString() + ".zip";
                                        Compress("CRFinalPay.xml", FileName);
                                        UpdateSuccess  = Upload(FileName);
                                        lblStatus.Text = "Emp Monthly Final Payment Transfered";
                                        Application.DoEvents();
                                        strEmailBody += "<li> Emp Monthly Final Payment  " + "Year:" + dtDate.Value.Year.ToString() + " Month:" + dtDate.Value.Month.ToString() + "</li>";
                                        ds.Dispose();
                                    }
                                    #endregion
                                }
                                else
                                {
                                    MessageBox.Show("Month Checkroll Must Process  To Transfer Summary ");
                                }
                            }
                        }
                    }


                    /**/
                    #endregion

                    #region RFTDeductions
                    if (UpdateSuccess == true)
                    {
                        DataSet ds = myTransfer.ListCheckRollRFTDeductions(dtDate.Value.Year, dtToDate.Value.Month);

                        ds.WriteXml("RFTDeductions.xml");
                        FileName = "RFTDeductions" + dtDate.Value.Day.ToString() + dtDate.Value.Month.ToString() + dtDate.Value.Year.ToString() + ".zip";
                        Compress("RFTDeductions.xml", FileName);
                        UpdateSuccess  = Upload(FileName);
                        lblStatus.Text = "Food Stuf Deductions Transfered";
                        Application.DoEvents();
                        strEmailBody += "<li> Food Stuff Deductions  " + "Year:" + dtDate.Value.Year.ToString() + " Month:" + dtDate.Value.Month.ToString() + "</li>";
                        ds.Dispose();
                    }
                    #endregion
                    #region OverTime

                    if (UpdateSuccess == true)
                    {
                        DataTable dt = myTransfer.ListCheckRollMonthlyOverTime(dtDate.Value.Date, dtToDate.Value.Date);
                        if (dt.Rows.Count > 0)
                        {
                            dt.TableName = "CROvertime";
                            dt.WriteXml("CROvertime.xml");
                            FileName = "CROvertime" + dtDate.Value.Day.ToString() + dtDate.Value.Month.ToString() + dtDate.Value.Year.ToString() + ".zip";
                            Compress("CROvertime.xml", FileName);
                            UpdateSuccess  = Upload(FileName);
                            lblStatus.Text = "Overtime Entries Transfered";
                            Application.DoEvents();
                            strEmailBody += "<li> Overtime   " + "From:" + dtDate.Value.ToShortDateString() + " To:" + dtDate.Value.ToShortDateString() + "</li>";
                        }
                    }
                    #endregion


                    Application.DoEvents();

                    //try
                    //{
                    //    if ((StrCheckRoll != "") )
                    //    {
                    //        String EstateName = myEstate.ListEstates().Rows[0][0].ToString();
                    //        String EmailAddress = myEstate.getManagerEmailAddress();
                    //        MailMessage message = new MailMessage();
                    //        message.From = new MailAddress("*****@*****.**");

                    //        message.To.Add(new MailAddress("*****@*****.**"));
                    //        message.Bcc.Add(new MailAddress("*****@*****.**"));
                    //        //message.Bcc.Add(new MailAddress("*****@*****.**"));

                    //        message.Subject = "Data Upload Status report - " + EstateName;
                    //        message.Body = "Do not reply to this mail, as this is generated automatically from the data server - OLAX Studio \r\n" + "Data Received from " + EstateName + " Estate Successfully " + "at " + dtpnew.Value.ToShortDateString() + " " + dtpnew.Value.ToShortTimeString() + "\r\n" +
                    //        " " + StrBinBalances + "\r\n" + StrBoughtLeaf + "\r\n" + StrBoughtLeafPayments + "\r\n" + StrCheckRoll + "\r\n" + StrEstateSales + "\r\n" + StrFieldDiary + "\r\n" + StrGratis + "\r\n" + StrInterEstateCropIn + "\r\n" + StrInterEstateCropOut + "\r\n" + StrSiftedTeas + "\r\n" + StrTeaBook + "\r\n" + StrYieldDiary + "\r\n" + CashWork + "\r\n" + StrClimaticConditions + "\r\n" + StrDailyBinBalance + "\r\n" + StrCropAdjustment + "\r\n" + StrRefusedTea + "\r\n" + StrInvoiceDispatch + "\r\n" + StrAmalgamation + "\r\n" + StrTeaReturn + "\r\n" + StrEmpMaster;
                    //        message.IsBodyHtml = true;

                    //        SmtpClient client = new SmtpClient("smtp.gmail.com");
                    //        client.EnableSsl = true;
                    //        client.UseDefaultCredentials = false;
                    //        client.Credentials = new System.Net.NetworkCredential("*****@*****.**", "pass1234");
                    //        try
                    //        {
                    //            client.Send(message);
                    //        }
                    //        catch (Exception ex)
                    //        {
                    //            MessageBox.Show("Your Mail has Failed...!");
                    //        }
                    //    }

                    //    if ((StrEstateFieldExtent != "") || (StrItemCategory != "") || (StrAssetName != "") || (StrJobCategory != "") || (StrProductionBudget != "") || (StrPerformanceBudget != "") || (StrManDaysBudget != "") || (StrFieldAndCultivationBudget != "") || (StrNitrogenRatioBudget != "") || (StrCostingBudget != "") || (StrRainFallDecennialAverage != "") || (StrLabourCount != "") || (StrFactoryStockBook != "") || (StrTeaNurseryDetails != "") || (StrAssetMaintenance != "") || (StrPayments != "") || (StrNitrogenRatio != "") || (StrSundryWorkEntryActual != "") || (StrOverTimeDetails != "") || (StrFertilizer != "") || (StrItemCategory != "") || (StrOfferedDays != ""))
                    //    {
                    //        SendProgressReportDataMail();
                    //    }
                    //}
                    //catch (Exception ex)
                    //{

                    //}

                    if (UpdateSuccess == true)
                    {
                        MessageBox.Show("Data Uploaded successfully!");
                        try
                        {
                            sendSuccessEmail(strEmailBody);
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show("Email failed.", ex.Message);
                        }
                    }
                    else
                    {
                        MessageBox.Show("Data Uploading Process Failed. Please Re Submit Data...!");
                    }

                    lblStatus.Visible = false;
                    //lblConnection.Visible = false;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Пример #17
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            string type = "";
            if (Request["TYPE"] == null)
            {
                return;
            }
            type = Request["TYPE"];
            switch (type)
            {
            case "1":    //获取完工单查询的批次号条件
                DataSet ds = null;
                try
                {
                    ds = WGDQuery.GetPCHTerm();
                }
                catch (Exception ex)
                {
                    string a = ex.Message;
                    Response.Write("ERROR");
                }
                if (ds != null)
                {
                    try
                    {
                        XmlTextWriter writer = new XmlTextWriter(Response.OutputStream, Response.ContentEncoding);
                        writer.Formatting  = Formatting.Indented;
                        writer.Indentation = 4;
                        writer.IndentChar  = ' ';
                        ds.WriteXml(writer);
                        writer.Flush();
                        writer.Close();
                        Response.End();
                    }
                    catch
                    { }
                }
                break;

            case "2":    //获取完工单查询的特殊信息条件
                DataSet ds2 = null;
                try
                {
                    string pchXX = "";
                    if (!string.IsNullOrEmpty(Request["PCH"]))
                    {
                        pchXX = Request["PCH"];
                    }
                    ds2 = WGDQuery.GetPCInfo(pchXX);
                }
                catch (Exception ex)
                {
                    string a = ex.Message;
                    Response.Write("ERROR");
                }
                if (ds2 != null)
                {
                    try
                    {
                        XmlTextWriter writer = new XmlTextWriter(Response.OutputStream, Response.ContentEncoding);
                        writer.Formatting  = Formatting.Indented;
                        writer.Indentation = 4;
                        writer.IndentChar  = ' ';
                        ds2.WriteXml(writer);
                        writer.Flush();
                        writer.Close();
                        Response.End();
                    }
                    catch
                    { }
                }
                break;

            case "3":    //批次属性的查询条件
                DataSet ds3 = null;
                try
                {
                    ds3 = WGDQuery.GetPCSX();
                }
                catch (Exception ex)
                {
                    string a = ex.Message;
                    Response.Write("ERROR");
                }
                if (ds3 != null)
                {
                    try
                    {
                        XmlTextWriter writer = new XmlTextWriter(Response.OutputStream, Response.ContentEncoding);
                        writer.Formatting  = Formatting.Indented;
                        writer.Indentation = 4;
                        writer.IndentChar  = ' ';
                        ds3.WriteXml(writer);
                        writer.Flush();
                        writer.Close();
                        Response.End();
                    }
                    catch
                    { }
                }
                break;

            case "4":    //物料号的查询条件
                DataSet ds4 = null;
                try
                {
                    ds4 = WGDQuery.GetWLH();
                }
                catch (Exception ex)
                {
                    string a = ex.Message;
                    Response.Write("ERROR");
                }
                if (ds4 != null)
                {
                    try
                    {
                        XmlTextWriter writer = new XmlTextWriter(Response.OutputStream, Response.ContentEncoding);
                        writer.Formatting  = Formatting.Indented;
                        writer.Indentation = 4;
                        writer.IndentChar  = ' ';
                        ds4.WriteXml(writer);
                        writer.Flush();
                        writer.Close();
                        Response.End();
                    }
                    catch
                    { }
                }
                break;

            case "5":    //生产线
                DataSet ds5 = null;
                try
                {
                    ds5 = WGDQuery.GetSCX();
                }
                catch (Exception ex)
                {
                    string a = ex.Message;
                    Response.Write("ERROR");
                }
                if (ds5 != null)
                {
                    try
                    {
                        XmlTextWriter writer = new XmlTextWriter(Response.OutputStream, Response.ContentEncoding);
                        writer.Formatting  = Formatting.Indented;
                        writer.Indentation = 4;
                        writer.IndentChar  = ' ';
                        ds5.WriteXml(writer);
                        writer.Flush();
                        writer.Close();
                        Response.End();
                    }
                    catch
                    { }
                }
                break;

            case "6":    //生产线
                DataSet ds6 = null;
                try
                {
                    ds6 = WGDQuery.GetPH();
                }
                catch (Exception ex)
                {
                    string a = ex.Message;
                    Response.Write("ERROR");
                }
                if (ds6 != null)
                {
                    try
                    {
                        XmlTextWriter writer = new XmlTextWriter(Response.OutputStream, Response.ContentEncoding);
                        writer.Formatting  = Formatting.Indented;
                        writer.Indentation = 4;
                        writer.IndentChar  = ' ';
                        ds6.WriteXml(writer);
                        writer.Flush();
                        writer.Close();
                        Response.End();
                    }
                    catch
                    { }
                }
                break;

            case "7":    //规格
                DataSet ds7 = null;
                try
                {
                    ds7 = WGDQuery.GetGG();
                }
                catch (Exception ex)
                {
                    string a = ex.Message;
                    Response.Write("ERROR");
                }
                if (ds7 != null)
                {
                    try
                    {
                        XmlTextWriter writer = new XmlTextWriter(Response.OutputStream, Response.ContentEncoding);
                        writer.Formatting  = Formatting.Indented;
                        writer.Indentation = 4;
                        writer.IndentChar  = ' ';
                        ds7.WriteXml(writer);
                        writer.Flush();
                        writer.Close();
                        Response.End();
                    }
                    catch
                    { }
                }
                break;

            case "8":    //完工单号
                DataSet ds8 = null;
                try
                {
                    ds8 = WGDQuery.GetWGDH();
                }
                catch (Exception ex)
                {
                    string a = ex.Message;
                    Response.Write("ERROR");
                }
                if (ds8 != null)
                {
                    try
                    {
                        XmlTextWriter writer = new XmlTextWriter(Response.OutputStream, Response.ContentEncoding);
                        writer.Formatting  = Formatting.Indented;
                        writer.Indentation = 4;
                        writer.IndentChar  = ' ';
                        ds8.WriteXml(writer);
                        writer.Flush();
                        writer.Close();
                        Response.End();
                    }
                    catch
                    { }
                }
                break;

            case "9":    //完工单号
                DataSet ds9 = null;
                try
                {
                    ds9 = WGDQuery.GetZJR();
                }
                catch (Exception ex)
                {
                    string a = ex.Message;
                    Response.Write("ERROR");
                }
                if (ds9 != null)
                {
                    try
                    {
                        XmlTextWriter writer = new XmlTextWriter(Response.OutputStream, Response.ContentEncoding);
                        writer.Formatting  = Formatting.Indented;
                        writer.Indentation = 4;
                        writer.IndentChar  = ' ';
                        ds9.WriteXml(writer);
                        writer.Flush();
                        writer.Close();
                        Response.End();
                    }
                    catch
                    { }
                }
                break;

            case "10":
                DataSet ds10       = null;
                string  fFYDH      = Request["fydh"].ToString();
                string  fck        = Request["ck"].ToString();
                string  fstrWLH    = Request["wlh"].ToString();
                string  fstrSX     = Request["sx"].ToString();
                string  fstrVfree1 = Request["vfree1"].ToString();
                string  fstrVfree2 = Request["vfree2"].ToString();
                string  fstrVfree3 = Request["vfree3"].ToString();
                string  res10      = "";
                try
                {
                    ds10 = FYDQuery.GetQueryFYDKYHW(fFYDH, fck, fstrWLH, fstrSX, fstrVfree1, fstrVfree2, fstrVfree3);
                    //                        <th>仓库</th>
                    //<th>货位</th>
                    //<th>物料号</th>
                    //<th>物料名称</th>
                    //<th>属性</th>
                    //<th>牌号</th>
                    //<th>规格</th>
                    //<th>特殊信息</th>
                    //<th>重量</th>
                    //<th>数量</th>
                    //<th>自由项1</th>
                    //<th>自由项2</th>
                    //<th>自由项3</th>
                    res10 = "<table width=\"800px;\" id=\"grvstand\" border=\"1\" cellpadding=\"1\" cellspacing=\"0\" bordercolor =\"#dce8f4\">" +
                            "<thead id=\"djlist\">" +
                            "<tr>" +
                            "<th bgcolor=\"#dce8f4\">仓库</th>" +
                            "<th bgcolor=\"#dce8f4\">货位</th>" +
                            "<th bgcolor=\"#dce8f4\">物料号</th>" +
                            "<th bgcolor=\"#dce8f4\" width=\"120px\">称重日期</th>" +
                            "<th bgcolor=\"#dce8f4\">物料名称</th>" +
                            "<th bgcolor=\"#dce8f4\">批次号</th>" +
                            "<th bgcolor=\"#dce8f4\">属性</th>" +
                            "<th bgcolor=\"#dce8f4\">牌号</th>" +
                            "<th bgcolor=\"#dce8f4\">规格</th>" +
                            "<th bgcolor=\"#dce8f4\">特殊信息</th>" +
                            "<th bgcolor=\"#dce8f4\">重量</th>" +
                            "<th bgcolor=\"#dce8f4\">数量</th>" +
                            "<th bgcolor=\"#dce8f4\">自由项1</th>" +
                            "<th bgcolor=\"#dce8f4\">自由项2</th>" +
                            "<th bgcolor=\"#dce8f4\">自由项3</th>" +
                            "</tr>" +
                            "</thead><tbody id=\"djlist\">";
                    if (ds10 != null && ds10.Tables.Count > 0 && ds10.Tables[0].Rows.Count > 0)
                    {
                        foreach (DataRow dr in ds10.Tables[0].Rows)
                        {
                            res10 += "<tr><td>" + dr["ck"].ToString() +
                                     "</td><td>" + dr["hw"].ToString() +
                                     "</td><td>" + dr["wlh"].ToString() +
                                     "</td><td>" + dr["rq"].ToString() +
                                     "</td><td>" + dr["wlmc"].ToString() +
                                     "</td><td>" + dr["pch"].ToString() +
                                     "</td><td>" + dr["sx"].ToString() +
                                     "</td><td>" + dr["ph"].ToString() +
                                     "</td><td>" + dr["gg"].ToString() +
                                     "</td><td>" + dr["pcinfo"].ToString() +
                                     "</td><td>" + dr["zls"].ToString() +
                                     "</td><td>" + dr["num"].ToString() +
                                     "</td><td>" + dr["vfree1"].ToString() +
                                     "</td><td>" + dr["vfree2"].ToString() +
                                     "</td><td>" + dr["vfree3"].ToString() +
                                     "</td></tr>";
                        }
                    }
                    res10 += "</tbody></table>";
                }
                catch (System.Exception ex)
                {
                    res10 = "ERROR" + ex.Message;
                }
                Response.Write(res10);
                Response.End();
                break;
            }
        }
    }
Пример #18
0
 public void ReadWriteXml2()
 {
     string xml = "<FullTextResponse><Domains><AvailResponse info='y' name='novell-ximian-group' /><AvailResponse info='n' name='ximian' /></Domains></FullTextResponse>";
     var ds = new DataSet();
     ds.ReadXml(new StringReader(xml));
     AssertDataSet("ds", ds, "FullTextResponse", 2, 1);
     DataTable dt = ds.Tables[0];
     AssertDataTable("dt1", dt, "Domains", 1, 1, 0, 1, 1, 1);
     dt = ds.Tables[1];
     AssertDataTable("dt2", dt, "AvailResponse", 3, 2, 1, 0, 1, 0);
     StringWriter sw = new StringWriter();
     XmlTextWriter xtw = new XmlTextWriter(sw);
     xtw.QuoteChar = '\'';
     ds.WriteXml(xtw);
     Assert.Equal(xml, sw.ToString());
 }
Пример #19
0
        public void DataSetExtendedPropertiesTest()
        {
            DataSet dataSet1 = new DataSet();

            dataSet1.ExtendedProperties.Add("DS1", "extended0");
            DataTable table = new DataTable("TABLE1");

            table.ExtendedProperties.Add("T1", "extended1");
            table.Columns.Add("C1", typeof(int));
            table.Columns.Add("C2", typeof(string));
            table.Columns[1].MaxLength = 20;
            table.Columns[0].ExtendedProperties.Add("C1Ext1", "extended2");
            table.Columns[1].ExtendedProperties.Add("C2Ext1", "extended3");
            dataSet1.Tables.Add(table);
            table.LoadDataRow(new object[] { 1, "One" }, false);
            table.LoadDataRow(new object[] { 2, "Two" }, false);
            string file = Path.Combine(Path.GetTempPath(), "schemas-test.xml");

            try
            {
                dataSet1.WriteXml(file, XmlWriteMode.WriteSchema);
            }
            catch (Exception ex)
            {
                Assert.False(true);
            }
            finally
            {
                File.Delete(file);
            }

            DataSet dataSet2 = new DataSet();

            dataSet2.ReadXml(new StringReader(
                                 @"<?xml version=""1.0"" standalone=""yes""?>
                <NewDataSet>
                  <xs:schema id=""NewDataSet"" xmlns=""""
                xmlns:xs=""http://www.w3.org/2001/XMLSchema""
                xmlns:msdata=""urn:schemas-microsoft-com:xml-msdata""
                xmlns:msprop=""urn:schemas-microsoft-com:xml-msprop"">
                    <xs:element name=""NewDataSet"" msdata:IsDataSet=""true""
                msdata:UseCurrentLocale=""true"" msprop:DS1=""extended0"">
                      <xs:complexType>
                        <xs:choice minOccurs=""0"" maxOccurs=""unbounded"">
                          <xs:element name=""TABLE1"" msprop:T1=""extended1"">
                            <xs:complexType>
                              <xs:sequence>
                                <xs:element name=""C1"" type=""xs:int"" minOccurs=""0""
                msprop:C1Ext1=""extended2"" />
                                <xs:element name=""C2"" type=""xs:string"" minOccurs=""0""
                msprop:C2Ext1=""extended3"" />
                              </xs:sequence>
                            </xs:complexType>
                          </xs:element>
                        </xs:choice>
                      </xs:complexType>
                    </xs:element>
                  </xs:schema>
                  <TABLE1>
                    <C1>1</C1>
                    <C2>One</C2>
                  </TABLE1>
                  <TABLE1>
                    <C1>2</C1>
                    <C2>Two</C2>
                  </TABLE1>
                </NewDataSet>"), XmlReadMode.ReadSchema);
            Assert.Equal(dataSet1.ExtendedProperties["DS1"], dataSet2.ExtendedProperties["DS1"]);

            Assert.Equal(dataSet1.Tables[0].ExtendedProperties["T1"], dataSet2.Tables[0].ExtendedProperties["T1"]);
            Assert.Equal(dataSet1.Tables[0].Columns[0].ExtendedProperties["C1Ext1"],
                         dataSet2.Tables[0].Columns[0].ExtendedProperties["C1Ext1"]);
            Assert.Equal(dataSet1.Tables[0].Columns[1].ExtendedProperties["C2Ext1"],
                         dataSet2.Tables[0].Columns[1].ExtendedProperties["C2Ext1"]);
        }
Пример #20
0
        public void WriteXmlModeSchema1()
        {
            string SerializedDataTable =
@"<rdData>
  <MyDataTable CustomerID='VINET' CompanyName='Vins et alcools Chevalier' ContactName='Paul Henriot' />
</rdData>";
            string expected =
@"<rdData>
  <xs:schema id=""rdData"" xmlns="""" xmlns:xs=""http://www.w3.org/2001/XMLSchema"" xmlns:msdata=""urn:schemas-microsoft-com:xml-msdata"">
    <xs:element name=""rdData"" msdata:IsDataSet=""true"" " +
              @"msdata:Locale=""en-US"">" +
@"
      <xs:complexType>
        <xs:choice minOccurs=""0"" maxOccurs=""unbounded"">
          <xs:element name=""MyDataTable"">
            <xs:complexType>
              <xs:attribute name=""CustomerID"" type=""xs:string"" />
              <xs:attribute name=""CompanyName"" type=""xs:string"" />
              <xs:attribute name=""ContactName"" type=""xs:string"" />
            </xs:complexType>
          </xs:element>
        </xs:choice>
      </xs:complexType>
    </xs:element>
  </xs:schema>
  <MyDataTable CustomerID=""VINET"" CompanyName=""Vins et alcools Chevalier"" ContactName=""Paul Henriot"" />
</rdData>";
            DataSet set;
            set = new DataSet();
            set.ReadXml(new StringReader(SerializedDataTable));

            StringWriter w = new StringWriter();
            set.WriteXml(w, XmlWriteMode.WriteSchema);
            string result = w.ToString();
            Assert.Equal(expected.Replace("\r", ""), result.Replace("\r", ""));
        }
Пример #21
0
 private void btnGeraXML_Click(object sender, EventArgs e)
 {
     ds.WriteXml(AppDomain.CurrentDomain.BaseDirectory + "clientes.xml");
     MessageBox.Show("gerado");
 }
Пример #22
0
 public void IgnoreColumnEmptyNamespace()
 {
     DataColumn col = new DataColumn("TEST");
     col.Namespace = "urn:foo";
     DataSet ds = new DataSet("DS");
     ds.Namespace = "urn:foo";
     DataTable dt = new DataTable("tab");
     ds.Tables.Add(dt);
     dt.Columns.Add(col);
     dt.Rows.Add(new object[] { "test" });
     StringWriter sw = new StringWriter();
     ds.WriteXml(new XmlTextWriter(sw));
     string xml = @"<DS xmlns=""urn:foo""><tab><TEST>test</TEST></tab></DS>";
     Assert.Equal(xml, sw.ToString());
 }
Пример #23
0
    private void GenerateCache()
    {
        IIQCareSystem DateManager;

        DateManager = (IIQCareSystem)ObjectFactory.CreateInstance("BusinessProcess.Security.BIQCareSystem, BusinessProcess.Security");
        DateTime theDTime = DateManager.SystemDate();

        System.IO.FileInfo theFileInfo1 = new System.IO.FileInfo(Server.MapPath(".\\XMLFiles\\AllMasters.con").ToString());
        System.IO.FileInfo theFileInfo2 = new System.IO.FileInfo(Server.MapPath(".\\XMLFiles\\DrugMasters.con").ToString());
        System.IO.FileInfo theFileInfo3 = new System.IO.FileInfo(Server.MapPath(".\\XMLFiles\\LabMasters.con").ToString());

        if (theFileInfo1.LastWriteTime.Date != theDTime.Date || theFileInfo2.LastWriteTime.Date != theDTime.Date || theFileInfo3.LastWriteTime.Date != theDTime.Date)
        {
            theFileInfo1.Delete();
            theFileInfo2.Delete();
            theFileInfo3.Delete();
            IIQCareSystem theCacheManager = (IIQCareSystem)ObjectFactory.CreateInstance("BusinessProcess.Security.BIQCareSystem,BusinessProcess.Security");
            DataSet       theMainDS       = theCacheManager.GetSystemCache();
            DataSet       WriteXMLDS      = new DataSet();

            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Provider"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Ward"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Division"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_District"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Reason"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Education"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Designation"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Employee"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Occupation"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Province"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Village"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Code"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_HIVAIDSCareTypes"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_ARTSponsor"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_HivDisease"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Assessment"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Symptom"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Decode"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Feature"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Function"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_HivDisclosure"].Copy());
            //WriteXMLDS.Tables.Add(theMainDS.Tables["mst_Satellite"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_LPTF"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_StoppedReason"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["mst_facility"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_HIVCareStatus"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_RelationshipType"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_TBStatus"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_ARVStatus"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_LostFollowreason"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Regimen"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_CouncellingType"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_CouncellingTopic"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_ReferredFrom"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_pmtctDeCode"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Module"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_ModDecode"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_ARVSideEffects"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_ModCode"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Country"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Town"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["VWDiseaseSymptom"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["VW_ICDList"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["mst_RegimenLine"].Copy());
            WriteXMLDS.WriteXml(Server.MapPath(".\\XMLFiles\\").ToString() + "AllMasters.con", XmlWriteMode.WriteSchema);

            WriteXMLDS.Tables.Clear();
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Strength"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_FrequencyUnits"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Drug"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Generic"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_DrugType"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_Frequency"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_DrugSchedule"].Copy());
            WriteXMLDS.WriteXml(Server.MapPath(".\\XMLFiles\\").ToString() + "DrugMasters.con", XmlWriteMode.WriteSchema);

            WriteXMLDS.Tables.Clear();
            WriteXMLDS.Tables.Add(theMainDS.Tables["Mst_LabTest"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Lnk_TestParameter"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Lnk_LabValue"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["Lnk_ParameterResult"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["LabTestOrder"].Copy());
            WriteXMLDS.Tables.Add(theMainDS.Tables["mst_PatientLabPeriod"].Copy());
            WriteXMLDS.WriteXml(Server.MapPath(".\\XMLFiles\\").ToString() + "LabMasters.con", XmlWriteMode.WriteSchema);
        }
    }
Пример #24
0
        public void WriteXml_Stream()
        {
            {
                var ds = new DataSet();
                string input = "<a><b><c>2</c></b></a>";
                StringReader sr = new StringReader(input);
                XmlTextReader xReader = new XmlTextReader(sr);
                ds.ReadXml(xReader);

                StringBuilder sb = new StringBuilder();
                StringWriter sw = new StringWriter(sb);
                XmlTextWriter xWriter = new XmlTextWriter(sw);
                ds.WriteXml(xWriter);
                string output = sb.ToString();
                Assert.Equal(input, output);
            }
            {
                var ds = new DataSet();
                string input = "<?xml version=\"1.0\" encoding=\"utf-8\" ?><a><b><c>2</c></b></a>";
                string expectedOutput = "<a><b><c>2</c></b></a>";
                StringReader sr = new StringReader(input);
                XmlTextReader xReader = new XmlTextReader(sr);
                ds.ReadXml(xReader);

                StringBuilder sb = new StringBuilder();
                StringWriter sw = new StringWriter(sb);
                XmlTextWriter xWriter = new XmlTextWriter(sw);
                ds.WriteXml(xWriter);
                string output = sb.ToString();
                Assert.Equal(expectedOutput, output);
            }
            {
                DataSet ds = new DataSet("DSName");
                StringWriter sr = new StringWriter();
                ds.WriteXml(sr);
                Assert.Equal("<DSName />", sr.ToString());
            }
            {
                var ds = new DataSet();
                DataTable dt;

                //Create parent table.
                dt = ds.Tables.Add("ParentTable");
                dt.Columns.Add("ParentTable_Id", typeof(int));
                dt.Columns.Add("ParentTableCol", typeof(int));
                dt.Rows.Add(new object[] { 0, 1 });

                //Create child table.
                dt = ds.Tables.Add("ChildTable");
                dt.Columns.Add("ParentTable_Id", typeof(int));
                dt.Columns.Add("ChildTableCol", typeof(string));
                dt.Rows.Add(new object[] { 0, "aa" });

                //Add a relation between parent and child table.
                ds.Relations.Add("ParentTable_ChildTable", ds.Tables["ParentTable"].Columns["ParentTable_Id"], ds.Tables["ChildTable"].Columns["ParentTable_Id"], true);
                ds.Relations["ParentTable_ChildTable"].Nested = true;

                //Reomve the Parent_Child relation.
                dt = ds.Tables["ChildTable"];
                dt.ParentRelations.Remove("ParentTable_ChildTable");

                //Remove the constraint created automatically to enforce the "ParentTable_ChildTable" relation.
                dt.Constraints.Remove("ParentTable_ChildTable");

                //Remove the child table from the dataset.
                ds.Tables.Remove("ChildTable");

                //Get the xml representation of the dataset.
                StringWriter sr = new StringWriter();
                ds.WriteXml(sr);
                string xml = sr.ToString();

                Assert.Equal(-1, xml.IndexOf("<ChildTable>"));
            }
        }
        void LoadMasterData()
        {
            #region code ole, not use

            /*
             * string vlog_WARE_DM_HANGHOA_BAN = log_WARE_DM_HANGHOA_BAN;
             * Exists_Sys_Lognotify_Path = System.IO.File.Exists(Sys_Lognotify_Path);
             *
             * if (Exists_Sys_Lognotify_Path)
             * {
             #region Exists_Sys_Lognotify_Path
             *  //get last change at local
             *  dsSys_Lognotify = new DataSet();
             *  dsSys_Lognotify.ReadXml(Sys_Lognotify_Path);
             *
             *  //write new log change from database --> write to local last change
             *  DataSet dsSys_Lognotify_db = objMasterService.GetAll_Sys_Lognotify();
             *  DataRow[] sdr = dsSys_Lognotify_db.Tables[0].Select("Table_Name = 'Ware_Hanghoa_Dinhgia'");
             *  if (sdr != null && sdr.Length > 0)
             *  {
             *      sdr[0].Delete();
             *      dsSys_Lognotify_db.AcceptChanges();
             *  }
             *  bool haschange_atlast = false;
             *  foreach (DataRow dr in dsSys_Lognotify_db.Tables[0].Rows)
             *  {
             *      sdr = dsSys_Lognotify.Tables[0].Select("Table_Name = '" + dr["table_name"] + "'");
             *      if (sdr == null || sdr.Length == 0)
             *          haschange_atlast = true;
             *      else if ("" + sdr[0]["Last_Change"] != "" + dr["Last_Change"])
             *          haschange_atlast = true;
             *
             *      if (haschange_atlast) break;
             *  }
             *
             *  if (haschange_atlast)
             *  {
             *      dsSys_Lognotify_db.WriteXml(Sys_Lognotify_Path, XmlWriteMode.WriteSchema);
             *
             *      log_WARE_DM_HANGHOA_BAN = (dsSys_Lognotify.Tables[0].Select("Table_Name='WARE_DM_HANGHOA_BAN'").Length > 0)
             *      ? "" + dsSys_Lognotify.Tables[0].Select("Table_Name='WARE_DM_HANGHOA_BAN'")[0]["Last_Change"] : "";
             *
             *      vlog_WARE_DM_HANGHOA_BAN = (dsSys_Lognotify_db.Tables[0].Select("Table_Name='WARE_DM_HANGHOA_BAN'").Length > 0)
             *          ? "" + dsSys_Lognotify_db.Tables[0].Select("Table_Name='WARE_DM_HANGHOA_BAN'")[0]["Last_Change"] : "";
             *
             *  }
             #endregion
             * }
             * else
             * {
             #region ! Exists_Sys_Lognotify_Path
             *  //load last change
             *  dsSys_Lognotify = objMasterService.GetAll_Sys_Lognotify();
             *  dsSys_Lognotify.AcceptChanges();
             *  dsSys_Lognotify.WriteXml(Sys_Lognotify_Path, XmlWriteMode.WriteSchema);
             *
             #endregion
             * }
             */
            #endregion

            dsSys_Lognotify = objMasterService.Get_Sys_Lognotify_SelectLastChange_OfTables(
                "[ware_dm_hanghoa_ban], [ware_dm_donvitinh], [ware_dm_nhom_hanghoa_ban]").ToDataSet();

            dtlc_ware_dm_nhom_hanghoa_ban = GetLastChange_FrmLognotify("WARE_DM_NHOM_HANGHOA_BAN");
            dtlc_ware_dm_hanghoa_ban      = GetLastChange_FrmLognotify("WARE_DM_HANGHOA_BAN");
            dtlc_ware_dm_donvitinh        = GetLastChange_FrmLognotify("WARE_DM_DONVITINH");

            //load data from local xml when last change at local differ from database
            if (DateTime.Compare(dtlc_ware_dm_hanghoa_ban, System.IO.File.GetLastWriteTime(xml_WARE_DM_HANGHOA_BAN)) > 0 ||
                !System.IO.File.Exists(xml_WARE_DM_HANGHOA_BAN))
            {
                ds_Collection = objMasterService.Get_All_Ware_Dm_Hanghoa_Ban().ToDataSet();
                ds_Collection.WriteXml(xml_WARE_DM_HANGHOA_BAN, XmlWriteMode.WriteSchema);
            }
            else if (ds_Collection == null || ds_Collection.Tables.Count == 0)
            {
                ds_Collection = new DataSet();
                ds_Collection.ReadXml(xml_WARE_DM_HANGHOA_BAN);
            }
            if (DateTime.Compare(dtlc_ware_dm_nhom_hanghoa_ban, System.IO.File.GetLastWriteTime(xml_WARE_DM_NHOM_HANGHOA_BAN)) > 0 ||
                !System.IO.File.Exists(xml_WARE_DM_NHOM_HANGHOA_BAN))
            {
                dsWare_Dm_Nhom_Hanghoa_Ban = objMasterService.Get_All_Ware_Dm_Nhom_Hanghoa_Ban().ToDataSet();
                dsWare_Dm_Nhom_Hanghoa_Ban.WriteXml(xml_WARE_DM_NHOM_HANGHOA_BAN, XmlWriteMode.WriteSchema);
            }
            else if (dsWare_Dm_Nhom_Hanghoa_Ban == null || dsWare_Dm_Nhom_Hanghoa_Ban.Tables.Count == 0)
            {
                dsWare_Dm_Nhom_Hanghoa_Ban = new DataSet();
                dsWare_Dm_Nhom_Hanghoa_Ban.ReadXml(xml_WARE_DM_NHOM_HANGHOA_BAN);
            }
            if (DateTime.Compare(dtlc_ware_dm_donvitinh, System.IO.File.GetLastWriteTime(xml_WARE_DM_DONVITINH)) > 0 ||
                !System.IO.File.Exists(xml_WARE_DM_DONVITINH))
            {
                dsDm_Donvitinh = objMasterService.Get_All_Ware_Dm_Donvitinh().ToDataSet();
                dsDm_Donvitinh.WriteXml(xml_WARE_DM_DONVITINH, XmlWriteMode.WriteSchema);
            }
            else if (dsDm_Donvitinh == null || dsDm_Donvitinh.Tables.Count == 0)
            {
                dsDm_Donvitinh = new DataSet();
                dsDm_Donvitinh.ReadXml(xml_WARE_DM_DONVITINH);
            }
            //if (DateTime.Compare(dtlc_ware_dm_loai_hanghoa_ban, System.IO.File.GetLastWriteTime(xml_WARE_DM_LOAI_HANGHOA_BAN)) > 0
            //      || !System.IO.File.Exists(xml_WARE_DM_LOAI_HANGHOA_BAN))
            //{
            //    dsWare_Dm_Loai_Hanghoa_Ban = objMasterService.Get_All_Ware_Dm_Loai_Hanghoa_Ban().ToDataSet();
            //    dsWare_Dm_Loai_Hanghoa_Ban.WriteXml(xml_WARE_DM_DONVITINH, XmlWriteMode.WriteSchema);
            //}
            //else if (dsWare_Dm_Loai_Hanghoa_Ban == null || dsWare_Dm_Loai_Hanghoa_Ban.Tables.Count == 0)
            //{
            //    dsWare_Dm_Loai_Hanghoa_Ban = new DataSet();
            //    dsWare_Dm_Loai_Hanghoa_Ban.ReadXml(xml_WARE_DM_LOAI_HANGHOA_BAN);
            //}
            dsWare_Dm_Loai_Hanghoa_Ban = objMasterService.Get_All_Ware_Dm_Loai_Hanghoa_Ban().ToDataSet();
            gridLookUpEdit_Nhom_Hanghoa_Ban.DataSource = dsWare_Dm_Nhom_Hanghoa_Ban.Tables[0];
            gridLookUp_Nhom_Hanghoa_Ban.DataSource     = dsWare_Dm_Nhom_Hanghoa_Ban.Tables[0];

            ds_Collection.Tables[0].Columns.Add("Chon", typeof(bool));
            dgware_Dm_Hanghoa_Ban.DataSource = ds_Collection;
            dgware_Dm_Hanghoa_Ban.DataMember = ds_Collection.Tables[0].TableName;
            gridLookUp_Donvitinh.DataSource  = dsDm_Donvitinh.Tables[0];
        }
Пример #26
0
 private void button7_Click(object sender, EventArgs e)
 {
     ds.WriteXmlSchema(@"C:\Users\Lenovo\Desktop\PrviProjekat\podaci.xsd");
     ds.WriteXml(@"C:\Users\Lenovo\Desktop\PrviProjekat\podaci.xml", XmlWriteMode.WriteSchema);
     MessageBox.Show("OK");
 }
Пример #27
0
        private MemoryStream GeneratePostXML(Guid guid, BPMConnection cn

                                             , string AppSN
                                             , string AppHRID
                                             , string AppHRName
                                             , DateTime AppDate
                                             , string AppDept
                                             , string AppCompany
                                             , string EmpID
                                             , string EmpName
                                             , string OverType
                                             , string OverNote

                                             , DateTime BelongDay
                                             , DateTime FromDate
                                             , DateTime ToDate
                                             , Int32 SumTime

                                             , string Note
                                             , string strAttachment
                                             , int isSkyWorth

                                             )
        {
            //设置Header
            DataTable tableHeader = new DataTable("Header");

            tableHeader.Columns.Add(new DataColumn("Method", typeof(string)));
            tableHeader.Columns.Add(new DataColumn("ProcessName", typeof(string)));
            tableHeader.Columns.Add(new DataColumn("Action", typeof(string)));
            tableHeader.Columns.Add(new DataColumn("OwnerMemberFullName", typeof(string)));
            tableHeader.Columns.Add(new DataColumn("UploadFileGuid", typeof(string)));

            DataRow rowHeader = tableHeader.NewRow();

            //设置Header数据
            rowHeader["Method"]              = "Post";
            rowHeader["ProcessName"]         = isSkyWorth == 0 ? "加班申请" : "加班申请(石岩工厂)";
            rowHeader["Action"]              = "提交";
            rowHeader["OwnerMemberFullName"] = OrgSvr.GetUserPositions(cn, YZAuthHelper.LoginUserAccount)[0].FullName;

            rowHeader["UploadFileGuid"] = guid.ToString();
            tableHeader.Rows.Add(rowHeader);


            //设置表单数据
            DataSet formDataSet = new DataSet("FormData");



            #region 数据库

            //SELECT [TaskID]
            //      ,[AppSN]
            //      ,[AppHRID]
            //      ,[AppHRName]
            //      ,[AppDate]
            //      ,[AppDept]
            //      ,[AppCompany]
            //  FROM [HR_Digital].[dbo].[HR_OVERTIME_MAIN]
            //GO



            //SELECT [ID]
            //      ,[TaskID]
            //      ,[EmpID]
            //      ,[EmpName]
            //      ,[OverType]
            //      ,[OverNote]
            //      ,[BelongDay]
            //      ,[FromDate]
            //      ,[ToDate]
            //      ,[SumTime]
            //      ,[Note]
            //      ,[Type]
            //      ,[isFinish]
            //  FROM [HR_Digital].[dbo].[HR_OVERTIME_DTL]
            //GO



            //    SELECT [ID]
            //      ,[TaskID]
            //      ,[EmpID]
            //      ,[BelongDay]
            //      ,[FromDate]
            //      ,[ToDate]
            //      ,[SumTime]
            //      ,[Note]
            //  FROM [HR_Digital].[dbo].[HR_OVERTIME_HISTORY]
            //GO



            #endregion



            DataTable SubmitDataTab = new DataTable("HR_OVERTIME_MAIN");

            SubmitDataTab.Columns.Add(new DataColumn("TaskID", typeof(string)));
            SubmitDataTab.Columns.Add(new DataColumn("AppSN", typeof(string)));
            SubmitDataTab.Columns.Add(new DataColumn("AppHRID", typeof(string)));
            SubmitDataTab.Columns.Add(new DataColumn("AppHRName", typeof(string)));
            SubmitDataTab.Columns.Add(new DataColumn("AppDept", typeof(string)));
            SubmitDataTab.Columns.Add(new DataColumn("AppCompany", typeof(string)));
            SubmitDataTab.Columns.Add(new DataColumn("AppDate", typeof(DateTime)));


            DataRow rowData = SubmitDataTab.NewRow();
            rowData["AppSN"]      = AppSN;
            rowData["AppHRID"]    = AppHRID;
            rowData["AppHRName"]  = AppHRName;
            rowData["AppDept"]    = AppDept;
            rowData["AppCompany"] = AppCompany;
            rowData["AppDate"]    = AppDate;

            SubmitDataTab.Rows.Add(rowData);
            formDataSet.Tables.Add(SubmitDataTab);



            SubmitDataTab = new DataTable("HR_OVERTIME_DTL");

            SubmitDataTab.Columns.Add(new DataColumn("TaskID", typeof(string)));
            SubmitDataTab.Columns.Add(new DataColumn("EmpID", typeof(string)));
            SubmitDataTab.Columns.Add(new DataColumn("EmpName", typeof(string)));
            SubmitDataTab.Columns.Add(new DataColumn("OverType", typeof(string)));
            SubmitDataTab.Columns.Add(new DataColumn("OverNote", typeof(string)));

            SubmitDataTab.Columns.Add(new DataColumn("BelongDay", typeof(DateTime)));
            SubmitDataTab.Columns.Add(new DataColumn("FromDate", typeof(DateTime)));
            SubmitDataTab.Columns.Add(new DataColumn("ToDate", typeof(DateTime)));

            SubmitDataTab.Columns.Add(new DataColumn("SumTime", typeof(int)));


            SubmitDataTab.Columns.Add(new DataColumn("Note", typeof(string)));
            SubmitDataTab.Columns.Add(new DataColumn("Attachment", typeof(string)));

            SubmitDataTab.Columns.Add(new DataColumn("isFinish", typeof(string)));


            rowData             = SubmitDataTab.NewRow();
            rowData["EmpID"]    = EmpID;
            rowData["EmpName"]  = EmpName;
            rowData["OverType"] = OverType;
            rowData["OverNote"] = OverNote;

            rowData["BelongDay"] = BelongDay;
            rowData["FromDate"]  = FromDate;
            rowData["ToDate"]    = ToDate;
            rowData["SumTime"]   = SumTime;

            rowData["Note"]       = Note;
            rowData["Attachment"] = strAttachment;

            SubmitDataTab.Rows.Add(rowData);
            formDataSet.Tables.Add(SubmitDataTab);


            //生成XML
            StringBuilder strBuilder = new StringBuilder();
            StringWriter  strWirter  = new StringWriter(strBuilder);

            strWirter.WriteLine("<?xml version=\"1.0\"?>");
            strWirter.WriteLine("<XForm>");

            tableHeader.WriteXml(strWirter, XmlWriteMode.IgnoreSchema, false);
            formDataSet.WriteXml(strWirter);

            strWirter.WriteLine("</XForm>");

            strWirter.Close();

            String xmlData = strBuilder.ToString();
            xmlData = xmlData.Replace("<DocumentElement>", "");
            xmlData = xmlData.Replace("</DocumentElement>", "");

            MemoryStream xmlStream = new MemoryStream(UTF8Encoding.UTF8.GetBytes(xmlData));

            return(xmlStream);
        }
Пример #28
0
 public void CreateSong(DataRow dataRow, string file)
 {
     ds.Tables["song"].Rows.Add(dataRow);
     ds.WriteXml(HttpContext.Current.Server.MapPath(file));
 }
Пример #29
0
        static void Main(string[] args)
        {
            string modelName = "Model 2 Test";

            ModelFactory.ModelName = modelName;

            //model modelArchisurance = ObjectFactory.NewModel("Archisurance");
            //DataSet dsArchisurance = new DataSet();
            //string xmlArchiSurance = @"..\..\..\PSN.ModelMate.Schema\Samples\Archisurance\Archisurance-psn.xml";
            //dsArchisurance.ReadXml(xmlArchiSurance);
            ////dsArchisurance.WriteXmlSchema("xmlArchiSurance.xsd");
            ////dsArchisurance.WriteXml("xmlArchiSurance.xml");
            //var mmpArchisurance = new ModelMateProcessor(ModelMateProcessor.ConvertAMEFFDataSet2Model);
            //// TODO TODO mmpArchisurance.ProcessModel(dsArchisurance, (DbContext)null, new Collection<model> { modelArchisurance });

            string tenantName = "Tenant 0 " + DateTime.Now.ToString();

            ModelFactory.TenantName = tenantName;

            var tenant0 = ModelFactory.NewTenantWithRootFolder(tenantName);

            tenantName = "Tenant 1 " + DateTime.Now.ToString();
            ModelFactory.TenantName = tenantName;

            var tenant1 = ModelFactory.NewTenant(tenantName,
                                                 ModelFactory.NewFolder("/",
                                                                        new folder[] { ModelFactory.NewFolder("Model Templates"), ModelFactory.NewFolder("Production Models") }
                                                                        )
                                                 );

            ModelConst.PropertyDataType dtStringType = ModelConst.PropertyDataType.stringType;
            propertydef  pdefString = ModelFactory.NewPropertyDef("String Propertydef " + DateTime.Now.ToString(), dtStringType);
            propertydefs pdefs      = ModelFactory.NewPropertyDefs(pdefString);

            ModelConst.ElementType etAC = ModelConst.ElementType.ApplicationComponent;
            element[] elementArray      = new element[10];
            for (int iElement = 0; iElement < 10; iElement++)
            {
                property p = ModelFactory.NewProperty(ModelFactory.NewValue("Element Property Value " + DateTime.Now.ToString()),
                                                      pdefString);
                elementArray[iElement] = ModelFactory.NewElement("Element " + iElement.ToString() + " " + DateTime.Now.ToString(), etAC, p);
            }
            elements elements = ModelFactory.NewElements(elementArray);

            tenantName = "Tenant 2 Test";
            ModelFactory.TenantName = tenantName;

            model model2;
            //var tenant2 = ModelFactory.NewTenant(tenantName,
            //                ModelFactory.NewFolder("/",
            //                    ModelFactory.NewFolder("Production Models",
            //                        ModelFactory.NewFolder("HQ Models Folder " + DateTime.Now.ToString(),
            //                            model2 = ModelFactory.NewModel(modelName, ModelConst.LANG_EN,
            //                                                            elements, pdefs
            //                            )
            //                        )
            //                    )
            //                )
            //              );

            var tenant2 = ModelFactory.NewTenant(tenantName,
                                                 ModelFactory.NewFolder("/",
                                                                        model2 = ModelFactory.NewModel(modelName, ModelConst.LANG_EN,
                                                                                                       elements, pdefs
                                                                                                       )
                                                                        )
                                                 );

            Console.WriteLine("Tenant.tenant_Id " + tenant2.tenant_Id.ToString());
            foreach (folders fs in tenant2.folders)
            {
                Console.WriteLine("Folders.tenant_Id " + fs.tenant_Id.ToString());
                Console.WriteLine("Folders.folders_Id " + fs.folders_Id.ToString());

                foreach (folder f in fs.folder)
                {
                    Console.WriteLine("Folder " + f.folders_Id.ToString());
                    Console.WriteLine("Folder " + f.folder_Id.ToString());
                }
            }

            var name = ModelFactory.NewName("Model 2 Name " + DateTime.Now.ToString());

            model2.name.Add(name);
            var documentation = ModelFactory.NewDocumentation("Model 2 Documentation " + DateTime.Now.ToString());

            model2.documentation.Add(documentation);
            var metadata = ModelFactory.NewMetadata(
                ModelFactory.NewProperty(ModelFactory.NewValue("Model 2 Metadata Value " + DateTime.Now.ToString()), pdefString)
                );

            model2.metadata.Add(metadata);

            var properties = ModelFactory.NewProperties(
                ModelFactory.NewProperty(ModelFactory.NewValue("Model 2 Property Value " + DateTime.Now.ToString()), pdefString)
                );

            model2.properties.Add(properties);

            var relationship1 = ModelFactory.NewRelationship("Association Relationship " + DateTime.Now.ToString(),
                                                             ModelConst.RelationshipType.AssociationRelationship,
                                                             elementArray[0], elementArray[1]
                                                             );
            var relationships = ModelFactory.NewRelationships(relationship1);

            model2.relationships.Add(relationships);

            var organization = ModelFactory.NewOrganization(
                ModelFactory.NewItem(elementArray[0],
                                     ModelFactory.NewItem(null,
                                                          ModelFactory.NewItem(elementArray[1]
                                                                               )
                                                          )
                                     )
                );

            model2.organization.Add(organization);

            var style1 = ModelFactory.NewStyle(
                ModelFactory.NewFillColor(255, 0, 0),
                ModelFactory.NewLineColor(0, 255, 0),
                ModelFactory.NewFont("Times Roman", (float)10.5, "bold", ModelFactory.NewColor(0, 0, 255)), 3
                );
            var style2 = ModelFactory.NewStyle(
                ModelFactory.NewFillColor(255, 0, 0),
                ModelFactory.NewLineColor(0, 255, 0),
                ModelFactory.NewFont("Times Roman", (float)12.5, "bold", ModelFactory.NewColor(0, 0, 255)), 3
                );

            var node0 = ModelFactory.NewNode("Node 0 " + DateTime.Now.ToString(),
                                             0, 0, 0, 50, 50, 50,
                                             elementArray[0], null, null, style1,
                                             new node[] { ModelFactory.NewNode("Sub Node " + DateTime.Now.ToString(),
                                                                               10, 10, 10, 25, 25, 25,
                                                                               elementArray[3]) }
                                             );
            var node1 = ModelFactory.NewNode("Node 1 " + DateTime.Now.ToString(),
                                             100, 100, 100, 50, 50, 50,
                                             elementArray[1], null, null, style2,
                                             null
                                             );

            var bendpoint1  = ModelFactory.NewBendPoint(25, 25, 25);
            var connection1 = ModelFactory.NewConnection("Connection 1 " + DateTime.Now.ToString(),
                                                         node0, node1, relationship1
                                                         );

            connection1.bendpoint.Add(bendpoint1);

            view view2;
            var  views = ModelFactory.NewViews(
                view2 = ModelFactory.NewView("View 2 " + DateTime.Now.ToString(), ModelConst.ViewType.Layered,
                                             new node[] {
                node0, node1
            },
                                             new connection[] { connection1 }
                                             )
                );

            model2.views.Add(views);

            tenant2.processinghistory.Add(
                ModelFactory.NewProcessinghistory(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Processinghistory " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.processinghistory, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );
            tenant2.usage.Add(
                ModelFactory.NewUsage(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Performance " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.usage, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );
            tenant2.performance.Add(
                ModelFactory.NewPerformance(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Performance " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.performance, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );
            tenant2.management.Add(
                ModelFactory.NewManagement(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Management " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.management, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );

            model2.processinghistory.Add(
                ModelFactory.NewProcessinghistory(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Processinghistory " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.processinghistory, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );
            model2.usage.Add(
                ModelFactory.NewUsage(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Performance " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.usage, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );
            model2.performance.Add(
                ModelFactory.NewPerformance(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Performance " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.performance, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );
            model2.management.Add(
                ModelFactory.NewManagement(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Management " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.management, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );

            elementArray[0].processinghistory.Add(
                ModelFactory.NewProcessinghistory(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Processinghistory " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.processinghistory, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );
            elementArray[0].usage.Add(
                ModelFactory.NewUsage(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Performance " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.usage, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );
            elementArray[0].performance.Add(
                ModelFactory.NewPerformance(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Performance " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.performance, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );
            elementArray[0].management.Add(
                ModelFactory.NewManagement(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Management " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.management, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );

            view2.processinghistory.Add(
                ModelFactory.NewProcessinghistory(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Processinghistory " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.processinghistory, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );
            view2.usage.Add(
                ModelFactory.NewUsage(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Performance " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.usage, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );
            view2.performance.Add(
                ModelFactory.NewPerformance(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Performance " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.performance, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );
            view2.management.Add(
                ModelFactory.NewManagement(
                    ModelFactory.NewTimesnap(DateTime.Now, "Timesnap Management " + DateTime.Now.ToString(),
                                             ModelConst.TimesnapCategory.management, "Subcategory " + DateTime.Now.ToString(),
                                             null, null,
                                             ModelFactory.NewProperty(ModelFactory.NewValue("Value " + DateTime.Now.ToString()), pdefString
                                                                      )
                                             )
                    )
                );

            //using (XmlWriter writer = XmlWriter.Create("model2.xml"))
            //{
            //    //XmlSerializer serializer = new XmlSerializer(typeof(model));
            //    DataContractSerializerSettings settings = new DataContractSerializerSettings();
            //    DataContractSerializer serializer = new DataContractSerializer(typeof(model));
            //    serializer.WriteObject(writer, model2);
            //    writer.Close();
            //}

            string xmlSchemaFile = @"..\..\..\PSN.ModelMate.Schema\Schema\Reference ModelGood9.xsd";

            // DataSet ds = new DataSet();
            // ds.ReadXmlSchema(xmlSchemaFile);
            // BUG DataSet ds2 = new DataSet();
            // BUG ds2.ReadXmlSchema(xmlSchemaFile);

            //DataTable dttenant = ds.Tables["tenant"];
            //DataRow drtentant1 = dttenant.NewRow();
            //DataRow drtentant2 = ds.Tables["tenant"].NewRow();

            //DataTable dtfolders = ds.Tables["folders"];
            //DataTable dtfolder = ds.Tables["folder"];
            //DataTable dtmodels = ds.Tables["models"];
            //DataTable dtmodel = ds.Tables["model"];

            //DataTable dtprocessinghistory = ds.Tables["processinghistory"];
            //DataTable dtusage = ds.Tables["usage"];
            //DataTable dtperformance = ds.Tables["performance"];
            //DataTable dtmanagement = ds.Tables["management"];
            //DataTable dttimesnap = ds.Tables["timesnap"];

            //DataTable dtproperties = ds.Tables["properties"];
            //DataTable dtproperty = ds.Tables["property"];

            //DataTable dtpropertydefs = ds.Tables["propertydefs"];
            //DataTable dtpropertydef = ds.Tables["propertydef"];

            //DataTable dtelements = ds.Tables["elements"];
            //DataTable dtelement = ds.Tables["element"];

            //DataTable dtrelationships = ds.Tables["relationships"];
            //DataTable dtrelationship = ds.Tables["relationship"];

            //DataTable dtviews = ds.Tables["views"];
            //DataTable dtview = ds.Tables["view"];
            //DataTable dtconnection = ds.Tables["connection"];
            //DataTable dtnode = ds.Tables["node"];

            //DataTable dtstyle = ds.Tables["style"];
            //DataTable dtfont = ds.Tables["font"];
            //DataTable dtfillColor = ds.Tables["fillColor"];
            //DataTable dtlineColor = ds.Tables["lineColor"];
            //DataTable dtcolor = ds.Tables["color"];
            //DataTable dtbendpoint = ds.Tables["bendpoint"];

            //DataTable dtmetadata = ds.Tables["metadata"];

            //DataTable dtorganization = ds.Tables["organization"];
            //DataTable dtitem = ds.Tables["item"];

            //DataTable dtname = ds.Tables["name"];
            //DataTable dtvalue = ds.Tables["value"];
            //DataTable dtdocumentation = ds.Tables["documentation"];
            //DataTable dtlabel = ds.Tables["label"];

            using (var ctx = new ModelMateEFModel9Context())
            {
                ctx.Database.Log = Console.Write;

                ctx.tenant.Add(tenant0);
                ModelDump.DisplayTrackedEntities("Add tenant0", ctx.ChangeTracker);
                ctx.SaveChanges();
                ModelDump.DisplayTrackedEntities("Save tenant0", ctx.ChangeTracker);

                ctx.tenant.Add(tenant1);
                ctx.SaveChanges();

                ctx.tenant.Add(tenant2);
                ModelDump.DisplayTrackedEntities("Add tenant2", ctx.ChangeTracker);
                ctx.SaveChanges();
                ModelDump.DisplayTrackedEntities("Save tenant2", ctx.ChangeTracker);
                ModelDump.DisplayDBPropertyValues("tenant2", ctx.Entry(tenant2).CurrentValues, null);
                ModelDump.DisplayDBPropertyValues("model2", ctx.Entry(model2).CurrentValues, null);
                Console.WriteLine("Tenant.tenant_Id " + tenant2.tenant_Id.ToString());
                foreach (folders fs in tenant2.folders)
                {
                    Console.WriteLine("Folders.tenant_Id " + fs.tenant_Id.ToString());
                    Console.WriteLine("Folders.folders_Id " + fs.folders_Id.ToString());

                    foreach (folder f in fs.folder)
                    {
                        Console.WriteLine("Folder " + f.folders_Id.ToString());
                        Console.WriteLine("Folder " + f.folder_Id.ToString());
                    }
                }

                folders fs0 = tenant2.folders.ElementAt(0);
                ModelDump.DisplayDBPropertyValues("fs0", ctx.Entry(fs0).CurrentValues, null);

                folder f0 = fs0.folder.ElementAt(0);
                ModelDump.DisplayDBPropertyValues("f0", ctx.Entry(f0).CurrentValues, null);

                Console.WriteLine("RECURSION ==================================================");
                //DataSet dsTenant = new DataSet();
                //dsTenant.ReadXmlSchema(xmlSchemaFile);
                ////dsTenant.Tables["tenant"].Namespace = "http://www.w3.org/XML/1998/namespace";
                ////dsTenant.Tables["tenant"].Prefix = "xml";
                //var tenant = ctx.tenant.Find(new object[] { tenant2.tenant_Id });
                //var mmp = new ModelMateProcessor(ModelMateProcessor.ProcessObjectPopulateXMLDataSet);
                //mmp.ProcessTenant(dsTenant, (DbContext)ctx, new Collection<tenant> { tenant });
                //dsTenant.WriteXml("tentantds.xml");

                string  modelSchemaFile = @"..\..\..\PSN.ModelMate.Schema\Schema\ModelMateModel9.xsd";
                DataSet dsModel         = new DataSet();
                dsModel.ReadXmlSchema(modelSchemaFile);
                //DataSet ds3 = dsModel.Copy();
                //var mmpModel = new ModelMateProcessor();
                var mmpModel = new ModelProcessor(ModelProcessor.ConvertModel2AMEFFDataSet);
                mmpModel.ProcessModel(dsModel, (DbContext)ctx, new Collection <model> {
                    model2
                });
                dsModel.WriteXml("modelds.xml", XmlWriteMode.IgnoreSchema);
                string filename = "modelds2.xml";
                mmpModel.SaveAMEFFDataSetAsXML(dsModel, filename);

                tenant2.version = ModelConst.TENANT_TESTVERSION;
                var name2 = ModelFactory.NewName("Model Name FR " + DateTime.Now.ToString(), ModelConst.LANG_FR);
                model2.name.Add(name2);
                var name3 = ModelFactory.NewName("Model Name EN " + DateTime.Now.ToString());
                model2.name.Add(name3);
                ModelDump.DisplayTrackedEntities("Change tenant2", ctx.ChangeTracker);
                ctx.SaveChanges();
                ModelDump.DisplayTrackedEntities("Save tenant2", ctx.ChangeTracker);

                object[] keys    = { -1702823521 };
                tenant   tenant9 = ctx.tenant.Find(keys);
                //ctx.tenant.Remove(tenantDelete);
                //ctx.SaveChanges();
            }

            Console.WriteLine("Press enter to exist...");
            Console.ReadLine();
        }
Пример #30
0
        private void butIn_Click(object sender, System.EventArgs e)
        {
            /*
             * xxx.bhytkb a,xxx.bhytthuoc b,xxx.bhytds c,"+user+".d_dmbd d,"+user+".d_dmnhom e,"+user+".v_nhomvp f,"+user+".btdkp_bv h,"+user+".v_nhombhyt i
             *
             * a.id=b.id and a.mabn=c.mabn and b.mabd=d.id and d.manhom=e.id and e.nhomvp=f.ma and a.makp=h.makp(+) and f.idnhombhyt=i.id
             * */
            Cursor = Cursors.WaitCursor;
            ds.Clear();
            dsts.Clear();
            sql  = "select a.id,a.mabn,c.hoten,a.sothe,h.tenkp,a.chandoan,a.maicd,";
            sql += "to_char(a.ngay,'dd/mm/yy') as ngayra,to_char(a.ngay,'dd/mm/yy') as ngayvao,";
            sql += "" + m.for_num_ngay("a.ngay") + "-" + m.for_num_ngay("a.ngay") + "+1 as songay,";
            sql += "i.stt,b.soluong*j.giamua as sotien,a.congkham";
            sql += " from xxx.bhytkb a inner join xxx.bhytthuoc b on a.id=b.id inner join xxx.bhytds c on a.mabn=c.mabn inner join " + user + ".d_dmbd d on b.mabd=d.id inner join " + user + ".d_dmnhom e on d.manhom=e.id inner join " + user + ".v_nhomvp f on e.nhomvp=f.ma left join " + user + ".btdkp_bv h on a.makp=h.makp inner join " + user + ".v_nhombhyt i on f.idnhombhyt=i.id inner join xxx.d_theodoi j on b.sttt=j.id ";
            sql += " where ";
            sql += " a.maphu=" + int.Parse(madoituong.SelectedValue.ToString());
            sql += " and " + m.for_ngay("a.ngay", "'dd/mm/yyyy'") + " between to_date('" + tu.Text + "','dd/mm/yyyy') and to_date('" + den.Text + "','dd/mm/yyyy')";
            if (sothe.Text != "")
            {
                sql += " and substr(a.sothe," + Convert.ToInt16(vitri.Value) + "," + sothe.Text.Trim().Length + ")='" + sothe.Text.Trim() + "'";
            }
            sql += " and a.sothe is not null";
            if (s_tunguyen != "" && loaidt.SelectedIndex != 0)
            {
                if (loaidt.SelectedIndex == 1)
                {
                    sql += " and substr(a.sothe," + v1 + "," + v2 + ") not in ('" + s_tunguyen.Substring(0, s_tunguyen.Length) + "')";
                }
                else if (loaidt.SelectedIndex == 2)
                {
                    sql += " and substr(a.sothe," + v1 + "," + v2 + ") in ('" + s_tunguyen.Substring(0, s_tunguyen.Length) + "')";
                }
            }

            /*
             * xxx.bhytkb a,xxx.bhytcls b,xxx.bhytds c,"+user+".v_giavp d,"+user+".v_loaivp e,"+user+".v_nhomvp f,"+user+".btdkp_bv h,"+user+".v_nhombhyt i
             *
             * a.id=b.id and a.mabn=c.mabn and b.mavp=d.id and d.id_loai=e.id and e.id_nhom=f.ma and a.makp=h.makp(+) and f.idnhombhyt=i.id
             * */
            sql += " union all ";
            sql += "select a.id,a.mabn,c.hoten,a.sothe,h.tenkp,a.chandoan,a.maicd,";
            sql += "to_char(a.ngay,'dd/mm/yy') as ngayra,to_char(a.ngay,'dd/mm/yy') as ngayvao,";
            sql += "" + m.for_num_ngay("a.ngay") + "-" + m.for_num_ngay("a.ngay") + "+1 as songay,";
            sql += "i.stt,b.soluong*b.dongia as sotien,a.congkham";
            sql += " from xxx.bhytkb a inner join xxx.bhytcls b on a.id=b.id inner join xxx.bhytds c on a.mabn=c.mabn inner join " + user + ".v_giavp d on b.mavp=d.id inner join " + user + ".v_loaivp e on d.id_loai=e.id inner join " + user + ".v_nhomvp f on e.id_nhom=f.ma left join " + user + ".btdkp_bv h on a.makp=h.makp inner join " + user + ".v_nhombhyt i on f.idnhombhyt=i.id ";
            sql += " where ";
            sql += " a.maphu=" + int.Parse(madoituong.SelectedValue.ToString());
            sql += " and " + m.for_ngay("a.ngay", "'dd/mm/yyyy'") + " between to_date('" + tu.Text + "','dd/mm/yyyy') and to_date('" + den.Text + "','dd/mm/yyyy')";
            if (sothe.Text != "")
            {
                sql += " and substr(a.sothe," + Convert.ToInt16(vitri.Value) + "," + sothe.Text.Trim().Length + ")='" + sothe.Text.Trim() + "'";
            }
            sql += " and a.sothe is not null";
            if (s_tunguyen != "" && loaidt.SelectedIndex != 0)
            {
                if (loaidt.SelectedIndex == 1)
                {
                    sql += " and substr(a.sothe," + v1 + "," + v2 + ") not in ('" + s_tunguyen.Substring(0, s_tunguyen.Length) + "')";
                }
                else if (loaidt.SelectedIndex == 2)
                {
                    sql += " and substr(a.sothe," + v1 + "," + v2 + ") in ('" + s_tunguyen.Substring(0, s_tunguyen.Length) + "')";
                }
            }

            System.Data.DataTable tmp = d.get_thuoc(tu.Text, den.Text, sql).Tables[0];
            foreach (DataRow r in tmp.Rows)
            {
                r1 = d.getrowbyid(dsts.Tables[0], "id=" + decimal.Parse(r["id"].ToString()));
                if (r1 == null)
                {
                    r2          = dsts.Tables[0].NewRow();
                    r2["id"]    = r["id"].ToString();
                    r2["sothe"] = r["sothe"].ToString();
                    dsts.Tables[0].Rows.Add(r2);
                }
                sql = "sothe='" + r["sothe"].ToString().Trim() + "'";
                r1  = d.getrowbyid(ds.Tables[0], sql);
                if (r1 == null)
                {
                    r2       = ds.Tables[0].NewRow();
                    r2["id"] = r["id"].ToString();
                    if (r["sothe"].ToString().Trim().Length > 6)
                    {
                        r2["stt"]      = (r["sothe"].ToString().Substring(2, 2) == s_thetrongtinh)?0:1;
                        r2["tinh"]     = (r["sothe"].ToString().Substring(2, 2) == s_thetrongtinh)?"TỈNH":"KHÁC TỈNH";
                        r2["sothe1"]   = (s_thetunguyen.IndexOf(r["sothe"].ToString().Substring(4, 2)) == -1)?"0":"1";
                        r2["doituong"] = (s_thetunguyen.IndexOf(r["sothe"].ToString().Substring(4, 2)) == -1)?"BẮT BUỘC":"TỰ NGUYỆN";
                        r2["sothe2"]   = r["sothe"].ToString().Substring(2, 2);
                        r2["sothe3"]   = r["sothe"].ToString().Substring(4, 2);
                    }
                    r2["sothe"]    = r["sothe"].ToString().Trim();
                    r2["mabn"]     = r["mabn"].ToString();
                    r2["hoten"]    = r["hoten"].ToString();
                    r2["tenkp"]    = r["tenkp"].ToString();
                    r2["chandoan"] = r["chandoan"].ToString();
                    r2["maicd"]    = r["maicd"].ToString();
                    r2["ngayvao"]  = r["ngayvao"].ToString();
                    r2["ngayra"]   = r["ngayra"].ToString();
                    r2["songay"]   = r["songay"].ToString();
                    foreach (DataRow r3 in dtnhom.Select("true", "stt"))
                    {
                        r2["c" + r3["stt"].ToString().Trim()] = 0;
                    }
                    r2["congkham"] = r["congkham"].ToString();
                    r2["c" + r["stt"].ToString().Trim()] = r["sotien"].ToString();
                    r2["tc"] = decimal.Parse(r["sotien"].ToString()) + decimal.Parse(r["congkham"].ToString());
                    ds.Tables[0].Rows.Add(r2);
                }
                else
                {
                    dr = ds.Tables[0].Select(sql);
                    if (dr.Length > 0)
                    {
                        dr[0]["c" + r["stt"].ToString().Trim()] = decimal.Parse(dr[0]["c" + r["stt"].ToString().Trim()].ToString()) + decimal.Parse(r["sotien"].ToString());
                        dr[0]["tc"] = decimal.Parse(dr[0]["tc"].ToString()) + decimal.Parse(r["sotien"].ToString());
                    }
                }
            }
            foreach (DataRow r in ds.Tables[0].Rows)
            {
                r["soluot"] = dsts.Tables[0].Select("sothe='" + r["sothe"].ToString() + "'").Length;
                r["songay"] = dsts.Tables[0].Select("sothe='" + r["sothe"].ToString() + "'").Length;
            }
            dsxml = new DataSet();
            dsxml = ds.Copy();
            dsxml.Clear();
            dsxml.Merge(ds.Tables[0].Select("true", "stt,sothe1,sothe3,sothe2,sothe,ngayvao,mabn"));
            dsxml.WriteXml("..//..//..//xml//t_thkcbbhyt.xml", XmlWriteMode.WriteSchema);
            Cursor = Cursors.Default;
            if (dsxml.Tables[0].Rows.Count == 0)
            {
                MessageBox.Show(lan.Change_language_MessageText("Không có số liệu !"), LibMedi.AccessData.Msg);
            }
            else
            {
                dllReportM.frmReport f = new dllReportM.frmReport(m, dsxml.Tables[0], "rptthkcbbhytngtr.rpt", (tu.Text == den.Text)?"Ngày " + tu.Text:"Từ ngày " + tu.Text + " đến " + den.Text, madoituong.Text, loaidt.Text, "", "", "", "", "", "", "");
                f.ShowDialog();
            }
        }
        private void btnDisplay_Click(object sender, EventArgs e)
        {
            DataSet dataSetReport    = new DataSet();
            DataSet dataSetReportSub = new DataSet();

            String   strDivisionID   = "%";
            String   strDivisionName = "ALL";
            Int32    intworktyp      = 1;
            DateTime dtFrom;
            DateTime dtTo;

            if (rbNormal.Checked)
            {
                intworktyp = 1;
            }
            else
            {
                intworktyp = 2;
            }
            if (chkAllDivisions.Checked)
            {
                strDivisionID = "%";
            }
            else
            {
                strDivisionID   = cmbDivision.SelectedValue.ToString();
                strDivisionName = cmbDivision.Text;
            }
            if (chkDateRange.Checked)
            {
                dtFrom = dtpFrom.Value.Date;
                dtTo   = dtpTo.Value.Date;
            }
            else
            {
                dtFrom = new DateTime(Convert.ToInt32(cmbYear.SelectedValue.ToString()), Convert.ToInt32(cmbMonth.SelectedValue.ToString()), 1);
                dtTo   = new DateTime(Convert.ToInt32(cmbYear.SelectedValue.ToString()), Convert.ToInt32(cmbMonth.SelectedValue.ToString()), 1).AddMonths(1).AddDays(-1);
            }


            dataSetReport = myReports.DailyWorkDistributionByRange(dtFrom, dtTo, strDivisionID, intworktyp, true);
            dataSetReport.WriteXml("DailyWorkDistribution.xml");

            dataSetReportSub = myReports.DailyWorkDistributionNONWorkByRange(dtFrom, dtTo, strDivisionID, intworktyp);
            dataSetReportSub.WriteXml("DailyWorkDistributionSub.xml");

            if (dataSetReport.Tables[0].Rows.Count > 0)
            {
                DailyWorkDistribution1RPT myDailyWorkDistributionRPT = new DailyWorkDistribution1RPT();
                myDailyWorkDistributionRPT.SetDataSource(dataSetReport);
                ReportViewer myReportViewer = new ReportViewer();

                myDailyWorkDistributionRPT.SetParameterValue("Estate", myDivision.ListEstate().Rows[0][1].ToString());
                myDailyWorkDistributionRPT.SetParameterValue("DivisionName", strDivisionName);

                myDailyWorkDistributionRPT.SetParameterValue("Period", "From : " + dtFrom.ToShortDateString() + " To : " + dtTo.ToShortDateString());

                if (intworktyp == 1)
                {
                    myDailyWorkDistributionRPT.SetParameterValue("WorkType", "For Normal Work");
                }
                else
                {
                    myDailyWorkDistributionRPT.SetParameterValue("WorkType", "For Cash Work");
                }
                myDailyWorkDistributionRPT.SetParameterValue("HalfNames", "(Including Half Names)");
                myReportViewer.crystalReportViewer1.ReportSource = myDailyWorkDistributionRPT;
                myReportViewer.Show();
            }
            else
            {
                MessageBox.Show("No Data To Preview");
            }
        }
Пример #32
0
        private void f_ketxuat(bool v_print)
        {
            string sql = "", aReport = "", aexp = "", atenbv = "", adiachibv = "", asyt = "", ngay = "";

            aexp = " where a.ngayhd between to_date('" + dttungay.Text.Substring(0, 10) +
                   "','dd/mm/yyyy') and to_date('" + dtdenngay.Text.Substring(0, 10) + "','dd/mm/yyyy') ";
            if (chkDaduyetin.Checked)
            {
                aexp += " and a.done=1 ";
            }
            else
            {
                aexp += " and a.done=0 ";
            }
            if (cbdoituong.SelectedIndex == 0)
            {
                aexp   += " and a.bhyt = 0 ";
                aReport = "v_BKhoadontaichinh_dv.rpt";
            }
            else
            {
                aexp   += " and a.bhyt > 0 ";
                aReport = "v_BKhoadontaichinh_bh.rpt";
            }
            DataSet ads = new DataSet();

            sql  = "select a.id,e.hoten,to_char(a.ngayhd,'dd/mm/yyyy') as ngayhd,to_char(a.ngayhen,'dd/mm/yyyy') as ngayhen,a.tendv as congty,a.diachi as dccongty,a.masothue,a.noidung as ghichu,max(c.vat) as vat, ";
            sql += "sum(case when d.ma <> 15 and d.ma <> 4 and b.madoituong <>1 then b.sotien-b.mien else to_number('0')  end) as bntracls,";
            sql += "sum(case when d.ma <> 15 and d.ma <> 4 and b.madoituong = 1 then b.sotien-b.bhyt else to_number('0') end) as bndongtracls,";
            sql += "sum(case when d.ma = 15 and b.madoituong <> 1 then b.sotien-b.mien-b.bhyt else to_number('0') end) as bntrathuoc,";
            sql += "sum(case when d.ma = 15 and b.madoituong = 1 then b.sotien-b.bhyt-b.mien else to_number('0') end) as bndongtrathuoc,";
            sql += "sum(case when d.ma=4 then b.sotien-b.bhyt-b.mien else to_number('0') end) as congkham ";
            sql += "from medibvmmyy.v_bienlaitaichinhll a inner join medibvmmyy.v_bienlaitaichinhct b ";
            sql += "on a.id=b.id inner join (select id,ten as tenvp,vat,id_loai from medibv.v_giavp union all ";
            sql += "select id,ten as tenvp,vat,to_number('87') as loai from medibv.d_dmbd) c on b.mavp=c.id ";
            sql += "inner join medibv.v_loaivp dd on dd.id=c.id_loai inner join medibv.v_nhomvp d on dd.id_nhom=d.ma ";
            sql += "inner join medibv.btdbn e on a.mabn=e.mabn " + aexp;
            sql += "group by a.id,e.hoten,a.ngayhd,a.ngayhen,a.tendv,a.diachi,a.masothue,a.noidung";

            try
            {
                DateTime tungay  = Convert.ToDateTime(dttungay.Value);
                DateTime denngay = Convert.ToDateTime(dtdenngay.Value);
                ngay = "Từ ngày " + tungay.Day.ToString().PadLeft(2, '0') + "/" + tungay.Month.ToString().PadLeft(2, '0')
                       + "/" + tungay.Year + " đến ngày " + denngay.Day.ToString().PadLeft(2, '0') + "/" + denngay.Month.ToString().PadLeft(2, '0') + "/" + denngay.Year;
                ads = m_v.get_data_bc(tungay, denngay, sql);
                if (ads.Tables[0].Rows.Count == 0)
                {
                    MessageBox.Show(lan.Change_language_MessageText("Không có số liệu. "));
                    return;
                }
                else
                {
                    if (!System.IO.File.Exists("..\\..\\..\\report\\" + aReport))
                    {
                        MessageBox.Show(lan.Change_language_MessageText("Không tìm thấy report )") + aReport + ".");
                        return;
                    }

                    atenbv    = m_v.Tenbv;
                    adiachibv = m_v.sys_diachi;
                    asyt      = m_v.Syte;

                    ads.WriteXml("..\\..\\Datareport\\" + aReport.Substring(0, aReport.Length - 3) + "xml", XmlWriteMode.WriteSchema);

                    CrystalDecisions.Windows.Forms.CrystalReportViewer crystalReportViewer1 = new CrystalDecisions.Windows.Forms.CrystalReportViewer();
                    crystalReportViewer1.ActiveViewIndex  = -1;
                    crystalReportViewer1.BackColor        = System.Drawing.Color.FromArgb(((System.Byte)(239)), ((System.Byte)(239)), ((System.Byte)(239)));
                    crystalReportViewer1.DisplayGroupTree = false;
                    crystalReportViewer1.Dock             = System.Windows.Forms.DockStyle.Fill;
                    crystalReportViewer1.Name             = "crystalReportViewer1";
                    crystalReportViewer1.ReportSource     = null;
                    crystalReportViewer1.Size             = new System.Drawing.Size(792, 573);
                    crystalReportViewer1.TabIndex         = 85;

                    System.Windows.Forms.Form af = new System.Windows.Forms.Form();
                    af.WindowState = FormWindowState.Maximized;
                    af.Controls.Add(crystalReportViewer1);
                    crystalReportViewer1.BringToFront();
                    crystalReportViewer1.Dock = System.Windows.Forms.DockStyle.Fill;

                    ReportDocument cMain = new ReportDocument();

                    cMain.Load("..\\..\\..\\report\\" + aReport, OpenReportMethod.OpenReportByTempCopy);
                    cMain.SetDataSource(ads);

                    cMain.DataDefinition.FormulaFields["v_syt"].Text      = "'" + atenbv + "'";
                    cMain.DataDefinition.FormulaFields["v_bv"].Text       = "'" + atenbv + "'";
                    cMain.DataDefinition.FormulaFields["v_diachibv"].Text = adiachibv;
                    cMain.DataDefinition.FormulaFields["v_ngay"].Text     = "'" + ngay + "'";
                    if (!v_print)
                    {
                        //cMain.PrintOptions.PaperSize = CrystalDecisions.Shared.PaperSize.PaperA5;
                        //cMain.PrintOptions.PaperOrientation = CrystalDecisions.Shared.PaperOrientation.Landscape;
                        crystalReportViewer1.ReportSource = cMain;
                        af.Text = lan.Change_language_MessageText("Bảng kê xuất hóa đơn tài chính ");
                        af.Text = af.Text + " (" + aReport + ")";
                        af.ShowDialog();
                    }
                    else
                    {
                        cMain.PrintToPrinter(1, false, 0, 0);
                    }
                }
            }
            catch (Exception ex) { MessageBox.Show(lan.Change_language_MessageText(ex.ToString())); }
        }
Пример #33
0
        public static void New_Config()
        { /// 1.0.9.14
            if (XDS != null)
            {
                XDS.Dispose();
                XDS = null;
                GC.Collect();
            }
            XDS = new DataSet(DS_CONFIG);

            XDS.Tables.Add(Sensor.New_CfgTable());
            XDS.AcceptChanges();

            XDS.Tables.Add(ComPorts.New_CfgTable());
            XDS.AcceptChanges();

            DataTable t2 = new DataTable(T_TERMINAL);

            t2.Columns.Add(new DataColumn(C_TERM_MAXLINES, Type.GetType(SYS_INT32)));
            t2.Columns[C_TERM_MAXLINES].DefaultValue = DEF_TERM_MAXLINES;

            t2.Columns.Add(new DataColumn(C_TERM_TIMERINTERVAL, Type.GetType(SYS_INT32)));
            t2.Columns[C_TERM_TIMERINTERVAL].DefaultValue = DEF_TERM_TIMERINTERVAL;

            t2.Columns.Add(new DataColumn(C_TERMLOG_ENABLE, Type.GetType(SYS_BOOLEAN)));
            t2.Columns[C_TERMLOG_ENABLE].DefaultValue = DEF_TERMLOG_ENABLE;

            t2.Columns.Add(new DataColumn(C_DATALOG_ENABLE, Type.GetType(SYS_BOOLEAN)));
            t2.Columns[C_DATALOG_ENABLE].DefaultValue = DEF_DATALOG_ENABLE;

            t2.Columns.Add(new DataColumn(C_DATALOG_FOLDER, Type.GetType(SYS_STRING)));
            t2.Columns[C_DATALOG_FOLDER].DefaultValue = DEF_DATALOG_FOLDER;

            t2.Columns.Add(new DataColumn(C_DATALOG_FILEINTERVAL, Type.GetType(SYS_INT32)));
            t2.Columns[C_DATALOG_FILEINTERVAL].DefaultValue = DEF_DATALOG_FILEINTERVAL;

            t2.Columns.Add(new DataColumn(C_DATALOG_FILENAMEFORMAT, Type.GetType(SYS_STRING)));
            t2.Columns[C_DATALOG_FILENAMEFORMAT].DefaultValue = DEF_DATALOG_FILENAMEFORMAT;

            t2.Columns.Add(new DataColumn(C_DATAPURGE_TIMERINTERVAL, Type.GetType(SYS_INT32)));
            t2.Columns[C_DATAPURGE_TIMERINTERVAL].DefaultValue = DEF_DATAPURGE_TIMERINTERVAL;

            t2.Rows.Add(t2.NewRow());
            t2.AcceptChanges();
            XDS.Tables.Add(t2);
            XDS.AcceptChanges();

            DataTable t3 = new DataTable(T_DISPLAY);

            t3.Columns.Add(new DataColumn(C_DISPLAY_TIMERINTERVAL, Type.GetType(SYS_INT32)));
            t3.Columns[C_DISPLAY_TIMERINTERVAL].DefaultValue = DEF_DISPLAY_TIMERINTERVAL;

            t3.Columns.Add(new DataColumn(C_DISPLAY_LIVEHIST, Type.GetType(SYS_INT32)));
            t3.Columns[C_DISPLAY_LIVEHIST].DefaultValue = DEF_DISPLAY_LIVEHIST;

            t3.Columns.Add(new DataColumn(C_HZCHART_SCALE, Type.GetType(SYS_INT32)));
            t3.Columns[C_HZCHART_SCALE].DefaultValue = DEF_HZCHART_SCALE;

            t3.Columns.Add(new DataColumn(C_HZCHART_ADJUST, Type.GetType(SYS_SINGLE)));
            t3.Columns[C_HZCHART_ADJUST].DefaultValue = DEF_HZCHART_ADJUST;

            t3.Columns.Add(new DataColumn(C_HZSPECT_SCALE, Type.GetType(SYS_SINGLE)));
            t3.Columns[C_HZSPECT_SCALE].DefaultValue = DEF_HZSPECT_SCALE;

            t3.Rows.Add(t3.NewRow());
            t3.AcceptChanges();
            XDS.Tables.Add(t3);
            XDS.AcceptChanges();

            DataTable t4 = new DataTable(T_PREFERENCES);

            t4.Columns.Add(new DataColumn(C_APP_VER, Type.GetType(SYS_STRING)));
            t4.Columns[C_APP_VER].DefaultValue = APP_VER;

            t4.Columns.Add(new DataColumn(C_STATUS_TIMERINTERVAL, Type.GetType(SYS_INT32)));
            t4.Columns[C_STATUS_TIMERINTERVAL].DefaultValue = DEF_STATUS_TIMERINTERVAL;

            t4.Columns.Add(new DataColumn(C_DATE_FORMATSTRING, Type.GetType(SYS_STRING)));
            t4.Columns[C_DATE_FORMATSTRING].DefaultValue = DEF_DATE_FORMATSTRING;

            t4.Rows.Add(t4.NewRow());
            t4.AcceptChanges();
            XDS.Tables.Add(t4);
            XDS.AcceptChanges();

            DataTable t5 = new DataTable(T_ACCOUNT);

            t5.Columns.Add(new DataColumn(C_ACCOUNT_ID, Type.GetType(SYS_INT64)));
            t5.Columns[C_ACCOUNT_ID].DefaultValue = DEF_ACCOUNT_ID;
            t5.Columns.Add(new DataColumn(C_ACCOUNT_EMAIL, Type.GetType(SYS_STRING)));
            t5.Columns[C_ACCOUNT_EMAIL].DefaultValue = "";
            t5.Columns.Add(new DataColumn(C_ACCOUNT_PSWD, Type.GetType(SYS_STRING)));
            t5.Columns[C_ACCOUNT_PSWD].DefaultValue = "";

            t5.Rows.Add(t5.NewRow());
            t5.AcceptChanges();
            XDS.Tables.Add(t5);
            XDS.AcceptChanges();


            // Remove the old Configuration file
            if (File.Exists(File_Path))
            {
                try
                {
                    File.Delete(File_Path);
                }
                catch (Exception ex)
                {
                    Log.Err(ex, "Sensor, New_Config", "Error Deleting Old Config File: " + File_Path, Log.LogDevice.LOG_DLG);
                }
            }

            // Create a new Default Configuration file
            try
            {
                XDS.WriteXml(File_Path, XmlWriteMode.WriteSchema);
            }
            catch (Exception ex)
            {
                Log.Err(ex, "Sensor, New_Config", "Error Creating New Config File: " + File_Path, Log.LogDevice.LOG_DLG);
            }

            // Note:  If we fail to Delete the Old Config or Save a New Config, we now have the Default Configuration anyway.
        }
Пример #34
0
        public static void ADO_DataSet()
        {
            Console.WriteLine("*************  DataSet ***********");
            using (SqlConnection cn = ADO_CreateConnection())
            {
                //   cn.Open();
                SqlDataAdapter da = new SqlDataAdapter();


                da.SelectCommand = new SqlCommand("Select * from Aircraft", cn);

                using (var commBuilder = new SqlCommandBuilder(da))
                {
                    // da.SelectCommand = new SqlCommand("Select * from SqlDataAdapter", cn);
                    DataSet ds = new DataSet(dataSetName: "DS");


                    ds.ExtendedProperties["Time"]    = DateTime.Now;
                    ds.ExtendedProperties["Machine"] = Environment.MachineName;
                    ds.ExtendedProperties["Descr"]   = "Desciprion";



                    //   DataTableMapping tableMapping = da.TableMappings.Add("Table", "Samoloty");
                    //   tableMapping.ColumnMappings.Add("Name", "Nazwa");


                    int iRerurnedItem = da.Fill(ds, "Aircraft");

                    Console.WriteLine($"Fill  return {iRerurnedItem} items");



                    Console.WriteLine("Extended properties:");
                    foreach (DictionaryEntry de in ds.ExtendedProperties)
                    {
                        Console.WriteLine("    Key: {0},   Value: {1}", de.Key, de.Value);
                    }

                    Console.WriteLine("DataTableCollection:");

                    DataTableCollection dtc = ds.Tables;
                    foreach (DataTable dt in dtc)
                    {
                        Console.WriteLine($"    Table : {dt.TableName}");


                        // Print out the column names.
                        for (int curCol = 0; curCol < dt.Columns.Count; curCol++)
                        {
                            Console.Write(dt.Columns[curCol].ColumnName + "\t");
                        }
                        Console.WriteLine("\n----------------------------------");
                        // Print the DataTable.
                        // 1'st way to read the data
                        for (int curRow = 0; curRow < dt.Rows.Count; curRow++)
                        {
                            for (int curCol = 0; curCol < dt.Columns.Count; curCol++)
                            {
                                if (curCol == 3)
                                {
                                    continue;
                                }
                                Console.Write(dt.Rows[curRow][curCol].ToString().Trim() + "\t");
                            }
                            Console.WriteLine();
                        }
                        //2'nd way
                        DataTableReader dataReader = dt.CreateDataReader();

                        while (dataReader.Read())
                        {
                            Console.WriteLine(dataReader[1]);
                        }
                        ADO_DataTable(dt);
                    }

                    DataRelationCollection drc = ds.Relations;
                    Console.WriteLine("DataRelationCollection:");

                    if (drc.Count == 0)
                    {
                        Console.WriteLine("    No relations");
                    }
                    foreach (DataRelation dr in drc)
                    {
                        Console.WriteLine(dr.ChildColumns);
                    }



                    ds.Tables[0].ExtendedProperties["tabDesc"] = "TablicaDescr";

                    ds.WriteXml("D:\\dataSet2.xml");
                    ds.WriteXmlSchema("D:\\datasetSchema.xsd");
                    ds.CaseSensitive = true; //default false
                                             //   ds.AcceptChanges();


                    var FirstDt = ds.Tables[0];

                    FirstDt.Rows[1][1] = "D";
                    //   ds.AcceptChanges();
                    //FirstDt.AcceptChanges();

                    //   var sqlcmd = commBuilder.GetUpdateCommand();
                    //  da.AcceptChangesDuringUpdate = true;


                    int x = da.Update(ds, "Aircraft");


                    da.Update(FirstDt);

                    //   ds.Clear();

                    /*      DataSet ds_changed1 = ds.GetChanges(DataRowState.Added);
                     *    DataSet ds_changed2 = ds.GetChanges(DataRowState.Unchanged);
                     *    bool bHasChanged = ds.HasChanges(); //ds.HasChanges(DataRowState.Added);
                     *    ds.Merge(ds_changed2);
                     *    ds.Prefix = "DAWID";
                     *    ds.Namespace = "STOGwA";
                     *    ds.RemotingFormat = SerializationFormat.Xml;*/
                    //   ds.RejectChanges(); //Rolls back all changes
                }
            }
        }
Пример #35
0
        public void init()
        {
            try{
                ListBox.Items.Clear();

                DataSet ds = new DataSet();
                //ds.ReadXml(@"Files\Folders.xml");


                if (!File.Exists(@"Files\Folders.xml"))
                {
                    string[] arr = { "امام علی (ع)", "امام حسن (ع)", "امام حسین (ع)", "امام سجاد (ع)", "امام باقر (ع)", "امام صادق (ع)", "امام کاظم (ع)", "امام رضا (ع)", "امام جواد (ع)", "امام هادی (ع)", "امام حسن عسگری (ع)", "امام زمان (ع)", "حضرت زهرا (س)", "مکه", "مدینه" };

                    ds.Tables.Add("tbl");
                    DataColumn dc = new DataColumn("Name");

                    ds.Tables[0].Columns.Add(dc);
                    foreach (string fn in arr)
                    {
                        Directory.CreateDirectory(@"Files\" + fn);
                        Directory.CreateDirectory(@"Files\" + fn + @"\PIC");
                        Directory.CreateDirectory(@"Files\" + fn + @"\PIC\thum");
                        Directory.CreateDirectory(@"Files\" + fn + @"\FILM");
                        Directory.CreateDirectory(@"Files\" + fn + @"\FILM\thum");


                        DataRow dr = ds.Tables[0].NewRow();

                        dr[0] = fn;
                        ds.Tables[0].Rows.Add(dr);
                    }
                    ds.WriteXml(@"Files\Folders.xml");
                }

                ds = new DataSet();
                ds.ReadXml(@"Files\Folders.xml");
                if (ds.Tables.Count == 0)
                {
                    return;
                }
                int i = 1;
                foreach (DataRow r in ds.Tables[0].Rows)
                {
                    ListBox.Items.Add(i.ToString() + "-" + r[0].ToString());
                    i++;
                }

                //اضافه کردن
                //DataRow dr = ds.Tables[0].NewRow();
                //dr[0] = "علی";
                //ds.Tables[0].Rows.Add(dr);
                //ds.WriteXml(@"Files\Folders.xml");

                //ListBox.Items.Clear();
                //DirectoryInfo MainDirectory = new DirectoryInfo(@"Files\");
                //DirectoryInfo[] dr = MainDirectory.GetDirectories().OrderBy(p => p.CreationTime).ToArray();
                //int i = 1;
                //foreach (DirectoryInfo d in dr)
                //{
                //    ListBox.Items.Add(i.ToString() + "-" + d.Name);
                //    i++;
                //}
            }
            catch
            {
                MessageBox.Show("نرم افزار اجازه دسترسی به فایلهای این درایو را ندارد لذا به مسیر نصب نرم افزار رفته و پس از راست کلیک روی فایل اجرایی گزینه \n\r run as administrator \n\r را انتخاب نمایید.", "", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, MessageBoxOptions.RightAlign);
            }
        }
Пример #36
0
        public void WtiteXmlEncodedXml()
        {
            string xml = @"<an_x0020_example_x0020_dataset.>
  <WOW_x0021__x0020_that_x0027_s_x0020_nasty...>
    <URL_x0020_is_x0020_http_x003A__x002F__x002F_www.go-mono.com>content string.</URL_x0020_is_x0020_http_x003A__x002F__x002F_www.go-mono.com>
  </WOW_x0021__x0020_that_x0027_s_x0020_nasty...>
</an_x0020_example_x0020_dataset.>";
            DataSet ds = new DataSet("an example dataset.");
            ds.Tables.Add(new DataTable("WOW! that's nasty..."));
            ds.Tables[0].Columns.Add("URL is http://www.go-mono.com");
            ds.Tables[0].Rows.Add(new object[] { "content string." });
            StringWriter sw = new StringWriter();
            ds.WriteXml(sw);
            Assert.Equal(sw.ToString().Replace("\r\n", "\n"), xml.Replace("\r\n", "\n"));
        }
Пример #37
0
        /// <summary>
        /// export_data
        /// </summary>
        public static string export_data(data_table_export_format format, DataSet ds, string temp_directory)
        {
            string destination;
            string file_name;
            Random rnd = new Random(DateTime.Now.Millisecond);

            file_name   = rnd.Next(10000, 1000000000) + "." + format.ToString();
            destination = temp_directory + "\\" + file_name;

            if (format == data_table_export_format.xls)
            {
                #region Check Table Name For Excel Length Limit of 31 Characters
                foreach (DataTable objTable in ds.Tables)
                {
                    if (objTable.TableName.Length > 31)
                    {
                        objTable.TableName = StringFunctions.Right(objTable.TableName, 31);
                    }
                }
                #endregion

                #region Remove Secure Fields From Export
                try
                {
                    foreach (DataTable objTable in ds.Tables)
                    {
                        lookagain : foreach (DataColumn col in objTable.Columns)
                        {
                            string strColName = col.ColumnName.ToLower();
                            if (strColName == "password" || strColName == "pass" || strColName == "exhibitorpassword" || strColName == "administratorpassword" || strColName == "customerpassword")
                            {
                                objTable.Columns.Remove(col.ColumnName);
                                goto lookagain;
                            }
                            if (strColName == "username" || strColName == "user" || strColName == "exhibitorusername" || strColName == "administratorusername" || strColName == "customerusername")
                            {
                                objTable.Columns.Remove(col.ColumnName);
                                goto lookagain;
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    General.Debugging.Report.SendError("Error removing secured fields in Excel Spreadsheet for export", ex);
                }
                #endregion

                /* THE OLD WAY
                 *              string xml = WorkbookEngine.CreateWorkbook(ds);
                 *              System.IO.StreamWriter sw = new System.IO.StreamWriter(destination,false);
                 *              sw.Write(xml);
                 *              sw.Close();
                 */

                xpOutputFormat outputFormat;
                outputFormat    = xpOutputFormat.Excel8;
                _xportToolsDemo = new DS2XL();

                //Check if we need to optimize export output for smaller export size. If not, then
                //export will be optimized for speed (default). This option works only for export
                //into XLS file format.
                _xportToolsDemo.OptimizeForSize = false;

                try
                {
                    //Export loaded data
                    ExportDataSetIntoResponse(ds, null, outputFormat, true,
                                              false, _xportToolsDemo, destination);
                }
                finally
                {
                    ReleaseGlobalResources();
                }
            }
            else if (format == data_table_export_format.xml)
            {
                //Remove Spaces From Column Names
                DataTable objTable = ds.Tables[0];
                foreach (DataColumn objColumn in objTable.Columns)
                {
                    if (objColumn.ColumnName.Contains(" "))
                    {
                        objColumn.ColumnName = objColumn.ColumnName.Replace(" ", "");
                    }
                }
                ds.WriteXml(destination);
            }
            else if (format == data_table_export_format.mdb)
            {
                access_tools.create_mdb_file(ds, destination, temp_directory + "\\Templates\\template.mdb");
            }
            else if (format == data_table_export_format.csv)
            {
                text_tools.create_txt_file(ds, destination);
            }
            else if (format == data_table_export_format.txt)
            {
                text_tools.create_txt_file(ds, destination, txt_data_type.tab, "", true);
            }

            return(file_name);
        }
Пример #38
0
        public void ReadWriteXml3()
        {
            string input = @"<FullTextResponse>
  <Domains>
    <AvailResponse info='y' name='novell-ximian-group' />
    <AvailResponse info='n' name='ximian' />
  </Domains>
</FullTextResponse>";
            var ds = new DataSet();
            ds.ReadXml(new StringReader(input));

            StringWriter sw = new StringWriter();
            XmlTextWriter xtw = new XmlTextWriter(sw);
            xtw.Formatting = Formatting.Indented;
            xtw.QuoteChar = '\'';
            ds.WriteXml(xtw);
            xtw.Flush();
            Assert.Equal(input.Replace("\r\n", "\n"), sw.ToString().Replace("\r\n", "\n"));
        }
Пример #39
0
        //save as
        private void button3_Click(object sender, EventArgs e)
        {
            string name1               = textBox1.Text;
            string identifier1         = textBox2.Text;
            string priority1           = textBox3.Text;
            string requirement1        = textBox4.Text;
            string module1             = textBox5.Text;
            string submodule1          = textBox6.Text;
            string titleAndSteps1      = textBox7.Text;
            string requiredStepResult1 = textBox8.Text;

            try
            {
                DataSet   ds = new DataSet();   //Create a empty cache of table
                DataTable dt = new DataTable(); //Empty table
                dt.TableName = "Autotest";
                dt.Columns.Add("Name");
                dt.Columns.Add("Identifier");
                dt.Columns.Add("Priority");
                dt.Columns.Add("Requirement");
                dt.Columns.Add("Module");
                dt.Columns.Add("Submodule");
                dt.Columns.Add("TitleAndSteps");
                dt.Columns.Add("RequiredStepResult");

                ds.Tables.Add(dt);

                //Title row
                DataRow row = ds.Tables["Autotest"].NewRow();
                row["Name"]               = "Название кейса";
                row["Identifier"]         = "Идентификатор";
                row["Priority"]           = "Приоритет";
                row["Requirement"]        = "Требование";
                row["Module"]             = "Модуль";
                row["Submodule"]          = "Подмодуль";
                row["TitleAndSteps"]      = "Заглавие тест-кейса";
                row["RequiredStepResult"] = "Ожидаемый результат";
                ds.Tables["Autotest"].Rows.Add(row);

                //Row of typed values
                DataRow row1 = ds.Tables["Autotest"].NewRow();
                row1["Name"]               = name1;
                row1["Identifier"]         = identifier1;
                row1["Priority"]           = priority1;
                row1["Requirement"]        = requirement1;
                row1["Module"]             = module1;
                row1["Submodule"]          = submodule1;
                row1["TitleAndSteps"]      = titleAndSteps1;
                row1["RequiredStepResult"] = requiredStepResult1;
                ds.Tables["Autotest"].Rows.Add(row1);

                SaveFileDialog saveFileDialog = new SaveFileDialog();
                saveFileDialog.Filter = "XML-File | *.xml";
                if (saveFileDialog.ShowDialog() == DialogResult.OK)
                {
                    ds.WriteXml(saveFileDialog.FileName);
                }

                MessageBox.Show("File saved!", "Successful");
            }
            catch
            {
                MessageBox.Show("The document wasn't saved!", "Save error");
            }
        }
Пример #40
0
        public void WriteXmlModeSchema()
        {
            // This is the MS output of WriteXmlSchema().

            string xml = @"<Example>
  <xs:schema id=""Example"" xmlns="""" xmlns:xs=""http://www.w3.org/2001/XMLSchema"" xmlns:msdata=""urn:schemas-microsoft-com:xml-msdata"">
" +
@"    <xs:element name=""Example"" msdata:IsDataSet=""true"" msdata:UseCurrentLocale=""true"">"
              + @"
      <xs:complexType>
        <xs:choice minOccurs=""0"" maxOccurs=""unbounded"">
          <xs:element name=""Dimension"">
            <xs:complexType>
              <xs:sequence>
                <xs:element name=""Number"" type=""xs:int"" />
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element name=""Element"">
            <xs:complexType>
              <xs:sequence>
                <xs:element name=""Dimension"" type=""xs:int"" />
                <xs:element name=""Number"" type=""xs:int"" />
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:choice>
      </xs:complexType>
      <xs:unique name=""PK_Dimension"" msdata:PrimaryKey=""true"">
        <xs:selector xpath="".//Dimension"" />
        <xs:field xpath=""Number"" />
      </xs:unique>
      <xs:unique name=""PK_Element"" msdata:PrimaryKey=""true"">
        <xs:selector xpath="".//Element"" />
        <xs:field xpath=""Dimension"" />
        <xs:field xpath=""Number"" />
      </xs:unique>
      <xs:keyref name=""FK_Element_To_Dimension"" refer=""PK_Dimension"">
        <xs:selector xpath="".//Element"" />
        <xs:field xpath=""Dimension"" />
      </xs:keyref>
    </xs:element>
  </xs:schema>
  <Dimension>
    <Number>0</Number>
  </Dimension>
  <Dimension>
    <Number>1</Number>
  </Dimension>
  <Element>
    <Dimension>0</Dimension>
    <Number>0</Number>
  </Element>
  <Element>
    <Dimension>0</Dimension>
    <Number>1</Number>
  </Element>
  <Element>
    <Dimension>0</Dimension>
    <Number>2</Number>
  </Element>
  <Element>
    <Dimension>0</Dimension>
    <Number>3</Number>
  </Element>
  <Element>
    <Dimension>1</Dimension>
    <Number>0</Number>
  </Element>
  <Element>
    <Dimension>1</Dimension>
    <Number>1</Number>
  </Element>
</Example>";
            DataSet ds = new DataSet("Example");

            // Dimension DataTable
            DataTable dt1 = new DataTable("Dimension");
            ds.Tables.Add(dt1);

            dt1.Columns.Add(new DataColumn("Number", typeof(int)));
            dt1.Columns["Number"].AllowDBNull = false;

            dt1.Constraints.Add("PK_Dimension", dt1.Columns["Number"], true);

            // Element DataTable
            DataTable dt2 = new DataTable("Element");
            ds.Tables.Add(dt2);

            dt2.Columns.Add(new DataColumn("Dimension", typeof(int)));
            dt2.Columns["Dimension"].AllowDBNull = false;

            dt2.Columns.Add(new DataColumn("Number", typeof(int)));
            dt2.Columns["Number"].AllowDBNull = false;

            dt2.Constraints.Add("PK_Element", new DataColumn[] {
                dt2.Columns ["Dimension"],
                dt2.Columns ["Number"] },
                true);

            // Add DataRelations
            ds.Relations.Add("FK_Element_To_Dimension",
                dt1.Columns["Number"],
                dt2.Columns["Dimension"], true);

            // Add 2 Dimensions
            for (int i = 0; i < 2; i++)
            {
                DataRow newRow = dt1.NewRow();
                newRow["Number"] = i;
                dt1.Rows.Add(newRow);
            }

            // Dimension 0 => 4 Elements
            for (int i = 0; i < 4; i++)
            {
                DataRow newRow = dt2.NewRow();
                newRow["Dimension"] = 0;
                newRow["Number"] = i;
                dt2.Rows.Add(newRow);
            }

            // Dimension 1 => 2 Elements
            for (int i = 0; i < 2; i++)
            {
                DataRow newRow = dt2.NewRow();
                newRow["Dimension"] = 1;
                newRow["Number"] = i;
                dt2.Rows.Add(newRow);
            }

            ds.AcceptChanges();

            StringWriter sw = new StringWriter();
            ds.WriteXml(sw, XmlWriteMode.WriteSchema);

            string result = sw.ToString();

            Assert.Equal(result.Replace("\r\n", "\n"), xml.Replace("\r\n", "\n"));
        }
Пример #41
0
        //save
        private void button1_Click(object sender, EventArgs e)
        {
            string name1               = textBox1.Text;
            string identifier1         = textBox2.Text;
            string priority1           = textBox3.Text;
            string requirement1        = textBox4.Text;
            string module1             = textBox5.Text;
            string submodule1          = textBox6.Text;
            string titleAndSteps1      = textBox7.Text;
            string requiredStepResult1 = textBox8.Text;


            try
            {
                DataSet   ds = new DataSet();   //Create a empty cache of table
                DataTable dt = new DataTable(); //Empty table
                dt.TableName = "Autotest";
                dt.Columns.Add("Name");
                dt.Columns.Add("Identifier");
                dt.Columns.Add("Priority");
                dt.Columns.Add("Requirement");
                dt.Columns.Add("Module");
                dt.Columns.Add("Submodule");
                dt.Columns.Add("TitleAndSteps");
                dt.Columns.Add("RequiredStepResult");

                ds.Tables.Add(dt);

                DataRow row = ds.Tables["Autotest"].NewRow();
                row["Name"]               = "Название кейса";
                row["Identifier"]         = "Идентификатор";
                row["Priority"]           = "Приоритет";
                row["Requirement"]        = "Требование";
                row["Module"]             = "Модуль";
                row["Submodule"]          = "Подмодуль";
                row["TitleAndSteps"]      = "Заглавие тест-кейса";
                row["RequiredStepResult"] = "Ожидаемый результат";
                ds.Tables["Autotest"].Rows.Add(row);

                DataRow row1 = ds.Tables["Autotest"].NewRow();

                row1["Name"]               = name1;
                row1["Identifier"]         = identifier1;
                row1["Priority"]           = priority1;
                row1["Requirement"]        = requirement1;
                row1["Module"]             = module1;
                row1["Submodule"]          = submodule1;
                row1["TitleAndSteps"]      = titleAndSteps1;
                row1["RequiredStepResult"] = requiredStepResult1;
                ds.Tables["Autotest"].Rows.Add(row1);

                //Save a XML document into internal place of project
                String path = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);
                ds.WriteXml(path + @"\New XML document.xml");

                MessageBox.Show("File saved!", "Successful");
            }
            catch
            {
                MessageBox.Show("The document wasn't saved", "Save error");
            }
        }
Пример #42
0
        public void WriteXmlEscapeName()
        {
            // create dataset
            DataSet data = new DataSet();

            DataTable mainTable = data.Tables.Add("main");
            DataColumn mainkey = mainTable.Columns.Add("mainkey", typeof(Guid));
            mainTable.Columns.Add("col.2<hi/>", typeof(string));
            mainTable.Columns.Add("#col3", typeof(string));

            // populate data
            mainTable.Rows.Add(new object[] { Guid.NewGuid(), "hi there", "my friend" });
            mainTable.Rows.Add(new object[] { Guid.NewGuid(), "what is", "your name" });
            mainTable.Rows.Add(new object[] { Guid.NewGuid(), "I have", "a bean" });

            // write xml
            StringWriter writer = new StringWriter();
            data.WriteXml(writer, XmlWriteMode.WriteSchema);
            string xml = writer.ToString();
            Assert.True(xml.IndexOf("name=\"col.2_x003C_hi_x002F__x003E_\"") > 0);
            Assert.True(xml.IndexOf("name=\"_x0023_col3\"") > 0);
            Assert.True(xml.IndexOf("<col.2_x003C_hi_x002F__x003E_>hi there</col.2_x003C_hi_x002F__x003E_>") > 0);

            // read xml
            DataSet data2 = new DataSet();
            data2.ReadXml(new StringReader(
                writer.GetStringBuilder().ToString()));
        }
 private void SaveCustomValues()
 {
     _CustomValues.WriteXml(_CustomValuesFilename);
 }
Пример #44
0
        public void ReadWriteXmlDiffGram()
        {
            var ds = new DataSet();
            // It is not a diffgram, so no data loading should be done.
            ds.ReadXml(new StringReader(DataProvider.region), XmlReadMode.DiffGram);
            TextWriter writer = new StringWriter();
            ds.WriteXml(writer);

            string TextString = writer.ToString();
            Assert.Equal("<NewDataSet />", TextString);

            ds.WriteXml(writer, XmlWriteMode.DiffGram);
            TextString = writer.ToString();

            Assert.Equal("<NewDataSet /><diffgr:diffgram xmlns:msdata=\"urn:schemas-microsoft-com:xml-msdata\" xmlns:diffgr=\"urn:schemas-microsoft-com:xml-diffgram-v1\" />", TextString);


            ds = new DataSet();
            ds.ReadXml(new StringReader(DataProvider.region));
            DataTable table = ds.Tables["Region"];
            table.Rows[0][0] = "64";
            ds.ReadXml(new StringReader(DataProvider.region), XmlReadMode.DiffGram);
            ds.WriteXml(writer, XmlWriteMode.DiffGram);

            TextString = writer.ToString();
            string substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("<NewDataSet /><diffgr:diffgram xmlns:msdata=\"urn:schemas-microsoft-com:xml-msdata\" xmlns:diffgr=\"urn:schemas-microsoft-com:xml-diffgram-v1\" /><diffgr:diffgram xmlns:msdata=\"urn:schemas-microsoft-com:xml-msdata\" xmlns:diffgr=\"urn:schemas-microsoft-com:xml-diffgram-v1\">", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("  <Root>", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("    <Region diffgr:id=\"Region1\" msdata:rowOrder=\"0\" diffgr:hasChanges=\"inserted\">", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("      <RegionID>64</RegionID>", substring);

            // not '\n' but literal '\n'
            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("      <RegionDescription>Eastern", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("               </RegionDescription>", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("    </Region>", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("    <Region diffgr:id=\"Region2\" msdata:rowOrder=\"1\" diffgr:hasChanges=\"inserted\">", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("      <RegionID>2</RegionID>", substring);

            // not '\n' but literal '\n'
            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("      <RegionDescription>Western", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("               </RegionDescription>", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("    </Region>", substring);

            substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' }));
            TextString = TextString.Substring(TextString.IndexOf('\n') + 1);
            Assert.Equal("  </Root>", substring);

            Assert.Equal("</diffgr:diffgram>", TextString);
        }
Пример #45
0
 // Сохранение в файл при закрытии
 private void Form1_FormClosing(object sender, FormClosingEventArgs e)
 {
     users.WriteXml("users.xml", XmlWriteMode.WriteSchema);
 }
Пример #46
0
        public void WriteNestedTableXml()
        {
            string xml = @"<NewDataSet>
  <tab1>
    <ident>1</ident>
    <name>hoge</name>
    <tab2>
      <timestamp>2004-05-05</timestamp>
    </tab2>
  </tab1>
  <tab1>
    <ident>2</ident>
    <name>fuga</name>
    <tab2>
      <timestamp>2004-05-06</timestamp>
    </tab2>
  </tab1>
</NewDataSet>";
            var ds = new DataSet();
            DataTable dt = new DataTable("tab1");
            dt.Columns.Add("ident");
            dt.Columns.Add("name");
            dt.Rows.Add(new object[] { "1", "hoge" });
            dt.Rows.Add(new object[] { "2", "fuga" });
            DataTable dt2 = new DataTable("tab2");
            dt2.Columns.Add("idref");
            dt2.Columns[0].ColumnMapping = MappingType.Hidden;
            dt2.Columns.Add("timestamp");
            dt2.Rows.Add(new object[] { "1", "2004-05-05" });
            dt2.Rows.Add(new object[] { "2", "2004-05-06" });
            ds.Tables.Add(dt);
            ds.Tables.Add(dt2);
            DataRelation rel = new DataRelation("rel", dt.Columns[0], dt2.Columns[0]);
            rel.Nested = true;
            ds.Relations.Add(rel);
            StringWriter sw = new StringWriter();
            ds.WriteXml(sw);
            Assert.Equal(sw.ToString().Replace("\r\n", "\n"), xml.Replace("\r\n", "\n"));
        }
        public static string WriteDictionaryToXml(Dictionary <string, object> dictToWrite, string filename, bool append = false, bool savePreviousFileVersion = false)
        {
            FileInfo finfo = new FileInfo(filename);

            if (!Directory.Exists(finfo.DirectoryName))
            {
                Directory.CreateDirectory(finfo.DirectoryName);
            }



            if (File.Exists(filename) && !append && savePreviousFileVersion)
            {
                string filename_cp = ServiceTools.NewNumberedFilenameThatDoesntExist(filename);
                bool   success     = false;
                int    counter     = 0;
                while ((!success) && (counter <= 10))
                {
                    try
                    {
                        File.Move(filename, filename_cp);
                        success = true;
                    }
                    catch (Exception ex)
                    {
                        success = false;
                        counter++;
                        Thread.Sleep(20);
                    }
                }
                if (!success)
                {
                    filename = filename_cp;
                }
            }



            DataSet dsToWrite = new DataSet("DataSet");

            dsToWrite.Namespace = "NetFrameWork";
            DataTable table = new DataTable("table");

            DataColumn keyColumn = new DataColumn("key", Type.GetType("System.String"));

            DataColumn valueColumn = new DataColumn("value");

            table.Columns.Add(keyColumn);
            table.Columns.Add(valueColumn);
            dsToWrite.Tables.Add(table);

            DataRow newRow;

            if (append && File.Exists(filename))
            {
                Dictionary <string, object> tmpDict = new Dictionary <string, object>();
                DataSet readingDataSet = new DataSet("DataSet");
                readingDataSet.ReadXml(filename);
                foreach (DataTable tmpTable in readingDataSet.Tables)
                {
                    foreach (DataRow row in tmpTable.Rows)
                    {
                        tmpDict.Add(row[0] as string, row[1]);
                    }
                }
                readingDataSet.Dispose();

                foreach (KeyValuePair <string, object> pair in tmpDict)
                {
                    newRow          = table.NewRow();
                    newRow["key"]   = pair.Key;
                    newRow["value"] = pair.Value;
                    table.Rows.Add(newRow);
                }
                File.Delete(filename);
            }

            foreach (KeyValuePair <string, object> pair in dictToWrite)
            {
                newRow          = table.NewRow();
                newRow["key"]   = pair.Key;
                newRow["value"] = pair.Value;
                table.Rows.Add(newRow);
            }
            dsToWrite.AcceptChanges();

            bool sucess = false;
            int  tries  = 0;

            while ((!sucess) && (tries <= 10))
            {
                try
                {
                    dsToWrite.WriteXml(filename);
                    sucess = true;
                }
                catch (Exception ex)
                {
                    Thread.Sleep(20);
                    sucess = false;
                    tries++;
                }
            }


            dsToWrite.Dispose();

            return(filename);
        }
Пример #48
0
        public void ContainsSchema()
        {
            var ds = new DataSet();
            DataTable dt1 = new DataTable();
            ds.Tables.Add(dt1);
            DataColumn dc1 = new DataColumn("Col1");
            dt1.Columns.Add(dc1);
            dt1.Rows.Add(new string[] { "aaa" });
            DataTable dt2 = new DataTable();
            ds.Tables.Add(dt2);
            DataColumn dc2 = new DataColumn("Col2");
            dt2.Columns.Add(dc2);
            dt2.Rows.Add(new string[] { "bbb" });

            DataRelation rel = new DataRelation("Rel1", dc1, dc2, false);
            ds.Relations.Add(rel);

            StringWriter sw = new StringWriter();
            ds.WriteXml(sw, XmlWriteMode.WriteSchema);

            ds = new DataSet();
            ds.ReadXml(new StringReader(sw.ToString()));
            sw = new StringWriter();
            ds.WriteXml(sw);
            XmlDocument doc = new XmlDocument();
            doc.LoadXml(sw.ToString());
            Assert.Equal(2, doc.DocumentElement.ChildNodes.Count);
        }
Пример #49
0
        public void WriteXml_ByTextWriterXmlWriteMode()
        {
            StringReader sr = null;
            StringWriter sw = null;

            try  // For real
            {
                // ReadXml - DataSetOut

                DataSet oDataset = new DataSet("DataSetOut");
                sw = new StringWriter();
                oDataset.WriteXml(sw, XmlWriteMode.WriteSchema);

                sr = new StringReader(sw.GetStringBuilder().ToString());
                oDataset = new DataSet("DataSetOut");

                oDataset.ReadXml(sr);
                Assert.Equal(0, oDataset.Tables.Count);
            }
            finally
            {
                sw.Close();
            }
        }