datawindow 创建操作报表。

时间:2023-03-09 16:52:59
datawindow  创建操作报表。

最近制作做了几个简单的报表,写下主要的代码。以便各位参考。

  public void FillDW(DataTable dtbResult)
{
try
{
DataRow dtFr;
int row = ;
int i = , j = ;
int n = ;
int nowCount = ;
string tempName = null;
decimal num = ;
string temp = null;
string tt = null; ;
decimal max = ;
int count = ; m_objViewer.dwResult.SetRedrawOff(); for (i = ; i < dtbResult.Columns.Count; i++)
{
tempName = "name_" + i.ToString() + "_t.text=";
if (i % == )
{
temp = tempName + "\"" + dtbResult.Columns[i].ColumnName + "\"";
}
else
{
for (int k = ; k < dtbResult.Rows.Count; k++)
{
if (decimal.TryParse(dtbResult.Rows[k][i].ToString(), out num))
{
if (max < num)
max = num;
}
}
temp = tempName + "\"数量(" + max.ToString() + ")\"";
}
m_objViewer.dwResult.Modify(temp);
n = dtbResult.Columns[i].ColumnName.Length;
if (i % == && n>=)
{ if (n > )
{
tt = "name_" + i.ToString() + "_t.Width= '160'";
m_objViewer.dwResult.Modify(tt);
temp = "name_" + i.ToString() + ".Width= '160'";
m_objViewer.dwResult.Modify(temp);
}
else
{
tt = "name_" + i.ToString() + "_t.Width= '120'";
m_objViewer.dwResult.Modify(tt);
temp = "name_" + i.ToString() + ".Width= '120'";
m_objViewer.dwResult.Modify(temp);
}
}
else
{
tt = "name_" + i.ToString() + "_t.Width= '90'";
m_objViewer.dwResult.Modify(tt);
temp = "name_" + i.ToString() + ".Width= '90'";
m_objViewer.dwResult.Modify(temp);
} //显示
tt = "name_" + i.ToString() + "_t.visible = '1'";
m_objViewer.dwResult.Modify(tt);
temp = "name_" + i.ToString() + ".visible = '1'";
m_objViewer.dwResult.Modify(temp); count++;
max = ;
}
//for (i = dtbResult.Columns.Count; i <= 104; i++)
//{
// //隐藏
// tt = "name_" + i.ToString() + "_t.Width= '0'";
// m_objViewer.dwResult.Modify(tt);
// temp = "name_" + i.ToString() + ".Width= '0'";
// m_objViewer.dwResult.Modify(temp);
//} tt = "name_0_t.Width= '150'";
m_objViewer.dwResult.Modify(tt);
temp = "name_0.Width= '150'";
m_objViewer.dwResult.Modify(temp); nowCount = j;
for (int intI = ; intI < dtbResult.Rows.Count; intI++)
{
row = this.m_objViewer.dwResult.InsertRow();
dtFr = dtbResult.Rows[intI];
for (i = ; i < dtbResult.Columns.Count; i++)
{
temp = "name_" + i.ToString();
m_objViewer.dwResult.SetItemString(row, temp, dtFr[i].ToString());
}
} temp = "(" + this.dtDateFrom.ToShortDateString();
m_objViewer.dwResult.Modify("t_from.text='" + temp + "'");
m_objViewer.dwResult.Modify("t_from.visible='1'");
temp ="至"+ this.dtDateTo.ToShortDateString()+")";
m_objViewer.dwResult.Modify("t_to.text='" + temp + "'");
m_objViewer.dwResult.Modify("t_to.visible='1'"); m_objViewer.dwResult.SetRedrawOn();
m_objViewer.dwResult.Refresh(); }
catch (Exception objEx)
{
MessageBox.Show(objEx.Message);
} }

dw.LibraryList="XX.pbl"

dw.DataWindowObject="XXX";