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

📄 wgsf.pas.~2~

📁 Delphi数据库开发毕业设计指导及实例 一书的源码
💻 ~2~
字号:
unit wgsf;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, DB, DBTables, Grids, DBGrids, StdCtrls, ExtCtrls,
  DBCtrls, Menus;

type
  Twgsf_Form = class(TForm)
    Panel1: TPanel;
    Label1: TLabel;
    cmdok: TButton;
    cmdclose: TButton;
    DateTimePicker1: TDateTimePicker;
    DBGrid1: TDBGrid;
    DataSource1: TDataSource;
    Query1: TQuery;
    StatusBar1: TStatusBar;
    PopupMenu1: TPopupMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    procedure FormCreate(Sender: TObject);
    procedure cmdokClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure cmdcloseClick(Sender: TObject);
    procedure N1Click(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure N3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    modi:boolean;
    xbh,xcaption:string;
  end;

var
  wgsf_Form: Twgsf_Form;

implementation

uses main, modisf;

{$R *.dfm}

procedure Twgsf_Form.cmdokClick(Sender: TObject);
var
    mph,ms,sqlstr,bh:string;
    yy, mm, dd: Word;
begin
    DecodeDate(DateTimePicker1.Date,yy,mm,dd);
    ms:=inttostr(mm);
    if length(inttostr(mm))<2 then
        ms:='0'+inttostr(mm);
    bh:=inttostr(yy)+ms;
    xbh:=inttostr(yy)+ms;
    sqlstr:='select sum(sf) as sf,sum(df) as df,sum(qf) as qf,sum(wgf) as wgf,sum(qtf) as qtf,sum(sf+df+qf+wgf+qtf) as hj from t_sfb where (bh='''+bh+''')';
    Query1.Close;
    Query1.SQL.Clear;
    Query1.SQL.Add(sqlstr);
    Query1.Open;
    StatusBar1.Panels[0].Text:='水费:'+Query1.fieldbyname('sf').AsString;
    StatusBar1.Panels[1].Text:='电费:'+Query1.fieldbyname('df').AsString;
    StatusBar1.Panels[2].Text:='气费:'+Query1.fieldbyname('qf').AsString;
    StatusBar1.Panels[3].Text:='物管费:'+Query1.fieldbyname('wgf').AsString;
    StatusBar1.Panels[4].Text:='其它费:'+Query1.fieldbyname('qtf').AsString;
    StatusBar1.Panels[5].Text:='合计:'+Query1.fieldbyname('hj').AsString;
    sqlstr:='select * from t_sfb where (bh='''+bh+''')';
    Query1.Close;
    Query1.SQL.Clear;
    Query1.SQL.Add(sqlstr);
    Query1.Open;
    if Query1.RecordCount =0 then
    begin
        if MessageDlg('输入'+inttostr(yy)+'年'+ms+'月的记录还没有创建,需要创建吗?',mtConfirmation, [mbYes, mbNo], 0) = mrYes then
        begin
            sqlstr:='select mph from t_zhb';
            Query1.Close;
            Query1.SQL.Clear;
            Query1.SQL.Add(sqlstr);
            Query1.Open;
            with tquery.Create(nil) do
            begin
                try
                  SessionName:=MainForm.Database1.SessionName;
                  DatabaseName:=MainForm.Database1.DatabaseName;
                  while not Query1.Eof do
                  begin
                    mph:=Query1.fieldbyname('mph').AsString;
                    sqlstr:='insert into t_sfb(bh,mph)values('''+bh+''','''+mph+''')';
                    Close;
                    SQL.Clear;
                    SQL.Add(sqlstr);
                    ExecSQL;
                    Query1.Next;
                  end;
                finally
                Free;
                end;
            end;
        end;
    end;
end;

procedure Twgsf_Form.FormClose(Sender: TObject; var Action: TCloseAction);
begin
    Action:=caFree;
    mainform.N51.Enabled:=true;
end;

procedure Twgsf_Form.cmdcloseClick(Sender: TObject);
begin
    Close;
end;

procedure Twgsf_Form.N1Click(Sender: TObject);
begin
    modi:=false;
    xcaption:='添加本月收费数据信息';
    Application.CreateForm(Tmodisf_Form, modisf_Form);
    modisf_form.ShowModal;
end;

procedure Twgsf_Form.N2Click(Sender: TObject);
begin
    modi:=true;
    xcaption:='修改本月收费数据信息';
    Application.CreateForm(Tmodisf_Form, modisf_Form);
    modisf_form.ShowModal;
end;

procedure Twgsf_Form.N3Click(Sender: TObject);
var
    id:string;
begin
    id:=Query1.fieldbyname('id').AsString;
    if MessageDlg('确认要删除选中的记录码?',mtConfirmation,[mbYes, mbNo], 0) = mrYes then
    begin
        with tquery.Create(nil) do
        begin
            try
            Close;
            SessionName:=MainForm.Database1.SessionName;
            DatabaseName:=MainForm.Database1.DatabaseName;
            SQL.Clear;
            SQL.Add('delete from t_sfb where id='''+id+'''');
            ExecSQL;
            finally
            Free;
            end;
        end;
    end;
end;


procedure Twgsf_Form.FormCreate(Sender: TObject);
begin
  Query1.SessionName:=MainForm.Database1.SessionName;
  Query1.DatabaseName:=MainForm.Database1.DatabaseName;
end;

end.

⌨️ 快捷键说明

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