📄 frm_filenogeneralruleedit.pas
字号:
unit Frm_FileNoGeneralRuleEdit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Frm_Cargo, StdCtrls, Buttons, XPMenu, DB, ADODB;
type
TFrmFileNoGeneralRuleEdit = class(TFrmCargo)
Label1: TLabel;
EdtFileNoPre: TEdit;
Label6: TLabel;
EdtFileNoDesc: TEdit;
Label2: TLabel;
EdtFileNoRule: TEdit;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
SpeedButton5: TSpeedButton;
Label3: TLabel;
EdtCurrentNo: TEdit;
Label23: TLabel;
CmbZeroRule: TComboBox;
Label4: TLabel;
EdtZeroData: TEdit;
Label5: TLabel;
EdtRemark: TEdit;
BtnAdd: TButton;
BtnSave: TButton;
BtnClose: TButton;
QryTemp: TADOQuery;
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure BtnAddClick(Sender: TObject);
procedure BtnSaveClick(Sender: TObject);
procedure BtnCloseClick(Sender: TObject);
procedure FormActivate(Sender: TObject);
private
{ Private declarations }
public
IsEdit: Boolean;
FileNoPre: string;
{ Public declarations }
end;
var
FrmFileNoGeneralRuleEdit: TFrmFileNoGeneralRuleEdit;
implementation
uses Frm_Main, Frm_FileNoGeneralRuleInfo;
{$R *.dfm}
procedure TFrmFileNoGeneralRuleEdit.SpeedButton1Click(Sender: TObject);
begin
inherited;
EdtFileNoRule.SelLength := 0;
EdtFileNoRule.SelText := '<YYYY>';
end;
procedure TFrmFileNoGeneralRuleEdit.SpeedButton2Click(Sender: TObject);
begin
inherited;
EdtFileNoRule.SelLength := 0;
EdtFileNoRule.SelText := '<YY>';
end;
procedure TFrmFileNoGeneralRuleEdit.SpeedButton3Click(Sender: TObject);
begin
inherited;
EdtFileNoRule.SelLength := 0;
EdtFileNoRule.SelText := '<MM>';
end;
procedure TFrmFileNoGeneralRuleEdit.SpeedButton4Click(Sender: TObject);
begin
inherited;
EdtFileNoRule.SelLength := 0;
EdtFileNoRule.SelText := '<DD>';
end;
procedure TFrmFileNoGeneralRuleEdit.SpeedButton5Click(Sender: TObject);
begin
inherited;
EdtFileNoRule.SelLength := 0;
EdtFileNoRule.SelText := '<XXXX>';
end;
procedure TFrmFileNoGeneralRuleEdit.BtnAddClick(Sender: TObject);
begin
inherited;
EdtFileNoPre.Text := '';
EdtFileNoDesc.Text := '';
EdtFileNORule.Text := '';
EdtCurrentNo.Text := '';
CmbZeroRule.Text := '';
EdtZeroData.Text := '';
EdtRemark.Text := '';
FileNoPre := '';
IsEdit := False;
BtnAdd.Enabled := False;
EdtFileNoPre.SetFocus;
end;
procedure TFrmFileNoGeneralRuleEdit.BtnSaveClick(Sender: TObject);
var
SqlStr: string;
ArrayCount: Integer;
ValueArray: array[0..20] of string;
BeUpdateCode: Boolean;
begin
if FrmMain.IncludeValue('工作号维护') then
else
begin
ShowMessage('对不起,你不具有该操作的权限!');
exit;
end;
if trim(EdtFileNOPre.Text) = '' then
begin
ShowMessage('工作号不能够为空,请输入');
EdtFileNoPre.SetFocus;
exit;
end;
if trim(EdtFileNoDesc.Text) = '' then
begin
ShowMessage('中文名称不能够为空,请输入');
EdtFileNoDesc.SetFocus;
exit;
end;
if trim(EdtCurrentNo.Text) = '' then
begin
ShowMessage('当前数值不能够为空,请输入');
EdtCurrentNo.SetFocus;
exit;
end;
if FrmMain.TestTextNumber(trim(EdtCurrentNo.Text), 'integer') then
else
begin
ShowMessage('请在当前编号中输入数值类型的信息!');
EdtCurrentNo.SetFocus;
exit;
end;
if FrmMain.TestTextNumber(trim(EdtZeroData.Text), 'integer') then
else
begin
ShowMessage('请在归零值中输入数值类型的信息!');
EdtZeroData.SetFocus;
exit;
end;
if trim(EdtFileNoPre.Text) <> FileNoPre then //判断主健是否存在
begin
if FrmMain.CheckExistCount('FileNoPre', trim(EdtFileNoPre.Text),
'FileNoInfo') > 0 then
begin
ShowMessage('编号已经存在,请重新输入');
EdtFileNoPre.SetFocus;
exit;
end;
end;
if IsEdit then
begin
try
BeUpdateCode := false;
if UpperCase(EdtFileNoPre.Text) = UpperCase(FileNoPre) then
else
begin
BeUpdateCode := true;
end;
SqlStr := '';
FrmMain.UpStr(SqlStr, 'FileNoInfo');
if BeUpdateCode then
FrmMain.UpStr(Sqlstr, 'FileNoPre', trim(EdtFileNoPre.Text), ',');
FrmMain.UpStr(SqlStr, 'FileNoRule', trim(EdtFileNoRule.text), ',');
FrmMain.UpStr(SqlStr, 'FileNoDesc', trim(EdtFileNoDesc.text), ',');
FrmMain.UpStr(SqlStr, 'CurrentNo', Strtoint(trim(EdtCurrentNO.text)),
',');
FrmMain.UpStr(SqlStr, 'ZeroRule', trim(CmbZeroRule.Text), ',');
FrmMain.UpStr(SqlStr, 'ZeroData', StrtoInt(trim(EdtZeroData.Text)), ',');
FrmMain.UpStr(SqlStr, 'Remark', trim(EdtRemark.text), '');
FrmMain.UpStr(SqlStr, 'FileNoPre=', FileNoPre, 'w');
if FrmMain.ExecSQL(SqlStr) then
else
begin
ShowMessage('更新代码记录失败,请检查!');
exit;
end;
FileNoPre := EdtFileNoPre.Text;
ValueArray[0] := EdtFileNoPre.Text;
ValueArray[1] := EdtFileNoRule.Text;
ValueArray[2] := EdtFileNoDesc.Text;
ValueArray[3] := EdtCurrentNo.Text;
ValueArray[4] := CmbZeroRule.Text;
ValueArray[5] := EdtZeroData.Text;
ValueArray[6] := EdtRemark.Text;
ArrayCount := 6;
FrmMain.RefeshOne(ValueArray, ArrayCount, FrmFileNoGeneralRuleInfo.lv);
except
ShowMessage('更新代码记录失败,请检查!');
exit;
end;
end
else
begin
try
SqlStr := 'Insert Into FileNoInfo(FileNoPre,FileNoRule,' +
'FileNoDesc,CurrentNo,ZeroRule,ZeroData,CurrentDate,Remark) values(';
FrmMain.InsStr(SqlStr, trim(EdtFileNoPre.Text), ',');
FrmMain.InsStr(SqlStr, trim(EdtFileNoRule.text), ',');
FrmMain.InsStr(SqlStr, trim(EdtFileNoDesc.text), ',');
FrmMain.InsStr(SqlStr, StrtoInt(trim(EdtCurrentNo.Text)), ',');
FrmMain.InsStr(SqlStr, trim(CmbZeroRule.Text), ',');
FrmMain.InsStr(SqlStr, StrtoInt(trim(EdtZeroData.Text)), ',');
FrmMain.InsStr(SqlStr, DateToStr(Int(Date)), ',');
FrmMain.InsStr(SqlStr, trim(EdtRemark.text), '');
if FrmMain.ExecSQL(SqlStr) then
else
begin
ShowMessage('插入记录失败,请检查!');
exit;
end;
IsEdit := true;
BtnAdd.Enabled := True;
FileNoPre := EdtFileNoPre.Text;
ValueArray[0] := EdtFileNoPre.Text;
ValueArray[1] := EdtFileNoRule.Text;
ValueArray[2] := EdtFileNoDesc.Text;
ValueArray[3] := EdtCurrentNo.Text;
ValueArray[4] := CmbZeroRule.Text;
ValueArray[5] := EdtZeroData.Text;
ValueArray[6] := EdtRemark.Text;
ArrayCount := 6;
FrmMain.AddListView(ValueArray, ArrayCount, FrmFileNoGeneralRuleInfo.lv);
except
ShowMessage('插入记录失败,请检查!');
exit;
end;
end;
end;
procedure TFrmFileNoGeneralRuleEdit.BtnCloseClick(Sender: TObject);
begin
inherited;
Close;
end;
procedure TFrmFileNoGeneralRuleEdit.FormActivate(Sender: TObject);
var
I: Integer;
begin
inherited;
EdtFileNoPre.SetFocus;
CmbZeroRule.ItemIndex := 0;
if IsEdit then
begin
with FrmFileNoGeneralRuleInfo do
begin
try
with QryTemp do
begin
Close;
Sql.Clear;
Sql.Text := 'Select FileNoPre,FileNoRule,FileNoDesc,CurrentNo,ZeroRule,ZeroData,Remark from FileNoInfo where FileNoPre=''' + LV.Selected.Caption + '''';
Open;
EdtFileNoPre.Text := FieldByName('FileNoPre').AsString;
EdtFileNoRule.Text := FieldByName('FileNoRule').AsString;
EdtFileNoDesc.Text := FieldByName('FileNoDesc').AsString;
EdtCurrentNo.Text := FieldByName('CurrentNo').AsString;
for i := 0 to CmbZeroRule.Items.Count - 1 do
begin
if FieldBYName('ZeroRule').AsString = CmbZeroRule.Items[i] then
CmbZeroRule.ItemIndex := i;
end;
EdtZeroData.Text := FieldByName('ZeroData').AsString;
EdtRemark.Text := FieldByName('Remark').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 + -