📄 part_set.pas
字号:
unit Part_Set;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, Buttons, ToolWin, Grids, DBGrids;
type
Tfrm_Part_Set = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Edit_Name: TLabeledEdit;
Edit_NO: TLabeledEdit;
Edit_TEL: TLabeledEdit;
Edit_Fax: TLabeledEdit;
Edit_Use: TEdit;
CheckBox2: TCheckBox;
Edit_POP: TComboBox;
Label1: TLabel;
ToolBar1: TToolBar;
Cmd_Add: TSpeedButton;
Cmd_Delete: TSpeedButton;
Cmd_Edit: TSpeedButton;
Cmd_Save: TSpeedButton;
Cmd_Exit: TSpeedButton;
Edit_Remark: TLabeledEdit;
GroupBox1: TGroupBox;
Edit_Company_Name: TLabeledEdit;
Edit_Company_NO: TLabeledEdit;
DBGrid1: TDBGrid;
ListBox1: TListBox;
SpeedButton1: TSpeedButton;
procedure FormShow(Sender: TObject);
procedure Cmd_SaveClick(Sender: TObject);
procedure Cmd_AddClick(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure DBGrid1CellClick(Column: TColumn);
procedure ListBox1Click(Sender: TObject);
procedure Cmd_EditClick(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frm_Part_Set: Tfrm_Part_Set;
temp_company_no:string;//公司代码
implementation
uses func, Data;
{$R *.dfm}
procedure Tfrm_Part_Set.FormShow(Sender: TObject);
var
i:Integer;
begin
if Str_Part_Code='Company_Str' then
begin
Edit_Company_Name.Text:=Trim(Str_part_Name);
Edit_Company_NO.Text:=Trim(Str_part_Name);
end;
//加载公司名称和代码
ListBox1.Clear;
with frm_data.ClientDataSet_Company do
begin
Close;
Commandtext:='';
Commandtext:='Select Distinct Company_Name from [JB_Company]';
Open;
if frm_data.ClientDataSet_Company.RecordCount>0 then
begin
while not eof do
begin
ListBox1.Items.Add(frm_data.ClientDataSet_Company.FieldByName('Company_Name').AsString);
next;
end;
end;
end;
//查询所有部门
with frm_data.Client_Part_Set do
begin
Close;
commandtext:='';
Commandtext:='Select Company_Name,Company_NO,Part_NO,Part_name,P_fax,P_TEL,P_property,P_Use_Flag,P_Remark from [V_Company_Part_View]';
Open;
if frm_data.Client_Part_Set.RecordCount>0 then
begin
frm_data.Data_Part_Set.DataSet:=frm_data.Client_Part_Set;
frm_data.Data_Part_Set.Enabled:=true;
DBGrid1.DataSource:=frm_data.Data_Part_Set;
DBGrid1.Columns[0].Title.caption:='公司名称';
DBGrid1.Columns[1].Title.caption:='公司代码';
DBGrid1.Columns[2].Title.caption:='部门代码';
DBGrid1.Columns[3].Title.caption:='部门名称';
DBGrid1.Columns[4].Title.caption:='传真号码';
DBGrid1.Columns[5].Title.caption:='联系电话';
DBGrid1.Columns[6].Title.caption:='部门属性';
DBGrid1.Columns[7].Title.caption:='停用标志';
DBGrid1.Columns[8].Title.caption:='部门说明';
end;
end;
end;
procedure Tfrm_Part_Set.Cmd_SaveClick(Sender: TObject);
begin
if (Trim(Edit_Company_Name.Text)='') or (Trim(Edit_Company_NO.Text)='') then
begin
Application.MessageBox('错误操作!【公司名称】不能为空,请确认!',Pchar(Application.Title),MB_ICONWARNing);
Exit;
end;
if (Trim(Edit_Name.Text)='') or (Trim(Edit_NO.Text)='') then
begin
Application.MessageBox('错误操作!【部门代码】或【部门名称】不能为空,请确认!',Pchar(Application.Title),MB_ICONWARNing);
Exit;
end;
with frm_data.ClientDataSet_Add do
begin
Close;
CommandText:='';
CommandText:='Select * from [Part] where Part_name='''+Trim(Edit_name.Text)+''' and Part_No='''+Trim(Edit_No.Text)+''' and Company_NO='''+Trim(Edit_Company_No.Text)+'''';
Try
Open;
if frm_data.ClientDataSet_Add.RecordCount>0 then
begin
Application.MessageBox('操作错误!该【部门】在数据表中,已经存在请确认!!',Pchar(Application.Title),MB_ICONWarning);
Exit;
end
else
begin
with frm_data.Client_Part_Set do
begin
frm_data.Client_Part_Set.Close;
frm_data.Client_Part_Set.Open;
frm_data.Client_Part_Set.Insert;
frm_data.Client_Part_Set.FieldByName('Company_NO').AsString:=Trim(Edit_Company_NO.Text);
frm_data.Client_Part_Set.FieldByName('Part_NO').AsString:=Trim(Edit_NO.Text);
frm_data.Client_Part_Set.FieldByName('Part_name').AsString:=Trim(Edit_Name.Text);
frm_data.Client_Part_Set.FieldByName('P_fax').AsString:=Trim(Edit_Fax.Text);
frm_data.Client_Part_Set.FieldByName('P_TEL').AsString:=Trim(Edit_TEL.Text);
frm_data.Client_Part_Set.FieldByName('P_property').AsString:=Trim(Edit_POP.Text);
frm_data.Client_Part_Set.FieldByName('P_Use_Flag').AsString:=Trim(Edit_Use.Text);
frm_data.Client_Part_Set.FieldByName('P_Remark').AsString:=Trim(Edit_Remark.Text);
try
frm_data.Client_Part_Set.Post;
frm_data.Client_Part_Set.SaveToFile('Client_Part_Set.cds');
Application.MessageBox('【部门开设】,添加成功,请确认!',pchar(application.Title),mb_iconwarning);
except
application.MessageBox('【部门开设】失败,请检查连接网络是否正常或数据格式是否正确,请确认!',pchar(application.Title),mb_iconwarning);
Exit;
end;
end
end;
except
Application.MessageBox('系统错误!系统在打开【部门数据表】时出错!',Pchar(Application.Title),MB_ICONWarning);
Exit;
end;
end;
end;
procedure Tfrm_Part_Set.Cmd_AddClick(Sender: TObject);
begin
Cmd_Add.Enabled:=False;
Cmd_Edit.Enabled:=False;
Cmd_Delete.Enabled:=False;
Cmd_Save.Enabled:=True;
end;
procedure Tfrm_Part_Set.CheckBox2Click(Sender: TObject);
begin
if CheckBox2.Checked=true then
begin
Edit_Use.Text:='是';
end;
if CheckBox2.Checked=False then
begin
Edit_Use.Text:='否';
end;
end;
procedure Tfrm_Part_Set.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
frm_data.Client_Part_Set.Active:=False;
frm_data.Client_Part_Set.Close;
frm_data.ClientDataSet_Add.Active:=false;
frm_data.ClientDataSet_Add.Close;
frm_data.ClientDataSet_Company.Active:=false;
frm_data.ClientDataSet_Company.Close;
Action:=Cafree;
end;
procedure Tfrm_Part_Set.DBGrid1CellClick(Column: TColumn);
begin
Edit_Company_Name.Text:=frm_data.Client_Part_Set.FieldByName('Company_Name').AsString;
Edit_Company_NO.Text:=frm_data.Client_Part_Set.FieldByName('Company_NO').AsString;
Edit_Name.Text:=frm_data.Client_Part_Set.FieldByName('Part_name').AsString;
Edit_NO.Text:=frm_data.Client_Part_Set.FieldByName('Part_NO').AsString;
Edit_TEL.Text:=frm_data.Client_Part_Set.FieldByName('P_TEL').AsString;
Edit_Fax.Text:=frm_data.Client_Part_Set.FieldByName('P_fax').AsString;
Edit_POP.Text:=frm_data.Client_Part_Set.FieldByName('P_property').AsString;
Edit_Use.Text:=frm_data.Client_Part_Set.FieldByName('P_Use_Flag').AsString;
Edit_Remark.Text:=frm_data.Client_Part_Set.FieldByName('P_Remark').AsString;
end;
procedure Tfrm_Part_Set.ListBox1Click(Sender: TObject);
begin
//ListBox1.Items.Move(ListBox1.ItemIndex, 0);
temp_company_no:='';
Edit_Company_Name.Text:=ListBox1.Items.Strings[ListBox1.ItemIndex];
with frm_data.ClientDataSet_Company do
begin
Close;
Commandtext:='';
Commandtext:='Select Company_No from [JB_Company] where Company_Name='''+Trim(Edit_Company_Name.Text)+'''';
Open;
temp_company_no:=frm_data.ClientDataSet_Company.FieldByName('Company_NO').AsString;
Edit_Company_NO.Text:=temp_company_no;
with frm_data.Client_Part_Set do
begin
Close;
commandtext:='';
Commandtext:='Select Company_Name,Company_NO,Part_NO,Part_name,P_fax,P_TEL,P_property,P_Use_Flag,P_Remark from [V_Company_Part_View] where Company_No='''+Trim(temp_company_no)+'''';
Open;
if frm_data.Client_Part_Set.RecordCount>0 then
begin
frm_data.Data_Part_Set.DataSet:=frm_data.Client_Part_Set;
frm_data.Data_Part_Set.Enabled:=true;
DBGrid1.DataSource:=frm_data.Data_Part_Set;
DBGrid1.Columns[0].Title.caption:='公司名称';
DBGrid1.Columns[1].Title.caption:='公司代码';
DBGrid1.Columns[2].Title.caption:='部门代码';
DBGrid1.Columns[3].Title.caption:='部门名称';
DBGrid1.Columns[4].Title.caption:='传真号码';
DBGrid1.Columns[5].Title.caption:='联系电话';
DBGrid1.Columns[6].Title.caption:='部门属性';
DBGrid1.Columns[7].Title.caption:='停用标志';
DBGrid1.Columns[8].Title.caption:='部门说明';
Edit_Name.Text:=frm_data.Client_Part_Set.FieldByName('Part_name').AsString;
Edit_NO.Text:=frm_data.Client_Part_Set.FieldByName('Part_NO').AsString;
Edit_TEL.Text:=frm_data.Client_Part_Set.FieldByName('P_TEL').AsString;
Edit_Fax.Text:=frm_data.Client_Part_Set.FieldByName('P_fax').AsString;
Edit_POP.Text:=frm_data.Client_Part_Set.FieldByName('P_property').AsString;
Edit_Use.Text:=frm_data.Client_Part_Set.FieldByName('P_Use_Flag').AsString;
Edit_Remark.Text:=frm_data.Client_Part_Set.FieldByName('P_Remark').AsString;
end
else
begin
frm_data.Data_Part_Set.Enabled:=False;
Edit_Name.Text:='';
Edit_NO.Text:='';
Edit_TEL.Text:='';
Edit_Fax.Text:='';
Edit_POP.Text:='';
Edit_Use.Text:='';
Edit_Remark.Text:='';
end;
end;
end;
end;
procedure Tfrm_Part_Set.Cmd_EditClick(Sender: TObject);
begin
if (Trim(Edit_Company_Name.Text)='') or (Trim(Edit_Company_NO.Text)='') then
begin
Application.MessageBox('错误操作!【公司名称】不能为空,请确认!',Pchar(Application.Title),MB_ICONWARNing);
Exit;
end;
if (Trim(Edit_Name.Text)='') or (Trim(Edit_NO.Text)='') then
begin
Application.MessageBox('错误操作!【部门代码】或【部门名称】不能为空,请确认!',Pchar(Application.Title),MB_ICONWARNing);
Exit;
end;
if application.MessageBox('确定需要修改该部门的信息吗?请确认!',Pchar(Application.Title),Mb_Okcancel)=idok then
begin
with frm_data.ClientDataSet_Add do
begin
Close;
CommandText:='';
CommandText:='Select * from [Part]';
Try
Open;
with frm_data.Client_Part_Set do
begin
frm_data.Client_Part_Set.Close;
frm_data.Client_Part_Set.Open;
frm_data.Client_Part_Set.Edit;
frm_data.Client_Part_Set.FieldByName('Company_NO').AsString:=Trim(Edit_Company_NO.Text);
frm_data.Client_Part_Set.FieldByName('Part_NO').AsString:=Trim(Edit_NO.Text);
frm_data.Client_Part_Set.FieldByName('Part_name').AsString:=Trim(Edit_Name.Text);
frm_data.Client_Part_Set.FieldByName('P_fax').AsString:=Trim(Edit_Fax.Text);
frm_data.Client_Part_Set.FieldByName('P_TEL').AsString:=Trim(Edit_TEL.Text);
frm_data.Client_Part_Set.FieldByName('P_property').AsString:=Trim(Edit_POP.Text);
frm_data.Client_Part_Set.FieldByName('P_Use_Flag').AsString:=Trim(Edit_Use.Text);
frm_data.Client_Part_Set.FieldByName('P_Remark').AsString:=Trim(Edit_Remark.Text);
try
frm_data.Client_Part_Set.Post;
frm_data.Client_Part_Set.SaveToFile('Client_Part_Set.cds');
Application.MessageBox('【部门开设】,添加成功,请确认!',pchar(application.Title),mb_iconwarning);
except
application.MessageBox('【部门开设】失败,请检查连接网络是否正常或数据格式是否正确,请确认!',pchar(application.Title),mb_iconwarning);
Exit;
end;
end;
except
application.MessageBox('在打开【部门】数据表时失败,请检查连接网络是否正常或数据格式是否正确,请确认!',pchar(application.Title),mb_iconwarning);
Exit;
end;
end;
end;
end;
procedure Tfrm_Part_Set.SpeedButton1Click(Sender: TObject);
begin
with frm_data.Client_Part_Set do
begin
try
frm_data.Client_Part_Set.open;
frm_data.Client_Part_Set.ApplyUpdates(-1);
except
Application.MessageBox('系统错误,系统在提交【部门信息】数据库更新时出错!',Pchar(Application.Title),MB_ICONWarning);
Exit;
end;
end;
Close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -