⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.pas

📁 此功能是集资对付系统,为一单位要求而做,此能实现了实时对付
💻 PAS
字号:
unit main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, WinSkinData, DB, ADODB, ToolWin, ImgList, RM_Dataset,
  RM_Class, RM_Designer, RM_Common, Grids, DBGridEh, ExtCtrls,
  TFlatPanelUnit, StdCtrls, Mask, PDJ_XPDBC, Menus, DBCtrls, RzDBNav,Math,
  TFlatGroupBoxUnit, TFlatEditUnit, PDJ_XPC, PDJ_XPSpB, RM_GridReport,
  RM_e_main, RM_e_Xls;

type
  TfrmMain = class(TForm)
    SB: TStatusBar;
    AdoConconn: TADOConnection;
    il5: TImageList;
    tlb1: TToolBar;
    btnInsert: TToolButton;
    btnEdit: TToolButton;
    btnDelete: TToolButton;
    btnPrint: TToolButton;
    btn1: TToolButton;
    btnClose: TToolButton;
    RMReport1: TRMReport;
    RMDesigner1: TRMDesigner;
    RMDBDataSet1: TRMDBDataSet;
    pm1: TPopupMenu;
    FlatPanel3: TFlatPanel;
    DBGridEh2: TDBGridEh;
    pnl1: TPanel;
    pnl2: TPanel;
    pnl3: TPanel;
    FlatPanel5: TFlatPanel;
    DBGridEh1: TDBGridEh;
    FlatPanel4: TFlatPanel;
    lbl1: TLabel;
    lbl2: TLabel;
    lbl3: TLabel;
    lbl4: TLabel;
    lbl5: TLabel;
    lbl6: TLabel;
    lbl7: TLabel;
    lbl8: TLabel;
    PDJXPDBEdit1: TPDJXPDBEdit;
    PDJXPDBEdit2: TPDJXPDBEdit;
    PDJXPDBEdit3: TPDJXPDBEdit;
    PDJXPDBEdit4: TPDJXPDBEdit;
    PDJXPDBEdit5: TPDJXPDBEdit;
    PDJXPDBEdit6: TPDJXPDBEdit;
    PDJXPDBEdit7: TPDJXPDBEdit;
    PDJXPDBEdit8: TPDJXPDBEdit;
    ds_Jzry: TDataSource;
    aQry: TADOQuery;
    SkinData2: TSkinData;
    RzDBNavigator1: TRzDBNavigator;
    aQry_print: TADOQuery;
    FlatGroupBox1: TFlatGroupBox;
    edtId: TPDJXPEdit;
    PDJXPSpeedButton1: TPDJXPSpeedButton;
    tmr1: TTimer;
    btn2: TToolButton;
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure btnCloseClick(Sender: TObject);
    procedure ds_JzryDataChange(Sender: TObject; Field: TField);
    procedure btn1Click(Sender: TObject);
    procedure btnPrintClick(Sender: TObject);
    procedure PDJXPSpeedButton1Click(Sender: TObject);
    procedure tmr1Timer(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure btnEditClick(Sender: TObject);
    procedure btnInsertClick(Sender: TObject);
    procedure btnDeleteClick(Sender: TObject);
    procedure btn2Click(Sender: TObject);
  private
    procedure Updatedata;
    { Private declarations }
  public
    bConnect: Boolean;
    Year, Month, Day: Word;
    FilterControlList: TStringList;
    { Public declarations }
  end;

var
  frmMain: TfrmMain;
  sSql,
  s_value:string;
  Conf:boolean;
implementation
   uses CommonFunc,PubFunction,PubProCess,frmselectitem,Variable,
        uProgress,udm,login,Gen_Q;
{$R *.dfm}
procedure TfrmMain.Updatedata;
begin
if dm.Atbl_tmp.Active then
  dm.Atbl_tmp.Close ;

sSql :='DELETE * FROM 临时库';
aQry.Close ;
aQry.SQL.Clear ;
aQry.SQL.Add(sSql);
aQry.ExecSQL ;
//s_value :=dm.Atbl_Jzry.Fieldbyname('id').Value ;
 //第一次
ssql:='insert into 临时库(df_sj,df_bj,df_ye,df_lx)';
sSql:=sSql +' VALUES('+QuotedStr(DateToStr(dm.Atbl_Jzry.Fieldbyname('df1_sj').Value))+','+QuotedStr(dm.Atbl_Jzry.Fieldbyname('df1_bj').Value);
sSql:=sSql +','+ QuotedStr(dm.Atbl_Jzry.Fieldbyname('df1_ye').Value) +','+ QuotedStr(FloatToStr(RoundTo(dm.Atbl_Jzry.Fieldbyname('df1_lx').AsFloat,-2))) +')';
aQry.Close ;
aQry.SQL.Clear ;
aQry.SQL.Add(sSql);
aQry.ExecSQL ;
//第二次
ssql:='insert into 临时库(df_sj,df_bj,df_ye,df_lx)';
sSql:=sSql +' VALUES('+QuotedStr(DateToStr(dm.Atbl_Jzry.Fieldbyname('df2_sj').Value))+','+QuotedStr(dm.Atbl_Jzry.Fieldbyname('df2_bj').Value);
sSql:=sSql +','+ QuotedStr(dm.Atbl_Jzry.Fieldbyname('df2_ye').Value) +','+ QuotedStr(FloatToStr(RoundTo(dm.Atbl_Jzry.Fieldbyname('df2_lx').AsFloat,-2))) +')';
aQry.Close ;
aQry.SQL.Clear ;
aQry.SQL.Add(sSql);
aQry.ExecSQL ;

//第三次
ssql:='insert into 临时库(df_sj,df_bj,df_ye,df_lx)';
sSql:=sSql +' VALUES('+QuotedStr(DateToStr(dm.Atbl_Jzry.Fieldbyname('df3_sj').Value))+','+QuotedStr(dm.Atbl_Jzry.Fieldbyname('df3_bj').Value);
sSql:=sSql +','+ QuotedStr(dm.Atbl_Jzry.Fieldbyname('df3_ye').Value) +','+ QuotedStr(FloatToStr(RoundTo(dm.Atbl_Jzry.Fieldbyname('df3_lx').AsFloat,-2))) +')';
aQry.Close ;
aQry.SQL.Clear ;
aQry.SQL.Add(sSql);
aQry.ExecSQL ;


//第四次
ssql:='insert into 临时库(df_sj,df_bj,df_ye,df_lx)';
sSql:=sSql +' VALUES('+QuotedStr(DateToStr(dm.Atbl_Jzry.Fieldbyname('df4_sj').Value))+','+QuotedStr(dm.Atbl_Jzry.Fieldbyname('df4_bj').Value);
sSql:=sSql +','+ QuotedStr(dm.Atbl_Jzry.Fieldbyname('df4_ye').Value) +','+ QuotedStr(FloatToStr(RoundTo(dm.Atbl_Jzry.Fieldbyname('df4_lx').AsFloat,-2))) +')';
aQry.Close ;
aQry.SQL.Clear ;
aQry.SQL.Add(sSql);
aQry.ExecSQL ;
//第五次
ssql:='insert into 临时库(df_sj,df_bj,df_ye,df_lx)';
sSql:=sSql +' VALUES('+QuotedStr(DateToStr(dm.Atbl_Jzry.Fieldbyname('df5_sj').Value))+','+QuotedStr(dm.Atbl_Jzry.Fieldbyname('df5_bj').Value);
sSql:=sSql +','+ QuotedStr(dm.Atbl_Jzry.Fieldbyname('df5_ye').Value) +','+ QuotedStr(FloatToStr(RoundTo(dm.Atbl_Jzry.Fieldbyname('df5_lx').AsFloat,-2))) +')';
aQry.Close ;
aQry.SQL.Clear ;
aQry.SQL.Add(sSql);
aQry.ExecSQL ;


//第六次
ssql:='insert into 临时库(df_sj,df_lx)';
sSql:=sSql +' VALUES('+QuotedStr(DateToStr(dm.Atbl_Jzry.Fieldbyname('df6_sj').Value));
sSql:=sSql +','+ QuotedStr(FloatToStr(RoundTo(dm.Atbl_Jzry.Fieldbyname('df6_lx').AsFloat,-2))) +')';
aQry.Close ;
aQry.SQL.Clear ;
aQry.SQL.Add(sSql);
aQry.ExecSQL ;
aQry.SQL.Clear ;
aQry.Close ;
dm.Atbl_tmp.Active :=True ;
end;
procedure TfrmMain.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
if   MsgBox('真的要退出本系统吗?!','提示信息',4)=6  then
     begin
      if bConnect then
        dm.Atbl_Jzry.Close ;
        CanClose:=True;
     end
   else
      CanClose:=False;
end;

procedure TfrmMain.FormCreate(Sender: TObject);
var
  PathDataBase:string;
begin
AdoConconn.Close;
 PathDataBase:=MainDir+'data\兑付集资.mdb' ;
if not ConnectADO(AdoConconn,PathDataBase,'') then
begin
Application.MessageBox('连接的数据库失败,请查看数据库是否损坏!', '错误', mb_iconInformation + mb_defbutton1);
Application.Terminate;  //如果连接不成功,退出应用程序
end ;
if not LoginExecute(TfrmLogin) then //如果身份验证无效,就退出系统
     Application.Terminate;

if CurrentParam.blnload  then
begin
ShortDateFormat:='YYYY-MM-DD';
longdateformat:='YYYY-MM-DD';
DecodeDate(Date,Year,Month,Day);
CurrentParam.iyear :=formatfloat('0000',Year);//inttostr(Year);
CurrentParam.iMonth :=formatfloat('00',Month);
CurrentParam.iDay :=formatfloat('00',Day);
DATESEPARATOR:='-';
Width :=800;
Height:=600;

end;
end;

procedure TfrmMain.FormDestroy(Sender: TObject);
begin
frmMain:=nil;
end;

procedure TfrmMain.FormClose(Sender: TObject; var Action: TCloseAction);
begin

//dm.Atbl_tmp.Close ;
AdoConconn.Close;
//AnimateWindow(handle,200,AW_HIDE or AW_BLEND);
Action := caFree;
end;

procedure TfrmMain.btnCloseClick(Sender: TObject);
begin
close;
end;

procedure TfrmMain.ds_JzryDataChange(Sender: TObject; Field: TField);
begin
if dm.Atbl_Jzry.State =dsbrowse  then
    Updatedata;
sb.Panels[0].Text :='当前记录:'+inttostr(dm.Atbl_Jzry.RecNo);
sb.Refresh ;
end;

procedure TfrmMain.btn1Click(Sender: TObject);
begin
sSql:='SELECT ID as 编号,xm as 姓名, sfz as 身份证号, zz as 电话号码, jzhm as 集资号码,crsj as 存入时间,je as 金额,qx as 期限,(df1_lx+df2_lx+df3_lx+df4_lx+df5_lx+df6_lx) as 利息总额 from 集资人员 where id=';
sSql :=sSql +inttostr(dm.Atbl_Jzry.Fieldbyname('id').AsInteger);
aqry_print.Close ;
aqry_print.SQL.Clear ;
aqry_print.SQL.Add(sSql);
aqry_print.Open ;
RMReport1.LoadFromFile(MainDir +'jkyh.rmf') ;
RMDBDataSet1.Dataset:=aqry_print;
RMReport1.DesignReport ;
aqry_print.SQL.Clear ;
aqry_print.Close ;

end;

procedure TfrmMain.btnPrintClick(Sender: TObject);
begin
sSql:='SELECT ID as 编号,xm as 姓名, sfz as 身份证号, zz as 电话号码, jzhm as 集资号码,crsj as 存入时间,je as 金额,qx as 期限,(df1_lx+df2_lx+df3_lx+df4_lx+df5_lx) as 利息总额 from 集资人员 where id=';
sSql :=sSql +inttostr(dm.Atbl_Jzry.Fieldbyname('id').AsInteger);
aqry_print.Close ;
aqry_print.SQL.Clear ;
aqry_print.SQL.Add(sSql);
aqry_print.Open ;
RMReport1.LoadFromFile(MainDir +'jkyh.rmf') ;
RMDBDataSet1.Dataset:=aqry_print;
RMReport1.ShowReport;
aqry_print.SQL.Clear ;
aqry_print.Close ;
end;

procedure TfrmMain.PDJXPSpeedButton1Click(Sender: TObject);
var
 lo:TLocateOptions ;
begin
if Length(edtId.Text)=0   then
begin
Application.MessageBox('请输入要查询的编号!', '提示', mb_iconInformation + mb_defbutton1);
edtId.SetFocus ;
Exit;
end;
dm.Atbl_Jzry.Locate('ID',edtId.Text,lo);
end;

procedure TfrmMain.tmr1Timer(Sender: TObject);
begin
sb.Panels[3].Text:='时间:'+timetostr(time);
end;

procedure TfrmMain.FormShow(Sender: TObject);
begin
if CurrentParam.blnload  then
begin
frmProgress.pnl1.Caption :='正在打开兑付表,请稍候!......';
frmProgress.Show ;
frmProgress.Refresh ;
dm.Atbl_Jzry.Active :=True ;
dm.Atbl_tmp.Active :=True ;
frmProgress.Close ;
end;
end;

procedure TfrmMain.btnEditClick(Sender: TObject);
begin
with Tfmselectitem.Create(self) do
begin
items := dbgridEh1.Columns;
showmodal;
free;
end;
end;

procedure TfrmMain.btnInsertClick(Sender: TObject);
begin
ExportDataToExecel(DBGridEh1,Caption,'',datetostr(Date));
dm.Atbl_Jzry.First ;
end;

procedure TfrmMain.btnDeleteClick(Sender: TObject);
var
  s_filtervalue:string;
begin
  application.createform(TF_Query, F_Query);
  try
//添加字段,“;”前表示实际字段,";"后表示字段别名
    F_Query.TableName :='集资人员';//提供表名
    //向操作符下拉框添加操作符
    F_Query.Cmb_zdm.items.Clear;
    F_Query.Cmb_zdm.Items.Add('编号;ID');
    F_Query.Cmb_zdm.Items.Add('姓名;XM');
    F_Query.Cmb_zdm.Items.Add('电话;ZZ');
    F_Query.Cmb_zdm.Items.Add('身份证号码;sfz');
    F_Query.Cmb_zdm.Items.Add('集资号码;jzhm');
    F_Query.Cmb_zdm.Items.Add('存入时间;crsj');
    F_Query.Cmb_zdm.Items.Add('金额;je');
    F_Query.Cmb_zdm.Items.Add('兑付日期1;df1_sj');
    F_Query.Cmb_zdm.Items.Add('兑付日期2;df2_sj');
    F_Query.Cmb_zdm.Items.Add('兑付日期3;df3_sj');
    F_Query.Cmb_zdm.Items.Add('兑付日期4;df4_sj');
    F_Query.Cmb_zdm.Items.Add('兑付日期5;df5_sj');
    F_Query.Cmb_zdm.Items.Add('兑付日期6;df6_sj');
    F_Query.Cmb_zdm.Items.Add('对付利息1;df1_lx');
    F_Query.Cmb_zdm.Items.Add('对付利息2;df2_lx');
    F_Query.Cmb_zdm.Items.Add('对付利息3;df3_lx');
    F_Query.Cmb_zdm.Items.Add('对付利息4;df4_lx');
    F_Query.Cmb_zdm.Items.Add('对付利息5;df5_lx');
    F_Query.Cmb_zdm.Items.Add('对付利息6;df6_lx');
    F_Query.ShowModal;
    Conf:=F_Query.Conf ;
    s_filtervalue:=F_Query.filtervalue;
  finally
    F_Query.Free ;
  end;
if conf then
begin
dm.Atbl_Jzry.Filter :=s_filtervalue;
dm.Atbl_Jzry.Filtered :=True;
{ strsqL:='SELECT * FROM KHDA WHERE '+ s_filtervalue ;
 dm.CDS_Tmp.Close;
 dm.CDS_Tmp.CommandText :=strsql;
 dm.CDS_Tmp.Open ;
CurrentParam.btnTable:=true; }
end;

end;

procedure TfrmMain.btn2Click(Sender: TObject);
begin
dm.Atbl_Jzry.Filter :='';
dm.Atbl_Jzry.Filtered :=False;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -