delphi dbgrid 批量保存
unit uzcdbadd;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, DB, StdCtrls, Buttons, GridsEh, DBGridEh, ComCtrls, ExtCtrls;
type
TfrmzcdbAdd = class(TForm)
lbl1: TLabel;
pnl1: TPanel;
lbl2: TLabel;
dtp1: TDateTimePicker;
dbgrdh1: TDBGridEh;
btnOK: TBitBtn;
btnclose: TBitBtn;
ds1: TDataSource;
pm1: TPopupMenu;
mniadd: TMenuItem;
mniN1: TMenuItem;
procedure btncloseClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure btnOKClick(Sender: TObject);
procedure dbgrdh1EditButtonClick(Sender: TObject);
procedure dbgrdh1KeyPress(Sender: TObject; var Key: Char);
procedure mniaddClick(Sender: TObject);
procedure mniN1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmzcdbAdd: TfrmzcdbAdd;
Edittag:Integer;
implementation
uses datamoule, uselectzc, frmMain;
{$R *.dfm} procedure TfrmzcdbAdd.btncloseClick(Sender: TObject); //关闭时事务回滚
begin
dm.qryzcdbadd.Close;
DM.congdzc.RollbackTrans;
close;
end; procedure TfrmzcdbAdd.FormCreate(Sender: TObject); //窗口生成时
begin
if DM.qryzcdbadd .Active then dm.qryzcdbadd.Close;
if DM.congdzc.InTransaction then dm.congdzc.RollbackTrans;
dm.qryzcdbadd.LockType := ltBatchOptimistic;{批量乐观锁定}
DM.congdzc.BeginTrans; {开启事务}
case Edittag of
:
begin
dm.qryzcdbadd.Open;
dm.qryzcdbadd.Append;
dm.qryzcdbadd.FieldByName( '调拨日期 ').AsDateTime :=Now;
dm.qryzcdbadd.FieldByName( '登记人员 ').AsString := GuserName;
end;
:
begin
dm.qryzcdbadd.SQL.Clear;
dm.qryzcdbadd.SQL.Add( 'select * from [调拨] where ID= '+inttostr(dm.qryzcdb.fieldbyname( 'ID ').asinteger));
DM.qryzcdbadd.open;
DM.qryzcdbadd.First;
DM.qryzcdbadd.Edit; end;
end;
end; procedure TfrmzcdbAdd.btnOKClick(Sender: TObject); //单击保存
begin
dm.qryzcdbadd.UpdateBatch(); {批量保存}
dm.congdzc.CommitTrans; {提交事务}
close;
end; procedure TfrmzcdbAdd.dbgrdh1EditButtonClick(Sender: TObject);
begin
if dbgrdh1.Col= then
begin
frmSelectzc:= TfrmSelectzc.Create(nil);
frmSelectzc.Tag:=;
frmSelectzc.Show;
end;
end; procedure TfrmzcdbAdd.dbgrdh1KeyPress(Sender: TObject; var Key: Char);
begin
if key=# then{ 判断是按执行键}
if dbgrdh1.Col+ <(dbgrdh1.Columns.Count) then
dbgrdh1.Col:=dbgrdh1.col+{ 移动到下一字段}
else
dbgrdh1.Col:=;
end; procedure TfrmzcdbAdd.mniaddClick(Sender: TObject); //添加按钮
begin
DM.qryzcdbadd.Append;
dm.qryzcdbadd.FieldByName( '调拨日期 ').AsDateTime :=Now;
dm.qryzcdbadd.FieldByName( '登记人员 ').AsString := GuserName;
end; procedure TfrmzcdbAdd.mniN1Click(Sender: TObject); //删除
begin
DM.qryzcdbadd.Delete;
end; procedure TfrmzcdbAdd.FormClose(Sender: TObject; var Action: TCloseAction);
begin
DM.qryzcdb.Refresh;
Release;
end; end.
delphi dbgrid 批量保存的更多相关文章
- .NET DLL 保护措施应用实例(百度云批量保存工具)
最近做了个小工具,将保护措施思路全部应用到了此工具中. 点我下载 百度云批量保存工具是一款专门用于自动批量保存百度云分享的软件. 本软件特点:1:完全模拟人工操作:2:可以批量保存百度分享的文件( ...
- sqlbulkcopy 多表批量保存
/// <summary> /// 批量保存多表 /// </summary> /// <param name="dt1"></param ...
- 使用EntityManager批量保存数据
@PersistenceContext EntityManager em; 从别的系统中定期同步某张表的数据,由于数据量较大,采用批量保存 JPA EntityManager的四个主要方法 ① pub ...
- Howto: 在ArcGIS10中将地图文档(mxd文档)批量保存到之前版本
Howto: 在ArcGIS10中将地图文档(mxd文档)批量保存到之前版本 文章编号 : 38783 软件: ArcGIS - ArcEditor 10 ArcGIS - ArcInfo 10 A ...
- mybatis单笔批量保存
在上一篇写了接口调用解析返回的xml,并赋值到实体.这一篇主要介绍,如何保存实体数据. 一,xml样例 <?xml version="1.0" encoding=" ...
- Jquery Easy UI Datagrid 上下移动批量保存数据
DataGrid with 上下移动批量保存数据 通过前端变量保存修改数据集合,一次性提交后台执行 本想结合easyui 自带的$('#dg').datagrid('getChanges'); 方法来 ...
- mybatis批量保存的两种方式(高效插入)
知识点:mybatis中,批量保存的两种方式 1.使用mybatis foreach标签 2.mybatis ExecutorType.BATCH 参考博客:https://www.jb51.net/ ...
- springboot jpa 批量保存数据--EntityManager和 JpaRepository
1: 项目里面使用springboo-boot-start-data-jpa操作数据库,通过源码,在repository上继承JpaRepository 可以实现保存操作,其中源码接口为: <S ...
- easyui treegrid增、删、改及批量保存
treegrid添加新行和删除行的方法: 添加和删除直接调用这两个方法即可,修改的方法有点特殊,treegrid没有提供update方法,设置行为编辑状态,$('#obj_tgd_objectlist ...
随机推荐
- C# base64 转 byte[]
string转成 Base64 形式的String //byte[] 转string byte[] b = Encoding.Default.GetBytes("字符串"); // ...
- SQLite学习笔记
参考书籍 <SQLite 权威指南 第二版> Windows获取SQLite 1.主页: www.sqlite.org 2.下载 Precompiled Binaries For Wind ...
- mysql库地址
https://dev.mysql.com/downloads/connector/
- Java 高级应用编程 第一章 工具类
一.Java API Java API简介 1.API (Application Programming Interface) 应用程序接口 2.Java中的API,就是JDK提供的各种功能的Java ...
- 十分钟部署Anemometer作为Mysql慢查询可视化系统
前言 采用Anemometer将Mysql慢查询日志可视化,可以更便捷的查询慢查询日志,并根据时间戳进行历史查询.如下是单机版Anemometer部署的演示,实际应用中,为安全起见,建议把anemom ...
- [python]PyCharm安装与激活
一.安装 1.去官网下载安装包(http://www.jetbrains.com/pycharm/download/#section=windows) 2.下载完成之后双击即可点击安装,按照自己需求选 ...
- NB-IOT连接移动onenet平台流程
1. 先创建账号,然后创建产品 2. 创建设备,用AT+CGSN和AT+CIMI查询NB-IOT的IMEI和IMSI填写上去. 3. 创建好的设备.
- Sql Server 2008R2中使用CET进行递归查询
在使用数据库的过程中,我们经常会遇到递归的查询.比如传入一个分类ID,要查出这个分类下的所有子分类,以及子分类的子分类.或者说传入一个部门ID,要查出这个部门下所有子部门的人员:在Or ...
- Qt listwigwt item 加入自定义元素
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255) ...
- 适配chrome65最新selenium-chromedriver
网盘地址:https://pan.baidu.com/s/1BmdwRgD96IL32-3FTFxPSg 密码: 2vg6