• 00
  • :
  • 00
  • :
  • 00

GZFramwork数据库层《二》单据表增删改查(自动生成单据号码)

运行效果:

201503211426900267550cc52b3d801[5]

image

使用代码生成器(GZCodeGenerate)生成tb_EmpLeave的Model

生成方式见上一节:

GZFramwork数据库层《一》普通表增删改查

 

image

 

新增一个自定义控件:ucTableUnitDocNo

image

 

后台代码同上一节ucTableUnit除了实例化bllBusiness不一样外其他都一样(红色背景标注)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using GZFramworkDB.BLL;
using GZFramworkDB.Model;
using GZFramworkDB.Main.MyControls;

namespace GZFramworkDB.Main
{
    public partial class ucTableUnitDocNo : UserControl,IData
    {
        bllBusiness bll;
        public ucTableUnitDocNo()
        {
            InitializeComponent();
            bll 
= new bllBusiness(typeof(tb_EmpLeave), "AL", 4
);
        }

        public void DoSearch()
        {
            gridControl1.DataSource = bll.GetSummaryData();
            gridView1.BestFitColumns();//自动列宽
        }

        DataTable dtSource
        {
            get
            {
                if (gridControl1.DataSource == null) return null;
                return gridControl1.DataSource as DataTable;
            }
        }
        //新增
        public void DoAdd()
        {
            if (dtSource != null)
                dtSource.Rows.Add();
        }
        //主键删除,立即删除,无需提交
        public void DoDeleteKey()
        {
            DataRow dr = gridView1.GetFocusedDataRow();
            if (dr != null)
            {
                string Keyvalue = dr[bll.SummaryKey].ToString();
                if (bll.Delete(Keyvalue) == true)
                {
                    dtSource.Rows.Remove(dr);
                }
            }
        }
        //缓存表删除,需要提交生效
        public void DoDeleteTable()
        {
            gridView1.DeleteSelectedRows();
        }
        //提交
        public void DoUpdate()
        {
            bll.Update(dtSource);
        }
    }
}

 

修改Main.cs:

image

添加事件:

image

       //单据单表测试
        private void menu_TableUnitDocNo_Click(object sender, EventArgs e)
        {
            foreach (Control col in pan_MyControls.Controls)
            {
                col.Visible = false;
            }

            TableUnitDocNo.Visible = true;

            uc = TableUnitDocNo;
        }

 

运行效果:

201503211426900267550cc52b3d801

 

说明:

单号默认自动过滤包含4,7等数字,

可以修改存储过程:sys_GetDataSN

 

 

 

项目源码下载地址:https://github.com/GarsonZhang/GZFramework.Demo

 

系列文章

1. GZFramwork数据库层《前言》Demo简介

2. GZFramwork数据库层《前言》DLL项目引用

3. GZFramwork数据库层《一》普通表增删改查

4. GZFramwork数据库层《二》单据表增删改查(自动生成单据号码)

5. GZFramwork数据库层《三》普通主从表增删改查

6. GZFramwork数据库层《四》单据主从表增删改查(主键自动生成)

7. GZFramwork数据库层《五》高级主从表增删改查(主表明细表主键都自动生成)

8. GZFramwork数据库层《六》存储过程调用

9. GZFramwork数据库层《七》总结

posted @ 2015-03-21 09:12  Garson_Zhang  阅读(668)  评论(0编辑  收藏  举报