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

📄 xfwh.pas

📁 集成酒店桑拿食管管理的完整程序
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit xfwh;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Db, DBTables, Grids, DBGrids, ComCtrls, ExtCtrls, Menus,
  Buttons, ImgList, DBCtrls;

type
  TxfwhForm = class(TForm)
    GroupBox1: TGroupBox;
    Query1: TQuery;
    DataSource1: TDataSource;
    GroupBox2: TGroupBox;
    DBGrid1: TDBGrid;
    Panel1: TPanel;
    TreeView1: TTreeView;
    TreeView2: TTreeView;
    Table1: TTable;
    ComboBox1: TComboBox;
    GroupBox3: TGroupBox;
    BitBtn3: TBitBtn;
    BitBtn5: TBitBtn;
    BitBtn1: TBitBtn;
    PopupMenu1: TPopupMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    DBNavigator1: TDBNavigator;
    ImageList1: TImageList;
    Panel5: TPanel;
    Label22: TLabel;
    Label23: TLabel;
    DBGrid2: TDBGrid;
    jc: TEdit;
    DataSource2: TDataSource;
    N4: TMenuItem;
    procedure FormCreate(Sender: TObject);
    procedure TreeView2Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure Table1AfterOpen(DataSet: TDataSet);
    procedure TreeView2Change(Sender: TObject; Node: TTreeNode);
    procedure Table1AfterInsert(DataSet: TDataSet);
    procedure DBGrid1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure BitBtn5Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure DBGrid1KeyPress(Sender: TObject; var Key: Char);
    procedure N1Click(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure N3Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure DBGrid1DblClick(Sender: TObject);
    procedure jcExit(Sender: TObject);
    procedure jcKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure jcKeyPress(Sender: TObject; var Key: Char);
    procedure jcKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
    procedure DBGrid2DblClick(Sender: TObject);
    procedure DBGrid2Exit(Sender: TObject);
    procedure DBGrid2KeyPress(Sender: TObject; var Key: Char);
    procedure N4Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  xfwhForm: TxfwhForm;

implementation

uses dataproc, srdl, srlb;

{$R *.DFM}
procedure tree1;
begin
  with xfwhform do
  begin
    treeview1.Items.Clear;
    query1.Active:=false;
    query1.SQL.Clear;
    query1.SQL.Add('select * from custype order by CusType');
    query1.Prepare;
    query1.Open;
    QUERY1.First;
    while not query1.Eof do
    begin
    //  if (trim(query1.FieldByName('parentcode').asstring)='0') or (trim(query1.FieldByName('parentcode').asstring)='00') then
      if (trim(query1.FieldByName('parentcode').asstring)='0') then
      BEGIN
        treeview1.Selected:=treeview1.Items.Add(treeview1.items.getfirstnode,trim(query1.FieldByName('CusType').asstring));
      END
      else
      begin
        while trim(treeview1.Selected.Text)<>trim(query1.FieldByName('parentcode').asstring) do
        BEGIN
          treeview1.Selected:=treeview1.Selected.Parent;
        END;
        treeview1.Selected:=treeview1.Items.AddChild(treeview1.selected,trim(query1.FieldByName('CusType').asstring));
      end;
      query1.Next;
    end;
    query1.Active:=false;
    query1.SQL.Clear;
  end;
end;
procedure TxfwhForm.FormCreate(Sender: TObject);

begin
    DataSource1.DataSet:=nil;
    treeview1.Items.Clear;
    treeview2.Items.Clear;
    query1.Active:=false;
    query1.SQL.Clear;
    query1.SQL.Add('select * from custype order by CusType');
//    Table1.TableName:='商品类别';
    query1.Prepare;
    query1.Open;
    QUERY1.First;
    while not query1.Eof do
    begin
     // if (trim(query1.FieldByName('parentcode').asstring)='0') or (trim(query1.FieldByName('parentcode').asstring)='00') then
      if (trim(query1.FieldByName('parentcode').asstring)='0') then
      BEGIN
        treeview1.Selected:=treeview1.Items.Add(treeview1.items.getfirstnode,trim(query1.FieldByName('CusType').asstring));
        treeview2.Selected:=treeview2.Items.Add(treeview2.items.getfirstnode,trim(query1.FieldByName('CusName').asstring));
        treeview2.Selected.ImageIndex:=0;
        treeview2.Selected.SelectedIndex:=1;
      END
      else
      begin
        while trim(treeview1.Selected.Text)<>trim(query1.FieldByName('parentcode').asstring) do
        BEGIN
          treeview1.Selected:=treeview1.Selected.Parent;
          treeview2.Selected:=treeview2.Selected.Parent;
        END;
        treeview1.Selected:=treeview1.Items.AddChild(treeview1.selected,trim(query1.FieldByName('CusType').asstring));
        treeview2.Selected:=treeview2.Items.AddChild(treeview2.selected,trim(query1.FieldByName('CusName').asstring));
        treeview2.Selected.ImageIndex:=0;
        treeview2.Selected.SelectedIndex:=1;
      end;
      query1.Next;
    end;
    query1.Active:=false;
    query1.SQL.Clear;
    DataSource1.DataSet:=table1;
   try
     TreeView2Click(nil);
   except
   end;
   combobox1.Text:='';
   treeview1.FullCollapse;
   treeview2.FullCollapse;
   TreeView2Click(nil);
end;

procedure TxfwhForm.TreeView2Click(Sender: TObject);
var ls:integer;
begin
  if DataSource1.DataSet=table1 then
  begin
   { ls:=length(trim(treeview1.Items[treeview2.Selected.AbsoluteIndex].Text));
    DBNavigator1.Enabled:=(ls>=3);
    BitBtn1.Enabled:=(ls>=3);
    BitBtn3.Enabled:=BitBtn1.Enabled;
    table1.Active:=false;
    if treeview1.Items[treeview2.Selected.AbsoluteIndex].Text='0001' then
      table1.Filter:='CusType>=''0000'' and CusType<=''0100'''  else
    table1.Filter:='CusType>='''+trim(treeview1.Items[treeview2.Selected.AbsoluteIndex].Text)+''' and CusType<='''+trim(copy('0'+inttostr(strtoint(treeview1.Items[treeview2.Selected.AbsoluteIndex].Text)+1),2-ls+length(inttostr(strtoint(treeview1.Items[treeview2.Selected.AbsoluteIndex].Text)+1)),ls))+'''';
    table1.Filtered:=true;
    table1.Active:=true;
    table1.Fields[3].Visible:=false;
    Tbooleanfield(table1.Fields[7]).displayvalues:='是;否';
    Tbooleanfield(table1.Fields[8]).displayvalues:='要;否';
    Tbooleanfield(table1.Fields[9]).displayvalues:='可;否'; }

    DBNavigator1.Enabled:=(length(trim(treeview1.Items[treeview2.Selected.AbsoluteIndex].Text))>=3);
    BitBtn1.Enabled:=(length(trim(treeview1.Items[treeview2.Selected.AbsoluteIndex].Text))>=3);
    BitBtn3.Enabled:=BitBtn1.Enabled;
    table1.Active:=false;
    table1.Filter:='CusType='''+trim(treeview1.Items[treeview2.Selected.AbsoluteIndex].Text)+'''';
    table1.Filtered:=true;
    table1.Active:=true;
    Tbooleanfield(table1.Fields[7]).displayvalues:='是;否';
    Tbooleanfield(table1.Fields[8]).displayvalues:='是;否';
    Tbooleanfield(table1.Fields[9]).displayvalues:='是;否';
  //  Tbooleanfield(DBGrid1.Fields[10]).displayvalues:='是;否';

    //    table1.Fields[11].Visible:=false;
  end;
end;

procedure TxfwhForm.BitBtn3Click(Sender: TObject);
begin
      if messagedlg('确信删除这条记录吗!!',mtwarning,[mbok,mbcancel],0)=mrok then
      if  trim(table1.FieldByName('CusCode').asstring)<>'' then
      begin
        table1.delete;
     end;
end;

procedure TxfwhForm.Table1AfterOpen(DataSet: TDataSet);
var i:integer;
begin
    table1.First;
    for i:=0 to DBGrid1.FieldCount-1 do
      DBGrid1.Fields[i].DisplayWidth:=8;
      dbgrid1.Fields[1].DisplayWidth:=10;
      dbgrid1.Fields[2].DisplayWidth:=12;
      dbgrid1.Fields[4].DisplayWidth:=10;
      dbgrid1.Fields[5].DisplayWidth:=10;
end;

procedure TxfwhForm.TreeView2Change(Sender: TObject; Node: TTreeNode);
begin
  TreeView2Click(nil);
end;

procedure TxfwhForm.Table1AfterInsert(DataSet: TDataSet);
begin
    table1.FieldByName('CusType').asstring:=trim(treeview1.Items[treeview2.Selected.AbsoluteIndex].Text);
    table1.FieldByName('isjs').asboolean:=false;
    table1.FieldByName('iszy').asboolean:=false;
    table1.FieldByName('iszk').asboolean:=false;
    table1.FieldByName('tcje').asfloat:=0;
    query1.Active:=false;
    query1.SQL.Clear;
    query1.SQL.Add('select max(substring(CusCode,5,2)) from CusItem where CusType='''+trim(treeview1.Items[treeview2.Selected.AbsoluteIndex].Text)+'''');
    query1.Prepare;
    query1.Open;
    if trim(query1.fields[0].Asstring)='' then
        table1.FieldByName('CusCode').asstring:=trim(treeview1.Items[treeview2.Selected.AbsoluteIndex].Text)+'00'
    else
        table1.FieldByName('CusCode').asstring:=trim(treeview1.Items[treeview2.Selected.AbsoluteIndex].Text)
        +copy('0'+inttostr(query1.fields[0].Asinteger+1),length(inttostr(query1.fields[0].Asinteger+1)),2);
    query1.Active:=false;
    query1.SQL.Clear;
end;

procedure TxfwhForm.DBGrid1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
   if key=13 then
   begin
     if (trim(dbgrid1.Fields[1].AsString)<>'') and (dbgrid1.SelectedIndex=1)then
     begin
       table1.Edit;
       dbgrid1.Fields[2].AsString:=pyjc(dbgrid1.Fields[1].AsString);
     end;
     table1.Refresh;
     if DBGrid1.SelectedIndex<DBGrid1.FieldCount-1 then
       DBGrid1.SelectedIndex:=DBGrid1.SelectedIndex+1
     else
     begin
       table1.Next;
       if table1.Eof then

⌨️ 快捷键说明

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