📄 upublcbrower.pas
字号:
unit UpublcBrower;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Buttons, ComCtrls, ImgList, Grids, DBGrids,
Menus, Mask, DBCtrls;
type
TfrmPublicBrower = class(TForm)
Panel1: TPanel;
GroupBox2: TGroupBox;
Splitter1: TSplitter;
Panel2: TPanel;
ImageList1: TImageList;
GroupBox3: TGroupBox;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
GroupBox1: TGroupBox;
DBGrid1: TDBGrid;
HeaderControl1: THeaderControl;
ComboBox1: TComboBox;
StatusBar1: TStatusBar;
TreeView1: TTreeView;
Label1: TLabel;
Label7: TLabel;
Label8: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Edit8: TEdit;
Edit9: TEdit;
Label9: TLabel;
Edit10: TEdit;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure ComboBox1DropDown(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TreeView1Click(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmPublicBrower: TfrmPublicBrower;
implementation
uses Mydata;
{$R *.dfm}
procedure TfrmPublicBrower.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmPublicBrower.ComboBox1DropDown(Sender: TObject);
begin
ComboBox1.Items.Clear;
with dm.AQItems do
begin
close;
sql.Clear;
sql.Add('select distinct(ProName) from projectitem where AssignDate is NOT NULL');
open;
while not dm.AQItems.Eof do
begin
Combobox1.Items.Add(dm.AQItems.FieldValues['ProName']);
dm.AQItems.Next;
end;
end;
end;
procedure TfrmPublicBrower.ComboBox1Change(Sender: TObject);
var
Tempstr:string;
i:integer;
begin
TempStr:=Trim(ComboBox1.Text);
if TreeView1.Items.GetFirstNode.Text=TempStr then
begin
TreeView1.Items.GetFirstNode.Selected:=True;
end
else
begin
for i:=1 to TreeView1.Items.Count do
begin
if TreeView1.Items.Item[i].Text=TempStr then
begin
TreeView1.SetFocus;
TreeView1.Items.Item[i].Selected :=True;
Break;
end
else
Continue;
end;
end;
end;
procedure TfrmPublicBrower.FormShow(Sender: TObject);
var
i,j:integer;
Node1,node2:TTreeNode;
category:string;
begin
TreeView1.Images:=ImageList1;
with dm.AQStatus do
begin
SQL.Clear;
SQL.Add('SELECT DISTINCT Status');
SQL.Add('FROM ProjectItem where AssignDate is NOT NULL ');
Open;
end;
while not dm.AQStatus.Eof do
begin
if not dm.AQStatus.Eof then
begin
for i:=0 to dm.AQStatus.RecordCount-1 do
begin
if (dm.AQStatus.FieldValues['status']='否') then
begin
category:='未完成业务';
end
else if (dm.AQStatus.FieldValues['status']='是') then
begin
category:='已完成业务';
end;
node1:=treeview1.Items.AddObject(nil,category,nil);
Node1.ImageIndex:=1;
node1.SelectedIndex:=1;
with dm.AQProName do
begin
close;
sql.Clear;
sql.Add('select distinct ProName from ProjectItem where status='''+dm.AQStatus.FieldValues['status']+''' and AssignDate is NOT NULL ');
open;
end;
if not dm.AQProName.Eof then
begin
for j:=0 to dm.AQProName.RecordCount-1 do
begin
node2:=treeview1.Items.Addchild(node1,dm.AQProName.FieldValues['ProName']);
node2.ImageIndex:=0;
node2.SelectedIndex:=0;
dm.AQProName.Next;
end;
end;
dm.AQStatus.Next;
end;
end;
end;
end;
procedure TfrmPublicBrower.TreeView1Click(Sender: TObject);
var
StatusStr:String;
StatusTemp:string;
begin
if TreeView1.Selected.Level=0 then
begin
if TreeView1.Selected.Text='未完成业务' then
begin
StatusStr:='否';
StatusTemp:='本公司尚有未完成的项目个数:';
end;
if TreeView1.Selected.Text='已完成业务' then
begin
StatusStr:='是';
StatusTemp:='本公司已完成的项目个数:';
end;
with dm.AQItems do
begin
close;
sql.Clear;
sql.Add('select * from projectitem where status='''+StatusStr+''' and AssignDate is NOT NULL');
open;
dm.ATItems.Clone(dm.AQItems);
StatusBar1.SimpleText:=StatusTemp+IntToStr(dm.AQItems.RecordCount);
end;
end;
if TreeView1.Selected.Level=1 then
begin
with dm.AQItems do
begin
close;
sql.Clear;
sql.Add('select * from projectitem where ProName='''+TreeView1.Selected.Text+''' and AssignDate is NOT NULL');
open;
dm.ATItems.Clone(dm.AQItems);
if dm.AQItems.FieldByName('status').AsString='否' then
StatusBar1.SimpleText:=TreeView1.Selected.Text+'还没有完成,加油啊!'
else
StatusBar1.SimpleText:=TreeView1.Selected.Text+'已完成,请查看是否付清相关款项!';
end;
end;
end;
procedure TfrmPublicBrower.DBGrid1CellClick(Column: TColumn);
var
TempCustomer:string;
begin
if DBGrid1.DataSource.DataSet.IsEmpty then Exit
else TempCustomer:=dm.ATItems.FieldValues['customname'];
with dm.AQItems do
begin
close;
sql.Clear;
sql.Add('select * from Customers,ProjectItem where Customers.cusname=ProjectItem.customname');
sql.Add('and Customers.cusname='''+TempCustomer+'''');
open;
if dm.AQItems.FieldCount>0 then
begin
Edit1.Text:=dm.AQItems.fieldbyname('CustomerID').AsString;
Edit2.Text:=dm.AQItems.fieldbyname('Cusname').AsString;
Edit3.Text:=dm.AQItems.fieldbyname('Address').AsString;
Edit4.Text:=dm.AQItems.fieldbyname('Telephone').AsString;
Edit5.Text:=dm.AQItems.fieldbyname('Email').AsString;
Edit6.Text:=dm.AQItems.fieldbyname('DeptName').AsString;
Edit7.Text:=dm.AQItems.fieldbyname('SalesmanName').AsString;
Edit8.Text:=dm.AQItems.fieldbyname('Chief').AsString;
Edit10.Text:=dm.AQItems.fieldbyname('FinishDate').AsString;
end;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -