运行效果:

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

生成方式见上一节:

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

新增一个自定义控件:ucTableUnitDocNo

后台代码同上一节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",

);
} 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:

添加事件:

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

运行效果:

说明:

单号默认自动过滤包含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数据库层《七》总结

GZFramwork数据库层《二》单据表增删改查(自动生成单据号码)的更多相关文章

  1. GZFramwork数据库层《四》单据主从表增删改查

    同GZFramwork数据库层<三>普通主从表增删改查 不同之处在于:实例 修改为: 直接上效果: 本系列项目源码下载地址:https://github.com/GarsonZhang/G ...

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

    运行结果: 使用代码生成器(GZCodeGenerate)生成tb_Cusomer和tb_CusomerDetail的Model 生成器源代码下载地址: https://github.com/Gars ...

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

    运行结果:     使用代码生成器(GZCodeGenerate)生成tb_MyUser的Model 生成器源代码下载地址: https://github.com/GarsonZhang/GZCode ...

  4. Vc数据库编程基础MySql数据库的表增删改查数据

    Vc数据库编程基础MySql数据库的表增删改查数据 一丶表操作命令 1.查看表中所有数据 select * from 表名 2.为表中所有的字段添加数据 insert into 表名( 字段1,字段2 ...

  5. Django框架之第二篇--app注册、静态文件配置、form表单提交、pycharm连接数据库、django使用mysql数据库、表字段的增删改查、表数据的增删改查

    本节知识点大致为:静态文件配置.form表单提交数据后端如何获取.request方法.pycharm连接数据库,django使用mysql数据库.表字段的增删改查.表数据的增删改查 一.创建app,创 ...

  6. SQL Server -- 回忆笔记(二):增删改查,修改表结构,约束,关键字使用,函数,多表联合查询

    SQL Server知识点回忆篇(二):增删改查,修改表结构,约束,关键字使用,函数,多表联合查询 1. insert 如果sql server设置的排序规则不是简体中文,必须在简体中文字符串前加N, ...

  7. [Django框架 - 静态文件配置、request对象方法初识、 pycharm链接数据库、ORM实操增删改查、django请求生命周期]

    [Django框架 - 静态文件配置.request对象方法初识. pycharm链接数据库.ORM实操增删改查.django请求生命周期] 我们将html文件默认都放在templates文件夹下 将 ...

  8. Django框架(八)--单表增删改查,在Python脚本中调用Django环境

    一.数据库连接配置 如果连接的是pycharm默认的Sqlite,不用改动,使用默认配置即可 如果连接mysql,需要在配置文件中的setting中进行配置: 将DATABASES={} 更新为 DA ...

  9. Django框架(九)—— 单表增删改查,在Python脚本中调用Django环境

    目录 单表增删改查,在Python脚本中调用Django环境 一.数据库连接配置 二.orm创建表和字段 三.单表增删改查 1.增加数据 2.删除数据 3.修改数据 4.查询数据 四.在Python脚 ...

随机推荐

  1. CMS .NET 程序框架 从2.0/3.5升级到4.0 版本后 需要调整的地方

    问题一: document.forms1.action 不可使用 需要修改程 document.forms[0] .NET 程序框架 从2.0/3.5升级到4.0 版本后,document.forms ...

  2. c++之vector

    vector是STL中最常见的容器,它是一种顺序容器,支持随机访问.vector是一块连续分配的内存,从数据安排的角度来讲,和数组极其相似, 不同的地方就是:数组是静态分配空间,一旦分配了空间的大小, ...

  3. 临床试验中PI、CI、SI、COI是指哪些人?

    今天为大家介绍的是临床试验的研究者的类型.临床试验的研究者是指在试验所在地负责实施临床试验的人员. 如果一项试验在试验场所由一组人员实施,研究者则为该组人员的负责人或领导者,也称之为主要研究者(Pri ...

  4. 【java基础学习】线程

    线程 1. 两种创建方式(继承Thread类和实现Runnable接口) 2. 线程共享资源(建议实现Runnable接口,其好处是:1.多线程之间可以共享资源 2.避免单继承带来的问题 3.数据和代 ...

  5. Geolocation

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. echo 输入指定空白字符

    ansible-direc:~ # echo -n "starting service....";echo -ne "\033[50G";echo " ...

  7. NSArray倒序

    NSArray倒序 NSArray *tmparr = [[upLoadImageArr reverseObjectEnumerator] allObjects]; ios 正则表达式替换 . 不可变 ...

  8. Java实现堆排序(大根堆)

    堆排序是一种树形选择排序方法,它的特点是:在排序的过程中,将array[0,...,n-1]看成是一颗完全二叉树的顺序存储结构,利用完全二叉树中双亲节点和孩子结点之间的内在关系,在当前无序区中选择关键 ...

  9. soap和wsdl的定义

    SOAP(Simple Object Access Protocol)是一个严格定义的信息交换协议,用于在Web Service中把远程调用和返回封装成机器可读的格式化数据.事实上SOAP数据使用XM ...

  10. 委托(delegate)的三种调用方式:同步调用,异步调用,异步回调(转载)

    下面为即将被调用的方法: public delegate int AddHandler(int a,int b); public class 加法类 { public static int Add(i ...