📄 u_web_userm.pas
字号:
s := s + ' ' + copy(m_date, 6, 5) + ' ' + days[k] + '*7*';
end;
title_sg_wy(sg_jl, s, false);
with sg_jl do //改列数, 此处最重要
for i := 0 to j do
cells[colcount + 6 + i, 0] := datetostr(strtodate(m_adate) + i);
with sg_jl do
with f_reca_dm_wy2.sp_yduseroom_wangy do
begin
str_grid_wy(sg_jl, arow);
cells[0, arow] := iif(m_lang = 1, ' 用房数', ' ROOMS');
fixedcols := 6;
defaultRowHeight := 26;
close;
parambyname('@vcompu').asstring := Gstr_compu;
parambyname('@vrclass').asinteger := rcls;
prepare;
open;
while not eof do
begin
str_grid_wy(sg_jl, arow);
for i := 0 to colcount - 1 do
case i of
0:
begin
cells[colcount, arow] := fields.fields[i].asstring;
if (arow > 0) and (cells[colcount, arow] <> cells[colcount, arow - 1]) then
cells[i, arow] := cells[colcount, arow]
else
cells[i, arow] := iif(cells[colcount, arow] <> '', ' BLK RM', '');
end;
1:
begin
cells[i, arow] := fields.fields[i].asstring;
if cells[i, arow] = '000000' then
cells[i, arow] := '';
end;
2, 3:
cells[i, arow] := fields.fields[i].asstring;
4:
cells[i, arow] := fieldbyname('days_val').asstring;
5:
cells[i, arow] := trans_lst_wy(fieldbyname('rst').asinteger, rst_list, true);
6:
begin
m_adate := datetostr(fieldbyname('adate').asdatetime);
m_ddate := datetostr(fieldbyname('ddate').asdatetime);
rst := trans_lst_wy(fieldbyname('rst').asinteger, rst_list, true);
//if (not fieldbyname('rsvnno').isnull) and (trim(fieldbyname('room').asstring) = '') then
// cells[1, arow] := iif(fieldbyname('guaran').asstring = '1', '*GTD*', '');
s := '';
if not fieldbyname('rsvnno').isnull then
s := iif(m_lang = 1, '预订流水号 ', 'RSVNNO: ') + fieldbyname('rsvnno').asstring + #13#10;
s := s + iif(m_lang = 1, '房 号: ', 'ROOM: ') + fieldbyname('room').asstring + ' ' + #13#10;
s := s + iif(m_lang = 1, '房 态: ', 'RM STS: ') + rst + #13#10;
s := s + iif(m_lang = 1, '住客姓名: ', 'NAME: ') + fieldbyname('name').asstring + #13#10;
s := s + iif(m_lang = 1, '余住天数: ', 'LFT OCCP DAYS: ') + fieldbyname('days_val').asstring + #13#10;
case fieldbyname('rst').asinteger of
0, 4:
begin
s := s + iif(m_lang = 1, '起始时间: ', 'BEG DATE: ') + datetostr(fieldbyname('adate').asdatetime, 1) + #13#10;
s := s + iif(m_lang = 1, '截止时间: ', 'END DATE: ') + datetostr(fieldbyname('ddate').asdatetime, 1) + #13#10;
end;
else
begin
if fieldbyname('fsave').asinteger > 0 then
begin
s := s + iif(m_lang = 1, '起始时间: ', 'BEG DATE: ') + datetostr(fieldbyname('adate').asdatetime, 1) + #13#10;
s := s + iif(m_lang = 1, '截止时间: ', 'END DATE: ') + datetostr(fieldbyname('ddate').asdatetime, 1) + #13#10;
end
else
begin
s := s + iif(m_lang = 1, '入住时间: ', 'ARR DATE: ') + datetostr(fieldbyname('adate').asdatetime, 1) + #13#10;
s := s + iif(m_lang = 1, '离店时间: ', 'DEP DATE: ') + datetostr(fieldbyname('ddate').asdatetime, 1) + #13#10;
end;
end;
end;
if not fieldbyname('dtype').isnull then
s := s + iif(m_lang = 1, '折扣类型: ', 'DISC TYPE: ') + dtype_list[fieldbyname('dtype').asinteger]
else
s := s + iif(m_lang = 1, '折扣类型: ', 'DISC TYPE: ');
if (trim(fieldbyname('room').asstring) <> '') and (fieldbyname('rst').asinteger > 4) then
s := s + #13#10 + iif(m_lang = 1, '折 扣: ', 'DISC: ') + currtostrf(fieldbyname('disc').ascurrency, fffixed, gint_dec);
if not fieldbyname('dname').isnull then
s := s + #13#10 + iif(m_lang = 1, '打 折 人: ', 'APPROV BY: ') + fieldbyname('dname').asstring;
if (trim(fieldbyname('room').asstring) <> '') and (fieldbyname('rst').asinteger > 4) then
s := s + #13#10 + iif(m_lang = 1, '实际房费: ', 'RATE: ') + currtostrf(fieldbyname('rate').ascurrency, fffixed, gint_dec);
if fieldbyname('fsave').asinteger <> 0 then
s := s + #13#10 + iif(m_lang = 1, '保留天数: ', 'SAVED DAYS: ') + fieldbyname('fsave').asstring;
if fieldbyname('remark').asstring <> '' then
s := s + #13#10 + iif(m_lang = 1, '客房备注: ', 'RM REMARK :') + bow_str(fieldbyname('remark').asstring);
s := s + '*room:' + fieldbyname('room').asstring + '*rst:' + fieldbyname('rst').asstring + '*fsave:' + fieldbyname('fsave').asstring + '*';
s := s + '*adate:' + datetostr(fieldbyname('adate').asdatetime) + '*ddate:' + datetostr(fieldbyname('ddate').asdatetime) + '*rsvnno:' + fieldbyname('rsvnno').asstring + '*recno:' + fieldbyname('recno').asstring + '*';
case fieldbyname('rst').asinteger of
0, 4:
for j := 6 to colcount - 1 do
if (cells[j + colcount, 0] >= m_adate) and (cells[j + colcount, 0] <= m_ddate) then
cells[j + colcount, arow] := s;
else
for j := 6 to colcount - 1 do
if (cells[j + colcount, 0] >= m_adate) and (cells[j + colcount, 0] < m_ddate) then
cells[j + colcount, arow] := s;
end;
cells[colcount + 1, arow] := fieldbyname('rst').asstring;
cells[colcount + 2, arow] := fieldbyname('fsave').asstring;
end;
end;
next;
end;
close;
rcls := 0;
rst_rsv := 0;
rst_dirty := 0;
rst_ooo := 0;
rst_vdb := 0;
rst_fsave := 0;
rst_inhou := 0;
for j := 6 to colcount - 1 do
begin
k := 0;
for i := 2 to rowcount - 1 do
if cells[j + colcount, i] <> '' then
inc(k, strtoint(getstr(cells[3, i])));
cells[j, 1] := iif(k > 0, inttostr(k), '');
end;
s := '';
k := 0;
m_col := 0;
for i := 6 to colcount - 1 do
begin
j := strtoint(getstr(cells[i, 1]));
if k < j then
begin
s := cells[i, 0];
k := j;
m_col := i;
end;
end;
if k > 0 then
begin
rcls := k;
for i := 2 to rowcount - 1 do
if (cells[m_col + colcount, i] <> '') then
begin
j := strtoint(getstr(cells[colcount + 1, i], '-1'));
if cells[0, i] <> '' then
j := -1;
case j of
-1:
if (cells[0, i] <> '') then
inc(rst_rsv, strtoint(getstr(cells[3, i])));
0:
if getstr(cells[colcount + 2, i]) = '0' then
inc(rst_dirty)
else
inc(rst_fsave);
1:
if getstr(cells[colcount + 2, i]) > '0' then
inc(rst_fsave);
2: inc(rst_vdb);
4: inc(rst_ooo);
5, 6, 7: inc(rst_inhou);
end;
end;
s := iif(m_lang = 1, '最多用房日:[', 'MAX RMS DATE:') + copy(trim(s), 1, 5) + '] ';
s := s + iif(m_lang = 1, '用房数:[', 'USED RMS:[') + inttostr(rcls) + iif(m_lang = 1, '] 其中:', '] INC:');
s := s + iif(m_lang = 1, ' 预订房:[', 'BK RMS:[ ') + inttostr(rst_rsv) + ']';
if rst_ooo > 0 then
s := s + iif(m_lang = 1, ' 维修房:[', 'OOO: [') + inttostr(rst_ooo) + ']';
s := s + iif(m_lang = 1, ' 在住房:[', 'OCCP:[') + inttostr(rst_inhou) + ']';
if rst_dirty > 0 then
s := s + iif(m_lang = 1, ' 待清房:[', 'V.D:[') + inttostr(rst_dirty) + ']';
if rst_vdb > 0 then
s := s + iif(m_lang = 1, ' 脏排房:[', 'VDB:[') + inttostr(rst_vdb) + ']';
if rst_fsave > 0 then
s := s + iif(m_lang = 1, ' 保留房:[', 'SAVED RM:[') + inttostr(rst_fsave) + ']';
pn_stat.caption := ' ' + s;
end;
paste_bmp;
if m_diff = 5 then
begin
s := copy(analy_str('date_c', m_str), 6, 5);
pn_stat.Caption := '';
with sg_jl do
for i := 6 to colcount - 1 do
if pos(s, cells[i, 0]) > 0 then
begin
m_col := i;
break;
end;
end;
end;
end;
procedure TF_WEB_USERM.display_16;
var
i, j, k, rcls: integer; // , m_col
rst_rsv, rst_dirty, rst_ooo, rst_fsave, rst_inhou: integer;
s, m_date, rst: string; //
begin
m_adate := analy_str('adate', m_str);
m_ddate := analy_str('ddate', m_str);
m_adate := datetostr(strtodate(m_adate) - 1);
j := round(strtodate(m_ddate) - strtodate(m_adate));
case m_lang of
1: s := '预订流水号*12*房号*6*住客名称*14*房*4*天*4*态*4*';
2: s := 'RSVNNO*12*ROOM*6*NAME*14*RMS*4*DAY*4*RST*4*';
end;
with sg_jl do
for i := 0 to j do
begin
m_date := datetostr(strtodate(m_adate) + i);
k := DayOfWeek(strtodate(m_date));
s := s + ' ' + copy(m_date, 6, 5) + ' ' + days[k] + '*7*';
end;
title_sg_wy(sg_jl, s, false);
with sg_jl do //改列数, 此处最重要
for i := 0 to j do
cells[colcount + 6 + i, 0] := datetostr(strtodate(m_adate) + i);
with sg_jl do
with f_reca_dm_wy2.sp_getrsvrm_wangy do
begin
fixedcols := 6;
defaultRowHeight := 26;
close;
parambyname('@vrsvnno').asstring := analy_str('rsvnno', m_str);
parambyname('@vrecno').asinteger := strtoint(analy_str('recno', m_str));
prepare;
open;
while not eof do
begin
str_grid_wy(sg_jl, arow);
for i := 0 to colcount - 1 do
case i of
0:
begin
cells[colcount, arow] := fields.fields[i].asstring;
if (arow > 0) and (cells[colcount, arow] <> cells[colcount, arow - 1]) then
cells[i, arow] := cells[colcount, arow]
else
cells[i, arow] := iif(cells[colcount, arow] <> '', ' BLK RM', '');
end;
1:
begin
cells[i, arow] := fields.fields[i].asstring;
if cells[i, arow] = '000000' then
cells[i, arow] := '';
end;
2, 3:
cells[i, arow] := fields.fields[i].asstring;
4:
cells[i, arow] := fieldbyname('days_val').asstring;
5:
cells[i, arow] := trans_lst_wy(fieldbyname('rst').asinteger, rst_list, true);
6:
begin
m_adate := datetostr(fieldbyname('adate').asdatetime);
m_ddate := datetostr(fieldbyname('ddate').asdatetime);
rst := trans_lst_wy(fieldbyname('rst').asinteger, rst_list, true);
//if (not fieldbyname('rsvnno').isnull) and (trim(fieldbyname('room').asstring) = '') then
// cells[1, arow] := iif(fieldbyname('guaran').asstring = '1', '*GTD*', '');
s := '';
if not fieldbyname('rsvnno').isnull then
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -