📄 scqr.pas
字号:
unit scqr;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, DBTables, Grids, DBGrids, ComCtrls, ExtCtrls;
type
TscqrForm = class(TForm)
TabControl1: TTabControl;
DBGrid1: TDBGrid;
Query1: TQuery;
DataSource1: TDataSource;
Query2: TQuery;
Timer1: TTimer;
procedure FormCreate(Sender: TObject);
procedure TabControl1Change(Sender: TObject);
procedure DBGrid1DblClick(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure DBGrid1TitleClick(Column: TColumn);
private
{ Private declarations }
public
{ Public declarations }
end;
var
scqrForm: TscqrForm;
implementation
uses dataproc;
{$R *.DFM}
procedure cdinit(d:integer;db:string);
begin
with scqrform do
begin
Query1.Active :=false;
Query1.sql.clear;
Query1.SQL.Add('select cusitem.cusname,CusPrice,CusNum,Money,Isuse,Regtime,fwy,Djcode from custom,cusitem where cusitem.Cuscode=custom.Cuscode and tabno='''+trim(TabControl1.Tabs[d])+''' order by '+db);
Query1.Open;
DataSource1.DataSet:=Query1;
chinesegrid(dbgrid1);
DBGrid1.fields[0].displaylabel:=' 菜 名 称';
DBGrid1.fields[1].displaylabel:='价格';
DBGrid1.fields[2].displaylabel:='数量';
DBGrid1.fields[3].displaylabel:='金额';
DBGrid1.fields[4].displaylabel:='上菜否';
DBGrid1.fields[6].displaylabel:='服务员';
// dbgrid1.Columns[0].width:=60;
dbgrid1.Columns[1].width:=30;
dbgrid1.Columns[2].width:=30;
dbgrid1.Columns[3].width:=30;
// dbgrid1.Columns[4].width:=30;
end;
end;
procedure TscqrForm.FormCreate(Sender: TObject);
begin
// table1.Open;
// chinesegrid(dbgrid1);
Query1.Active :=false;
Query1.sql.clear;
Query1.SQL.Add('select tabno from ctnowin');
Query1.Open;
TabControl1.Tabs.Clear;
while not Query1.Eof do
begin
TabControl1.Tabs.Add(Query1.Fields[0].asstring);
Query1.Next;
end;
if TabControl1.TabIndex>=0 then
cdinit(0,'custom.Cuscode');
end;
procedure TscqrForm.TabControl1Change(Sender: TObject);
begin
cdinit(TabControl1.TabIndex,'custom.Cuscode');
end;
procedure TscqrForm.DBGrid1DblClick(Sender: TObject);
begin
if (DBGrid1.SelectedIndex=4) then
begin
if not Query1.Fields[4].asBoolean then
begin
Query2.Active :=false;
Query2.sql.clear;
Query2.SQL.Add('update custom set isuse=1 where Cuscode in (select Cuscode from cusitem where cusname='''+Query1.fieldbyname('cusname').asstring+''') and Djcode='''+Query1.fieldbyname('Djcode').asstring+''' and tabno='''+trim(TabControl1.Tabs[TabControl1.TabIndex])+'''');
Query2.ExecSQL;
Query2.Active :=false;
Query2.sql.clear;
cdinit(TabControl1.TabIndex,'custom.Cuscode');
end;
end;
end;
procedure TscqrForm.Timer1Timer(Sender: TObject);
var h:integer;
begin
h:=TabControl1.TabIndex;
Query1.Active :=false;
Query1.sql.clear;
Query1.SQL.Add('select tabno from ctnowin');
Query1.Open;
TabControl1.Tabs.Clear;
while not Query1.Eof do
begin
TabControl1.Tabs.Add(Query1.Fields[0].asstring);
Query1.Next;
end;
TabControl1.TabIndex:=h;
cdinit(h,'custom.Cuscode');
end;
procedure TscqrForm.DBGrid1TitleClick(Column: TColumn);
begin
if Column.DisplayName='cusname' then cdinit(TabControl1.TabIndex,'custom.Cuscode')
else
cdinit(TabControl1.TabIndex,'custom.'+Column.DisplayName);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -