zoukankan      html  css  js  c++  java
  • 复制新增

    实现方法步骤:

    1,定义一个记录结构record:TXuYaoZuoDeShiDataSheetRecord

         定义一个增加数据的方法类:TAddDataApi;

    unit UAddDataApi;
    
    interface
    uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
      Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ComCtrls, Data.DB, Data.Win.ADODB,
      Vcl.ExtCtrls, Vcl.DBCtrls, Vcl.Grids, Vcl.DBGrids, Clipbrd, Vcl.Menus,
      Vcl.StdCtrls;
    /// <summary>
    /// 定义需要做的事的结构
    /// </summary>
    type
    TXuYaoZuoDeShiDataSheetRecord = record
    选中:Boolean;
    类别:string[20];
    标题:string[255];
    优先级:string[25];
    状态:string[25];
    已完成百分比:real;
    说明:string[255];
    开始日期:TDateTime;
    截止日期:TDateTime;
    //附件:TMemo;
    end;
    
    /// <summary>
    /// 定义增加数据的一些方法
    ///
    type TAddDataApi = class
      public
      class procedure insert(var ARecord:TXuYaoZuoDeShiDataSheetRecord);
    end;
    
    implementation
    
    uses FDataPool, 日常管理助手;
    class procedure TAddDataApi.insert(var ARecord: TXuYaoZuoDeShiDataSheetRecord);
    var
    MyAdq:TADOQuery;
    begin
    MyAdq:=TADOQuery.Create(nil);
    try
    with MyAdq do
    begin
    Connection:=frmDataPool.ADOConnection1;
    SQL.Text := 'INSERT INTO 需要做的事 (选中,类别,标题,优先级,状态,已完成百分比,说明,开始日期,截止日期) VALUES ('+ARecord.选中.ToString.QuotedString+','+QuotedStr(ARecord.类别)+','+
                          QuotedStr(ARecord.标题)+','+QuotedStr(ARecord.优先级)+','+QuotedStr(ARecord.状态)+','+floattostr(ARecord.已完成百分比).QuotedString+','+QuotedStr(ARecord.说明)+','+
                          FormatDateTime('yyyy-MM-dd',ARecord.开始日期).QuotedString+','+formatdatetime('yyyy-MM-dd',ARecord.截止日期).QuotedString+')';
    ExecSQL;
    end;
    finally
    MyAdq.Free;
    end;
    end;
    end.

    3,单击事件中添加实现代码:(注意添加引用的结构类单元名和添加数据方法类的单元名UAddDataApi)

    procedure TForm3.N32Click(Sender: TObject);
    var
    AXuYao:TXuYaoZuoDeShiDataSheetRecord;
    AAddData:TAddDataApi;
    begin
    AAddData:=TAddDataApi.Create;
    try
    //提取当前记录数据
    with AXuYao do
    begin
    选中:=frmDataPool.qry需要做的事.FieldByName('选中').value;
    类别:=frmDataPool.qry需要做的事.FieldByName('类别').value;
    标题:=frmDataPool.qry需要做的事.FieldByName('标题').value;
    优先级:=frmDataPool.qry需要做的事.FieldByName('优先级').value;
    状态:=frmDataPool.qry需要做的事.FieldByName('状态').value;
    已完成百分比:=frmDataPool.qry需要做的事.FieldByName('已完成百分比').value;
    说明:=frmDataPool.qry需要做的事.FieldByName('说明').value;
    开始日期:=frmDataPool.qry需要做的事.FieldByName('开始日期').value;
    截止日期:=frmDataPool.qry需要做的事.FieldByName('截止日期').value;
    //附件:=frmDataPool.qry需要做的事.FieldByName('截止日期').;
    end;
    //写入数据库
    AAddData.insert(AXuYao);
    //防止程序假死
    Application.ProcessMessages;
    //刷新数据
    frmDataPool.qry需要做的事.Requery;
    finally
    AAddData.Free;
    end;
    end;
  • 相关阅读:
    网络流24题之汽车加油行驶问题
    「CodeChef
    「HNOI 2016」 序列
    「HNOI 2015」实验比较
    「JXOI 2018」 排序问题
    「HNOI 2014」 江南乐
    「HNOI 2015」亚瑟王
    「HNOI 2015」菜肴制作
    「HNOI 2015」落忆枫音
    蓝桥杯 方格分割
  • 原文地址:https://www.cnblogs.com/ddxxxb/p/7070565.html
Copyright © 2011-2022 走看看