用户通过登陆界面可以进入系统,不同的用户类型可以进入不同的控制端,本系统设置两个控制端,即教师控制端以及学生控制端,实现方式是通过数据读取器SqlDataReader读取数据。SqlDataReader对象提供一种从SQL Server数据库读取行的只进流的方式,它只能读取数据,不能对数据执行任何修改操作,并且只能直接把数据传递给对象或者页面,不能在IIS的内容中保持数据。代码内容如下。
SqlDataReader sqlDR=null; //数据阅读器类;
string str_SQLText = string.Format("select * from tb_UserInfo where yhm='{0}' and mm='{1}' and sh=1", userName, passWord);
SQLHandle.SQLHelper.StrConn = Utility.GetConnStr(); //数据库的连接字符串;
try //开始异常捕获,
{
sqlDR=SQLHandle.SQLHelper.ExecuteSqlReader(str_SQLText);
if (sqlDR.Read())
{
usERPole =(int) sqlDR[2];
Session["userName"] = userName; //保存用户名信息到会话(Session)中;
Session["usERPole"] = usERPole;
//add 2008-11-13 16:12 产生Application对象,用于标记用户是否已经登录了;
Application.Lock();
Application[userName] = userName;
Application.UnLock();
if (usERPole == 0)//用户类型区分
{
Response.Redirect("Default.aspx", true); //跳转到学生主页面;
}
else if (usERPole == 1)
{
Response.Redirect("TeacherDefault.aspx", true); //跳转到教师主页面;
}
}
4.3.2清除历史记录代码实现
图4-3 清除历史记录界面
如图4-3所示,用户通过点击按键,清除用户历史记录,实现系统初始化。
protected void btnClear_Click(object sender, EventArgs e)
{
Button btnTemp=(Button)sender;
string strSQLText1 = "Delete from tb_UserInfo where [yhzl]=0";
string strSQLText2 = "Delete from tb_Nianfen";
string strSQLText3 = "Delete from tb_CaigouInfo";
string strSQLText4 = "Delete from tb_DaikuanInfo";
string strSQLText5 = "Delete from tb_ChanpinyanfaInfo";
string strSQLText6 = "Delete from tb_ISOkaifaInfo";
string strSQLText7= "Delete from tb_ShichangkaifaInfo";
string strSQLText8= "Delete from tb_ZonghefeiyongInfo";
stringstrSQLText9="Deletefromtb_ChanpinxiaoshouInfo";
string strSQLText10 = "Delete from tb_LirunInfo";
stringstrSQLText11 = "Delete from tb_ZichanfuzhaiInfo";
string[] strSQLTexts=new string[] {strSQLText1,strSQLText2,strSQLText3,strSQLText4,strSQLText5,strSQLText6,
strSQLText7,strSQLText8,strSQLText9,strSQLText10,strSQLText11};
SQLHandle .SQLHelper.StrConn=Utility .GetConnStr();
4.3.3资产负债表代码实现
图4-4 资产负债报表界面
学生控制端,学生自行登记报表(参见图4-4),系统可以根据录入数据进行计算,利用String类增加了一个非常有用的静态函数format(String format, Objece... argues),可以将各类数据格式化为字符串并输出,format参数中可以包含不需要转化的字符串,这些字符串是输入什么,最终就输出什么。同时还包含一些特殊格式的内容,来指定将哪个对象来转换,以及转换成什么形式。代码实现如下。
//insert 数据入数据库资产负债报表;
try
{
string strSQLText = string.Format("Insert into tb_ZichanfuzhaiInfo( zb, nf, xj, yszk, zzp, cp, ycl, ldzchj, tdjz, jqsb, zjgc, gdzchj, zczj, cqfz, dqfz, yfzk, yjsj, yndqcd, fzhj, gdzb, lrlc, ndjl, syzqyhj,fzhqyhj) values('{0}',{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17},{18},{19},{20},{21},{22},{23})",
strUserName, intNF, GetTxtbText(txtbXJ), GetTxtbText(txtbYSZK), GetTxtbText(txtbZZP), GetTxtbText(txtbCP), GetTxtbText(txtbYCL), GetTxtbText(txtbLDZCHJ), GetTxtbText(txtbTDJZ), GetTxtbText(txtbJQSB), GetTxtbText(txtbZJGC), GetTxtbText(txtbGDZCHJ), GetTxtbText(txtbZCZJ),
GetTxtbText(txtbCQFZ), GetTxtbText(txtbDQFZ), GetTxtbText(txtbYFZK), GetTxtbText(txtbYJSJ), GetTxtbText(txtbYNDQCD), GetTxtbText(txtbFZHJ), GetTxtbText(txtbGDZB), GetTxtbText(txtbLRLC), GetTxtbText(txtbNDJL), GetTxtbText(txtbSYZQYHJ), GetTxtbText(txtbFZHQYHJ));
string[] strSQLTexts = new string[] { strSQLText };
SQLHandle.SQLHelper.StrConn = Utility.GetConnStr();
if (SQLHandle.SQLHelper.ExecuteSqlTexts(strSQLTexts))
{
Utility.RegAlert(ibtnOK, "保存数据成功!");
ibtnOK.Enabled = false;
}
}
5系统总结
<< 上一页 [11] [12] [13] [14] [15] [16] 下一页