📄 c_hcjs.pas
字号:
unit C_Hcjs;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, C_StdJd, DosMove, StdCtrls, Buttons, ExtCtrls, C_Define, DB,
DBTables, ComCtrls;
type
THcjsForm = class(TStdJdForm)
radJzfs: TRadioGroup;
cmbJz: TComboBox;
Label3: TLabel;
lblXfje: TLabel;
Label4: TLabel;
lblSjje: TLabel;
tblKrxx: TTable;
ListView1: TListView;
tblYdhc: TTable;
tblKrjz: TTable;
tblKrzd: TTable;
tblYsk: TTable;
Bevel2: TBevel;
tblYdhcD_YDBH: TStringField;
tblYdhcD_KRBH: TStringField;
tblYdhcD_KRXM: TStringField;
tblYdhcD_YDRQ: TDateTimeField;
tblYdhcD_SYRQ: TDateTimeField;
tblYdhcD_SYSJ: TDateTimeField;
tblYdhcD_SJDM: TStringField;
tblYdhcD_HCBH: TStringField;
tblYdhcD_HCMC: TStringField;
tblYdhcD_HCZJ: TFloatField;
tblYdhcD_HCRS: TIntegerField;
tblYdhcD_HCRS1: TIntegerField;
tblYdhcD_HFSL: TFloatField;
tblYdhcD_HFJE: TFloatField;
tblYdhcD_HFBZ: TStringField;
tblYdhcD_XHSL: TFloatField;
tblYdhcD_XHJE: TFloatField;
tblYdhcD_XHBZ: TStringField;
tblYdhcD_SGSL: TFloatField;
tblYdhcD_SGJE: TFloatField;
tblYdhcD_SGBZ: TStringField;
tblYdhcD_QTJE: TFloatField;
tblYdhcD_QTBZ: TStringField;
tblYdhcD_HTSL: TFloatField;
tblYdhcD_HTBZ: TStringField;
tblYdhcD_RZBZ: TStringField;
tblYdhcD_JSBZ: TStringField;
tblYdhcD_CZYXM: TStringField;
tblYdhcD_BZ: TBlobField;
edtKrxm: TEdit;
Label1: TLabel;
procedure radJzfsClick(Sender: TObject);
procedure btnOKClick(Sender: TObject);
private
{ Private declarations }
FYdbh: string;
FJzfs: string;
FXykbh: string;
FKhbh: string;
FKfbh: string;
FKrbh: string;
FSjje: Currency;
FBmbh: string;
FXmbhhf: string;
FXmbhxh: string;
FXmbhsg: string;
FXmbhqt: string;
FJzbh: string;
FZdbh: string;
procedure GetTdmc;
function IsValid: Boolean;
procedure GetJzxx;
procedure UpdateKrjz;
procedure UpdateKrzd;
procedure UpdateYdhc;
procedure UpdateGz(const AZdbh,AZdlb: string);
procedure UpdateYsk;
public
{ Public declarations }
end;
var
HcjsForm: THcjsForm;
procedure Hcjs(const AYdbh: string);
implementation
uses C_HotelData;
{$R *.dfm}
procedure Hcjs(const AYdbh: string);
begin
HcjsForm := THcjsForm.Create(Application);
try
with HcjsForm do
begin
FYdbh := AYdbh;
FJzfs := JZFS_RMB;
radJzfs.ItemIndex := 0;
tblYdhc.Open;
tblYdhc.Locate('D_YDBH',FYdbh,[]);
edtKrxm.Text := tblYdhcD_KRXM.Value;
GetJzxx;
ShowModal;
end;
finally
HcjsForm.tblYdhc.Close;
HcjsForm.Free;
end;
end;
procedure THcjsForm.GetJzxx;
var
ListItem: TListItem;
begin
ListItem := ListView1.Items.Add;
ListItem.Caption := '会场租金';
ListItem.SubItems.Add(tblYdhcD_HCZJ.AsString+'元');
ListItem := ListView1.Items.Add;
ListItem.Caption := '横幅';
ListItem.SubItems.Add(tblYdhcD_HFJE.AsString+'元');
ListItem := ListView1.Items.Add;
ListItem.Caption := '鲜花';
ListItem.SubItems.Add(tblYdhcD_XHJE.AsString+'元');
ListItem := ListView1.Items.Add;
ListItem.Caption := '水果';
ListItem.SubItems.Add(tblYdhcD_SGJE.AsString+'元');
ListItem := ListView1.Items.Add;
ListItem.Caption := '其他';
ListItem.SubItems.Add(tblYdhcD_QTJE.AsString+'元');
FSjje := tblYdhcD_HCZJ.AsCurrency
+tblYdhcD_HFJE.AsCurrency
+tblYdhcD_XHJE.AsCurrency
+tblYdhcD_SGJE.AsCurrency
+tblYdhcD_QTJE.AsCurrency;
lblXfje.Caption := CurrToStr(FSjje)+'元';
lblSjje.Caption := lblXfje.Caption;
end;
procedure THcjsForm.GetTdmc;
begin
tblKrxx.Filter := 'D_KRLX=''T''';
tblKrxx.Filtered := True;
tblKrxx.Open;
tblKrxx.First;
while not tblKrxx.Eof do
begin
cmbJz.Items.Add(tblKrxx.FieldByName('D_KRXM').AsString);
tblKrxx.Next;
end;
tblKrxx.Filter := '';
tblKrxx.Filtered := False;
tblKrxx.Close;
end;
procedure THcjsForm.radJzfsClick(Sender: TObject);
begin
inherited;
cmbJz.Items.Clear;
cmbJz.Style := csDropDownList;
case radJzfs.ItemIndex of
0: FJzfs := JZFS_RMB;
1:
begin
HotelData.ListMc(cmbJz,'XYK','D_XYKMC');
FJzfs := JZFS_XYK;
end;
2: FJzfs := JZFS_ZP;
3:
begin
cmbJz.Style := csDropDown;
HotelData.ListDm(cmbJz,'KHDA','D_KHMC');
FJzfs := JZFS_JZ;
end;
4:
begin
cmbJz.Style := csDropDown;
FJzfs := JZFS_GSK;
end;
5:
begin
GetTdmc;
FJzfs := JZFS_GTD;
end;
6:
begin
FJzfs := JZFS_ZD;
end;
end;
end;
function THcjsForm.IsValid: Boolean;
var
s: string;
begin
Result := False;
case radJzfs.ItemIndex of
1:
begin
FXykbh := HotelData.FindBh('XYK','D_XYKBH','D_XYKMC',cmbJz.Text);
if FXykbh<>'' then
Result := True
else
ShowInfo('请选择信用卡!');
end;
3:
begin
s := GetMc(cmbJz.Text);
FKhbh := HotelData.FindBh('KHDA','D_KHBH','D_KHMC',s);
if FKhbh<>'' then
Result := True
else
ShowInfo('请选择记帐客户!');
end;
4:
begin
if HotelData.CheckKfzt(cmbJz.Text)=KFZT_BF then
begin
FKfbh := cmbJz.Text;
Result := True;
end
else
ShowInfo('请选择挂帐散客!');
end;
5:
begin
tblKrxx.Open;
if tblKrxx.Locate('D_KRXM',cmbJz.Text,[]) then
begin
FKrbh := tblKrxx.FieldByName('D_KRBH').AsString;
Result := True;
end
else
ShowInfo('请选择挂帐团队!');
tblKrxx.Close;
end;
else
Result := True;
end;
end;
procedure THcjsForm.UpdateYdhc;
begin
HotelData.ExecSql('update YDHC set D_JSBZ="'+JS_YES+'" where D_YDBH="'+FYdbh+'"');
//tblYdhc.Edit;
//tblYdhcD_JSBZ.Value := JS_YES;
//tblYdhc.Post;
//tblYdhc.Delete;
end;
procedure THcjsForm.UpdateKrzd;
var
AHh: Integer;
begin
FZdbh := HotelData.GetBh('D_ZDBH',PREV_ZDBH);
try
tblKrzd.Open;
AHh := 0;
tblKrzd.Insert;
tblKrzd.FieldByName('D_ZDBH').AsString := FZdbh;
tblKrzd.FieldByName('D_HH').AsInteger := AHh;
tblKrzd.FieldByName('D_ZDLB').AsString := ZDLB_FYK;
tblKrzd.FieldByName('D_XFJE').AsCurrency := FSjje;
tblKrzd.FieldByName('D_XFRQ').AsDateTime := Date;
tblKrzd.FieldByName('D_XFSJ').AsDateTime := Time;
tblKrzd.FieldByName('D_YHJE').AsCurrency := 0;
tblKrzd.FieldByName('D_JZRQ').AsDateTime := Date;
tblKrzd.FieldByName('D_JZSJ').AsDateTime := Time;
tblKrzd.FieldByName('D_JZBZ').AsString := JZ_YES;
tblKrzd.FieldByName('D_JSBZ').AsString := JS_YES;
tblKrzd.FieldByName('D_CZYXM').AsString := CZY.CzyXm;
tblKrzd.FieldByName('D_JZYXM').AsString := CZY.CzyXm;
tblKrzd.FieldByName('D_BMBH').AsString := FBmbh;
tblKrzd.FieldByName('D_BZ').AsString := ZDBZ_FYK+' '+edtKrxm.Text;
tblKrzd.FieldByName('D_JZBH').AsString := FJzbh;
tblKrzd.Post;
Inc(AHh);
if tblYdhcD_HCZJ.Value > 0 then
begin
tblKrzd.Insert;
tblKrzd.FieldByName('D_ZDBH').AsString := FZdbh;
tblKrzd.FieldByName('D_HH').AsInteger := AHh;
tblKrzd.FieldByName('D_XMBH').AsString := XMBH_HCF;
tblKrzd.FieldByName('D_ZDLB').AsString := ZDLB_FYK;
tblKrzd.FieldByName('D_XFJE').AsCurrency := tblYdhcD_HCZJ.Value;
tblKrzd.FieldByName('D_XFRQ').AsDateTime := Date;
tblKrzd.FieldByName('D_XFSJ').AsDateTime := Time;
tblKrzd.FieldByName('D_YHJE').AsCurrency := 0;
tblKrzd.FieldByName('D_JZRQ').AsDateTime := Date;
tblKrzd.FieldByName('D_JZSJ').AsDateTime := Time;
tblKrzd.FieldByName('D_JZBZ').AsString := JZ_YES;
tblKrzd.FieldByName('D_JSBZ').AsString := JS_YES;
tblKrzd.FieldByName('D_CZYXM').AsString := CZY.CzyXm;
tblKrzd.FieldByName('D_JZYXM').AsString := CZY.CzyXm;
tblKrzd.FieldByName('D_BMBH').AsString := FBmbh;
tblKrzd.FieldByName('D_BZ').AsString := ZDBZ_FYK+' '+edtKrxm.Text;
tblKrzd.FieldByName('D_JZBH').AsString := FJzbh;
tblKrzd.Post;
Inc(AHh);
end;
if tblYdhcD_HFJE.Value > 0 then
begin
tblKrzd.Insert;
tblKrzd.FieldByName('D_ZDBH').AsString := FZdbh;
tblKrzd.FieldByName('D_HH').AsInteger := AHh;
tblKrzd.FieldByName('D_XMBH').AsString := FXmbhhf;
tblKrzd.FieldByName('D_ZDLB').AsString := ZDLB_FYK;
tblKrzd.FieldByName('D_XFJE').AsCurrency := tblYdhcD_HFJE.Value;
tblKrzd.FieldByName('D_XFRQ').AsDateTime := Date;
tblKrzd.FieldByName('D_XFSJ').AsDateTime := Time;
tblKrzd.FieldByName('D_YHJE').AsCurrency := 0;
tblKrzd.FieldByName('D_JZRQ').AsDateTime := Date;
tblKrzd.FieldByName('D_JZSJ').AsDateTime := Time;
tblKrzd.FieldByName('D_JZBZ').AsString := JZ_YES;
tblKrzd.FieldByName('D_JSBZ').AsString := JS_YES;
tblKrzd.FieldByName('D_CZYXM').AsString := CZY.CzyXm;
tblKrzd.FieldByName('D_JZYXM').AsString := CZY.CzyXm;
tblKrzd.FieldByName('D_BMBH').AsString := FBmbh;
tblKrzd.FieldByName('D_BZ').AsString := ZDBZ_FYK+' '+edtKrxm.Text;
tblKrzd.FieldByName('D_JZBH').AsString := FJzbh;
tblKrzd.Post;
Inc(AHh);
end;
if tblYdhcD_XHJE.Value > 0 then
begin
tblKrzd.Insert;
tblKrzd.FieldByName('D_ZDBH').AsString := FZdbh;
tblKrzd.FieldByName('D_HH').AsInteger := AHh;
tblKrzd.FieldByName('D_XMBH').AsString := FXmbhxh;
tblKrzd.FieldByName('D_ZDLB').AsString := ZDLB_FYK;
tblKrzd.FieldByName('D_XFJE').AsCurrency := tblYdhcD_XHJE.Value;
tblKrzd.FieldByName('D_XFRQ').AsDateTime := Date;
tblKrzd.FieldByName('D_XFSJ').AsDateTime := Time;
tblKrzd.FieldByName('D_YHJE').AsCurrency := 0;
tblKrzd.FieldByName('D_JZRQ').AsDateTime := Date;
tblKrzd.FieldByName('D_JZSJ').AsDateTime := Time;
tblKrzd.FieldByName('D_JZBZ').AsString := JZ_YES;
tblKrzd.FieldByName('D_JSBZ').AsString := JS_YES;
tblKrzd.FieldByName('D_CZYXM').AsString := CZY.CzyXm;
tblKrzd.FieldByName('D_JZYXM').AsString := CZY.CzyXm;
tblKrzd.FieldByName('D_BMBH').AsString := FBmbh;
tblKrzd.FieldByName('D_BZ').AsString := ZDBZ_FYK+' '+edtKrxm.Text;
tblKrzd.FieldByName('D_JZBH').AsString := FJzbh;
tblKrzd.Post;
Inc(AHh);
end;
if tblYdhcD_SGJE.Value > 0 then
begin
tblKrzd.Insert;
tblKrzd.FieldByName('D_ZDBH').AsString := FZdbh;
tblKrzd.FieldByName('D_HH').AsInteger := AHh;
tblKrzd.FieldByName('D_XMBH').AsString := FXmbhsg;
tblKrzd.FieldByName('D_ZDLB').AsString := ZDLB_FYK;
tblKrzd.FieldByName('D_XFJE').AsCurrency := tblYdhcD_SGJE.Value;
tblKrzd.FieldByName('D_XFRQ').AsDateTime := Date;
tblKrzd.FieldByName('D_XFSJ').AsDateTime := Time;
tblKrzd.FieldByName('D_YHJE').AsCurrency := 0;
tblKrzd.FieldByName('D_JZRQ').AsDateTime := Date;
tblKrzd.FieldByName('D_JZSJ').AsDateTime := Time;
tblKrzd.FieldByName('D_JZBZ').AsString := JZ_YES;
tblKrzd.FieldByName('D_JSBZ').AsString := JS_YES;
tblKrzd.FieldByName('D_CZYXM').AsString := CZY.CzyXm;
tblKrzd.FieldByName('D_JZYXM').AsString := CZY.CzyXm;
tblKrzd.FieldByName('D_BMBH').AsString := FBmbh;
tblKrzd.FieldByName('D_BZ').AsString := ZDBZ_FYK+' '+edtKrxm.Text;
tblKrzd.FieldByName('D_JZBH').AsString := FJzbh;
tblKrzd.Post;
Inc(AHh);
end;
if tblYdhcD_QTJE.Value > 0 then
begin
tblKrzd.Insert;
tblKrzd.FieldByName('D_ZDBH').AsString := FZdbh;
tblKrzd.FieldByName('D_HH').AsInteger := AHh;
tblKrzd.FieldByName('D_XMBH').AsString := FXmbhqt;
tblKrzd.FieldByName('D_ZDLB').AsString := ZDLB_FYK;
tblKrzd.FieldByName('D_XFJE').AsCurrency := tblYdhcD_QTJE.Value;
tblKrzd.FieldByName('D_XFRQ').AsDateTime := Date;
tblKrzd.FieldByName('D_XFSJ').AsDateTime := Time;
tblKrzd.FieldByName('D_YHJE').AsCurrency := 0;
tblKrzd.FieldByName('D_JZRQ').AsDateTime := Date;
tblKrzd.FieldByName('D_JZSJ').AsDateTime := Time;
tblKrzd.FieldByName('D_JZBZ').AsString := JZ_YES;
tblKrzd.FieldByName('D_JSBZ').AsString := JS_YES;
tblKrzd.FieldByName('D_CZYXM').AsString := CZY.CzyXm;
tblKrzd.FieldByName('D_JZYXM').AsString := CZY.CzyXm;
tblKrzd.FieldByName('D_BMBH').AsString := FBmbh;
tblKrzd.FieldByName('D_BZ').AsString := ZDBZ_FYK+' '+edtKrxm.Text;
tblKrzd.FieldByName('D_JZBH').AsString := FJzbh;
tblKrzd.Post;
end;
finally
tblKrzd.Close;
end;
end;
procedure THcjsForm.UpdateKrjz;
var
AHh: Integer;
begin
FJzbh := HotelData.GetBh('D_JZBH',PREV_JZBH);
try
tblKrjz.Open;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -