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

📄 fittinglist.pas

📁 一个工具管理系统。。用DELPHI+ACCESS写的
💻 PAS
字号:
unit FittingList;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGridEh, ExtCtrls, te_controls, ksthemebuttons, StdCtrls,
  ComCtrls;

type
  TFM_Brow = class(TForm)
    book: TNotebook;
    Panel3: TPanel;
    DBGridEh1: TDBGridEh;
    Panel2: TPanel;
    Button3: TTeThemeButton;
    TeThemeButton1: TTeThemeButton;
    TeThemeButton2: TTeThemeButton;
    TeThemeButton3: TTeThemeButton;
    TeThemeButton4: TTeThemeButton;
    TeThemeButton6: TTeThemeButton;
    Panel1: TPanel;
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    TeThemeButton5: TTeThemeButton;
    Panel4: TPanel;
    Panel5: TPanel;
    Panel6: TPanel;
    DBGridEh2: TDBGridEh;
    Label3: TLabel;
    Edit2: TEdit;
    Label4: TLabel;
    DateTimePicker1: TDateTimePicker;
    Label5: TLabel;
    DateTimePicker2: TDateTimePicker;
    TeThemeButton7: TTeThemeButton;
    TeThemeButton8: TTeThemeButton;
    TeThemeButton9: TTeThemeButton;
    TeThemeButton10: TTeThemeButton;
    TeThemeButton11: TTeThemeButton;
    TeThemeButton12: TTeThemeButton;
    TeThemeButton13: TTeThemeButton;
    procedure TeThemeButton4Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure TeThemeButton2Click(Sender: TObject);
    procedure TeThemeButton3Click(Sender: TObject);
    procedure TeThemeButton1Click(Sender: TObject);
    procedure TeThemeButton5Click(Sender: TObject);
    procedure TeThemeButton6Click(Sender: TObject);
    procedure DBGridEh1DblClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure TeThemeButton13Click(Sender: TObject);
    procedure TeThemeButton11Click(Sender: TObject);
    procedure TeThemeButton10Click(Sender: TObject);
    procedure TeThemeButton12Click(Sender: TObject);
    procedure TeThemeButton8Click(Sender: TObject);
    procedure TeThemeButton7Click(Sender: TObject);
    procedure DBGridEh2DblClick(Sender: TObject);
  private
    procedure BookChange;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FM_Brow: TFM_Brow;

implementation

uses main, data, DB, ADODB;

{$R *.dfm}

procedure TFM_Brow.TeThemeButton4Click(Sender: TObject);
begin
  Close;
end;

procedure TFM_Brow.Button3Click(Sender: TObject);
begin
  with FM_Data.ADO_FittingList do
  Insert;
end;

procedure TFM_Brow.TeThemeButton2Click(Sender: TObject);
begin
  with FM_Data.ADO_FittingList do
  Edit;
end;

procedure TFM_Brow.TeThemeButton3Click(Sender: TObject);
begin
  try
    with FM_Data.ADO_FittingList do
    Post;
  except
  end;
end;

procedure TFM_Brow.TeThemeButton1Click(Sender: TObject);
begin
  
  with FM_Data.ADO_FittingList do
  if IsEmpty then  ShowMessage('空记录不能删除!')
  else
    if MessageDlg('确认删除此记录吗?',mtWarning,mbOKCancel,1)=1 then
    Delete;
  
    
end;

procedure TFM_Brow.TeThemeButton5Click(Sender: TObject);
var
  s:string;
begin
  if Trim(edit1.text)='' then
    s:='select * from [fitting]'
  else
    begin
      s:='select * from [fitting] where [编号] like ''%'+edit1.text+'%''';
      s:=s+' or [名称] like ''%'+edit1.text+'%''';
      s:=s+' or  [规格] like ''%'+edit1.text+'%''';
      s:=s+' or  [型号] like ''%'+edit1.text+'%''';
      s:=s+' or  [单位] like ''%'+edit1.text+'%''';
    end;
  with FM_Data.ADO_FittingList do
  begin
    SQL.Clear;
    SQL.Add(s);
    Open;
    if IsEmpty then showmessage('没有符合条件的记录!');

  end;
end;

procedure TFM_Brow.TeThemeButton6Click(Sender: TObject);
begin
  try
    with FM_Data.ADO_FittingList do
    begin
      Cancel;
    end;
  except
  end;
end;

procedure TFM_Brow.DBGridEh1DblClick(Sender: TObject);
begin
  if ShowDBClick = True then
  with FM_Data do
  begin
    if not ADO_FittingList.IsEmpty then
    begin
      ADO_Note.FieldByName('名称').Text:=ADO_FittingList.fieldbyname('名称').Text;
      ADO_Note.FieldByName('规格').Text:=ADO_FittingList.fieldbyname('规格').Text;
      ADO_Note.FieldByName('型号').Text:=ADO_FittingList.fieldbyname('型号').Text;
      ADO_Note.FieldByName('单位').Text:=ADO_FittingList.fieldbyname('单位').Text;
      ADO_Note.FieldByName('单价').Text:=ADO_FittingList.fieldbyname('单价').Text;
      Try
        ADO_FittingList.Post;
      except
      end;
      FM_Brow.Close;
    end;
  end;
end;

procedure TFM_Brow.BookChange;
var
  ss:TStrings;
begin
  //showmessage('');
  case book.PageIndex of
    0:begin     //产品浏览
        DBGridEh1.DataSource:=FM_Data.DS_FittingList;
        with FM_Data.ADO_PubTable do
        begin
          SQL.clear;
          SQL.Add('select 单位 from [fitting] group by 单位');
          Open;
          if not IsEmpty then
          begin
            ss:=TStringList.Create;
            First;
            while not Eof do
            begin
              ss.Add(trim(fieldbyname('单位').Text));
              Next;
            end;
            DBGridEh1.Columns[3].PickList:=ss;
          end;
        end;
        with FM_Data.ADO_FittingList do
        begin
          SQL.Clear;
          SQL.Add('select * from [fitting]');
          Open;
        end;
      end;
    1:begin
         //结算单浏览
        FM_Brow.Caption:='结算单浏览';
        DBGridEh2.DataSource:=FM_Data.DS_FittingList;
        with FM_Data.ADO_FittingList do
        begin
          SQL.Clear;
          SQL.Add('select 单号,日期,领用单位,sum(数量*单价) as 总金额,收款单位,制单,保管员 from [nnote] where [名称]<>'''' group by 单号,日期,领用单位,收款单位,制单,保管员');
          Open;
        end;
      end;
  end;
end;

procedure TFM_Brow.FormShow(Sender: TObject);
begin
  BookChange;
end;

procedure TFM_Brow.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  DBGridEh1.DataSource:=nil;
  DBGridEh2.DataSource:=nil;
end;

procedure TFM_Brow.TeThemeButton13Click(Sender: TObject);
begin
  FM_Data.ADO_FittingList.First;
end;

procedure TFM_Brow.TeThemeButton11Click(Sender: TObject);
begin
  FM_Data.ADO_FittingList.Prior;
end;

procedure TFM_Brow.TeThemeButton10Click(Sender: TObject);
begin
  FM_Data.ADO_FittingList.Next;
end;

procedure TFM_Brow.TeThemeButton12Click(Sender: TObject);
begin
  FM_Data.ADO_FittingList.Last;
end;

procedure TFM_Brow.TeThemeButton8Click(Sender: TObject);
begin

  if FM_Data.ADO_FittingList.IsEmpty then  ShowMessage('空记录不能删除!')
  else
    if MessageDlg('确认删除此记录吗?',mtWarning,mbOKCancel,1)=1 then
    begin
      with FM_Data.ADO_Note do
      begin
        SQL.Clear;
        SQL.Add('select * from [nnote] where [单号]='''+FM_Data.ADO_FittingList.fieldbyname('单号').Text+'''');
        Open;
        First;
        while not Eof do delete;
      end;
      with FM_Data.ADO_FittingList do
      begin
        SQL.Clear;
        SQL.Add('select 单号,日期,领用单位,sum(数量*单价) as 总金额,收款单位,制单,保管员 from [nnote] where [名称]<>'''' group by 单号,日期,领用单位,收款单位,制单,保管员');
        Open;
      end;
    end;

end;

procedure TFM_Brow.TeThemeButton7Click(Sender: TObject);
var
  s:string;
begin
  with FM_Data.ADO_FittingList do
  begin
    SQL.Clear;
    if trim(Edit2.Text)='' then
      SQL.Add('select 单号,日期,领用单位,收款单位,制单'+
              ',保管员 from [nnote] where [日期]>='+datetostr(DateTimePicker1.date)+
              ' and [日期]<'+datetostr(DateTimePicker2.date))//+' group by 单号,日期,'+
              //'领用单位,收款单位,制单,保管员')
      {SQL.Add('select * from (select 单号,日期,领用单位,sum(数量*单价) as 总金额'+
              ',收款单位,制单,保管员 from [nnote] group by 单号,日期,领用单位,收'+
              '款单位,制单,保管员) where [日期]>='+datetostr(DateTimePicker1.date))//+' and [日期]<'+datetostr(DateTimePicker2.date))}
    else
      SQL.Add('select 单号,日期,领用单位,sum(数量*单价) as 总金额,收款单位,制单'+
              ',保管员 from [nnote] where [日期]>='''+datetostr(DateTimePicker1.date)+''''+
              ' and [日期]<'''+datetostr(DateTimePicker2.date)+''''+
              ' or [单号]     like ''%'+edit2.text+''''+
              ' or [领用单位] like ''%'+Edit2.Text+'%'''+
              ' or [收款单位] like ''%'+Edit2.Text+'%'''+
              ' or [制单]     like ''%'+Edit2.Text+'%'''+
              ' or [保管员]   like ''%'+Edit2.Text+'%'''+
              ' group by 单号,日期,'+
              '领用单位,收款单位,制单,保管员');
    s:=SQL.Text;
    edit2.text:=s;
    Open;
  end;
end;

procedure TFM_Brow.DBGridEh2DblClick(Sender: TObject);
var
  s:string;
  mm:real;
begin
  s:=FM_Data.ADO_FittingList.fieldbyname('单号').Text;
  if Trim(s)<>'' then
  begin
    with FM_Data.ADO_PubTable do
    begin
      SQL.Clear;
      SQL.Add('select sum(金额) as sumje from [nnote] where 单号='''+s+'''');
      Open;
      mm:=strtofloat(fieldbyname('sumje').text);
      mm:=int(mm*100+0.5)/100;    //四舍五入
      fm_main.Label14.Caption:=floattostr(mm);
      fm_main.Label15.caption:=fm_main.MoneyToUpper(strtofloat(fm_main.Label14.Caption));
    end;
    with FM_Data.ADO_Note do
    begin
      SQL.Clear;
      SQL.Add('select * from [nnote] where [单号]='''+s+'''');
      Open;
    end;
    xindan:=false;
  end;
  Close;
end;

end.

⌨️ 快捷键说明

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