📄 u_web_userm.pas
字号:
end;
next;
end;
close;
end;
end;
procedure TF_WEB_USERM.display_4;
var
i: integer;
s: string; //
begin
i := strtoint(getpartstr(analy_str('type', m_str)));
with sg_jl do
begin
case i of
1, 2:
begin
defaultRowHeight := 64;
RowHeights[0] := 20;
end;
else
begin
defaultRowHeight := 22;
RowHeights[0] := 20;
end;
end;
Options := Options + gridop;
selectioncolor := clinfobk;
selectiontextcolor := clmaroon;
fixedcols := 0;
font.Color := clnavy;
font.Style := [fsBold];
end;
case i of
0: //特殊服务
with f_reca_dm.qy_wangy do
begin
case m_lang of
1: s := '日期*12*特殊服务*42*特服数量*12*减免金额*12*工号*6*';
2: s := 'DATE*12*SP.ENQ*42*QUANTITY*12*DISC AMT*12*OPNO*6*';
end;
title_sg_wy(sg_jl, s, false);
close;
sql.Clear;
sql.Add('select a.date,b.name,tfsl,a.money,a.opno from tsfwdyb a,svrcode b where a.room=:vroom and folio_main=:vfolio_m and a.svrcode=b.svrcode and datediff(dd,a.date,:vdate)<=0 order by a.date,a.svrcode');
parambyname('vdate').asdatetime := strtodate(gstr_pubdate);
parambyname('vroom').AsString := analy_str('room', m_str);
parambyname('vfolio_m').AsString := analy_str('folio_m', m_str);
open;
while not eof do
with sg_jl do
begin
str_grid_wy(sg_jl, arow);
cells[0, arow] := datetostr(fields.fields[0].asdatetime);
cells[colcount, arow] := datetostr(fields.fields[0].asdatetime);
if (arow > 0) and (cells[colcount, arow] = cells[colcount, arow - 1]) then
cells[0, arow] := '';
cells[1, arow] := fieldbyname('name').asstring;
cells[2, arow] := iif(fieldbyname('tfsl').asinteger = 0, '', fieldbyname('tfsl').asstring);
s := currtostrf(fieldbyname('money').ascurrency, fffixed, gint_dec);
cells[3, arow] := iif(comp_zero(s), '', s);
cells[4, arow] := fieldbyname('opno').asstring;
next;
end;
close;
end;
1: //重要信息
with f_reca_dm.qy_wangy do
begin
case m_lang of
1: s := '日期*18*重要信息*64*工号*6*';
2: s := 'DATE*18*IMPT INFO*64*OPNO*6*';
end;
title_sg_wy(sg_jl, s, false);
close;
sql.Clear;
sql.Add('select date,special,opno from specdyb where room=:vroom and folio_main=:vfolio_m and datediff(dd,date,:vdate)<=0 order by date');
parambyname('vdate').asdatetime := strtodate(gstr_pubdate);
parambyname('vroom').AsString := analy_str('room', m_str);
parambyname('vfolio_m').AsString := analy_str('folio_m', m_str);
open;
while not eof do
with sg_jl do
begin
str_grid_wy(sg_jl, arow);
cells[0, arow] := datetostr(fields.fields[0].asdatetime, 1);
cells[colcount, arow] := datetostr(fields.fields[0].asdatetime, 1);
if (arow > 0) and (cells[colcount, arow] = cells[colcount, arow - 1]) then
cells[0, arow] := '';
cells[1, arow] := fieldbyname('special').asstring;
cells[2, arow] := fieldbyname('opno').asstring;
next;
end;
close;
end;
2: //访客留言
with f_reca_dm.qy_wangy do
begin
case m_lang of
1: s := '日期*18*留言类型*12*访客姓名*16*留言内容*60*工号*6*';
2: s := 'DATE*18*MSG TYPE*12*VISITOR*16*MESSAGE*60*OPNO*6*';
end;
title_sg_wy(sg_jl, s, false);
close;
sql.Clear;
sql.Add('select date,flag,fkname,remark,opno from daymsg where room=:vroom and folio_main=:vfolio_m and datediff(dd,msgrmk,:vdate)<=0 and flag<2 order by msgrmk,flag');
parambyname('vdate').asdatetime := strtodate(gstr_pubdate);
parambyname('vroom').AsString := analy_str('room', m_str);
parambyname('vfolio_m').AsString := analy_str('folio_m', m_str);
open;
while not eof do
with sg_jl do
begin
str_grid_wy(sg_jl, arow);
cells[0, arow] := datetostr(fields.fields[0].asdatetime, 1);
cells[colcount, arow] := datetostr(fields.fields[0].asdatetime, 1);
if (arow > 0) and (cells[colcount, arow] = cells[colcount, arow - 1]) then
cells[0, arow] := '';
cells[1, arow] := iif(fieldbyname('flag').asinteger = 0, zk_msg, fk_msg);
cells[2, arow] := fieldbyname('fkname').asstring;
cells[3, arow] := fieldbyname('remark').asstring;
cells[4, arow] := fieldbyname('opno').asstring;
next;
end;
close;
end;
7: //超支客房
with f_reca_dm.qy_wangy do
begin
case m_lang of
1: s := '账号*6*房号*6*FOLIO*12*流水号*12*费用名称*12*UN*4*记帐日期*12*金 额*10*服务费*8*备 注*16*发生日期*12*结帐*12*流水号*12*班次*6*修改*6*部门*6*工号*6*';
2: s := 'BILL NO*6*ROOM*6*FOLIO*12*FLOW NO*12*COST NAME*12*UN*4*DATE*12*AMOUNT*10*SVR.CHG*8*REMARK*16*TIME*12*PAID*12*NO*12*SHFT*6*MODI*6*DEP*6*OPNO*6*';
end;
title_sg_wy(sg_jl, s, false);
close;
sql.Clear;
s := 'select a.room,a.room_o,a.folio,a.flowno,aa = a.costno+ ''-''+b.name,a.fscs,a.date,a.money,a.smoney,a.remark,a.date_o,a.ps,a.flowno,a.genflag,a.modflag,a.depno,a.opno from gbills a,costno b where a.costno = b.costno';
s := s + ' and room=:vroom and folio_main=:vfolio_m and isnull(a.pt,0)=0 order by a.room,a.room_o,a.date';
sql.Add(s);
parambyname('vroom').AsString := analy_str('room', m_str);
parambyname('vfolio_m').AsString := analy_str('folio_m', m_str);
open;
while not eof do
with sg_jl do
begin
str_grid_wy(sg_jl, arow);
for i := 0 to colcount - 1 do
case i of
6, 10: cells[i, arow] := datetostr(fields.fields[i].asdatetime);
7, 8: cells[i, arow] := currtostrf(fields.fields[i].ascurrency, fffixed, gint_dec);
11: cells[i, arow] := pstomc(fieldbyname('ps').asinteger);
13: cells[i, arow] := iif(fieldbyname('genflag').asinteger = 0, this_gen, fieldbyname('genflag').asstring);
14: cells[i, arow] := iif(fieldbyname('modflag').asinteger = 0, '', 'MOD');
else
cells[i, arow] := fields.fields[i].asstring;
end;
next;
end;
close;
end;
8, 9, 10: //8: 预退排房 9: //预退排房
with f_reca_dm.qy_wangy do
begin
case m_lang of
1: s := 'CHK IN*8*VIP*6*预订流水号*11*房号*6*房类*8*客房姓名*24*房态*6*人数*6*折扣类型*14*折扣*6*房租*8*总消费*10*协议名称*24*入住时间*16*离店时间*16*备 注*36*工号*6*主 FOLIO*12*';
2: s := 'CHK IN*8*VIP*6*RSVNNO*11*ROOM*6*RM CLS*8*NAME*24*RM STS*6*PAX*6*DISC TYPE*14*DISC*6*RATE*8*EXPENSE*10*COPR NAME*24*ARR DATE*16*DEP DATE*16*REMARK*36*OPNO*6*MAIN FOLIO*12*';
end;
title_sg_wy(sg_jl, s, false);
close;
sql.Clear;
if i = 8 then
begin
s := 'select 0,a.vip,a.rsvnno,room,rclass,b.name,b.rst,b.pax,dtype,disc,rate,gross=0,a.no,a.adate,a.ddate,remark,a.opno,folio_main,a.c_name';
s := s + ' from rsvns a,blkrm b where a.rsvnno=b.rsvnno and a.recno=b.recno and room=:vroom and datediff(dd,b.adate,:vdate)=0 and b.room>''000000'' and isnull(b.show,0)=0';
s := s + 'union select 1,vip,rsvnno,a.room,rclass,name,rst,pax,dtype,disc,rate,gross,no,adate,ddate,remark,opno,folio_main,c_name';
s := s + ' from roomno a,roomno_2 b,roomno_1 c where a.room=b.room and a.room=c.room and a.room=:vroom and a.rst>4';
sql.Add(s);
parambyname('vdate').Asdatetime := strtodate(gstr_pubdate);
parambyname('vroom').AsString := analy_str('room', m_str);
end
else
if i = 9 then
begin
s := 'select 0,a.vip,a.rsvnno,room,rclass,b.name,b.rst,b.pax,dtype,disc,rate,gross=0,a.no,a.adate,a.ddate,remark,a.opno,folio_main,a.c_name';
s := s + ' from rsvns a,blkrm b where a.rsvnno=b.rsvnno and a.recno=b.recno and folio_main=:vfolio_m and b.room>''000000'' and isnull(b.show,0)=0';
s := s + 'union select 1,vip,rsvnno,a.room,rclass,name,rst,pax,dtype,disc,rate,gross,no,adate,ddate,remark,opno,folio_main,c_name';
s := s + ' from roomno a,roomno_2 b,roomno_1 c where a.room=b.room and a.room=c.room and folio_main=:vfolio_m and a.rst>4';
sql.Add(s);
parambyname('vfolio_m').AsString := analy_str('folio_m', m_str);
end
else
if i = 10 then
begin
s := 'select 0,a.vip,a.rsvnno,room,rclass,b.name,b.rst,b.pax,dtype,disc,rate,gross=0,a.no,a.adate,a.ddate,remark,a.opno,folio_main,a.c_name';
s := s + ' from rsvns a,blkrm b where a.rsvnno=b.rsvnno and a.recno=b.recno and folio_main=:vfolio_m and b.room>''000000'' and isnull(b.show,0)=0';
s := s + 'union select 1,vip,rsvnno,a.room,rclass,name,rst,pax,dtype,disc,rate,gross,no,adate,ddate,remark,opno,folio_main,c_name';
s := s + ' from roomno a,roomno_2 b,roomno_1 c where a.room=b.room and a.room=c.room and folio_main=:vfolio_m and a.rst>4';
s := s + 'union select 2,vip,rsvnno,a.room,rclass,name,b.rst,pax,dtype,disc,rate,gross,no,adate,ddate,remark,opno,b.folio_main,c_name';
s := s + ' from roomno a,dayout_2 b,dayout c where a.room=b.room and b.room=c.room and b.folio_main=c.folio_main and b.folio_main=:vfolio_m';
sql.Add(s);
parambyname('vfolio_m').AsString := analy_str('folio_m', m_str);
end;
open;
while not eof do
with sg_jl do
begin
str_grid_wy(sg_jl, arow);
for i := 0 to colcount - 1 do
case i of
0:
case fields.fields[i].asinteger of
0: cells[i, arow] := 'BLOCK';
1: cells[i, arow] := 'CHKIN';
2: cells[i, arow] := 'CHK OUT';
end;
1: cells[i, arow] := vip_list[fieldbyname('vip').asinteger];
4: cells[i, arow] := trans_lst_wy(fieldbyname('rclass').asinteger, rcls_list, true);
6: cells[i, arow] := rst_name(fieldbyname('rst').asinteger);
8: cells[i, arow] := dtype_list[fields.fields[i].asinteger];
9..11:
cells[i, arow] := currtostrf(fields.Fields[i].ascurrency, fffixed, gint_dec);
12: cells[i, arow] := fieldbyname('c_name').asstring; //fields.Fields[i].asstring + ' - ' +
13, 14:
cells[i, arow] := datetostr(fields.Fields[i].asdatetime, 1);
else
cells[i, arow] := fields.fields[i].asstring;
end;
next;
end;
close;
end;
11: //15: 他房主付
with f_reca_dm.qy_wangy do
begin
case m_lang of
1: s := 'VIP*6*房号*6*房类*6*客房姓名*22*房态*6*人数*5*协议名称*22*.客欠总额*10*.预付按金*10*.抵押金额*10*.总消费*10*备 注*36*入住时间*15*离店日期*11*折扣类型*14*折扣*6*房租*8*抵押卡号*15*工号*6*主 FOLIO*12*预订流水号*12*';
2: s := 'VIP*6*ROOM*6*RM CLS*6*NAME*22*RM STS*6*PAX*5*CORP NAME*22*.BALANCE*10*.DEPOSIT*10*.PLEDGE*10*.CONSUME*10*REMARK*36*ARR DATE*15*DEP DATE*11*DISC TYPE*14*DISC*6*RATE*8*CREDIT NO*15*OPNO*6*MAIN FOLIO*12*RSVNNO*12*';
end;
title_sg_wy(sg_jl, s, false);
//m_bcalcol := true;
close;
sql.Clear;
s := 'select vip,a.room,rclass,name,rst,pax,no,cost,money,adv,gross,remark,b.date,ddate,dtype,disc,rate,advname,opno,folio_main,rsvnno,c_name';
s := s + ' from roomno a,roomno_2 b,roomno_1 c where a.room=b.room and a.room=c.room and b.master=:vmast and a.rst>4';
sql.Add(s);
parambyname('vmast').asstring := analy_str('mast', m_str);
open;
while not eof do
with sg_jl do
begin
str_grid_wy(sg_jl, arow);
for i := 0 to colcount - 1 do
case i of
0: cells[i, arow] := vip_list[fieldbyname('vip').asinteger];
2: cells[i, arow] := trans_lst_wy(fieldbyname('rclass').asinteger, rcls_list, true);
4: cells[i, arow] := rst_name(fieldbyname('rst').asinteger);
6: cells[i, arow] := fieldbyname('c_name').asstring; //fields.Fields[i].asstring + ' - ' +
7..10, 15, 16:
cells[i, arow] := currtostrf(fields.Fields[i].ascurrency, fffixed, gint_dec);
12, 13:
cells[i, arow] := datetostr(fields.Fields[i].a
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -