protected int generarreporte() { int NumRep = 0; string ano; ds = new DataSet(); //Reporte para el caso de todos los conceptos de provision ,todos los empleados por MES del año vigente. ano = DBFunctions.SingleData("select cnom_ano from dbxschema.CNOMINA"); if (Request.QueryString["Concepto"] == "0" && Request.QueryString["Empleado"] == "0") { DBFunctions.Request(ds, IncludeSchema.NO, "SELECT MEMP.memp_codiempl,PPRO.ppro_codiprov,SUM(MPRO.mpro_valor),PPRO.ppro_nombprov,MQUI.mqui_anoquin,MQUI.mqui_mesquin FROM dbxschema.mempleado MEMP, dbxschema.mprovisiones MPRO,dbxschema.pprovisionnomina PPRO,dbxschema.mquincenas MQUI WHERE MEMP.memp_codiempl=MPRO.memp_codiempl and PPRO.ppro_codiprov=MPRO.pcon_concepto and MQUI.mqui_codiquin=MPRO.mqui_codiquin and MQUI_ANOQUIN=" + ano + " GROUP BY MEMP.memp_codiempl,PPRO.ppro_codiprov,PPRO.ppro_nombprov,MQUI.mqui_mesquin,MQUI.mqui_anoquin;select cemp_nombre,cemp_nombcome,mnit_nit from dbxschema.cempresa;select EMP.memp_codiempl, M.mnit_nit,M.mnit_nombres, M.mnit_apellidos,DEP.pdep_nombdpto from dbxschema.mempleado EMP, dbxschema.mnit M,dbxschema.pdepartamentoempresa DEP where EMP.mnit_nit=M.mnit_nit and DEP.pdep_codidpto=EMP.pdep_codidpto"); ds.WriteXmlSchema(Path.Combine(Request.PhysicalApplicationPath, "schemas/Nomina.Acumulado.rpte_ImpAcumuladoProvisiones.xsd")); this.MostrarReporte("Nomina.Acumulado.rpte_ImpAcumuladoProvisiones"); NumRep = 1; Utils.MostrarAlerta(Response, "todos"); } //Reporte para el caso de todos los conceptos,empleado especifico por MES especifico del año vigente. else if (Request.QueryString["Concepto"] == "0" && Request.QueryString["Empleado"] == "1") { //Response.Write("<script language:java>alert('Borrando datos.. ');</script> "); DBFunctions.Request(ds, IncludeSchema.NO, "SELECT MEMP.memp_codiempl,PPRO.ppro_codiprov,SUM(MPRO.mpro_valor),PPRO.ppro_nombprov,MQUI.mqui_anoquin,MQUI.mqui_mesquin FROM dbxschema.mempleado MEMP, dbxschema.mprovisiones MPRO,dbxschema.pprovisionnomina PPRO,dbxschema.mquincenas MQUI WHERE MEMP.memp_codiempl=MPRO.memp_codiempl and PPRO.ppro_codiprov=MPRO.pcon_concepto and MQUI.mqui_codiquin=MPRO.mqui_codiquin and MQUI_ANOQUIN=" + ano + " and MEMP.memp_codiempl='" + Request.QueryString["DDLEMPLEADOS"] + "' GROUP BY MEMP.memp_codiempl,PPRO.ppro_codiprov,PPRO.ppro_nombprov,MQUI.mqui_mesquin,MQUI.mqui_anoquin;select cemp_nombre,cemp_nombcome,mnit_nit from dbxschema.cempresa;select EMP.memp_codiempl, M.mnit_nit,M.mnit_nombres, M.mnit_apellidos,DEP.pdep_nombdpto from dbxschema.mempleado EMP, dbxschema.mnit M,dbxschema.pdepartamentoempresa DEP where EMP.mnit_nit=M.mnit_nit and DEP.pdep_codidpto=EMP.pdep_codidpto"); ds.WriteXmlSchema(Path.Combine(Request.PhysicalApplicationPath, "schemas/Nomina.Acumulado.rpte_ImpAcumuladoProvisionesPorMesEmpleadoEspecifico.xsd")); //mostrar el reporte en la pagina. this.MostrarReporte("Nomina.Acumulado.rpte_ImpAcumuladoProvisionesPorMesEmpleadoEspecifico"); NumRep = 2; } return(NumRep); }
protected int generarreporte() { int NumRep = 0; string ano; ds = new DataSet(); //Reporte para el caso de todos los conceptos,todos los empleados por MES especifico del año vigente. ano = DBFunctions.SingleData("select cnom_ano from dbxschema.CNOMINA"); if (Request.QueryString["Empleado"] == "0") { DBFunctions.Request(ds, IncludeSchema.NO, "SELECT MEMP.memp_codiempl,DQUI.pcon_concepto,SUM(DQUI.dqui_apagar),SUM(DQUI.dqui_adescontar),MQUI.mqui_anoquin,PCON.pcon_signoliq FROM dbxschema.mempleado MEMP,dbxschema.dquincena DQUI,dbxschema.mquincenas MQUI,dbxschema.pconceptonomina PCON,dbxschema.pmes PMES WHERE MEMP.memp_codiempl=DQUI.memp_codiempl AND DQUI.pcon_concepto=PCON.pcon_concepto AND MQUI.mqui_codiquin=DQUI.mqui_codiquin AND MQUI.mqui_mesquin=PMES.pmes_mes and mqui_anoquin=" + ano + " and mqui_mesquin<=" + Request.QueryString["Mes"] + " GROUP BY MEMP.memp_codiempl,DQUI.pcon_concepto,MQUI.mqui_anoquin,PCON.pcon_signoliq ORDER BY MEMP.memp_codiempl;select pcon_concepto,pcon_nombconc from dbxschema.pconceptonomina;select EMP.memp_codiempl, M.mnit_nit,M.mnit_nombres, M.mnit_apellidos,DEP.pdep_nombdpto from dbxschema.mempleado EMP, dbxschema.mnit M,dbxschema.pdepartamentoempresa DEP where EMP.mnit_nit=M.mnit_nit and DEP.pdep_codidpto=EMP.pdep_codidpto; select cemp_nombre,cemp_nombcome,mnit_nit from dbxschema.cempresa;SELECT MEMP.memp_codiempl,DQUI.pcon_concepto,SUM(DQUI.dqui_apagar),SUM(DQUI.dqui_adescontar),MQUI.mqui_anoquin FROM dbxschema.mempleado MEMP,dbxschema.dquincena DQUI,dbxschema.mquincenas MQUI,dbxschema.pconceptonomina PCON,dbxschema.pmes PMES WHERE MEMP.memp_codiempl=DQUI.memp_codiempl AND DQUI.pcon_concepto=PCON.pcon_concepto AND MQUI.mqui_codiquin=DQUI.mqui_codiquin AND MQUI.mqui_mesquin=PMES.pmes_mes and mqui_anoquin=" + ano + " and mqui_mesquin=" + Request.QueryString["Mes"] + " GROUP BY MEMP.memp_codiempl,DQUI.pcon_concepto,MQUI.mqui_anoquin ORDER BY MEMP.memp_codiempl;select cnom_ano from dbxschema.CNOMINA"); ds.WriteXmlSchema(Path.Combine(Request.PhysicalApplicationPath, "schemas/Nomina.Acumulado.rpte_ImpAcumuladoPorMes.xsd")); this.MostrarReporte("Nomina.Acumulado.rpte_ImpAcumuladoPorMes"); NumRep = 1; Utils.MostrarAlerta(Response, "todos "); } //Reporte para el caso de todos los conceptos,empleado especifico por MES especifico del año vigente. else if (Request.QueryString["Empleado"] == "1") { //Response.Write("<script language:java>alert('Borrando datos.. ');</script> "); DBFunctions.Request(ds, IncludeSchema.NO, "SELECT MEMP.memp_codiempl,DQUI.pcon_concepto,SUM(DQUI.dqui_apagar),SUM(DQUI.dqui_adescontar),MQUI.mqui_anoquin,PCON.pcon_signoliq FROM dbxschema.mempleado MEMP,dbxschema.dquincena DQUI,dbxschema.mquincenas MQUI,dbxschema.pconceptonomina PCON,dbxschema.pmes PMES WHERE MEMP.memp_codiempl=DQUI.memp_codiempl AND DQUI.pcon_concepto=PCON.pcon_concepto AND MQUI.mqui_codiquin=DQUI.mqui_codiquin AND MQUI.mqui_mesquin=PMES.pmes_mes and MEMP.memp_codiempl='" + Request.QueryString["DDLEMPLEADOS"] + "' and mqui_anoquin=" + ano + " and mqui_mesquin<=" + Request.QueryString["Mes"] + " GROUP BY MEMP.memp_codiempl,DQUI.pcon_concepto,MQUI.mqui_anoquin,PCON.pcon_signoliq ORDER BY MEMP.memp_codiempl;select pcon_concepto,pcon_nombconc from dbxschema.pconceptonomina;select EMP.memp_codiempl, M.mnit_nit,M.mnit_nombres, M.mnit_apellidos,DEP.pdep_nombdpto from dbxschema.mempleado EMP, dbxschema.mnit M,dbxschema.pdepartamentoempresa DEP where EMP.mnit_nit=M.mnit_nit and DEP.pdep_codidpto=EMP.pdep_codidpto; select cemp_nombre,cemp_nombcome,mnit_nit from dbxschema.cempresa;SELECT MEMP.memp_codiempl,DQUI.pcon_concepto,SUM(DQUI.dqui_apagar),SUM(DQUI.dqui_adescontar),MQUI.mqui_anoquin FROM dbxschema.mempleado MEMP,dbxschema.dquincena DQUI,dbxschema.mquincenas MQUI,dbxschema.pconceptonomina PCON,dbxschema.pmes PMES WHERE MEMP.memp_codiempl=DQUI.memp_codiempl AND DQUI.pcon_concepto=PCON.pcon_concepto AND MQUI.mqui_codiquin=DQUI.mqui_codiquin AND MQUI.mqui_mesquin=PMES.pmes_mes and MEMP.memp_codiempl='" + Request.QueryString["DDLEMPLEADOS"] + "' and mqui_anoquin=" + ano + " and mqui_mesquin=" + Request.QueryString["Mes"] + " GROUP BY MEMP.memp_codiempl,DQUI.pcon_concepto,MQUI.mqui_anoquin ORDER BY MEMP.memp_codiempl "); ds.WriteXmlSchema(Path.Combine(Request.PhysicalApplicationPath, "schemas/Nomina.Acumulado.rpte_ImpAcumuladoPorMesEmpleadoEspecifico.xsd")); //mostrar el reporte en la pagina. this.MostrarReporte("Nomina.Acumulado.rpte_ImpAcumuladoPorMesEmpleadoEspecifico"); NumRep = 2; } return(NumRep); }
private void button1_Click(object sender, EventArgs e)//сохран { ds.WriteXml(@"C:\excel\fromdb.xml"); ds.WriteXmlSchema(@"C:\excel\schema.xsd"); string xmltable = ds.GetXml(); richTextBox1.Text = xmltable; }
// Når det skjer en oppdatering i databasen... private static void OnUpdate() { if (!initialized || !autoSyncXML) { return; } ds.WriteXml("hotelladmin_database.xml"); ds.WriteXmlSchema("hotelladmin_schema.xml"); }
private void btnAttendanceBetweenReport_Click(object sender, EventArgs e) { if (dataGridView1.RowCount > 0) { DataSet ds = Connection.GetDataSet(" SELECT schoolname, schooladdress, affiliate_by, logoimage FROM tbl_school"); DataTable dt = Connection.GetDataTableFromDataGridView(dataGridView1); DataView dv = Connection.GetDataSet("Select EmpNo,EmpName,AccountNo,BankName From tbl_EmployeeInfo").Tables[0].DefaultView; dt.Columns.Add("AccountNo"); dt.Columns.Add("BankName"); for (int i = 0; i < dt.Rows.Count; i++) { dv.RowFilter = "EmpNo =" + dt.Rows[i][0]; dt.Rows[i]["AccountNo"] = dv[0][2]; dt.Rows[i]["BankName"] = dv[0][3]; } ds.Tables.Add(dt); rptSalaryStatementForBank cr1 = new rptSalaryStatementForBank(); cr1.PrintOptions.PaperOrientation = PaperOrientation.Portrait; cr1.PrintOptions.PaperSize = CrystalDecisions.Shared.PaperSize.PaperLetter; ds.WriteXmlSchema(@"" + Connection.GetAccessPathId() + @"Barcodes\a\SalaryStatementForBank.xsd"); cr1.SetDataSource(ds); cr1.SetParameterValue("Month", new DateTime(Convert.ToInt16(cmbYear.Text), cmbMonth.SelectedIndex, 1)); ShowAllReports s = new ShowAllReports(); s.crystalReportViewer1.ReportSource = cr1; s.Show(); } else { MessageBox.Show("Record Not Shown.\n\tPlease Select Month And Press Tab Key."); } }
private void btnSema_Click(object sender, EventArgs e) // veri alıcak olan firma karşı tarafa hangi formatta istediğini söylemek zorunda, bunun için yaptık { SqlConnection cnn = new SqlConnection("Data Source=UMITT\\SQLEXPRESS;" + "Initial Catalog=ErmasDepo;Persist Security Info=True;User ID=Sa;Password=159357"); SqlDataAdapter adp = new SqlDataAdapter("SELECT Malzeme,Voltaji,Akimi FROM Komponentler", cnn); // bir firma bizden bir xml formatı istediğinde bu şemaya göre tablo oluşturmamızı ister, DataSet ds = new DataSet("xKomponentler"); DataTable dt = new DataTable("xMalzeme"); adp.Fill(dt); ds.Tables.Add(dt); FolderBrowserDialog fd = new FolderBrowserDialog(); DialogResult dr = fd.ShowDialog(); if (dr == DialogResult.OK) { string Dosya = fd.SelectedPath + "\\BenimSemam.xsd"; //xsd: açılımı; xml shema defination // fd.SelectedPath nereye kaydedeceğini sordurur.. ds.WriteXmlSchema(Dosya); MessageBox.Show("OK"); } else { MessageBox.Show("Dosya Bulunamadı.\nSqlToXml.xml"); } }
private void frmPharmacynotes_Load(object sender, EventArgs e) { patientDetails(); rptDocument = new ReportDocument(); IQCareUtils theUtil = new IQCareUtils(); IDrug ReportDetails = (IDrug)ObjectFactory.CreateInstance("BusinessProcess.Pharmacy.BDrug,BusinessProcess.Pharmacy"); DataSet theDS = (DataSet)ReportDetails.GetPharmacyNotes(GblIQCare.patientID); theDS.WriteXmlSchema(GblIQCare.GetXMLPath() + "\\PharmacyNotes.xml"); rptPharmacyNotes rep = new rptPharmacyNotes(); rep.SetDataSource(theDS); //frmPharmacyNotes theRepViewer = new frmPharmacyNotes(); frmReportViewer theRepViewer = new frmReportViewer(); theRepViewer.MdiParent = this.MdiParent; theRepViewer.Location = new Point(0, 0); theRepViewer.crViewer.ReportSource = rep; theRepViewer.crViewer.ToolPanelView = CrystalDecisions.Windows.Forms.ToolPanelViewType.None; theRepViewer.Width = 902; theRepViewer.Height = 650; theRepViewer.crViewer.Width = 880; theRepViewer.crViewer.Height = 600; theRepViewer.crViewer.Location = new Point(11, 11); theRepViewer.btnExit_position(451, 615); theRepViewer.Show(); this.Close(); }
public void ReadTest1() { DataSet ds = CreateTestSet(); StringWriter sw = new StringWriter(); ds.WriteXmlSchema(sw); string schema = sw.ToString(); // ReadXmlSchema() DataSet ds1 = new DataSet(); ds1.Tables.Add(new DataTable("Table1")); ds1.Tables.Add(new DataTable("Table2")); ds1.Tables[0].ReadXmlSchema(new XmlTextReader(schema, XmlNodeType.Document, null)); ds1.Tables[1].ReadXmlSchema(new XmlTextReader(schema, XmlNodeType.Document, null)); ReadTest1Check(ds1); // ReadXml() should also be the same DataSet ds2 = new DataSet(); ds2.Tables.Add(new DataTable("Table1")); ds2.Tables.Add(new DataTable("Table2")); ds2.Tables[0].ReadXml(new XmlTextReader(schema, XmlNodeType.Document, null)); ds2.Tables[1].ReadXml(new XmlTextReader(schema, XmlNodeType.Document, null)); ReadTest1Check(ds2); }
private void CreateSchema() { _ds = new DataSet("VehiclesRepairs"); var vehicles = _ds.Tables.Add("Vehicles"); vehicles.Columns.Add("VIN", typeof(string)); vehicles.Columns.Add("Make", typeof(string)); vehicles.Columns.Add("Model", typeof(string)); vehicles.Columns.Add("Year", typeof(int)); vehicles.PrimaryKey = new DataColumn[] { vehicles.Columns["VIN"] }; var repairs = _ds.Tables.Add("Repairs"); var pk = repairs.Columns.Add("ID", typeof(int)); pk.AutoIncrement = true; pk.AutoIncrementSeed = -1; pk.AutoIncrementStep = -1; repairs.Columns.Add("VIN", typeof(string)); repairs.Columns.Add("Description", typeof(string)); repairs.Columns.Add("Cost", typeof(decimal)); repairs.PrimaryKey = new DataColumn[] { repairs.Columns["ID"] }; _ds.Relations.Add( "vehicles_repairs", vehicles.Columns["VIN"], repairs.Columns["VIN"]); _ds.WriteXmlSchema(_xsdFile); }
private void btnViewReport_Click(object sender, EventArgs e) { DataSet ds = new DataSet(); ds = Connection.GetDataSet("SELECT tbl_session.sessioncode, tbl_session.sessionname, tbl_student.studentno, tbl_student.scholarno,'Mr/Miss. '+ tbl_student.name as name , 'Mr. '+ tbl_student.father as father, " + " 'Mrs. '+ tbl_student.mother as mother, tbl_student.dob, tbl_student.C_address, tbl_student.m_tongue, tbl_student.casttype, tbl_student.bloodgroup,tbl_student.Height,tbl_student.Width,tbl_student.VisionL,tbl_student.VisionR,tbl_student.Teeth ,tbl_student.OHygiene,tbl_student.House,CASE WHEN tbl_student.CGPA IS NULL or tbl_student.CGPA='' THEN '..........' ELSE tbl_student.CGPA END as CGPA,CASE WHEN tbl_student.OGrade IS NULL or tbl_student.OGrade='' THEN '..........' ELSE tbl_student.OGrade END as OGrade, tbl_classstudent.stdtype,tbl_student.studentimage, " + " tbl_student.marr_status AS Gender, tbl_student.studentphoto, tbl_student.phone, tbl_student.bldgroup AS Medium, tbl_tehsil.tehsil, tbl_district.district, " + " tbl_district.statename, tbl_classmaster.classname, tbl_section.sectionname, tbl_classmaster.classname +' '+tbl_section.sectionname AS Class, " + " tbl_sankay.sankayname AS Stream, ISNULL(tbl_StudentAttendance.Lectures, 0) AS [Total Lecture], ISNULL(tbl_StudentAttendance.PresentDays, 0) AS [Total Present], ISNULL(tbl_StudentAttendance.Per , 0) AS [Per] " + " FROM tbl_section INNER JOIN " + " tbl_sankay INNER JOIN " + " tbl_classstudent ON tbl_sankay.sankaycode = tbl_classstudent.Stream INNER JOIN " + " tbl_classmaster ON tbl_classstudent.classno = tbl_classmaster.classcode INNER JOIN " + " tbl_student ON tbl_classstudent.studentno = tbl_student.studentno INNER JOIN " + " tbl_session ON tbl_classstudent.sessioncode = tbl_session.sessioncode ON tbl_section.sectioncode = tbl_classstudent.Section INNER JOIN " + " tbl_tehsil ON tbl_student.tehcode = tbl_tehsil.tehcode INNER JOIN " + " tbl_district ON tbl_student.distcode = tbl_district.distcode Left join tbl_StudentAttendance on tbl_student .studentno = tbl_StudentAttendance .StudentNo " + " WHERE (tbl_section.sectioncode = '" + cmbScetion.SelectedValue + "') AND (tbl_classstudent.ClassNo ='" + cmbClass.SelectedValue + "') " + " AND (tbl_session.sessioncode = '" + cmbSession.SelectedValue + "') and tbl_classstudent.stdtype<>'Ex-Student' Order By tbl_student.name ;" + " SELECT schoolname,schooladdress,schoolcity,schoolphone,affiliate_by,principal,registrationno,logoimage FROM tbl_school "); ds.WriteXmlSchema(@"" + Connection.GetAccessPathId() + @"Barcodes\a\rptCBSEMarksFrontDetail.xsd"); CrystalDecisions.CrystalReports.Engine.ReportDocument s = null; rptCCEReportFormat3 s3 = new rptCCEReportFormat3(); s3.PrintOptions.PaperOrientation = PaperOrientation.Landscape; s3.PrintOptions.PaperSize = CrystalDecisions.Shared.PaperSize.PaperA3; ShowAllReports cr = new ShowAllReports(); if (cmbClass.Text.Trim().Equals("IX") || cmbClass.Text.Trim().Equals("X")) { s = new rptCCEMarkFrontEnd(); s.PrintOptions.PaperOrientation = PaperOrientation.Landscape; s.PrintOptions.PaperSize = CrystalDecisions.Shared.PaperSize.PaperLegal; s.SetDataSource(ds); cr.crystalReportViewer1.ReportSource = s; } else if (cmbClass.Text.Trim().Equals("I") || cmbClass.Text.Trim().Equals("II") || cmbClass.Text.Trim().Equals("III") || cmbClass.Text.Trim().Equals("IV") || cmbClass.Text.Trim().Equals("V") || cmbClass.Text.Trim().Equals("VI") || cmbClass.Text.Trim().Equals("VII") || cmbClass.Text.Trim().Equals("VIII")) { s = new rptCCEReportFormat2(); s.PrintOptions.PaperOrientation = PaperOrientation.Landscape; s.PrintOptions.PaperSize = CrystalDecisions.Shared.PaperSize.PaperA3; s.SetDataSource(ds); s.SetParameterValue("Class", Connection.GetNextClass(cmbClass.Text.Trim())); cr.crystalReportViewer1.ReportSource = s; } else { s3.SetDataSource(ds); s3.SetParameterValue("Class", Connection.GetNextClass(cmbClass.Text.Trim())); cr.crystalReportViewer1.ReportSource = s3; } cr.crystalReportViewer1.Zoom(54); cr.Show(); }
private static void SaveAndLoadAsXml(DataSet cardInventoryDataSet) { cardInventoryDataSet.WriteXml("carsDataSet.xml"); cardInventoryDataSet.WriteXmlSchema("carsDataSet.xsd"); cardInventoryDataSet.Clear(); cardInventoryDataSet.ReadXml("carsDataSet.xml"); }
private void btnDueFee_Click(object sender, EventArgs e) { if (cmbMonth.Text.Trim() == string.Empty || cmbHostelName.Text.Trim() == string.Empty) { MessageBox.Show("Please Select A Month"); } else { DataSet dss = Connection.GetDataSet("select Hostelcode from tbl_hostel where HostelName='" + cmbHostelName.Text + "'"); int i = cmbMonth.SelectedIndex; i = i + 1; string mysql = "SELECT tbl_school.schoolname, tbl_school.schooladdress, tbl_school.affiliate_by, tbl_school.logoimage, tbl_hostel.HostelName FROM tbl_hostel CROSS JOIN tbl_school where tbl_hostel.hostelcode='" + dss.Tables[0].Rows[0][0] + "' select hostelcode,roomno,bedno,sessioncode,studentno,studentname,DateName( month , DateAdd( month , tbl_hostelfee.monthno , 0 ) - 1 ) as monthno,yearno,hostelfee,messfee,feedate,feeno,rechostelfee,recmessfee,messdays from tbl_hostelfee where monthno='" + i + "' and rechostelfee!='" + 0.00 + "' and recmessfee!='" + 0.00 + "' and Hostelcode='" + dss.Tables[0].Rows[0][0] + "' "; DataSet ds = new DataSet(); ds = Connection.GetDataSet(mysql); if (ds.Tables[1].Rows.Count > 0) { ds.WriteXmlSchema(@"" + Connection.GetAccessPathId() + @"\Barcodes\a\HostelfeeMothwise.xsd"); Hostal.ReportDesign.rptMonthviseHostelFee r = new Hostal.ReportDesign.rptMonthviseHostelFee(); r.PrintOptions.PaperOrientation = PaperOrientation.Portrait; r.PrintOptions.PaperSize = CrystalDecisions.Shared.PaperSize.PaperLetter; r.SetDataSource(ds); ShowAllReports f = new ShowAllReports(); f.Text = "Paid Hostel Fee By Month"; f.crystalReportViewer1.ReportSource = r; f.Show(); } else { //==== MessageBox.Show("Data not found."); } } }
/// <summary> /// 摘要:导出xsd表结构文件 /// </summary> /// <param name="tableName">表名</param> /// <param name="targetPath">导出的目标字段</param> public virtual void GetSchema(string tableName, string targetPath) { DataSet dsData = new DataSet(); DataTable dttemp = GetPreviewData(tableName); dttemp.TableName = tableName; dsData.Tables.Add(dttemp); if (targetPath.Substring(targetPath.Length - 1, 1) == "\\") { dsData.WriteXmlSchema(targetPath + tableName + ".xsd"); } else { dsData.WriteXmlSchema(targetPath + "\\" + tableName + ".xsd"); } }
/// <summary> /// 取得模型的XML /// </summary> /// <param name="data">模型数据</param> /// <returns>Xml字符串</returns> protected string GetModelDataXml(PanelContext data, string xml, out string schema, out string modelconfig) { DataSet ds = CreateDataSet(data.Model); StringBuilder sb = new StringBuilder(); StringWriter writer = new StringWriter(sb); ds.WriteXmlSchema(writer); schema = sb.ToString(); modelconfig = File.ReadAllText(ModelHelper.GetModelPath(data.ModelName)); if (!String.IsNullOrEmpty(xml)) { ReadXml(ds, xml); } DataRow row = null; if (ds.Tables[data.Table.Name].Rows.Count > 0) { row = ds.Tables[data.Table.Name].Rows[0]; } else { row = ds.Tables[data.Table.Name].NewRow(); ds.Tables[data.Table.Name].Rows.Add(row); } UpdateRow(row, data.Row); return(GetXml(ds)); }
public static Stream BuildRDLCStream( DataSet data, string name, string reportResource) { using (MemoryStream schemaStream = new MemoryStream()) { // save the schema to a stream data.WriteXmlSchema(schemaStream); schemaStream.Seek(0, SeekOrigin.Begin); // load it into a Document and set the Name variable XmlDocument xmlDomSchema = new XmlDocument(); xmlDomSchema.Load(schemaStream); xmlDomSchema.DocumentElement.SetAttribute("Name", data.DataSetName); // Prepare XSL transformation using (var sr = new StringReader(reportResource)) using (var xr = XmlReader.Create(sr)) { // load the report's XSL file (that's the magic) XslCompiledTransform xform = new XslCompiledTransform(); xform.Load(xr); // do the transform MemoryStream rdlcStream = new MemoryStream(); XmlWriter writer = XmlWriter.Create(rdlcStream); xform.Transform(xmlDomSchema, writer); writer.Close(); rdlcStream.Seek(0, SeekOrigin.Begin); // send back the RDLC return(rdlcStream); } } }
private void btnSubmit_Click(object sender, EventArgs e) { if (rdoStockLedger.Checked) { ReportDocument objRptDoc = new ReportDocument(); //IMasterList objStockLedger = (IMasterList)ObjectFactory.CreateInstance("BusinessProcess.SCM.BMasterList,BusinessProcess.SCM"); ISCMReport objStockLedger = (ISCMReport)ObjectFactory.CreateInstance("BusinessProcess.SCM.BSCMReport,BusinessProcess.SCM"); DataSet theDS = objStockLedger.GetStockLedgerData(Convert.ToInt32(ddlStore.SelectedValue), Convert.ToDateTime(dtpFrom.Text), Convert.ToDateTime(dtpTo.Text)); theDS.WriteXmlSchema(GblIQCare.GetXMLPath() + "\\StockLedger.xml"); rptStockLedger rep = new rptStockLedger(); rep.SetDataSource(theDS); // rep.ParameterFields["FormDate","1"]; rep.SetParameterValue("FromDate", dtpFrom.Text); rep.SetParameterValue("ToDate", dtpTo.Text); rep.SetParameterValue("ToClosingDate", (Convert.ToString(dtpTo.Text)).Replace('-', ' ')); rep.SetParameterValue("facilityname", GblIQCare.AppLocation); // , Convert.ToString(dtpFrom.Text)]; frmReportViewer theRepViewer = new frmReportViewer(); theRepViewer.MdiParent = this.MdiParent; theRepViewer.Location = new Point(0, 0); theRepViewer.crViewer.ReportSource = rep; theRepViewer.Show(); this.Close(); } }
private void button2_Click(object sender, EventArgs e) { DataSet ds = new DataSet(); DataTable dt = new DataTable(); dt.Columns.Add("الساعة"); dt.Columns.Add("السبت"); dt.Columns.Add("الأحد"); dt.Columns.Add("الأثنين"); dt.Columns.Add("الثلاثاء"); dt.Columns.Add("الأربعاء"); dt.Columns.Add("الخميس"); foreach (DataGridViewRow dgv in dataGridView1.Rows) { dt.Rows.Add(dgv.Cells[0].Value, dgv.Cells[1].Value, dgv.Cells[2].Value, dgv.Cells[3].Value, dgv.Cells[4].Value, dgv.Cells[5].Value, dgv.Cells[6].Value); } ds.Tables.Add(dt); ds.WriteXmlSchema("document.xml"); DoctorReport cr = new DoctorReport(); cr.SetDataSource(ds); cr.SetParameterValue("name", name); System.Drawing.Printing.PrintDocument printDoc = new System.Drawing.Printing.PrintDocument(); cr.PrintOptions.PrinterName = printDoc.PrinterSettings.PrinterName; cr.PrintToPrinter(1, true, 0, 0); }
protected void Page_Load(object Sender, EventArgs e) { ds = new DataSet(); reporte = new ReportDocument(); if (Session["facs"] != null) { if (Request.QueryString["tipo"] == "C") { Utils.MostrarAlerta(Response, "Se ha creado la factura de cliente con prefijo " + Request.QueryString["pre"] + " y número " + Request.QueryString["num"] + ""); try { Imprimir.ImprimirRPT(Response, Request.QueryString["pre"], Convert.ToInt32(Request.QueryString["num"]), true); } catch { lb.Text += "Error al generar la impresión. Detalles : " + formatoRecibo.Mensajes + "<br>"; } } else if (Request.QueryString["tipo"] == "P") { DBFunctions.Request(ds, IncludeSchema.NO, Armar_Select_Pro() + ";" + "SELECT MNIT.mnit_nit,CEMP.cemp_nombre,CEMP.cemp_direccion,MNIT.mnit_telefono,TREG.treg_nombre CONCAT''CONCAT 'Nº 'CONCAT' 'CONCAT CEMP.cemp_numeregiiva CONCAT' 'CONCAT 'de 'CONCAT''CONCAT CAST(CEMP.cemp_regiiva AS char(10)),MNIT.mnit_web,PCIU.pciu_nombre FROM dbxschema.mnit MNIT,dbxschema.cempresa CEMP,dbxschema.tregimeniva TREG,dbxschema.pciudad PCIU WHERE MNIT.mnit_nit=CEMP.mnit_nit AND CEMP.cemp_indiregiiva=TREG.treg_regiiva AND PCIU.pciu_codigo=CEMP.cemp_ciudad;" + "SELECT 'Numeración autorizada por la DIAN Resolución Nº ' CONCAT pdoc_numeresofact CONCAT ' Fecha ' CONCAT CAST(pdoc_fechresofact AS char(10)) CONCAT ' Rango con prefijo ' CONCAT pdoc_codigo CONCAT ' Nº ' CONCAT CAST(pdoc_numeinic AS char(10)) CONCAT ' al Nº ' CONCAT CAST(pdoc_numefina AS char(10)) FROM dbxschema.pdocumento WHERE pdoc_codigo='" + (((ArrayList)Session["facs"])[0].ToString().Split('-'))[0].ToString() + "'"); Sacar_Letras(); ds.WriteXmlSchema(Path.Combine(Request.PhysicalApplicationPath, "schemas/Finanzas.Cartera.Finanzas.Cartera.rpte_ImpCauAutoPro.xsd")); reporte.Load(Path.Combine(Request.PhysicalApplicationPath, "rpt/Finanzas.Cartera.rpte_ImpCauAutoPro.rpt")); reporte.SetDataSource(ds); visor.ReportSource = reporte; visor.DataBind(); reporte.ExportToDisk(ExportFormatType.WordForWindows, Path.Combine(Request.PhysicalApplicationPath, "rptgen/Finanzas.Cartera.rpte_ImpCauAutoPro.doc")); } } }
static void Main(string[] args) { string conStr = @" server=.\sqlexpress; database=northwind; integrated security=true; " ; string sqlCom = "SELECT * FROM products "; SqlConnection con = new SqlConnection(conStr); try { con.Open(); SqlDataAdapter adap = new SqlDataAdapter(sqlCom, con); DataSet ds = new DataSet(); adap.Fill(ds, "MyQueryTable"); //Arbitrary name of my retrived results ds.WriteXmlSchema("test.xsd"); //Dumping the DataSet to a schema ds.WriteXml("test.xml"); //Dumping the DataSet's Data to a XML file } catch (SqlException ex) { Console.WriteLine("{0} {1}", ex.Message, ex.StackTrace); } finally { con.Close(); } }
public static void EncryptDataSet(DataSet ds, string path) { DES des = new DESCryptoServiceProvider(); using (StreamWriter sw = new StreamWriter(Path.Combine(path, "DES.bin"))) { BinaryFormatter bf = new BinaryFormatter(); byte[][] stuff = new byte[2][]; stuff[0] = des.Key; stuff[1] = des.IV; bf.Serialize(sw.BaseStream, stuff); } using (FileStream fs = new FileStream(Path.Combine(path, "DATA.xml"), FileMode.OpenOrCreate, FileAccess.ReadWrite)) { using (CryptoStream cs = new CryptoStream(fs, des.CreateEncryptor(), CryptoStreamMode.Write)) { using (StreamWriter sw = new StreamWriter(cs)) { sw.Write(ds.GetXml()); } } } ds.WriteXmlSchema(Path.Combine(path, "ESQUEMA.xsd")); }
static void Main(string[] args) { DataSet shopDB = CreateShopDBDataSet(); // создание базы данных ShopDB shopDB.WriteXmlSchema(@"D:\ADO.NET\DATA\ShopDbSchema.xml"); // запсиь схемы ShopDB в XML файл shopDB.WriteXml(@"D:\ADO.NET\DATA\ShopDBData.xml"); // запись данных ShopDB в XML файл }
///<summary> /// GenerateSchemaAsString based on the currently loaded Xml ///</summary> public string GenerateSchemaAsString() { string sSchemaXmlString = ""; try { var data = new DataSet(); data.ReadXml(new XmlNodeReader(RootNode), XmlReadMode.Auto); string sTempFile = Path.GetTempFileName(); data.WriteXmlSchema(sTempFile); // read the data into a string var sr = new StreamReader(sTempFile); sSchemaXmlString = sr.ReadToEnd(); sr.Close(); if (File.Exists(sTempFile)) { File.Delete(sTempFile); } } catch (Exception e) { HandleException(e); sSchemaXmlString = "<root><error>" + LastErrorMessage + "</error></root>"; } return(sSchemaXmlString); }
private void btnPrint_Click(object sender, EventArgs e) { ReportDocument objRptDoc = new ReportDocument(); DataSet dsPrintPOItemsDetail = new DataSet(); //IMasterList objStockLedger = (IMasterList)ObjectFactory.CreateInstance("BusinessProcess.SCM.BMasterList,BusinessProcess.SCM"); IPurchase objPOItem = (IPurchase)ObjectFactory.CreateInstance("BusinessProcess.SCM.BPurchase,BusinessProcess.SCM"); dsPrintPOItemsDetail = objPOItem.GetPurchaseOrderDetailsByPoid(GblIQCare.PurchaseOrderID); dsPrintPOItemsDetail.WriteXmlSchema(GblIQCare.GetXMLPath() + "\\IntStorePO.xml"); rptIntStorePOReport rep = new rptIntStorePOReport(); rep.SetDataSource(dsPrintPOItemsDetail); // rep.ParameterFields["FormDate","1"]; rep.SetParameterValue("ModePurchaseOrder", GblIQCare.ModePurchaseOrder); rep.SetParameterValue("facilityname", GblIQCare.AppLocation); // , Convert.ToString(dtpFrom.Text)]; frmReportViewer theRepViewer = new frmReportViewer(); theRepViewer.MdiParent = this.MdiParent; theRepViewer.Location = new Point(0, 0); theRepViewer.crViewer.ReportSource = rep; theRepViewer.Show(); this.Close(); }
private void FrmBookList_Load(object sender, EventArgs e) { ds.Clear(); ds = Connection.GetDataSet("SELECT tbl_book.bookname, tbl_booktitle.booktitle as AccessionNo, tbl_book.author, tbl_booktitle.edition, tbl_booktitle.publicationyr, tbl_booktitle.prize, tbl_booktitle.granttype FROM tbl_book INNER JOIN tbl_booktitle ON tbl_book.bookno = tbl_booktitle.bookno select *from tbl_school"); dataGridView1.DataSource = ds.Tables[0]; ds.WriteXmlSchema(@"" + Connection.GetAccessPathId() + @"Barcodes\a\BookReports.xml"); }
private void button1_Click(object sender, EventArgs e) { active = true; ds.WriteXmlSchema(AppDomain.CurrentDomain.BaseDirectory + "clientes.xsd"); ds.WriteXml(AppDomain.CurrentDomain.BaseDirectory + "clientes.xml", XmlWriteMode.DiffGram); MessageBox.Show("XML Atualizado"); }
// ********************************************************** // ********************************************************** // Save the DataSet according to the specified settings private void SaveData(DataSet ds) { // Save to disk StringWriter sw = new StringWriter(); XmlTextWriter writer = new XmlTextWriter(sw); writer.Formatting = Formatting.Indented; if (Check_Validating.Checked) { writer.WriteStartElement("de", "Wrapper", "dinoe-xml-07356-1801-1"); ds.WriteXmlSchema(writer); ds.WriteXml(writer); writer.WriteEndElement(); } else { ds.WriteXml(writer, (Check_WithSchema.Checked ? XmlWriteMode.WriteSchema : XmlWriteMode.IgnoreSchema)); } // Show the saved data writer.Close(); OutputText.Text = sw.ToString(); }
private void button1_Click(object sender, EventArgs e) { DataSet ds = new DataSet(); DataTable dt = new DataTable(); dt.Columns.Add("Name"); dt.Columns.Add("Seat No", typeof(string)); dt.Columns.Add("Date", typeof(string)); dt.Columns.Add("Time", typeof(string)); dt.Columns.Add("Screen", typeof(string)); dt.Columns.Add("Contact No.", typeof(string)); dt.Columns.Add("Email", typeof(string)); foreach (DataGridViewRow dgv in dataGridView1.Rows) { dt.Rows.Add(dgv.Cells[0].Value, dgv.Cells[1].Value, dgv.Cells[2].Value, dgv.Cells[3].Value, dgv.Cells[4].Value, dgv.Cells[5].Value, dgv.Cells[6].Value); } ds.Tables.Add(dt); ds.WriteXmlSchema("Sample.xml"); reportContactTracing cr = new reportContactTracing(); cr.SetDataSource(ds); frmData frm = new frmData(); frm.crystalReportViewer1.ReportSource = cr; frm.Show(); }
private void btnTimkiem_Click(object sender, EventArgs e) { if (cbbMaHD.Text.Length == 0) { MessageBox.Show("Chưa Nhập Mã Hóa Đơn.", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { btnXoaHD.Enabled = true; btnInHD.Enabled = true; dgvHD.DataSource = cn.XDL("select MaHD, TenDV, DonGia, SoluongDV, ThanhTien from DichVu, ChiTietHoaDon where ChiTietHoaDon.MaDV=DichVu.MaDV and ChiTietHoaDon.MaHD='" + cbbMaHD.Text.ToString() + "'"); txtTongtien.Text = cn.XDL("select sum(ThanhTien) as TongTien from ChiTietHoaDon where MaHD='" + cbbMaHD.Text.ToString() + "'").Rows[0][0].ToString(); btnXoaHD.Enabled = true; DataSet ds = new DataSet(); DataTable dt = new DataTable(); dt.Columns.Add("MaHD", typeof(string)); dt.Columns.Add("TenDV", typeof(string)); dt.Columns.Add("DonGia", typeof(float)); dt.Columns.Add("SoluongDV", typeof(float)); dt.Columns.Add("ThanhTien", typeof(float)); foreach (DataGridViewRow dgv in dgvHD.Rows) { dt.Rows.Add(dgv.Cells["MaHD"].Value, dgv.Cells["TenDV"].Value, dgv.Cells["DonGia"].Value, dgv.Cells["SoluongDV"].Value, dgv.Cells["ThanhTien"].Value); } ds.Tables.Add(dt); ds.WriteXmlSchema("report.xml"); CR cr = new CR(); cr.SetDataSource(ds); crv.ReportSource = cr; } }
protected void generarrpt(object sender, EventArgs e) { string select = "SELECT MEMP.MEMP_CODIEMPL,MNIT.MNIT_NOMBRES,MNIT.MNIT_NOMBRE2,MNIT.MNIT_APELLIDOS,MNIT.MNIT_APELLIDO2,MNIT.MNIT_DIGITO,MNIT.MNIT_DIRECCION,MNIT.MNIT_EMAIL,MNIT.MNIT_TELEFONO,MNIT.MNIT_CELULAR, MEMP.MEMP_FECHNACI,PCIU.PCIU_NOMBRE,MNIT.MNIT_NIT,MNIT.MNIT_DIGITO,MEMP.MEMP_NUMELIBRMILI,MEMP.MEMP_CLASELIBRMILI,DBXSCHEMA.TSEXO.TSEX_NOMBRE,YEAR(CURRENT DATE) - YEAR(MEMP.MEMP_FECHNACI),MEMP.MEMP_NUMEHIJOS,MEMP.TRES_VIVIENDA,MEMP.MEMP_FECHINGRESO,MEMP.MEMP_SUELACTU,MEMP.MEMP_SUELANTER,TCON.TCON_NOMBRE,TSUBT.TSUB_NOMBRE, PDEPTO.PDEP_NOMBDPTO,TESTEMP.TEST_NOMBRE,DBXSCHEMA.TFORMAPAGO.TFOR_DESCRIPCION,DBXSCHEMA.PBANCO.PBAN_NOMBRE,MEMP.MEMP_CUENNOMI,DBXSCHEMA.PEPS.PEPS_NOMBEPS,DBXSCHEMA.PARP.PARP_NOMBARP,PFCESA.PFON_NOMBFOND,PFPENS.PFON_NOMBPENS,DBXSCHEMA.TRETEFTE.TEST_DESCRIPCION, MEMP.MEMP_PORCRETE,TSANGRE.TTIP_TIPOSANG ,PCAR.pcar_nombcarg,TCIVIL.test_nombre,MEMP.memp_fecsuelanter,memp_peripago,TPAGO.TPER_DESCP,TFPAGO.tfor_descripcion,MEMP.memp_cuennomi,PFPENS2.pfon_nombpens as pensvol"; string from = " FROM DBXSCHEMA.MEMPLEADO MEMP,DBXSCHEMA.MNIT MNIT,DBXSCHEMA.PCIUDAD PCIU,DBXSCHEMA.TSEXO,DBXSCHEMA.TCONTRATONOMINA TCON,DBXSCHEMA.TSUBSIDIOTRANSPORTE TSUBT ,DBXSCHEMA.PDEPARTAMENTOEMPRESA PDEPTO,DBXSCHEMA.TESTADOEMPLEADO TESTEMP, DBXSCHEMA.TFORMAPAGO,DBXSCHEMA.PBANCO,DBXSCHEMA.PEPS,DBXSCHEMA.PARP,DBXSCHEMA.PFONDOPENSION PFPENS,DBXSCHEMA.PFONDOPENSION PFPENS2, DBXSCHEMA.PFONDOCESANTIAS PFCESA,DBXSCHEMA.TRETEFTE,DBXSCHEMA.TTIPOSANGRE TSANGRE,DBXSCHEMA.PCARGOEMPLEADO PCAR,dbxschema.testadocivil TCIVIL,dbxschema.TPERIPAGO TPAGO,DBXSCHEMA.TFORMAPAGO TFPAGO"; string where = " WHERE MEMP.MEMP_CODIEMPL='" + DDLEMPLEADO.SelectedValue + "' AND PFPENS.pfon_codipens=MEMP.pfon_codipens AND PFPENS2.pfon_codipens=MEMP.pfon_codipensvolu AND TFPAGO.tfor_pago=memp.memp_formpago AND TPAGO.tper_peri=MEMP.memp_peripago AND TCIVIL.test_estacivil=memp.test_estacivil AND MEMP.PCAR_CODICARGO=PCAR.PCAR_CODICARGO AND MEMP.MNIT_NIT=MNIT.MNIT_NIT and memp.ttip_secuencia= TSANGRE.ttip_secuencia AND MEMP.PCIU_LUGANACI=PCIU.PCIU_CODIGO AND MEMP.TSEX_CODIGO=DBXSCHEMA.TSEXO.TSEX_CODIGO AND MEMP.TCON_CONTRATO= TCON.TCON_CONTRATO AND MEMP.TSUB_CODIGO=TSUBT.TSUB_CODIGO AND MEMP.PDEP_CODIDPTO= PDEPTO.PDEP_CODIDPTO AND MEMP.TEST_ESTADO= TESTEMP.TEST_ESTADO AND MEMP.MEMP_FORMPAGO=DBXSCHEMA.TFORMAPAGO.TFOR_PAGO AND MEMP.PBAN_CODIGO=DBXSCHEMA.PBANCO.PBAN_CODIGO AND MEMP.PEPS_CODIEPS=DBXSCHEMA.PEPS.PEPS_CODIEPS AND MEMP.PARP_CODIARP=DBXSCHEMA.PARP.PARP_CODIARP AND MEMP.PFON_CODICESA=PFCESA.PFON_CODIFOND AND MEMP.MEMP_TESTRETE=DBXSCHEMA.TRETEFTE.TEST_RETE"; string nomEmpleado = DBFunctions.SingleData("SELECT NOMBRE FROM VMNIT VM, MEMPLEADO ME WHERE VM.MNIT_NIT = ME.MNIT_NIT AND ME.MEMP_CODIEMPL = '" + DDLEMPLEADO.SelectedValue + "'"); DataSet ds = new DataSet(); DBFunctions.Request(ds, IncludeSchema.NO, select + from + where + ";select cemp_nombre,cemp_nombcome,mnit_nit from dbxschema.cempresa"); if (ds.Tables[0].Rows.Count > 0) { ds.WriteXmlSchema(Path.Combine(Request.PhysicalApplicationPath, "schemas/Nomina.InfyConsultas.rpte_ImpHojaVida.xsd")); reporte = new ReportDocument(); reporte.Load(Path.Combine(Request.PhysicalApplicationPath, "rpt/Nomina.InfyConsultas.rpte_ImpHojaVida.rpt")); reporte.SetDataSource(ds); visor.ReportSource = reporte; visor.DataBind(); reporte.ExportToDisk(ExportFormatType.WordForWindows, Path.Combine(Request.PhysicalApplicationPath, "rptgen/Nomina.InfyConsultas.rpte_ImpHojaVida.doc")); Response.Clear(); Response.ContentType = "application/msword"; Response.AddHeader("Content-Disposition", "attachment; filename= " + nomEmpleado + ".doc"); Response.ContentType = "application/msword"; Response.WriteFile(Path.Combine(Request.PhysicalApplicationPath, "rptgen/Nomina.InfyConsultas.rpte_ImpHojaVida.doc")); Response.Flush(); Response.Close(); } else { Utils.MostrarAlerta(Response, "Existe un prolema con la consulta, el vendedor no tiene la información completa"); } }
private void button2_Click(object sender, EventArgs e) { DataSet ds = new DataSet(); DataTable dt2 = new DataTable(); dt2.Columns.Add("From", typeof(string)); dt2.Columns.Add("To", typeof(string)); dt2.Columns.Add("Party", typeof(string)); dt2.Columns.Add("Tdebit", typeof(string)); dt2.Columns.Add("Tcredit", typeof(string)); dt2.Columns.Add("bal", typeof(string)); dt2.Rows.Add(dateTimePicker1.Text, dateTimePicker2.Text, comboBox1.Text, textBox1.Text.ToString(), textBox2.Text.ToString(), textBox3.Text.ToString()); DataTable dt = new DataTable(); dt.Columns.Add("Date", typeof(string)); dt.Columns.Add("E No", typeof(Int32)); dt.Columns.Add("E Type", typeof(string)); dt.Columns.Add("Description", typeof(string)); dt.Columns.Add("Debit", typeof(Int32)); dt.Columns.Add("Credit", typeof(Int32)); dt.Columns.Add("Balance", typeof(Int32)); dt.Columns.Add("CR/DR", typeof(string)); foreach (DataGridViewRow dgv in dataGridView1.Rows) { dt.Rows.Add(dgv.Cells[0].Value, dgv.Cells[1].Value, dgv.Cells[2].Value, dgv.Cells[3].Value, dgv.Cells[4].Value, dgv.Cells[5].Value, dgv.Cells[6].Value, dgv.Cells[7].Value); } ds.Tables.Add(dt); ds.Tables.Add(dt2); ds.WriteXmlSchema("Ledgers.xml"); partylegprint a = new partylegprint(ds); a.Show(); }
public void WriteXmlSchema() { var ds = new DataSet(); ds.ReadXml(new StringReader(DataProvider.region)); TextWriter writer = new StringWriter(); ds.WriteXmlSchema(writer); string TextString = GetNormalizedSchema(writer.ToString()); // string TextString = writer.ToString (); string substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal("<?xml version=\"1.0\" encoding=\"utf-16\"?>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); // This is original DataSet.WriteXmlSchema() output // Assert.Equal ("<xs:schema id=\"Root\" xmlns=\"\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" xmlns:msdata=\"urn:schemas-microsoft-com:xml-msdata\">", substring); Assert.Equal("<xs:schema id=\"Root\" xmlns:msdata=\"urn:schemas-microsoft-com:xml-msdata\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:element msdata:IsDataSet=\"true\" msdata:Locale=\"en-US\" name=\"Root\">", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:complexType>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:choice maxOccurs=\"unbounded\" minOccurs=\"0\">", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:element name=\"Region\">", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:complexType>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:sequence>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); // This is original DataSet.WriteXmlSchema() output // Assert.Equal (" <xs:element name=\"RegionID\" type=\"xs:string\" minOccurs=\"0\" />", substring); Assert.Equal(" <xs:element minOccurs=\"0\" name=\"RegionID\" type=\"xs:string\" />", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); // This is original DataSet.WriteXmlSchema() output // Assert.Equal (" <xs:element name=\"RegionDescription\" type=\"xs:string\" minOccurs=\"0\" />", substring); Assert.Equal(" <xs:element minOccurs=\"0\" name=\"RegionDescription\" type=\"xs:string\" />", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:sequence>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:complexType>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:element>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:choice>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:complexType>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:element>", substring); Assert.Equal("</xs:schema>", TextString); }
public void OwnWriteXmlSchema() { DataSet ds = new DataSet("test_dataset"); DataTable table = new DataTable("test_table"); DataColumn column = new DataColumn("first", typeof(string)); column.AllowDBNull = true; column.DefaultValue = "test_default_value"; column.MaxLength = 100; column.Caption = "test"; column.Unique = true; table.Columns.Add(column); DataColumn column2 = new DataColumn("second", typeof(SqlGuid)); column2.ColumnMapping = MappingType.Element; table.Columns.Add(column2); ds.Tables.Add(table); DataTable table2 = new DataTable("second_test_table"); DataColumn column3 = new DataColumn("second_first", typeof(string)); column3.AllowDBNull = true; column3.DefaultValue = "default_value"; column3.MaxLength = 100; column3.Unique = true; table2.Columns.Add(column3); ds.Tables.Add(table2); TextWriter writer = new StringWriter(); ds.WriteXmlSchema(writer); string TextString = GetNormalizedSchema(writer.ToString()); // string TextString = writer.ToString (); string substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal("<?xml version=\"1.0\" encoding=\"utf-16\"?>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); // This is original DataSet.WriteXmlSchema() output // Assert.Equal ("<xs:schema id=\"test_dataset\" xmlns=\"\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" xmlns:msdata=\"urn:schemas-microsoft-com:xml-msdata\">", substring); Assert.Equal("<xs:schema id=\"test_dataset\" xmlns:msdata=\"urn:schemas-microsoft-com:xml-msdata\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); // This is original DataSet.WriteXmlSchema() output // Assert.Equal (" <xs:element name=\"test_dataset\" msdata:IsDataSet=\"true\" msdata:Locale=\"fi-FI\">", substring); Assert.Equal(" <xs:element msdata:IsDataSet=\"true\" msdata:UseCurrentLocale=\"true\" name=\"test_dataset\">", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:complexType>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:choice maxOccurs=\"unbounded\" minOccurs=\"0\">", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:element name=\"test_table\">", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:complexType>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:sequence>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); // This is original DataSet.WriteXmlSchema() output // Assert.Equal (" <xs:element name=\"first\" msdata:Caption=\"test\" default=\"test_default_value\" minOccurs=\"0\">", substring); Assert.Equal(" <xs:element default=\"test_default_value\" minOccurs=\"0\" msdata:Caption=\"test\" name=\"first\">", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:simpleType>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:restriction base=\"xs:string\">", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:maxLength value=\"100\" />", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:restriction>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:simpleType>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:element>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); // This is original DataSet.WriteXmlSchema() output Assert.Equal(" <xs:element minOccurs=\"0\" msdata:DataType=\"System.Data.SqlTypes.SqlGuid\" name=\"second\" type=\"xs:string\" />", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:sequence>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:complexType>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:element>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:element name=\"second_test_table\">", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:complexType>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:sequence>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); // This is original DataSet.WriteXmlSchema() output // Assert.Equal (" <xs:element name=\"second_first\" default=\"default_value\" minOccurs=\"0\">", substring); Assert.Equal(" <xs:element default=\"default_value\" minOccurs=\"0\" name=\"second_first\">", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:simpleType>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:restriction base=\"xs:string\">", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:maxLength value=\"100\" />", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:restriction>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:simpleType>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:element>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:sequence>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:complexType>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:element>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:choice>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:complexType>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:unique name=\"Constraint1\">", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:selector xpath=\".//test_table\" />", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:field xpath=\"first\" />", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:unique>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); // This is original DataSet.WriteXmlSchema() output // Assert.Equal (" <xs:unique name=\"second_test_table_Constraint1\" msdata:ConstraintName=\"Constraint1\">", substring); Assert.Equal(" <xs:unique msdata:ConstraintName=\"Constraint1\" name=\"second_test_table_Constraint1\">", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:selector xpath=\".//second_test_table\" />", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" <xs:field xpath=\"second_first\" />", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:unique>", substring); substring = TextString.Substring(0, TextString.IndexOfAny(new[] { '\r', '\n' })); TextString = TextString.Substring(TextString.IndexOf('\n') + 1); Assert.Equal(" </xs:element>", substring); Assert.Equal("</xs:schema>", TextString); }
public void WriteXmlExtendedProperties() { string xml = @"<?xml version=""1.0"" encoding=""utf-16""?> <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:version=""version 2.1"">" + @" <xs:complexType> <xs:choice minOccurs=""0"" maxOccurs=""unbounded""> <xs:element name=""Foo""> <xs:complexType> <xs:sequence> <xs:element name=""col1"" type=""xs:string"" minOccurs=""0"" /> </xs:sequence> </xs:complexType> </xs:element> </xs:choice> </xs:complexType> </xs:element> </xs:schema>"; var ds = new DataSet(); ds.ExtendedProperties["version"] = "version 2.1"; DataTable dt = new DataTable("Foo"); dt.Columns.Add("col1"); dt.Rows.Add(new object[] { "foo" }); ds.Tables.Add(dt); StringWriter sw = new StringWriter(); ds.WriteXmlSchema(sw); string result = sw.ToString(); Assert.Equal(result.Replace("\r\n", "\n"), xml.Replace("\r\n", "\n")); }
public void WriteXmlSchema7() { var ds = new DataSet(); DataTable dt = new DataTable("table"); dt.Columns.Add("col1"); dt.Columns.Add("col2"); ds.Tables.Add(dt); dt.Rows.Add(new object[] { "foo", "bar" }); StringWriter sw = new StringWriter(); ds.WriteXmlSchema(sw); Assert.True(sw.ToString().IndexOf("xmlns=\"\"") > 0); }
public void WriteXmlSchema6() { string xmlschema = @"<?xml version=""1.0"" encoding=""utf-16""?> <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=""MyType""> <xs:complexType> <xs:attribute name=""Desc""> <xs:simpleType> <xs:restriction base=""xs:string""> <xs:maxLength value=""32"" /> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> </xs:element> </xs:choice> </xs:complexType> </xs:element> </xs:schema>"; DataSet ds = new DataSet("Example"); // Add MyType DataTable ds.Tables.Add("MyType"); ds.Tables["MyType"].Columns.Add(new DataColumn( "Desc", typeof(string), "", MappingType.Attribute)); ds.Tables["MyType"].Columns["Desc"].MaxLength = 32; ds.AcceptChanges(); StringWriter sw = new StringWriter(); ds.WriteXmlSchema(sw); string result = sw.ToString(); Assert.Equal(result.Replace("\r\n", "\n"), xmlschema.Replace("\r\n", "\n")); }
public void WriteXmlSchema5() { string xmlschema = @"<?xml version=""1.0"" encoding=""utf-16""?> <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=""StandAlone""> <xs:complexType> <xs:attribute name=""ID"" type=""xs:int"" use=""required"" /> <xs:attribute name=""Desc"" type=""xs:string"" use=""required"" /> </xs:complexType> </xs:element> <xs:element name=""Dimension""> <xs:complexType> <xs:attribute name=""Number"" msdata:ReadOnly=""true"" type=""xs:int"" use=""required"" /> <xs:attribute name=""Title"" type=""xs:string"" use=""required"" /> </xs:complexType> </xs:element> <xs:element name=""Element""> <xs:complexType> <xs:attribute name=""Dimension"" msdata:ReadOnly=""true"" type=""xs:int"" use=""required"" /> <xs:attribute name=""Number"" msdata:ReadOnly=""true"" type=""xs:int"" use=""required"" /> <xs:attribute name=""Title"" type=""xs:string"" use=""required"" /> </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>"; DataSet ds = new DataSet("Example"); // Add a DataTable with no ReadOnly columns DataTable dt1 = new DataTable("StandAlone"); ds.Tables.Add(dt1); // Add a ReadOnly column dt1.Columns.Add(new DataColumn("ID", typeof(int), "", MappingType.Attribute)); dt1.Columns["ID"].AllowDBNull = false; dt1.Columns.Add(new DataColumn("Desc", typeof (string), "", MappingType.Attribute)); dt1.Columns["Desc"].AllowDBNull = false; // Add related DataTables with ReadOnly columns DataTable dt2 = new DataTable("Dimension"); ds.Tables.Add(dt2); dt2.Columns.Add(new DataColumn("Number", typeof (int), "", MappingType.Attribute)); dt2.Columns["Number"].AllowDBNull = false; dt2.Columns["Number"].ReadOnly = true; dt2.Columns.Add(new DataColumn("Title", typeof (string), "", MappingType.Attribute)); dt2.Columns["Title"].AllowDBNull = false; dt2.Constraints.Add("PK_Dimension", dt2.Columns["Number"], true); DataTable dt3 = new DataTable("Element"); ds.Tables.Add(dt3); dt3.Columns.Add(new DataColumn("Dimension", typeof (int), "", MappingType.Attribute)); dt3.Columns["Dimension"].AllowDBNull = false; dt3.Columns["Dimension"].ReadOnly = true; dt3.Columns.Add(new DataColumn("Number", typeof (int), "", MappingType.Attribute)); dt3.Columns["Number"].AllowDBNull = false; dt3.Columns["Number"].ReadOnly = true; dt3.Columns.Add(new DataColumn("Title", typeof (string), "", MappingType.Attribute)); dt3.Columns["Title"].AllowDBNull = false; dt3.Constraints.Add("PK_Element", new DataColumn[] { dt3.Columns ["Dimension"], dt3.Columns ["Number"] }, true); ds.Relations.Add("FK_Element_To_Dimension", dt2.Columns["Number"], dt3.Columns["Dimension"]); ds.AcceptChanges(); StringWriter sw = new StringWriter(); ds.WriteXmlSchema(sw); string result = sw.ToString(); Assert.Equal(result.Replace("\r\n", "\n"), xmlschema.Replace("\r\n", "\n")); }
public void WriteXmlSchema3() { string xmlschema = @"<?xml version=""1.0"" encoding=""utf-16""?> <xs:schema id=""ExampleDataSet"" xmlns="""" xmlns:xs=""http://www.w3.org/2001/XMLSchema"" xmlns:msdata=""urn:schemas-microsoft-com:xml-msdata""> <xs:element name=""ExampleDataSet"" msdata:IsDataSet=""true"" "; xmlschema = xmlschema + "msdata:UseCurrentLocale=\"true\""; xmlschema = xmlschema + @"> <xs:complexType> <xs:choice minOccurs=""0"" maxOccurs=""unbounded""> <xs:element name=""ExampleDataTable""> <xs:complexType> <xs:attribute name=""PrimaryKeyColumn"" type=""xs:int"" use=""required"" /> </xs:complexType> </xs:element> </xs:choice> </xs:complexType> <xs:unique name=""PK_ExampleDataTable"" msdata:PrimaryKey=""true""> <xs:selector xpath="".//ExampleDataTable"" /> <xs:field xpath=""@PrimaryKeyColumn"" /> </xs:unique> </xs:element> </xs:schema>"; DataSet ds = new DataSet("ExampleDataSet"); ds.Tables.Add(new DataTable("ExampleDataTable")); ds.Tables["ExampleDataTable"].Columns.Add( new DataColumn("PrimaryKeyColumn", typeof(int), "", MappingType.Attribute)); ds.Tables["ExampleDataTable"].Columns["PrimaryKeyColumn"].AllowDBNull = false; ds.Tables["ExampleDataTable"].Constraints.Add( "PK_ExampleDataTable", ds.Tables["ExampleDataTable"].Columns["PrimaryKeyColumn"], true); ds.AcceptChanges(); StringWriter sw = new StringWriter(); ds.WriteXmlSchema(sw); string result = sw.ToString(); Assert.Equal(result.Replace("\r\n", "\n"), xmlschema.Replace("\r\n", "\n")); }
public void ReadXmlSchema_ByXmlReader() { DataSet ds1 = new DataSet(); ds1.Tables.Add(DataProvider.CreateParentDataTable()); ds1.Tables.Add(DataProvider.CreateChildDataTable()); StringWriter sw = new StringWriter(); XmlTextWriter xmlTW = new XmlTextWriter(sw); //write xml file, schema only ds1.WriteXmlSchema(xmlTW); xmlTW.Flush(); StringReader sr = new StringReader(sw.ToString()); XmlTextReader xmlTR = new XmlTextReader(sr); //copy both data and schema DataSet ds2 = new DataSet(); ds2.ReadXmlSchema(xmlTR); //check xml schema // ReadXmlSchema - Tables count Assert.Equal(ds2.Tables.Count, ds1.Tables.Count); // ReadXmlSchema - Tables 0 Col count Assert.Equal(ds1.Tables[0].Columns.Count, ds2.Tables[0].Columns.Count); // ReadXmlSchema - Tables 1 Col count Assert.Equal(ds1.Tables[1].Columns.Count, ds2.Tables[1].Columns.Count); //check some colummns types // ReadXmlSchema - Tables 0 Col type Assert.Equal(ds1.Tables[0].Columns[0].GetType(), ds2.Tables[0].Columns[0].GetType()); // ReadXmlSchema - Tables 1 Col type Assert.Equal(ds1.Tables[1].Columns[3].GetType(), ds2.Tables[1].Columns[3].GetType()); //check that no data exists // ReadXmlSchema - Table 1 row count Assert.Equal(0, ds2.Tables[0].Rows.Count); // ReadXmlSchema - Table 2 row count Assert.Equal(0, ds2.Tables[1].Rows.Count); }
public void WriteXmlSchema_RelationAnnotation() { DataSet ds1 = new DataSet(); DataTable table1 = ds1.Tables.Add(); DataTable table2 = ds1.Tables.Add(); DataColumn col1_1 = table1.Columns.Add("col1", typeof(int)); DataColumn col2_1 = table2.Columns.Add("col1", typeof(int)); ds1.Relations.Add("rel", col1_1, col2_1, false); StringWriter sw = new StringWriter(); ds1.WriteXmlSchema(sw); string xml = sw.ToString(); Assert.True(xml.IndexOf(@"<msdata:Relationship name=""rel"" msdata:parent=""Table1""" + @" msdata:child=""Table2"" msdata:parentkey=""col1"" " + @"msdata:childkey=""col1"" />") != -1, "#1"); }
public void WriteXmlSchema4() { string xmlschema = @"<?xml version=""1.0"" encoding=""utf-16""?> <xs:schema id=""Example"" xmlns="""" xmlns:xs=""http://www.w3.org/2001/XMLSchema"" xmlns:msdata=""urn:schemas-microsoft-com:xml-msdata""> "; xmlschema = xmlschema + " <xs:element name=\"Example\" msdata:IsDataSet=\"true\" msdata:UseCurrentLocale=\"true\""; xmlschema = xmlschema + @"> <xs:complexType> <xs:choice minOccurs=""0"" maxOccurs=""unbounded""> <xs:element name=""MyType""> <xs:complexType> <xs:attribute name=""ID"" type=""xs:int"" use=""required"" /> <xs:attribute name=""Desc"" type=""xs:string"" /> </xs:complexType> </xs:element> </xs:choice> </xs:complexType> </xs:element> </xs:schema>"; DataSet ds = new DataSet("Example"); // Add MyType DataTable DataTable dt = new DataTable("MyType"); ds.Tables.Add(dt); dt.Columns.Add(new DataColumn("ID", typeof(int), "", MappingType.Attribute)); dt.Columns["ID"].AllowDBNull = false; dt.Columns.Add(new DataColumn("Desc", typeof (string), "", MappingType.Attribute)); ds.AcceptChanges(); StringWriter sw = new StringWriter(); ds.WriteXmlSchema(sw); string result = sw.ToString(); Assert.Equal(result.Replace("\r\n", "\n"), xmlschema.Replace("\r\n", "\n")); }
public void ReadXmlSchema_ByFileName() { string sTempFileName = Path.Combine(Path.GetTempPath(), "tmpDataSet_ReadWriteXml_43899.xml"); DataSet ds1 = new DataSet(); ds1.Tables.Add(DataProvider.CreateParentDataTable()); ds1.Tables.Add(DataProvider.CreateChildDataTable()); //write xml file, schema only ds1.WriteXmlSchema(sTempFileName); //copy both data and schema DataSet ds2 = new DataSet(); ds2.ReadXmlSchema(sTempFileName); //check xml schema // ReadXmlSchema - Tables count Assert.Equal(ds2.Tables.Count, ds1.Tables.Count); // ReadXmlSchema - Tables 0 Col count Assert.Equal(ds1.Tables[0].Columns.Count, ds2.Tables[0].Columns.Count); // ReadXmlSchema - Tables 1 Col count Assert.Equal(ds1.Tables[1].Columns.Count, ds2.Tables[1].Columns.Count); //check some colummns types // ReadXmlSchema - Tables 0 Col type Assert.Equal(ds1.Tables[0].Columns[0].GetType(), ds2.Tables[0].Columns[0].GetType()); // ReadXmlSchema - Tables 1 Col type Assert.Equal(ds1.Tables[1].Columns[3].GetType(), ds2.Tables[1].Columns[3].GetType()); //check that no data exists // ReadXmlSchema - Table 1 row count Assert.Equal(0, ds2.Tables[0].Rows.Count); // ReadXmlSchema - Table 2 row count Assert.Equal(0, ds2.Tables[1].Rows.Count); //try to delete the file File.Delete(sTempFileName); }
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); }
public void WriteXmlSchema_ForignKeyConstraint() { DataSet ds1 = new DataSet(); DataTable table1 = ds1.Tables.Add(); DataTable table2 = ds1.Tables.Add(); DataColumn col1_1 = table1.Columns.Add("col1", typeof(int)); DataColumn col2_1 = table2.Columns.Add("col1", typeof(int)); table2.Constraints.Add("fk", col1_1, col2_1); StringWriter sw = new StringWriter(); ds1.WriteXmlSchema(sw); string xml = sw.ToString(); Assert.True(xml.IndexOf(@"<xs:keyref name=""fk"" refer=""Constraint1"" " + @"msdata:ConstraintOnly=""true"">") != -1, "#1"); }
public void ReadWriteXmlSchema_Nested() { DataSet ds = new DataSet("dataset"); ds.Tables.Add("table1"); ds.Tables.Add("table2"); ds.Tables[0].Columns.Add("col"); ds.Tables[1].Columns.Add("col"); ds.Relations.Add("rel", ds.Tables[0].Columns[0], ds.Tables[1].Columns[0], true); ds.Relations[0].Nested = true; MemoryStream ms = new MemoryStream(); ds.WriteXmlSchema(ms); DataSet ds1 = new DataSet(); ds1.ReadXmlSchema(new MemoryStream(ms.GetBuffer())); // no new relation, and <table>_Id columns, should get created when // Relation.Nested = true Assert.Equal(1, ds1.Relations.Count); Assert.Equal(1, ds1.Tables[0].Columns.Count); Assert.Equal(1, ds1.Tables[1].Columns.Count); }
public void WriteXmlSchema_Relations_ForeignKeys() { MemoryStream ms = null; MemoryStream ms1 = null; DataSet ds1 = new DataSet(); DataTable table1 = ds1.Tables.Add("Table 1"); DataTable table2 = ds1.Tables.Add("Table 2"); DataColumn col1_1 = table1.Columns.Add("col 1", typeof(int)); DataColumn col1_2 = table1.Columns.Add("col 2", typeof(int)); DataColumn col1_3 = table1.Columns.Add("col 3", typeof(int)); DataColumn col1_4 = table1.Columns.Add("col 4", typeof(int)); DataColumn col1_5 = table1.Columns.Add("col 5", typeof(int)); DataColumn col1_6 = table1.Columns.Add("col 6", typeof(int)); DataColumn col1_7 = table1.Columns.Add("col 7", typeof(int)); DataColumn col2_1 = table2.Columns.Add("col 1", typeof(int)); DataColumn col2_2 = table2.Columns.Add("col 2", typeof(int)); DataColumn col2_3 = table2.Columns.Add("col 3", typeof(int)); DataColumn col2_4 = table2.Columns.Add("col 4", typeof(int)); DataColumn col2_5 = table2.Columns.Add("col 5", typeof(int)); DataColumn col2_6 = table2.Columns.Add("col 6", typeof(int)); ds1.Relations.Add("rel 1", new DataColumn[] { col1_1, col1_2 }, new DataColumn[] { col2_1, col2_2 }); ds1.Relations.Add("rel 2", new DataColumn[] { col1_3, col1_4 }, new DataColumn[] { col2_3, col2_4 }, false); table1.Constraints.Add("pk 1", col1_7, true); table2.Constraints.Add("fk 1", new DataColumn[] { col1_5, col1_6 }, new DataColumn[] { col2_5, col2_6 }); ms = new MemoryStream(); ds1.WriteXmlSchema(ms); ms1 = new MemoryStream(ms.GetBuffer()); DataSet ds2 = new DataSet(); ds2.ReadXmlSchema(ms1); Assert.Equal(2, ds2.Relations.Count); Assert.Equal(3, ds2.Tables[0].Constraints.Count); Assert.Equal(2, ds2.Tables[1].Constraints.Count); Assert.True(ds2.Relations.Contains("rel 1")); Assert.True(ds2.Relations.Contains("rel 2")); Assert.True(ds2.Tables[0].Constraints.Contains("pk 1")); Assert.True(ds2.Tables[1].Constraints.Contains("fk 1")); Assert.True(ds2.Tables[1].Constraints.Contains("rel 1")); Assert.Equal(2, ds2.Relations["rel 1"].ParentColumns.Length); Assert.Equal(2, ds2.Relations["rel 1"].ChildColumns.Length); Assert.Equal(2, ds2.Relations["rel 2"].ParentColumns.Length); Assert.Equal(2, ds2.Relations["rel 2"].ChildColumns.Length); ForeignKeyConstraint fk = (ForeignKeyConstraint)ds2.Tables[1].Constraints["fk 1"]; Assert.Equal(2, fk.RelatedColumns.Length); Assert.Equal(2, fk.Columns.Length); }
public void ReadXmlSchema_ByStream() { DataSet ds1 = new DataSet(); ds1.Tables.Add(DataProvider.CreateParentDataTable()); ds1.Tables.Add(DataProvider.CreateChildDataTable()); MemoryStream ms = new MemoryStream(); //write xml schema only ds1.WriteXmlSchema(ms); MemoryStream ms1 = new MemoryStream(ms.GetBuffer()); //copy schema DataSet ds2 = new DataSet(); ds2.ReadXmlSchema(ms1); //check xml schema // ReadXmlSchema - Tables count Assert.Equal(ds2.Tables.Count, ds1.Tables.Count); // ReadXmlSchema - Tables 0 Col count Assert.Equal(ds1.Tables[0].Columns.Count, ds2.Tables[0].Columns.Count); // ReadXmlSchema - Tables 1 Col count Assert.Equal(ds1.Tables[1].Columns.Count, ds2.Tables[1].Columns.Count); //check some colummns types // ReadXmlSchema - Tables 0 Col type Assert.Equal(ds1.Tables[0].Columns[0].GetType(), ds2.Tables[0].Columns[0].GetType()); // ReadXmlSchema - Tables 1 Col type Assert.Equal(ds1.Tables[1].Columns[3].GetType(), ds2.Tables[1].Columns[3].GetType()); //check that no data exists // ReadXmlSchema - Table 1 row count Assert.Equal(0, ds2.Tables[0].Rows.Count); // ReadXmlSchema - Table 2 row count Assert.Equal(0, ds2.Tables[1].Rows.Count); }
public void WriteXmlSchema_ConstraintNameWithSpaces() { DataSet ds = new DataSet(); DataTable table1 = ds.Tables.Add("table1"); DataTable table2 = ds.Tables.Add("table2"); table1.Columns.Add("col1", typeof(int)); table2.Columns.Add("col1", typeof(int)); table1.Constraints.Add("uc 1", table1.Columns[0], false); table2.Constraints.Add("fc 1", table1.Columns[0], table2.Columns[0]); StringWriter sw = new StringWriter(); //should not throw an exception ds.WriteXmlSchema(sw); }