2025-04-30 20:02:56 +08:00
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 [ 3 2 ] ;
FdDysName: string [ 3 2 ] ;
end ;
var
BB: array [ 0 .. 5 0 0 ] of FdDy;
i, j: Integer ;
begin
with ADOTmp do
2025-07-10 16:28:49 +08:00
begin
2025-04-30 20:02:56 +08:00
Close;
2025-07-10 16:28:49 +08:00
sql. Clear;
2025-04-30 20:02:56 +08:00
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
2025-07-10 16:28:49 +08:00
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
2025-04-30 20:02:56 +08:00
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 ) * 2 0 + 1 ;
for i : = 0 to 1 9 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 .