从数据库中读取出数据,然后用XML输出
1
private static void WriteXml(string strFileName,string code, DateTime from,DateTime to)
2
{
3
if(from>to)
4
{
5
return;
6
}
7
//将locationid读到数组中
8
string select="";
9
select="select LocationID from Master_GoodsByLocation where GoodsCode='"+code+"'order by LocationID";
10
OleDbDataAdapter m_dal=new OleDbDataAdapter(select,m_dc);
11
DataSet m_dsl=new DataSet();
12
m_dal.Fill(m_dsl,"Master_GoodsByLocation");
13
DataTable tl=m_dsl.Tables["Master_GoodsByLocation"];
14
string[] LocationID1=new string[tl.Rows.Count];
15
int i=0;
16
foreach(DataRow rl in tl.Rows)
17
{
18
LocationID1[i]=Convert.ToString(rl[0]);
19
i++;
20
}
21
m_dsl.Reset();
22
System.Xml.XmlTextWriter w=new XmlTextWriter(strFileName, System.Text.Encoding.UTF8);
23
w.Formatting=Formatting.Indented;
24![](/Images/OutliningIndicators/InBlock.gif)
25
w.WriteStartDocument(true);
26
//start rood element
27![](/Images/OutliningIndicators/InBlock.gif)
28
w.WriteStartElement("Data");
29
w.WriteAttributeString("Type", "CheckData");
30
w.WriteAttributeString("GoodsCode",code);
31
w.WriteAttributeString("StartDate", from.ToString("yyyy-MM-dd"));
32
w.WriteAttributeString("EndDate", to.ToString("yyyy-MM-dd"));
33![](/Images/OutliningIndicators/InBlock.gif)
34
//start location
35
foreach(string location in LocationID1)
36
{
37
// node "Location"
38
w.WriteStartElement("Location");
39
w.WriteAttributeString("ID", location);
40![](/Images/OutliningIndicators/InBlock.gif)
41
//node "ForecastDemand"
42
w.WriteStartElement("ForecastDemand");
43
OleDbCommand oc=new OleDbCommand("select Date,ForecastDemand from Temp_ForecastDemand where GoodsCode='"+code+"'and LocationID='"+location+"'and Date<=#"+to+"#and Date>=#"+from+"# order by Date",m_dc);
44
OleDbDataReader reader=oc.ExecuteReader();
45
while(reader.Read())
46
{
47
w.WriteStartElement("Record");
48
w.WriteAttributeString("Date",Convert.ToDateTime(reader["Date"]).ToShortDateString());
49
w.WriteAttributeString("Value",reader["ForecastDemand"].ToString());
50
w.WriteWhitespace(" ");
51
w.WriteEndElement();
52
}
53
reader.Close();
54
w.WriteWhitespace(" ");
55
w.WriteEndElement();
56![](/Images/OutliningIndicators/InBlock.gif)
57
//node "RealSale"
58
w.WriteStartElement("RealSale");
59
oc=new OleDbCommand("select Date,RealSale from Temp_RealSale where GoodsCode='"+code+"'and LocationID='"+location+"'and Date<=#"+to+"#and Date>=#"+from+"#order by Date",m_dc);
60
reader=oc.ExecuteReader();
61
while(reader.Read())
62
{
63
w.WriteStartElement("Record");
64
w.WriteAttributeString("Date",Convert.ToDateTime(reader["Date"]).ToShortDateString());
65
w.WriteAttributeString("Value",reader["RealSale"].ToString());
66
w.WriteWhitespace(" ");
67
w.WriteEndElement();
68
}
69
reader.Close();
70
w.WriteWhitespace(" ");
71
w.WriteEndElement();
72![](/Images/OutliningIndicators/InBlock.gif)
73
//node "Abnormity"
74
w.WriteStartElement("Abnormity");
75
oc=new OleDbCommand("select Date,Abnormity from Temp_Abnormity where GoodsCode='"+code+"'and LocationID='"+location+"'and Date<=#"+to+"#and Date>=#"+from+"#order by Date",m_dc);
76
reader=oc.ExecuteReader();
77
while(reader.Read())
78
{
79
w.WriteStartElement("Record");
80
w.WriteAttributeString("Date",Convert.ToDateTime(reader["Date"]).ToShortDateString());
81
w.WriteAttributeString("Value",reader["Abnormity"].ToString());
82
w.WriteWhitespace(" ");
83
w.WriteEndElement();
84
}
85
reader.Close();
86
w.WriteWhitespace(" ");
87
w.WriteEndElement();
88![](/Images/OutliningIndicators/InBlock.gif)
89
//node "StatByMonth"
90
w.WriteStartElement("StatByMonth");
91
oc=new OleDbCommand("select StartDate,RealStock,StockoutTimes,SafetyStock,SafetyStockTime from Temp_StatByMonth where GoodsCode='"+code+"'and LocationID='"+location+"'and StartDate<=#"+to+"#and StartDate>#"+from.AddMonths(-1)+"#order by StartDate",m_dc);
92
reader=oc.ExecuteReader();
93
while(reader.Read())
94
{
95
w.WriteStartElement("Record");
96
w.WriteAttributeString("Date",Convert.ToDateTime(reader["StartDate"]).ToShortDateString());
97
w.WriteAttributeString("RealStock",reader["RealStock"].ToString());
98
w.WriteAttributeString("StockoutTimes",reader["StockoutTimes"].ToString());
99
w.WriteAttributeString("SafetyStock",reader["SafetyStock"].ToString());
100
w.WriteAttributeString("SafetyStockTime",reader["SafetyStockTime"].ToString());
101
w.WriteWhitespace(" ");
102
w.WriteEndElement();
103
}
104
reader.Close();
105
w.WriteWhitespace(" ");
106
w.WriteEndElement();
107![](/Images/OutliningIndicators/InBlock.gif)
108
//end location
109
w.WriteWhitespace(" ");
110
w.WriteEndElement();
111
}
112
//end root element
113
w.WriteWhitespace("\r\n");
114
w.WriteEndElement();
115![](/Images/OutliningIndicators/InBlock.gif)
116
//w.WriteEndElement();
117
w.Flush();
118
w.Close();
119
//return true;
120
}
![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
3
![](/Images/OutliningIndicators/InBlock.gif)
4
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
5
![](/Images/OutliningIndicators/InBlock.gif)
6
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
7
![](/Images/OutliningIndicators/InBlock.gif)
8
![](/Images/OutliningIndicators/InBlock.gif)
9
![](/Images/OutliningIndicators/InBlock.gif)
10
![](/Images/OutliningIndicators/InBlock.gif)
11
![](/Images/OutliningIndicators/InBlock.gif)
12
![](/Images/OutliningIndicators/InBlock.gif)
13
![](/Images/OutliningIndicators/InBlock.gif)
14
![](/Images/OutliningIndicators/InBlock.gif)
15
![](/Images/OutliningIndicators/InBlock.gif)
16
![](/Images/OutliningIndicators/InBlock.gif)
17
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
18
![](/Images/OutliningIndicators/InBlock.gif)
19
![](/Images/OutliningIndicators/InBlock.gif)
20
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
21
![](/Images/OutliningIndicators/InBlock.gif)
22
![](/Images/OutliningIndicators/InBlock.gif)
23
![](/Images/OutliningIndicators/InBlock.gif)
24
![](/Images/OutliningIndicators/InBlock.gif)
25
![](/Images/OutliningIndicators/InBlock.gif)
26
![](/Images/OutliningIndicators/InBlock.gif)
27
![](/Images/OutliningIndicators/InBlock.gif)
28
![](/Images/OutliningIndicators/InBlock.gif)
29
![](/Images/OutliningIndicators/InBlock.gif)
30
![](/Images/OutliningIndicators/InBlock.gif)
31
![](/Images/OutliningIndicators/InBlock.gif)
32
![](/Images/OutliningIndicators/InBlock.gif)
33
![](/Images/OutliningIndicators/InBlock.gif)
34
![](/Images/OutliningIndicators/InBlock.gif)
35
![](/Images/OutliningIndicators/InBlock.gif)
36
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
37
![](/Images/OutliningIndicators/InBlock.gif)
38
![](/Images/OutliningIndicators/InBlock.gif)
39
![](/Images/OutliningIndicators/InBlock.gif)
40
![](/Images/OutliningIndicators/InBlock.gif)
41
![](/Images/OutliningIndicators/InBlock.gif)
42
![](/Images/OutliningIndicators/InBlock.gif)
43
![](/Images/OutliningIndicators/InBlock.gif)
44
![](/Images/OutliningIndicators/InBlock.gif)
45
![](/Images/OutliningIndicators/InBlock.gif)
46
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
47
![](/Images/OutliningIndicators/InBlock.gif)
48
![](/Images/OutliningIndicators/InBlock.gif)
49
![](/Images/OutliningIndicators/InBlock.gif)
50
![](/Images/OutliningIndicators/InBlock.gif)
51
![](/Images/OutliningIndicators/InBlock.gif)
52
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
53
![](/Images/OutliningIndicators/InBlock.gif)
54
![](/Images/OutliningIndicators/InBlock.gif)
55
![](/Images/OutliningIndicators/InBlock.gif)
56
![](/Images/OutliningIndicators/InBlock.gif)
57
![](/Images/OutliningIndicators/InBlock.gif)
58
![](/Images/OutliningIndicators/InBlock.gif)
59
![](/Images/OutliningIndicators/InBlock.gif)
60
![](/Images/OutliningIndicators/InBlock.gif)
61
![](/Images/OutliningIndicators/InBlock.gif)
62
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
63
![](/Images/OutliningIndicators/InBlock.gif)
64
![](/Images/OutliningIndicators/InBlock.gif)
65
![](/Images/OutliningIndicators/InBlock.gif)
66
![](/Images/OutliningIndicators/InBlock.gif)
67
![](/Images/OutliningIndicators/InBlock.gif)
68
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
69
![](/Images/OutliningIndicators/InBlock.gif)
70
![](/Images/OutliningIndicators/InBlock.gif)
71
![](/Images/OutliningIndicators/InBlock.gif)
72
![](/Images/OutliningIndicators/InBlock.gif)
73
![](/Images/OutliningIndicators/InBlock.gif)
74
![](/Images/OutliningIndicators/InBlock.gif)
75
![](/Images/OutliningIndicators/InBlock.gif)
76
![](/Images/OutliningIndicators/InBlock.gif)
77
![](/Images/OutliningIndicators/InBlock.gif)
78
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
79
![](/Images/OutliningIndicators/InBlock.gif)
80
![](/Images/OutliningIndicators/InBlock.gif)
81
![](/Images/OutliningIndicators/InBlock.gif)
82
![](/Images/OutliningIndicators/InBlock.gif)
83
![](/Images/OutliningIndicators/InBlock.gif)
84
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
85
![](/Images/OutliningIndicators/InBlock.gif)
86
![](/Images/OutliningIndicators/InBlock.gif)
87
![](/Images/OutliningIndicators/InBlock.gif)
88
![](/Images/OutliningIndicators/InBlock.gif)
89
![](/Images/OutliningIndicators/InBlock.gif)
90
![](/Images/OutliningIndicators/InBlock.gif)
91
![](/Images/OutliningIndicators/InBlock.gif)
92
![](/Images/OutliningIndicators/InBlock.gif)
93
![](/Images/OutliningIndicators/InBlock.gif)
94
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
95
![](/Images/OutliningIndicators/InBlock.gif)
96
![](/Images/OutliningIndicators/InBlock.gif)
97
![](/Images/OutliningIndicators/InBlock.gif)
98
![](/Images/OutliningIndicators/InBlock.gif)
99
![](/Images/OutliningIndicators/InBlock.gif)
100
![](/Images/OutliningIndicators/InBlock.gif)
101
![](/Images/OutliningIndicators/InBlock.gif)
102
![](/Images/OutliningIndicators/InBlock.gif)
103
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
104
![](/Images/OutliningIndicators/InBlock.gif)
105
![](/Images/OutliningIndicators/InBlock.gif)
106
![](/Images/OutliningIndicators/InBlock.gif)
107
![](/Images/OutliningIndicators/InBlock.gif)
108
![](/Images/OutliningIndicators/InBlock.gif)
109
![](/Images/OutliningIndicators/InBlock.gif)
110
![](/Images/OutliningIndicators/InBlock.gif)
111
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
112
![](/Images/OutliningIndicators/InBlock.gif)
113
![](/Images/OutliningIndicators/InBlock.gif)
114
![](/Images/OutliningIndicators/InBlock.gif)
115
![](/Images/OutliningIndicators/InBlock.gif)
116
![](/Images/OutliningIndicators/InBlock.gif)
117
![](/Images/OutliningIndicators/InBlock.gif)
118
![](/Images/OutliningIndicators/InBlock.gif)
119
![](/Images/OutliningIndicators/InBlock.gif)
120
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)