提供保证上述数据完整性的手段,主要包括NULL(非空约束)、PRIHARYKEY(主键约束)、FOREIGNKEY(外部关键字约束)、UMQUE(唯一性约束)、DE队ULT(缺省约束)和CHECK(检查约束)等。本系统在数据库设计阶段主要确定了主键约束、唯一性约束、缺省约束、非空约束、部分外键约束和部分CHECK约束,有一部分CHECK约束在应用程序设计中通过制定输入的有效性规则实现。然后,通过对系统进行需求和功能分析,将整个系统数据表分为751大类:基本数据信息表、供应商和客户信息以及资会往来信息表、产成品出入库信息表、材料需求分析、统计分析表、合同信息表。具体名称见表4-2所示:
图 4-1 数据库表设计表一
图 4-2 数据库表设计表二
图 4-3 数据库表设计表三
5 系统开发及运行实例
5.1 销售系统模块的实现
5.1.1 界面登陆模块
如图5-1所示,该模块主要完成管理员对系统的登录功能。
模块部分代码实现如下:
private void button1_Click(object sender, EventArgs e) {
SqlConnection con = new SqlConnection(connstr);
con.Open();
String sql = "select password from user where username=' " + textBox1.Text.Trim() + "'";
SqlCommand cmd = new SqlCommand(sql, con);
SqlDataReader dr=cmd.ExecuteReader();
String passwd=dr.GetString(0);
if(passwd==textBox2.Text.Trim())
{
Form1 f1 = new Form1();
f1.Show();
this.Hide();
}
else if(passwd==null)
{
MessageBox.Show("用户名不存在");
}
else
{
MessageBox.Show("密码不正确");
}
dr.Close();
con.Close();
}
private void button2_Click(object sender, EventArgs e) {
this.textBox1.Text = "";
this.textBox2.Text = "";
}
图 5-1 系统登陆页面展示
5.1.2 系统导航模块
系统登录成功进入系统导航页面,导航界面如如图5-2所以,窗口只要完成对该系统的整体的导航,通过单击各个模块名称,直接进入所要完成操作的下一个模块,例如登录商品合同模块直接单击合同查询可直接跳转到合同查询页面,完成合同查询的下一步操作。
部分代码实现:
private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
{
if (this.treeView1.SelectedNode.Name == "节点1")
{
this.tabControl1.SelectedTab = this.tabPage1;
} ERP销售管理销售合同子模块的设计与开发(8):http://www.751com.cn/jisuanji/lunwen_2204.html