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

📄 u_web_userm.pas

📁 以前写的一个利用P2P 技术的一个通讯的例子。里面用到了 DBISAM 、INDY 控件。
💻 PAS
📖 第 1 页 / 共 5 页
字号:
                        7: cells[i, arow] := trans_lst_wy(fields.fields[i].asinteger, rst_list, true);
                        10: cells[i, arow] := trans_lst_wy(fields.fields[i].asinteger, dtype_list, true);
                        11: cells[i, arow] := currtostrf(fields.fields[i].ascurrency, fffixed, gint_dec);
                        else
                           cells[i, arow] := fields.fields[i].asstring;
                     end;
                  cells[colcount, arow] := fieldbyname('status').asstring;
                  cells[colcount + 1, arow] := fieldbyname('bflsh').asstring;
                  cells[colcount + 2, arow] := fieldbyname('room').asstring;
                  next;
               end;
            close;
         end;
end;

procedure TF_WEB_USERM.calcol;
var
   i, j: integer;
   rate: double;
begin
   //if m_bcalcol and check_sg(sg_jl) then
   if check_sg(sg_jl) then
      with sg_jl do
         begin
            str_grid_wy(sg_jl, arow);
            for i := 0 to colcount - 1 do
               if pos('.', trim(cells[i, 0])) = 1 then
                  begin
                     rate := 0;
                     for j := 1 to rowcount - 2 do
                        rate := rate + strtocurr(getstr(cells[i, j]));
                     if (arow > 1) then
                        if (pos('.', cells[i, arow - 1]) > 0) then
                           cells[i, arow] := currtostrf(rate, fffixed, gint_dec)
                        else
                           cells[i, arow] := currtostrf(rate, fffixed, 0);
                  end
               else
                  cells[i, arow] := '';

            cells[0, arow] := iif(m_lang = 1, ' 合计', ' TOTAL');
            fixedfooters := 1;
            for i := 1 to colcount - 1 do
               if cells[i, arow] = '' then
                  begin
                     cells[i, arow] := inttostr(arow - 1);
                     break;
                  end;
         end;
end;

procedure TF_WEB_USERM.FormClose(Sender: TObject;
   var Action: TCloseAction);
begin
   action := cafree;
end;

procedure TF_WEB_USERM.FormCreate(Sender: TObject);
//var
//   s: string;
begin
   tncp.Create(self);
   m_str := tran_str;
   m_diff := g_diff;
   g_bsel := false;
   sg_jl.defaultRowHeight := 20;
   days[1] := 'Sun';
   days[2] := 'Mon';
   days[3] := 'Tue';
   days[4] := 'Wed';
   days[5] := 'Thu';
   days[6] := 'Fri';
   days[7] := 'Sat';
   Application.HintHidePause := 10000;
   sethintfont('Arial', 10, clBlue);
   SetHintStyle(hsRoundRect, 2, false, taLeftJustify);
   gridop := [gorowselect];
   m_bcolor := true;
   case m_diff of
      0, 5: display_0;
      1: display_1;
      2: display_2;
      3: display_3;
      4: display_4;
      6: display_6;
      7: display_7;
      8: display_8;
      9: display_9;
      10: display_10;
      11, 12: display_11;
      13: display_13;
      14: display_14;
      15: display_15;
      16: display_16;
      17: display_17;
      18:
         begin
            sg_jl.SortSettings.Show := true;
            display_szw_hskpmsg;
            check_paying_room;
            bn_accept.Visible := false;
            if gstr_depno = dep_kf then
               begin
                  bn_accept.Visible := true;
                  //bn_ser.Caption := '刷新[F3]';
                  //bn_ser.Visible := true;
                  timer1.Enabled := true;
               end;
         end;
      21: display_21;
      22:
         begin
            sg_jl.TabOrder := 0;
            bn_ser.visible := true;
            display_22;
         end;
      23:
         begin
            sg_jl.TabOrder := 0;
            bn_ser.visible := true;
            display_23;
         end;
      24: display_24;
      25:
         begin
            sg_jl.TabOrder := 0;
            display_25;
         end;
      26: display_26;
      27: display_27;
      28: display_28;
      29: display_29;
      30: display_30;
      31: display_31;
      32: display_32;
      33: display_33;
      34: display_34;
      35: display_35;
      36: display_36;
      37: display_37;
      38:
         begin
            sg_jl.SortSettings.Show := true;
            display_szw_hskpmsg;
            check_paying_room(1);
         end;

   end;
end;

procedure TF_WEB_USERM.paste_bmp;
var
   i, j, k: integer;
   s, s1, folio_m: string;
begin
   case m_diff of
      0, 5:
         with sg_jl do
            for i := 2 to rowcount - 1 do
               for j := 6 to colcount - 1 do
                  begin
                     s := getstr(cells[j + colcount, i]);
                     folio_m := analy_str('folio_m', s);
                     s1 := analy_str('rst', s);
                     if length(s1) > 0 then
                        k := strtoint(s1)
                     else
                        k := -1;
                     s1 := analy_str('fsave', s);
                     if not ((s1 = '') or (s1 = '0')) then
                        k := 8;
                     //if (cells[j + colcount * 2, i] <> '1') then //  or (folio_m = '')
                     //   k := -1;
                     case k of
                        0: addimageidx(j, i, 0, haCenter, vaCenter);
                        1: addimageidx(j, i, 1, haCenter, vaCenter);
                        2: addimageidx(j, i, 2, haCenter, vaCenter);
                        3: addimageidx(j, i, 3, haCenter, vaCenter);
                        4: addimageidx(j, i, 4, haCenter, vaCenter);
                        5: addimageidx(j, i, 5, haCenter, vaCenter);
                        6: addimageidx(j, i, 6, haCenter, vaCenter);
                        7: addimageidx(j, i, 7, haCenter, vaCenter);
                        8: addimageidx(j, i, 8, haCenter, vaCenter);
                        else
                           addimageidx(j, i, 9, haCenter, vaAboveText);
                     end;
                  end;
      16:
         with sg_jl do
            for i := 1 to rowcount - 1 do
               for j := 6 to colcount - 1 do
                  begin
                     s := getstr(cells[j + colcount, i]);
                     folio_m := analy_str('folio_m', s);
                     s1 := analy_str('rst', s);
                     if length(s1) > 0 then
                        k := strtoint(s1)
                     else
                        k := -1;
                     s1 := analy_str('fsave', s);
                     if not ((s1 = '') or (s1 = '0')) then
                        k := 8;
                     //if (cells[j + colcount * 2, i] <> '1') then //  or (folio_m = '')
                     //   k := -1;
                     case k of
                        0: addimageidx(j, i, 0, haCenter, vaCenter);
                        1: addimageidx(j, i, 1, haCenter, vaCenter);
                        2: addimageidx(j, i, 2, haCenter, vaCenter);
                        3: addimageidx(j, i, 3, haCenter, vaCenter);
                        4: addimageidx(j, i, 4, haCenter, vaCenter);
                        5: addimageidx(j, i, 5, haCenter, vaCenter);
                        6: addimageidx(j, i, 6, haCenter, vaCenter);
                        7: addimageidx(j, i, 7, haCenter, vaCenter);
                        8: addimageidx(j, i, 8, haCenter, vaCenter);
                        else
                           addimageidx(j, i, 9, haCenter, vaAboveText);
                     end;
                  end;
      8:
         with sg_jl do
            for i := 1 to rowcount - 1 do
               for j := 6 to colcount - 1 do
                  begin
                     s := getstr(cells[j + colcount, i], '');
                     if s <> '' then
                        addimageidx(j, i, 15, haCenter, vaAboveText)
                     else
                        addimageidx(j, i, 9, haCenter, vaAboveText);
                  end;
      9:
         with sg_jl do
            for i := 1 to rowcount - 1 do
               for j := 2 to colcount - 1 do
                  begin
                     s := getstr(cells[j + colcount, i], '');
                     if s <> '' then
                        addimageidx(j, i, 15, haCenter, vaAboveText)
                     else
                        addimageidx(j, i, 9, haCenter, vaAboveText);
                  end;
   end;
end;

procedure TF_WEB_USERM.display_0;
var
   i, j, k, rcls, m_col: integer;
   rst_rsv, rst_vdb, 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);
   if m_diff = 5 then
      rcls := strtoint(analy_str('rclass', m_str))
   else
      rcls := trans_lst_wy(analy_str('rclass', m_str), rcls_list, true);
   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*RM*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));

⌨️ 快捷键说明

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