📄 main.pas
字号:
unit main;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, Buttons, ToolWin, ComCtrls, Menus, dxExEdtr, dxTL,
dxDBCtrl, dxDBGrid, DB, dxCntner, ImgList, StdCtrls, SUISideChannel,
Grids, DBGrids;
type
Tfrmmain = class(TForm)
MainMenu1: TMainMenu;
N1: TMenuItem;
ToolBar1: TToolBar;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
ImageList1: TImageList;
DSwsq: TDataSource;
DSyyq: TDataSource;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
SpeedButton7: TSpeedButton;
SpeedButton8: TSpeedButton;
PMHX: TPopupMenu;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
DSlsdnju: TDataSource;
SpeedButton5: TSpeedButton;
N6: TMenuItem;
SpeedButton6: TSpeedButton;
N13: TMenuItem;
N14: TMenuItem;
PopupMenu1: TPopupMenu;
N15: TMenuItem;
StatusBar1: TStatusBar;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
Panel1: TPanel;
Panel2: TPanel;
Panel4: TPanel;
dxDBGrid1: TdxDBGrid;
dxDBGrid1Column1: TdxDBGridColumn;
dxDBGrid1Column2: TdxDBGridColumn;
dxDBGrid1Column3: TdxDBGridColumn;
dxDBGrid1Column4: TdxDBGridColumn;
dxDBGrid1Column5: TdxDBGridColumn;
dxDBGrid1Column6: TdxDBGridColumn;
dxDBGrid1Column7: TdxDBGridColumn;
dxDBGrid1Column8: TdxDBGridColumn;
Splitter1: TSplitter;
Label1: TLabel;
Label2: TLabel;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioButton3: TRadioButton;
SpeedButton9: TSpeedButton;
Image1: TImage;
Image2: TImage;
Image3: TImage;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Panel5: TPanel;
suiSideChannel2: TsuiSideChannel;
Panel6: TPanel;
Panel7: TPanel;
Panel8: TPanel;
DShj: TDataSource;
DBGrid1: TDBGrid;
Panel9: TPanel;
DBGrid2: TDBGrid;
Label9: TLabel;
Label10: TLabel;
DStypehj: TDataSource;
dxDBGrid3: TdxDBGrid;
dxDBGrid3Column1: TdxDBGridColumn;
dxDBGrid3Column2: TdxDBGridColumn;
dxDBGrid3Column3: TdxDBGridColumn;
dxDBGrid3Column4: TdxDBGridColumn;
dxDBGrid3Column5: TdxDBGridColumn;
dxDBGrid3Column6: TdxDBGridColumn;
dxDBGrid3Column7: TdxDBGridColumn;
dxDBGrid3Column8: TdxDBGridColumn;
CheckBox1: TCheckBox;
Panel3: TPanel;
dxDBGrid2: TdxDBGrid;
dxDBGrid2Column1: TdxDBGridColumn;
dxDBGrid2Column2: TdxDBGridColumn;
dxDBGrid2Column3: TdxDBGridColumn;
procedure SpeedButton1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure RadioButton1Click(Sender: TObject);
procedure RadioButton2Click(Sender: TObject);
procedure RadioButton3Click(Sender: TObject);
procedure SpeedButton7Click(Sender: TObject);
procedure SpeedButton8Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N11Click(Sender: TObject);
procedure N6Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure N5Click(Sender: TObject);
procedure SpeedButton6Click(Sender: TObject);
procedure N13Click(Sender: TObject);
procedure N14Click(Sender: TObject);
procedure N15Click(Sender: TObject);
procedure dxDBGrid2DblClick(Sender: TObject);
procedure SpeedButton9Click(Sender: TObject);
procedure DBGrid1DblClick(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmmain: Tfrmmain;
implementation
uses UDM,addperson,changeperson,ztchoose,allmenuadd,PLACEBB,me,NOTUSE,XZSJ,changedj,Unitsummoney,unitaddlist,Unitserchnerveruse;
{$R *.dfm}
procedure Tfrmmain.SpeedButton1Click(Sender: TObject);
begin
MessageBox(Handle,'确认要退出系统吗?','系统提示',MB_OKCANCEL+MB_OK);
close;
end;
procedure Tfrmmain.FormShow(Sender: TObject);
begin
if dm.ADOLOGIN.FieldByName('userid').AsString<>'0001' then
SpeedButton5.Enabled:=False;
DM.hrq:=StrToDateTime(formatdatetime('yyyy-mm-dd',Now));
StatusBar1.Panels[0].Text:='在历史单据中可以查询历史的单据';
PageControl1.TabIndex:=0;
with dm.ADOhj do
begin
Close;
SQL.Clear;
SQL.Add('select libnnumberplace,sum(jine) as jine from lsdj_tb');
SQL.Add('group by libnnumberplace');
SQL.Add('order by libnnumberplace');
Prepared;
Open;
end;
Panel3.Visible:=False;
end;
procedure Tfrmmain.N2Click(Sender: TObject);
begin
DM.ADOLOGIN.Append;
frmaddperson:=Tfrmaddperson.Create(SELF);
frmaddperson.ShowModal;
FreeAndNil(frmaddperson);
end;
procedure Tfrmmain.N3Click(Sender: TObject);
begin
if DM.ADOLOGIN.RecordCount>0 then
begin
frmchangeperson:=Tfrmchangeperson.Create(Self);
with frmchangeperson do
begin
DBEdit1.Text:=dm.ADOLOGIN.fieldbyname('userid').AsString;
DBEdit2.Text:=dm.ADOLOGIN.fieldbyname('username').AsString;
DBEdit3.Text:=dm.ADOLOGIN.fieldbyname('userpsd').AsString;
end;
frmchangeperson.ShowModal;
FreeAndNil(frmchangeperson);
end;
end;
procedure Tfrmmain.SpeedButton4Click(Sender: TObject);
begin
frmallmenuadd:=Tfrmallmenuadd.Create(Self);
frmallmenuadd.ShowModal;
FreeAndNil(frmallmenuadd);
end;
procedure Tfrmmain.SpeedButton3Click(Sender: TObject);
begin
FRMPLACEBBRQ:=TFRMPLACEBBRQ.Create(Self);
FRMPLACEBBRQ.ShowModal;
FreeAndNil(FRMPLACEBBRQ);
end;
procedure Tfrmmain.SpeedButton2Click(Sender: TObject);
begin
frmme:=Tfrmme.Create(Self);
frmme.ShowModal;
FreeAndNil(frmme);
end;
{procedure Tfrmmain.SpeedButton6Click(Sender: TObject);
begin
FRMNOTUSE:=TFRMNOTUSE.Create(SELF);
FRMNOTUSE.Caption:='未使用单据';
FRMNOTUSE.ShowModal;
FreeAndNil(FRMNOTUSE);
end; }
{procedure Tfrmmain.N6Click(Sender: TObject);
begin
SpeedButton6Click(Sender);
end;}
procedure Tfrmmain.RadioButton1Click(Sender: TObject);
begin
if dm.HDM='01' then
begin
with dm.ADOCODE do
begin
close;
SQL.Clear;
SQL.Add('select * from libnumberls');
SQL.Add('where zt<>''已结'' and libnumberplace=''前台''');
SQL.Add('order by numbertype');
Prepared;
Open;
end;
end
else
if DM.HDM='02' then
begin
with dm.ADOCODE do
begin
close;
SQL.Clear;
SQL.Add('select * from libnumberls');
SQL.Add('where zt<>''已结'' and libnumberplace=''大堂吧''');
SQL.Add('order by numbertype');
Prepared;
Open;
end;
end
else
if dm.HDM='03' then
begin
with dm.ADOCODE do
begin
close;
SQL.Clear;
SQL.Add('select * from libnumberls');
SQL.Add('where zt<>''已结'' and libnumberplace=''西餐厅''');
SQL.Add('order by numbertype');
Prepared;
Open;
end;
end
else
if DM.HDM='04' then
begin
with dm.ADOCODE do
begin
close;
SQL.Clear;
SQL.Add('select * from libnumberls');
SQL.Add('where zt<>''已结'' and libnumberplace=''康乐部''');
SQL.Add('order by numbertype');
Prepared;
Open;
end;
end;
dxDBGrid1.FullExpand;
end;
procedure Tfrmmain.RadioButton2Click(Sender: TObject);
begin
if dm.HDM='01' then
begin
with dm.ADOCODE do
begin
close;
SQL.Clear;
SQL.Add('select * from libnumberls');
SQL.Add('where zt=''已结'' and libnumberplace=''前台''');
SQL.Add('order by numbertype');
Prepared;
Open;
end;
end
else
if dm.HDM='02' then
begin
with dm.ADOCODE do
begin
close;
SQL.Clear;
SQL.Add('select * from libnumberls');
SQL.Add('where zt=''已结'' and libnumberplace=''大堂吧''');
SQL.Add('order by numbertype');
Prepared;
Open;
end;
end
else
if dm.HDM='03' then
begin
with dm.ADOCODE do
begin
close;
SQL.Clear;
SQL.Add('select * from libnumberls');
SQL.Add('where zt=''已结'' and libnumberplace=''西餐厅''');
SQL.Add('order by numbertype');
Prepared;
Open;
end;
end
else
if dm.HDM='04' then
begin
with dm.ADOCODE do
begin
close;
SQL.Clear;
SQL.Add('select * from libnumberls');
SQL.Add('where zt=''已结'' and libnumberplace=''康乐部''');
SQL.Add('order by numbertype');
Prepared;
Open;
end;
end;
dxDBGrid1.FullExpand;
end;
procedure Tfrmmain.RadioButton3Click(Sender: TObject);
begin
if dm.HDM='01' then
begin
with dm.ADOCODE do
begin
close;
SQL.Clear;
SQL.Add('select * from libnumberls');
SQL.Add('where libnumberplace=''前台''');
SQL.Add('order by numbertype');
Prepared;
Open;
end;
end
else
if dm.HDM='02' then
begin
with dm.ADOCODE do
begin
close;
SQL.Clear;
SQL.Add('select * from libnumberls');
SQL.Add('where libnumberplace=''大堂吧''');
SQL.Add('order by numbertype');
Prepared;
Open;
end;
end
else
if dm.HDM='03' then
begin
with dm.ADOCODE do
begin
close;
SQL.Clear;
SQL.Add('select * from libnumberls');
SQL.Add('where libnumberplace=''西餐厅''');
SQL.Add('order by numbertype');
Prepared;
Open;
end;
end
else
if dm.HDM='04' then
begin
with dm.ADOCODE do
begin
close;
SQL.Clear;
SQL.Add('select * from libnumberls');
SQL.Add('where libnumberplace=''康乐部''');
SQL.Add('order by numbertype');
Prepared;
Open;
end;
end;
dxDBGrid1.FullExpand;
end;
procedure Tfrmmain.SpeedButton7Click(Sender: TObject);
begin
FRMNOTUSE:=TFRMNOTUSE.Create(SELF);
FRMNOTUSE.Caption:='核销单据';
FRMNOTUSE.ShowModal;
FreeAndNil(FRMNOTUSE);
end;
procedure Tfrmmain.SpeedButton8Click(Sender: TObject);
begin
DM.ADOTEMP.Close;
DM.ADOTEMP.Open;
DM.ADOCODE.Close;
DM.ADOCODE.Open;
dxDBGrid1.FullExpand;
dxDBGrid2.FullExpand;
end;
procedure Tfrmmain.SpeedButton5Click(Sender: TObject);
begin
frmsj:=Tfrmsj.Create(Self);
frmsj.ShowModal;
FreeAndNil(frmsj);
end;
procedure Tfrmmain.N7Click(Sender: TObject);
begin
frmchangedj:=Tfrmchangedj.Create(Self);
with frmchangedj do
begin
Label1.Caption:=DM.ADOCODE.fieldbyname('numberid').AsString;
ComboBox1.Text:=dm.ADOCODE.fieldbyname('zt').AsString;
ComboBox2.Text:=dm.ADOCODE.fieldbyname('numbertype').AsString;
dxCurrencyEdit1.Value:=DM.ADOCODE.fieldbyname('jine').AsCurrency;
DateTimePicker1.Date:=dm.ADOCODE.fieldbyname('rq').AsDateTime;
end;
frmchangedj.ShowModal;
FreeAndNil(frmchangedj);
end;
procedure Tfrmmain.N8Click(Sender: TObject);
begin
dm.ADOCon1.BeginTrans;
try
with dm.ADOTP do //把核销后的单据插入未核销的表中
begin
Close;
SQL.Clear;
SQL.Add('insert into libnumber');
SQL.Add('(list,numberid,numbertype,hxbz,djdate,lypername,JINE,A,B,libnumberplace,zt,sxdm)');
SQL.Add('select list,numberid,numbertype,hxbz,rq,lypername,JINE,A,B,libnumberplace,zt,sxdm from libnumberls');
SQL.Add('where numberid=:id and numbertype=:type and sxdm=:dm');
parameters.ParamByName('id').Value:=dm.ADOCODE.fieldbyname('numberid').AsString;
Parameters.ParamByName('type').Value:=dm.ADOCODE.fieldbyname('numbertype').AsString;
Parameters.ParamByName('dm').Value:=dm.HDM;
ExecSQL;
end;
with dm.ADOTP do //然后删除核销后的单据
begin
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -