📄 frm_bussinessmanedit.pas
字号:
unit Frm_BussinessManEdit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Frm_Cargo, XPMenu, StdCtrls, DB, ADODB;
type
TFrmBussinessManEdit = class(TFrmCargo)
Label1: TLabel;
EdtCode: TEdit;
Label2: TLabel;
EdtName: TEdit;
Label3: TLabel;
CmbArea: TComboBox;
Label12: TLabel;
CmbDept: TComboBox;
Label5: TLabel;
CmbType: TComboBox;
Label4: TLabel;
EdtRemark: TEdit;
BtnAdd: TButton;
BtnSave: TButton;
BtnClose: TButton;
QryTemp: TADOQuery;
procedure BtnAddClick(Sender: TObject);
procedure BtnSaveClick(Sender: TObject);
procedure BtnCloseClick(Sender: TObject);
procedure CmbDeptExit(Sender: TObject);
procedure FormActivate(Sender: TObject);
private
{ Private declarations }
public
IsEdit: Boolean;
BussinessManCode: string;
{ Public declarations }
end;
var
FrmBussinessManEdit: TFrmBussinessManEdit;
implementation
uses Frm_Main, Frm_BussinessMan;
{$R *.dfm}
procedure TFrmBussinessManEdit.BtnAddClick(Sender: TObject);
begin
inherited;
EdtCode.Text := '';
EdtName.Text := '';
CmbArea.Text := '';
CmbDept.Text := '';
CmbType.Text := '';
EdtRemark.Text := '';
BussinessManCode := '';
BtnAdd.Enabled := False;
IsEdit := False;
EdtCode.SetFocus;
end;
procedure TFrmBussinessManEdit.BtnSaveClick(Sender: TObject);
var
SqlStr: string;
ArrayCount: Integer;
ValueArray: array[0..20] of string;
BeUpdateCode: Boolean;
I: Integer;
begin
if FrmMain.IncludeValue('普通代码维护') then
else
begin
ShowMessage('对不起,你不具有该操作的权限!');
exit;
end;
if trim(EdtCode.Text) = '' then
begin
ShowMessage('代码不能够为空,请输入');
EdtCode.SetFocus;
exit;
end;
if trim(EdtCode.Text) <> BussinessManCode then //判断主健是否存在
begin
if FrmMain.CheckExistCount('Code', EdtCode.Text, 'BussinessMan') > 0 then
begin
ShowMessage('代码已经存在,请重新输入');
EdtCode.SetFocus;
exit;
end;
end;
if IsEdit then
begin
try
FrmMain.UseDB.BeginTrans;
BeUpdateCode := false;
if UpperCase(trim(EdtCode.Text)) = UpperCase(BussinessManCode) then
else
begin
BeUpdateCode := true;
if (FrmMain.CheckExistCount('BussinessCode', BussinessManCode, 'CustomerInfo') > 0) and (BussinessManCode <> EdtCode.Text) then
begin
if MessageDlg('该代码已经使用,不能够进行修改,,是否继续执行,请确定!', mtConfirmation, [mbYes,mbNo],0) = mrno then
begin
EdtCode.Text := BussinessManCode;
frmMain.UseDB.RollbackTrans;
exit;
end;
//更新港口信息
SqlStr := 'UpDate CustomerInfo set BussinessCode=''' + trim(EdtCode.Text) + ''' where BussinessCode=''' + BussinessManCode + '''';
if FrmMain.ExecSQL(SqlStr) then
else
begin
ShowMessage('更新代码记录失败,请检查!');
exit;
end;
end
else
begin
BeUpdateCode := true;
end;
end;
SqlStr := '';
FrmMain.UpStr(SqlStr, 'BussinessMan');
if BeUpdateCode then
FrmMain.UpStr(SqlStr, 'Code', trim(EdtCode.text), ',');
FrmMain.UpStr(SqlStr, 'Name', trim(EdtName.text), ',');
FrmMain.UpStr(SqlStr, 'Area', trim(CmbArea.text), ',');
FrmMain.UpStr(SqlStr, 'Dept', trim(FrmMain.GetFieldText(CmbDept.Text, 1)), ',');
FrmMain.UpStr(SqlStr, 'Type', trim(CmbType.text), ',');
FrmMain.UpStr(SqlStr, 'Remark', trim(EdtRemark.text), '');
FrmMain.UpStr(SqlStr, 'Code=', trim(BussinessManCode), 'w');
if FrmMain.ExecSQL(SqlStr) then
else
begin
ShowMessage('更新代码记录失败,请检查!');
exit;
end;
BussinessManCode := EdtCode.Text;
ValueArray[0] := EdtCode.Text;
ValueArray[1] := EdtName.Text;
ValueArray[2] := CmbArea.Text;
ValueArray[3] := trim(FrmMain.GetFieldText(CmbDept.Text, 1));
ValueArray[4] := trim(FrmMain.GetFieldText(CmbDept.Text, 2));
ValueArray[5] := trim(CmbType.Text);
ValueArray[6] := trim(EdtRemark.Text);;
ArrayCount := 6;
FrmMain.RefeshOne(ValueArray, ArrayCount, FrmBussinessMan.lv);
FrmMain.UseDB.CommitTrans;
except
FrmMain.UseDB.RollbackTrans;
ShowMessage('更新代码记录失败,请检查!');
exit;
end;
end
else
begin
try
SqlStr := 'Insert Into BussinessMan(Code,Name,Area,Dept,Type,Remark) values(';
FrmMain.InsStr(SqlStr, trim(EdtCode.text), ',');
FrmMain.InsStr(SqlStr, trim(EdtName.text), ',');
FrmMain.InsStr(SqlStr, trim(CmbArea.text), ',');
FrmMain.InsStr(SqlStr, FrmMain.GetFieldText(CmbDept.Text, 1), ',');
FrmMain.InsStr(SqlStr, trim(CmbType.text), ',');
FrmMain.InsStr(SqlStr, trim(EdtRemark.text), '');
if FrmMain.ExecSQL(SqlStr) then
else
begin
ShowMessage('插入记录失败,请检查!');
exit;
end;
IsEdit := true;
BtnAdd.Enabled := True;
ValueArray[0] := EdtCode.Text;
ValueArray[1] := EdtName.Text;
ValueArray[2] := CmbArea.Text;
ValueArray[3] := trim(FrmMain.GetFieldText(CmbDept.Text, 1));
ValueArray[4] := trim(FrmMain.GetFieldText(CmbDept.Text, 2));
ValueArray[5] := trim(CmbType.Text);
ValueArray[6] := trim(EdtRemark.Text);;
ArrayCount := 6;
FrmMain.AddListView(ValueArray, ArrayCount, FrmBussinessMan.lv);
BussinessManCode := EdtCode.Text;
except
ShowMessage('插入记录失败,请检查!');
exit;
end;
end;
if CmbArea.Text <> '' then
begin
for i := 0 to CmbArea.Items.Count - 1 do
begin
if CmbArea.Text = CmbArea.Items[i] then
Exit;
end;
CmbArea.Items.Add(CmbArea.Text);
CmbArea.Refresh;
end;
if CmbType.Text <> '' then
begin
for i := 0 to CmbType.Items.Count - 1 do
begin
if CmbType.Text = CmbType.Items[i] then
Exit;
end;
CmbType.Items.Add(CmbType.Text);
CmbType.Refresh;
end;
end;
procedure TFrmBussinessManEdit.BtnCloseClick(Sender: TObject);
begin
inherited;
Close;
end;
procedure TFrmBussinessManEdit.CmbDeptExit(Sender: TObject);
begin
inherited;
CmbDept.Text := Frmmain.CheckComboBox(CmbDept);
end;
procedure TFrmBussinessManEdit.FormActivate(Sender: TObject);
var
SqlStr: string;
begin
inherited;
SqlStr := 'Select Code,CName from DeptmentInfo';
FrmMain.Full_FilterCombobox(CmbDept, SqlStr, 'Code', 'CName');
EdtCode.SetFocus;
SqlStr:='Select distinct Area from BussinessMan where Area <>''''';
FrmMain.Full_FilterCombobox(CmbArea,Sqlstr,'Area');
SqlStr:='Select distinct Type from BussinessMan where Type<>''''';
Frmmain.Full_FilterCombobox(CmbType,Sqlstr,'Type');
if IsEdit then
begin
with FrmBussinessMan do
begin
try
with QryTemp do
begin
Close;
sql.Clear;
Sql.Text := 'Select Code,Name,Area,Dept,Type,Remark From BussinessMan Where Code=''' + LV.Selected.Caption + '''';
Open;
EdtCode.Text := FieldByname('Code').AsString;
EdtName.Text := FieldByname('Name').AsString;
CmbArea.Text := FieldByname('Area').AsString;
CmbDept.Text := FrmMain.SetComboBoxText(FieldByname('Dept').AsString, CmbDept);
CmbType.Text := FieldByname('Type').AsString;
EdtRemark.Text := FieldByname('Remark').AsString;
BussinessManCode := FieldByname('Code').AsString;
end;
except
if QryTemp.Active then QryTemp.Close;
ShowMessage('查询错误,返回!');
Exit;
end;
end;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -