236 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			ObjectPascal
		
	
	
	
	
	
			
		
		
	
	
			236 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			ObjectPascal
		
	
	
	
	
	
unit U_SCPersonColor;
 | 
						||
 | 
						||
interface
 | 
						||
 | 
						||
uses
 | 
						||
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 | 
						||
  Dialogs, Buttons, DB, ADODB, StdCtrls;
 | 
						||
 | 
						||
type
 | 
						||
  TfrmSCPersonColor = class(TForm)
 | 
						||
    ScrollBox1: TScrollBox;
 | 
						||
    btn58: TSpeedButton;
 | 
						||
    btn9: TSpeedButton;
 | 
						||
    btn10: TSpeedButton;
 | 
						||
    btn11: TSpeedButton;
 | 
						||
    btn12: TSpeedButton;
 | 
						||
    btn59: TSpeedButton;
 | 
						||
    btn16: TSpeedButton;
 | 
						||
    btn17: TSpeedButton;
 | 
						||
    btn18: TSpeedButton;
 | 
						||
    btn19: TSpeedButton;
 | 
						||
    btn60: TSpeedButton;
 | 
						||
    btn23: TSpeedButton;
 | 
						||
    btn24: TSpeedButton;
 | 
						||
    btn25: TSpeedButton;
 | 
						||
    btn26: TSpeedButton;
 | 
						||
    btn61: TSpeedButton;
 | 
						||
    btn31: TSpeedButton;
 | 
						||
    btn32: TSpeedButton;
 | 
						||
    btn33: TSpeedButton;
 | 
						||
    ADOTmp: TADOQuery;
 | 
						||
    Label27: TLabel;
 | 
						||
    Label1: TLabel;
 | 
						||
    Button3: TButton;
 | 
						||
    Button1: TButton;
 | 
						||
    procedure FormDestroy(Sender: TObject);
 | 
						||
    procedure FormShow(Sender: TObject);
 | 
						||
    procedure btn1Click(Sender: TObject);
 | 
						||
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
 | 
						||
    procedure Button1Click(Sender: TObject);
 | 
						||
    procedure Button3Click(Sender: TObject);
 | 
						||
  private
 | 
						||
    CPage: Integer;
 | 
						||
    procedure InitPerson(page: Integer);
 | 
						||
    { Private declarations }
 | 
						||
  public
 | 
						||
    FlagStr: string;
 | 
						||
    FName, FSJZL, FType: string;
 | 
						||
    { Public declarations }
 | 
						||
  end;
 | 
						||
 | 
						||
var
 | 
						||
  frmSCPersonColor: TfrmSCPersonColor;
 | 
						||
 | 
						||
implementation
 | 
						||
 | 
						||
uses
 | 
						||
  U_DataLink;
 | 
						||
 | 
						||
{$R *.dfm}
 | 
						||
 | 
						||
procedure TfrmSCPersonColor.FormDestroy(Sender: TObject);
 | 
						||
begin
 | 
						||
  frmSCPersonColor := nil;
 | 
						||
end;
 | 
						||
 | 
						||
procedure TfrmSCPersonColor.InitPerson(page: Integer);
 | 
						||
type
 | 
						||
  FdDy = record
 | 
						||
    inc: integer;
 | 
						||
    FDdys: string[32];
 | 
						||
    FdDysName: string[32];
 | 
						||
  end;
 | 
						||
var
 | 
						||
  BB: array[0..500] of FdDy;
 | 
						||
  i, j: Integer;
 | 
						||
begin
 | 
						||
  with ADOTmp do
 | 
						||
  begin
 | 
						||
    Close;
 | 
						||
    sql.Clear;
 | 
						||
    if FTYPE = 'KH' then
 | 
						||
    begin
 | 
						||
      sql.Add('select AA.*,row_number () over (order by name) as keyNo from(select DISTINCT zdyname as name,note from kh_zdy where type=''CustomerNoName'')AA');
 | 
						||
//       sql.Add('select ZDYName from KH_Zdy where Type=''' + flag + ''' order by ZDYNO ');
 | 
						||
    end
 | 
						||
    else if FTYPE = 'BQKH' then
 | 
						||
    begin
 | 
						||
      sql.Add('select AA.*,row_number () over (order by name) as keyNo from(select DISTINCT zdyname as name,note from kh_zdy where type=''BQCustomer'')AA');
 | 
						||
    end
 | 
						||
    else if FTYPE = 'PM' then
 | 
						||
    begin
 | 
						||
      sql.Add('select AA.*,row_number () over (order by name) as keyNo from(select DISTINCT zdyname as name,note from kh_zdy where type=''PRTCodeName'')AA');
 | 
						||
    end
 | 
						||
    else if FTYPE = 'GY' then
 | 
						||
    begin
 | 
						||
      sql.Add('select AA.*,row_number () over (order by name) as keyNo from(select DISTINCT zdyname as name,note from kh_zdy where type=''PRTgy'')AA');
 | 
						||
    end
 | 
						||
    else if FTYPE = 'YS' then
 | 
						||
    begin
 | 
						||
      sql.Add('select AA.*,row_number () over (order by name) as keyNo from(select DISTINCT zdyname as name,note from kh_zdy where type=''PRTColor'')AA');
 | 
						||
    end
 | 
						||
    else if FTYPE = 'HX' then
 | 
						||
    begin
 | 
						||
      sql.Add('select AA.*,row_number () over (order by name) as keyNo from(select DISTINCT zdyname as name,note from kh_zdy where type=''PRTHX'')AA');
 | 
						||
    end
 | 
						||
    else if FTYPE = 'kuanno' then
 | 
						||
    begin
 | 
						||
      sql.Add('select AA.*,row_number () over (order by name) as keyNo from(select DISTINCT zdyname as name,note from kh_zdy where type=''PRTkuanno'')AA');
 | 
						||
    end
 | 
						||
    else if FTYPE = 'SH' then
 | 
						||
    begin
 | 
						||
      sql.Add('select AA.*,row_number () over (order by name) as keyNo from(select DISTINCT zdyname as name,note from kh_zdy where type=''SOrddefstr1'')AA');
 | 
						||
    end;
 | 
						||
 | 
						||
 | 
						||
 | 
						||
//    showmessage(sql.text);
 | 
						||
    Open;
 | 
						||
  end;
 | 
						||
 | 
						||
  if ADOTmp.IsEmpty then
 | 
						||
  begin
 | 
						||
    Application.MessageBox('û<>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>', '<27><>ʾ', 0);
 | 
						||
    Exit;
 | 
						||
  end;
 | 
						||
 | 
						||
  j := (StrToInt(Label1.Caption) - 1) * 20 + 1;
 | 
						||
  for i := 0 to 19 do
 | 
						||
  begin
 | 
						||
 | 
						||
    with ScrollBox1 do
 | 
						||
    begin
 | 
						||
      if ADOTmp.locate('keyNo', j + i, []) then
 | 
						||
      begin
 | 
						||
//        application.MessageBox(pchar(CDS_Kuang.FieldByName('ZDYName').AsString), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
 | 
						||
        TSpeedButton(Controls[i]).Visible := True;
 | 
						||
        TSpeedButton(Controls[i]).Caption := Trim(ADOTmp.FieldByName('name').AsString);
 | 
						||
        if FTYPE = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
 | 
						||
        begin
 | 
						||
          TSpeedButton(Controls[i]).hint := Trim(ADOTmp.FieldByName('note').AsString);
 | 
						||
        end;
 | 
						||
 | 
						||
      end
 | 
						||
      else
 | 
						||
      begin
 | 
						||
        TSpeedButton(Controls[i]).Visible := False;
 | 
						||
 | 
						||
//        application.MessageBox(pchar('û<>ҵ<EFBFBD>' + inttostr(i)), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
 | 
						||
 | 
						||
      end;
 | 
						||
 | 
						||
    end;
 | 
						||
  end;
 | 
						||
 | 
						||
 | 
						||
//  with ADOTmp do
 | 
						||
//  begin
 | 
						||
//    First;
 | 
						||
//    i := 0;
 | 
						||
//    while not Eof do
 | 
						||
//    begin
 | 
						||
//      BB[i].inc := i;
 | 
						||
//      BB[i].FdDysName := Trim(fieldbyname('name').AsString);
 | 
						||
//      i := i + 1;
 | 
						||
//      Next;
 | 
						||
//    end;
 | 
						||
//  end;
 | 
						||
//  i := i - 1;
 | 
						||
//  if i > 19 then
 | 
						||
//  begin
 | 
						||
//    i := 19;
 | 
						||
//  end;
 | 
						||
//  for j := 0 to 19 do
 | 
						||
//  begin
 | 
						||
//    with ScrollBox1 do
 | 
						||
//    begin
 | 
						||
//      TSpeedButton(Controls[j]).Visible := false;
 | 
						||
//      TSpeedButton(Controls[j]).Caption := '';
 | 
						||
//      TSpeedButton(Controls[j]).Hint := '';
 | 
						||
//    end;
 | 
						||
//  end;
 | 
						||
//  for j := 0 to i do
 | 
						||
//  begin
 | 
						||
//    with ScrollBox1 do
 | 
						||
//    begin
 | 
						||
//      TSpeedButton(Controls[j]).Visible := True;
 | 
						||
//      TSpeedButton(Controls[j]).Caption := BB[j].FdDysName;
 | 
						||
//    end;
 | 
						||
//  end;
 | 
						||
end;
 | 
						||
 | 
						||
procedure TfrmSCPersonColor.FormShow(Sender: TObject);
 | 
						||
begin
 | 
						||
  InitPerson(1);
 | 
						||
  CPage := 1;
 | 
						||
end;
 | 
						||
 | 
						||
procedure TfrmSCPersonColor.btn1Click(Sender: TObject);
 | 
						||
begin
 | 
						||
  FName := Trim(TSpeedButton(Sender).Caption);
 | 
						||
  ModalResult := 1;
 | 
						||
end;
 | 
						||
 | 
						||
procedure TfrmSCPersonColor.FormClose(Sender: TObject; var Action: TCloseAction);
 | 
						||
begin
 | 
						||
  Action := caHide;
 | 
						||
end;
 | 
						||
 | 
						||
procedure TfrmSCPersonColor.Button1Click(Sender: TObject);
 | 
						||
begin
 | 
						||
  if CPage <= 1 then
 | 
						||
  begin
 | 
						||
 | 
						||
    Label1.Caption := '1';
 | 
						||
    InitPerson(1);
 | 
						||
  end
 | 
						||
  else
 | 
						||
  begin
 | 
						||
    CPage := CPage - 1;
 | 
						||
 | 
						||
    Label1.Caption := IntToStr(CPage);
 | 
						||
    InitPerson(CPage);
 | 
						||
  end;
 | 
						||
end;
 | 
						||
 | 
						||
procedure TfrmSCPersonColor.Button3Click(Sender: TObject);
 | 
						||
begin
 | 
						||
  CPage := CPage + 1;
 | 
						||
  Label1.Caption := IntToStr(CPage);
 | 
						||
  InitPerson(CPage);
 | 
						||
end;
 | 
						||
 | 
						||
end.
 | 
						||
 |