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

📄 jzmxcxunit.pas

📁 集成酒店桑拿食管管理的完整程序
💻 PAS
字号:
unit jzmxcxUnit;

interface

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

type
  TJZmxcxForm = class(TForm)
    Panel1: TPanel;
    Panel4: TPanel;
    begdate: TDateTimePicker;
    enddate: TDateTimePicker;
    BitBtn1: TBitBtn;
    Label1: TLabel;
    Label2: TLabel;
    BitBtn2: TBitBtn;
    DataSource1: TDataSource;
    Query1: TQuery;
    Query2: TQuery;
    DataSource2: TDataSource;
    TabControl1: TTabControl;
    endtime: TDateTimePicker;
    begtime: TDateTimePicker;
    PopupMenu1: TPopupMenu;
    N1: TMenuItem;
    Label3: TLabel;
    Edit1: TEdit;
    DBGrid1: TDBGrid;
    DBGrid2: TDBGrid;
    Splitter1: TSplitter;
    procedure FormShow(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure TabControl1Change(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure DataSource1DataChange(Sender: TObject; Field: TField);
    procedure DBGrid1TitleClick(Column: TColumn);
    procedure N1Click(Sender: TObject);
    procedure DBGrid1CellClick(Column: TColumn);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  JZmxcxForm: TJZmxcxForm;

implementation
uses dataproc, jzcx;
{$R *.DFM}
{procedure cxpx(dd:string);
begin
  with JZmxcxForm do
  begin
   query1.Close;
   query1.SQL.Clear;
   query1.sql.Add('select accno as 帐号,handno as 手号,roomnum 房数,sannum 散座,isnull((roommoney+rmcsmoney+sanmoney+sancsmoney),0) 房费,cusmoney as 消费,jjmoney 加收,mmmoney 免收,ysmoney 实收,ismf 免房费,ismxf 免消费,jztime as 结帐时间,czy as 操作员,');
   query1.sql.Add('(select name from mode where code=lsjz.jzfs) as 结帐方式,gzno from lsjz where jztime>=:pbegtime and jztime<:pendtime ');
   query1.sql.Add(' order by '+dd );
   query1.ParamByName('pbegtime').asstring:=formatdatetime('yyyy-MM-dd',begdate.date)+' '+formatdatetime('hh:mm:ss',begtime.time);
   query1.ParamByName('pendtime').asstring:=formatdatetime('yyyy-MM-dd',enddate.date)+' '+formatdatetime('hh:mm:ss',endtime.time);
   query1.Prepare;
   query1.Open;
   tbooleanfield(query1.Fields[9]).displayvalues:='是;否';
   tbooleanfield(query1.Fields[10]).displayvalues:='是;否';

  end;
end; }
procedure TJZmxcxForm.FormShow(Sender: TObject);
begin
  begdate.Datetime:=now-1;
  enddate.Datetime:=now;
  begtime.time:=strtotime('00:00:00');
  endtime.time:=strtotime('23:59:59');
 BitBtn1Click(nil);
end;

procedure TJZmxcxForm.BitBtn1Click(Sender: TObject);
var tj:string;
begin
   tj:='';
   if trim(edit1.Text)<>'' then tj:=' and djcode like ''%''+'''+trim(edit1.Text)+'''';
   DataSource1.Tag:=0;
   DataSource1.DataSet:=nil;
   query1.Close;
   query1.SQL.Clear;
   query1.sql.Add(' select accno,max(djcode),min(handno),sum(num),(select sexname from lssex where sex=max(lsnowin.sex)) as sex,');
   query1.sql.Add(' (select isnull((max(roommoney)+max(rmcsmoney)+max(sanmoney)+max(sancsmoney)),0) from lsjz where lsjz.accno=lsnowin.accno and ysmoney<>0 ) ,');
   query1.sql.Add(' sum(csmoney),min(begtime),max(endtime),(select name from mode where code=min(lsnowin.jzfs)) as 结帐方式,max(czy) from lsnowin ');
   query1.sql.Add(' where money<>0 and  EndTime>=:pbegtime and EndTime<:pendtime '+tj+'  group by accno ');
   query1.sql.Add(' order by accno');
   query1.ParamByName('pbegtime').asstring:=formatdatetime('yyyy-MM-dd',begdate.date)+' '+formatdatetime('hh:mm:ss',begtime.time);
   query1.ParamByName('pendtime').asstring:=formatdatetime('yyyy-MM-dd',enddate.date)+' '+formatdatetime('hh:mm:ss',endtime.time);
   query1.Prepare;
   query1.Open;
   DataSource1.DataSet:=query1;
   DataSource1.Tag:=1;
  // ChineseGrid(DBGrid1);  
end;

procedure TJZmxcxForm.TabControl1Change(Sender: TObject);
begin
   if TabControl1.Tabs.Count<1 then
   begin
      query2.Active:=false;
      exit;
   end;
   Query2.Close;
   //此 djcode 表示 消费单号
   Query2.ParamByName('pdj').asstring:=trim(TabControl1.Tabs[TabControl1.TabIndex]);
   Query2.ParamByName('paccno').asstring:=query1.Fieldbyname('accno').asstring;
   Query2.Open;
 //  ChineseGrid(DBGrid2);
   tbooleanfield(DBGrid2.Fields[6]).displayvalues:='是;否';
   tbooleanfield(DBGrid2.Fields[7]).displayvalues:='是;否';

  { if TabControl1.Tabs.Count<1 then
   begin
      query2.Active:=false;
      exit;
   end;
   Query2.Close;
   //此 djcode 表示 消费单号
   Query2.ParamByName('pdj').asstring:=trim(TabControl1.Tabs[TabControl1.TabIndex]);
   Query2.ParamByName('paccno').asstring:=query1.Fieldbyname('帐号').asstring;
   Query2.Open;
   ChineseGrid(DBGrid2);  }

end;

procedure TJZmxcxForm.BitBtn2Click(Sender: TObject);
begin
  close;
end;

procedure TJZmxcxForm.DataSource1DataChange(Sender: TObject;
  Field: TField);
begin
  if (DataSource1.DataSet=nil)then exit;      // or (DataSource1.Tag=0) 
  fm.Query2.Active:=false;
  fm.Query2.SQL.Clear;
  fm.Query2.SQL.Add(' select DISTINCT djcode from lscustom where accno='''+trim(query1.Fieldbyname('accno').asstring)+'''');
  fm.Query2.Open;
  TabControl1.Tabs.Clear;
  while not fm.Query2.Eof do
  begin
    TabControl1.Tabs.Add(fm.Query2.Fields[0].asstring);
    fm.Query2.Next;
  end;
  fm.Query2.Close;
  fm.Query2.SQL.Clear;
  fm.Query2.Active:=false;
  TabControl1Change(nil);

end;

procedure TJZmxcxForm.DBGrid1TitleClick(Column: TColumn);
begin
  // cxpx(Column.FieldName);
 //  DataSource1DataChange(nil,nil);
end;

procedure TJZmxcxForm.N1Click(Sender: TObject);
begin
   Application.CreateForm(Tjzcxform, jzcxform);
   jzcxform.showmodal;
   jzcxform.free;

end;

procedure TJZmxcxForm.DBGrid1CellClick(Column: TColumn);
begin
DataSource1DataChange(nil,nil);
end;

end.

⌨️ 快捷键说明

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