📄 pub_program.pas
字号:
meet_room := iif(m_lang = 1, '成员房间 [', 'MEMBER ROOM [');
endcash_msg := iif(m_lang = 1, ']签单状态为<正在结帐>, 结帐中止!', '] CTL STATUS IS <PAYING>, PAY STOP!');
nosucess := iif(m_lang = 1, '失败!', 'UNSUCCESS !');
need_tsfw := iif(m_lang = 1, '要求特服', 'SP.SVR REQ');
spec_msg := iif(m_lang = 1, '重要信息', 'IMPT INFO');
zk_msg := iif(m_lang = 1, '住客留言', 'GST MSG');
fk_msg := iif(m_lang = 1, '访客留言', 'VISIT MSG');
pt_unset := iif(m_lang = 1, '付款方式未设置!', 'PAY TYPE UNSET!');
cost_unset := iif(m_lang = 1, '费用项目未设置!', 'NOT SET COST ITEM');
input_card := iif(m_lang = 1, '请确认刷卡後使用积分消费!', '');
setup_exl := iif(m_lang = 1, '请安装Ms Excel !', 'PLEASE SETUP EXCEL APPLICATION !');
nobill_msg := iif(m_lang = 1, '没有帐单!', ' NO BILL !');
days := iif(m_lang = 1, '/天', '/DAY');
gen_flag := iif(m_lang = 1, ' 班', 'SHFT');
input_money := iif(m_lang = 1, '必须录入金额!', ' MUST INPUT AMOUNT !');
plz_input := iif(m_lang = 1, '请输入', 'PLEASE INPUT ');
date_msg1 := iif(m_lang = 1, '日期', 'DATE ');
time_msg := iif(m_lang = 1, '时间', 'TIME ');
prn_date := iif(m_lang = 1, '日期:', 'DATE: ');
prn_opno := iif(m_lang = 1, '制表:', 'OPNO: ');
this_gen := iif(m_lang = 1, '当班', 'THE SHFT');
the_opno := iif(m_lang = 1, ' 工号:', 'OPNO: ');
str_fee1 := iif(m_lang = 1, '保 险 费', 'INSUR');
str_fee2 := iif(m_lang = 1, '政 府 税', 'TAX');
str_fee3 := iif(m_lang = 1, '保险费', 'INSUR');
str_fee4 := iif(m_lang = 1, '政府税', 'TAX');
sure_update := iif(m_lang = 1, '确认数据修改?', 'BE SURE TO MODIFY DATA ?');
prn_time := iif(m_lang = 1, ' 打印时间:', ' PRINT TIME:'); }
end;
procedure display_v_sg(sg_jl: TAdvStringGrid; m_sql: string; m_col, m_field, m_diff: integer);
var
i, j, k, m_colcount, arow, m_flag: integer;
s, s1: string;
begin
arow := 0;
s1 := '';
with f_web_dm.qy_wangy do
begin
close;
sql.Clear;
sql.Add(m_sql);
open;
m_colcount := m_col * m_field;
while not eof do
with sg_jl do
begin
str_grid_wy(sg_jl, arow);
j := 0;
while j < m_colcount do
begin
for i := 0 to m_field - 1 do
begin
case m_diff of
0:
case i of
0:
begin
AddCheckBox(j, arow, false, false);
cells[j, arow] := fields.Fields[i].asstring;
cells[j + m_colcount, arow] := fieldbyname('coun').asstring;
cells[j + m_colcount + 1, arow] := fieldbyname('flag').asstring;
cells[j + m_colcount + 2, arow] := fieldbyname('flag_n').asstring;
cells[j + m_colcount * 2, arow] := fieldbyname('svrcode').asstring;
cells[j + m_colcount * 2 + 1, arow] := fieldbyname('night').asstring;
cells[j + m_colcount * 2 + 2, arow] := fieldbyname('days').asstring;
end;
1, 2: ;
end;
1: //'select accno,name from userdb order by accno'
case i of
0:
begin
AddCheckBox(j, arow, false, false);
cells[j, arow] := fieldbyname('accno').asstring + ' - ' + fieldbyname('name').asstring;
cells[j + m_colcount * 2, arow] := fieldbyname('accno').asstring;
end;
end;
2: //'select name,flag,coun,days,night,auto,svrcode,sort from SVRCODE order by sort'
case i of
0:
begin
AddCheckBox(j, arow, false, false);
cells[j, arow] := fields.Fields[i].asstring;
cells[j + m_colcount, arow] := fieldbyname('coun').asstring;
cells[j + m_colcount + 1, arow] := fieldbyname('flag').asstring;
cells[j + m_colcount + 2, arow] := fieldbyname('flag_n').asstring;
cells[j + m_colcount * 2, arow] := fieldbyname('svrcode').asstring;
cells[j + m_colcount * 2 + 1, arow] := fieldbyname('night').asstring;
end;
1, 2: ;
end;
4: //zhbbdy,ydbbdy
case i of
0:
begin
AddCheckBox(j, arow, false, false);
cells[j, arow] := fields.Fields[i].asstring;
cells[j + m_colcount * 2, arow] := fieldbyname('svrcode').asstring;
end;
end;
5: //foliosz
case i of
0:
begin
AddCheckBox(j, arow, false, false);
cells[j, arow] := fields.Fields[i].asstring + ' - ' + fieldbyname('name').asstring;
cells[j + m_colcount * 2, arow] := fieldbyname('costfo').asstring;
end;
end;
16:
case i of
0:
begin
AddCheckBox(j, arow, false, false);
cells[j, arow] := fields.Fields[i].asstring;
cells[j + m_colcount, arow] := fieldbyname('coun').asstring;
cells[j + m_colcount + 1, arow] := fieldbyname('flag').asstring;
cells[j + m_colcount * 2, arow] := fieldbyname('svrcode').asstring;
cells[j + m_colcount * 2 + 1, arow] := fieldbyname('days').asstring;
end;
1: ;
end;
23: //'select name,coun,flag,svrcode,sort from SVRCODE order by sort'
case i of
0:
begin
AddCheckBox(j, arow, false, false);
cells[j, arow] := fields.Fields[i].asstring;
cells[j + m_colcount, arow] := fieldbyname('coun').asstring;
cells[j + m_colcount + 1, arow] := fieldbyname('flag').asstring;
cells[j + m_colcount * 2, arow] := fieldbyname('svrcode').asstring;
end;
1: ;
end;
24: //foliosz_n
case i of
0:
begin
AddCheckBox(j, arow, false, false);
cells[j, arow] := fields.Fields[i].asstring + ' - ' + fieldbyname('name').asstring;
end;
end;
25: //'select name,sign,rclass,rate from strate order by rclass'
case i of
0:
begin
AddCheckBox(j, arow, false, false);
cells[j, arow] := fieldbyname('name').asstring + ' - ' + fieldbyname('sign').asstring + ' [' + currtostrf(fieldbyname('rate').ascurrency, fffixed, gint_dec) + ']';
cells[j + m_colcount * 2, arow] := fieldbyname('rclass').asstring;
end;
end;
26: //'select mn_ord,mn_level,mn_sort,mn_name,caption,descrip from menudyb order by mn_ord,mn_level,mn_sort';
case i of
0:
begin
k := fieldbyname('mn_level').asinteger;
{s := fieldbyname('descrip').asstring;
if ord(s[1]) = ord(s[8]) then
begin
next;
continue;
end;}
case k of
0: // if k = 0 then
begin
str_grid_wy(sg_jl, arow);
if pos('**', cells[0, arow - 1]) > 0 then
arow := arow - 1;
j := 0;
//AddButton(j, arow, 17, 17, '...', haBeforeText, vaCenter);
//addimageidx(j, arow, 0, haBeforeText, vaCenter);
s := fieldbyname('mn_name').asstring; // encrypt_str(fieldbyname('mn_name').asstring, '', false);
cells[j, arow] := ' ** ' + fieldbyname('caption').asstring + ' **';
s := 'name:' + s + '*ord:' + fieldbyname('mn_ord').asstring + '*level:' + fieldbyname('mn_level').asstring + '*sort:' + fieldbyname('mn_sort').asstring + '*';
s := s + 'cap:' + fieldbyname('caption').asstring + '*desc:' + fieldbyname('descrip').asstring + '*';
cells[j + m_colcount, arow] := s;
MergeCells(0, arow, m_colcount, 1);
str_grid_wy(sg_jl, arow);
j := 0;
//next;
continue;
end;
else
begin
s := encrypt_str(fieldbyname('mn_name').asstring, '', false);
if s = 'MI_XTGL_GENMENU' then
begin
next;
continue;
end;
AddCheckBox(j, arow, false, false);
s := fieldbyname('mn_name').asstring; //encrypt_str(fieldbyname('mn_name').asstring, '', false);
cells[j, arow] := fieldbyname('caption').asstring;
s := 'name:' + s + '*ord:' + fieldbyname('mn_ord').asstring + '*level:' + fieldbyname('mn_level').asstring + '*sort:' + fieldbyname('mn_sort').asstring + '*';
s := s + 'cap:' + fieldbyname('caption').asstring + '*desc:' + fieldbyname('descrip').asstring + '*';
cells[j + m_colcount, arow] := s;
end;
end;
end;
end;
27: //'select depno,name from depno order by depno'
case i of
0:
begin
AddCheckBox(j, arow, false, false);
cells[j, arow] := fieldbyname('depno').asstring + ' - ' + fieldbyname('name').asstring;
cells[j + m_colcount * 2, arow] := fieldbyname('depno').asstring;
end;
end;
28: //'select depno,name from depno order by depno'
case i of
0:
begin
AddCheckBox(j, arow, true, false);
cells[j, arow] := fieldbyname('room').asstring;
end;
//1: cells[j, arow] := getpartstr(rcls_list[fieldbyname('rclass').asinteger], '-', '', false);
end;
29: //'select mn_ord,mn_level,mn_sort,mn_name,caption,descrip from menudyb order by mn_ord,mn_level,mn_sort';
case i of
0:
begin
s := fieldbyname('depno').asstring;
if s <> s1 then
begin
str_grid_wy(sg_jl, arow);
if pos('**', cells[0, arow - 1]) > 0 then
arow := arow - 1;
j := 0;
cells[j, arow] := ' ** ' + fieldbyname('aa').asstring + ' **';
MergeCells(0, arow, m_colcount, 1);
str_grid_wy(sg_jl, arow);
j := 0;
end;
AddCheckBox(j, arow, false, false);
cells[j, arow] := fieldbyname('opno').asstring + ' - ' + fieldbyname('name').asstring;
s1 := s;
end;
end;
31: //'select depno,name from depno order by depno'
case i of
0:
begin
AddCheckBox(j, arow, true, false);
cells[j, arow] := fields.Fields[i].asstring + ' - ' + fieldbyname('name').asstring;
end;
end;
end;
inc(j);
end;
next;
if eof then
break;
end;
end;
close;
end;
end;
function SpeedInput(btime, etime: Cardinal): boolean; //n-毫秒
begin
result := false;
if etime - btime <= 1000 then
begin
result := true;
end;
end;
procedure replace_mask(Sender: TObject; m_mask: string = '#,##0.0');
var
i: Integer;
qrtext: TQRDBText;
qrexpr: TQRExpr;
begin
for i := 0 to (Sender as TForm).ComponentCount - 1 do
begin
if ((Sender as TForm).Components[i] is TQRDBText) then
begin
qrtext := TQRDBText((Sender as TForm).Components[I]);
if qrtext.mask = '#,##0.0' then
qrtext.mask := '#,##0.00'
else
if qrtext.mask = '#,###.#' then
qrtext.mask := '#,###.##';
end
else
if ((Sender as TForm).Components[i] is TQRExpr) then
begin
qrexpr := TQRExpr((Sender as TForm).Components[I]);
if qrexpr.mask = '#,##0.0' then
qrexpr.mask := '#,##0.00'
else
if qrexpr.mask = '#,###.#' then
qrexpr.mask := '#,###.##';
end;
end;
end;
function IsEMail(EMail: string): Boolean;
var
s: string;
ETpos: Integer;
begin
ETpos := pos('@', EMail);
if ETpos > 1 then
begin
s := copy(EMail, ETpos + 1, Length(EMail));
if (pos('.', s) > 1) and (pos('.', s) < length(s)) then
Result := true
else
Result := false;
end
else
Result := false;
end;
procedure chg_prnsize(sender: TQuickRep);
begin
//if (gint_psize = 1) and (sender.page.Orientation = poPortrait) then
with sender.Page do
begin
PaperSize := A4;
LeftMargin := 2;
TopMargin := 20;
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -