?? devicetype.~pas
字號:
unit DeviceType;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, InfoBase, StdCtrls, DBCtrls, ToolEdit, Mask, wwDialog, wwidlg,
DB, ADODB, ActnList, ExtCtrls, ComCtrls, ToolWin, Grids, DBGrids;
type
TfrmDeviceType = class(TfrmInfoBase)
GroupBox1: TGroupBox;
Label9: TLabel;
Panel6: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label6: TLabel;
DBEdtDevNum: TDBEdit;
DBEdtDevName: TDBEdit;
DBLookupcbbSerise: TDBLookupComboBox;
Editdate: TEdit;
Panel9: TPanel;
fneFileName: TFilenameEdit;
Label12: TLabel;
GroupBox8: TGroupBox;
DBMemo1: TDBMemo;
GroupBox5: TGroupBox;
DBGridDeviceType: TDBGrid;
QProSerise: TADOQuery;
DSProSerise: TDataSource;
QBaseInfoDevNum: TIntegerField;
QBaseInfoDevName: TWideStringField;
QBaseInfoProNumber: TIntegerField;
QBaseInfoDevImage: TBlobField;
QBaseInfoImageFile: TWideStringField;
QBaseInfoDescri: TWideStringField;
QBaseInfoUpDateDate: TDateTimeField;
QProSeriseProNumber: TIntegerField;
QProSeriseSerise: TWideStringField;
QProSeriseDetail: TWideStringField;
QProSeriseUpdateDate: TDateTimeField;
procedure QBaseInfoDevNameValidate(Sender: TField);
procedure QBaseInfoBeforePost(DataSet: TDataSet);
procedure dsBaseInfoDataChange(Sender: TObject; Field: TField);
procedure dsBaseInfoStateChange(Sender: TObject);
procedure acNewExecute(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure fneFileNameMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure fneFileNameChange(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmDeviceType: TfrmDeviceType;
implementation
uses StockDataModel, PublicFunction;
{$R *.dfm}
procedure TfrmDeviceType.QBaseInfoDevNameValidate(Sender: TField);
begin
inherited;
if not IsUnique('DevName', Sender.AsString) then
begin
showmessage('名稱已經存在,請重新填寫,謝謝');
abort;
end;
end;
procedure TfrmDeviceType.QBaseInfoBeforePost(DataSet: TDataSet);
var
i: integer;
begin
inherited;
//check
if (DBEdtDevName.text = '') then //(EDTDevNum.Text='') or
begin
messagedlg('名稱不能為空,請填寫,謝謝!', mtinformation, [mbok], 0); // 編號/
DBEdtDevName.SetFocus;
Abort;
end;
if checkvalue('DeviceType', 'Devnum', DBEdtDevNum.Text) then
begin
if QBaseInfo.State in [dsInsert] then DBEdtDevNum.Text := '';
end;
if (trim(DBLookupcbbSerise.Text) = '')
then // //modify
begin
messagedlg('請選擇配置,謝謝!', mtinformation, [mbok], 0);
Abort;
end;
if (fneFileName.Text <> '') and (QBaseInfo.State in [dsInsert]) then //僅增加時檢查
if not fileexists(fneFileName.Text) then
begin
messagedlg('填入/選擇的文件不存在,謝謝!', mtinformation, [mbok], 0);
Abort;
end;
QBaseInfo.FieldByName('ImageFile').AsString := fneFileName.Text;
if (fneFileName.Text <> '') then
blobcontenttostring(fneFileName.Text, QBaseInfo, 'DevImage');
if DBEdtDevNum.Text = '' then QBaseInfo.FieldByName('Devnum').AsString := inttostr(GetNextRecNoMax(StockDM.ADOConn, 'DeviceType', 'Devnum', '', '', 20)); //自動
QBaseInfo.FieldByName('UpDateDate').AsdateTime := date;
end;
procedure TfrmDeviceType.dsBaseInfoDataChange(Sender: TObject;
Field: TField);
begin
inherited;
if QBaseInfo.State = dsBrowse then
begin
fneFileName.Text := QBaseInfo.FieldByName('ImageFile').Asstring;
EditDate.Text := QBaseInfo.FieldByName('UpDateDate').Asstring;
//dsBaseInfoStateChange(self);
//LoadInfos;
end;
end;
procedure TfrmDeviceType.dsBaseInfoStateChange(Sender: TObject);
var i: integer;
begin
inherited;
with GroupBox1 do
for i := 0 to ControlCount - 1 do
begin
if Controls[i] is TDBEdit then
(Controls[i] as TDBEdit).ReadOnly := not acSave.Enabled
else if Controls[i] is TDBLookupComboBox then
(Controls[i] as TDBLookupComboBox).Enabled := acSave.Enabled;
end;
fneFileName.ReadOnly := not acSave.Enabled;
end;
procedure TfrmDeviceType.acNewExecute(Sender: TObject);
begin
DBEdtDevNum.SetFocus;
inherited;
fneFileName.Text := '';
EditDate.Text := '';
end;
procedure TfrmDeviceType.FormShow(Sender: TObject);
begin
inherited;
if QProSerise.Active = false then QProSerise.Active := true;
if QBaseInfo.State = dsBrowse then
begin
fneFileName.Text := QBaseInfo.FieldByName('ImageFile').Asstring;
EditDate.Text := QBaseInfo.FieldByName('UpDateDate').Asstring;
//dsBaseInfoStateChange(self);
// LoadInfos;
end;
DBEdtDevNum.SetFocus;
end;
procedure TfrmDeviceType.fneFileNameMouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
inherited;
fneFileName.Hint := fneFileName.Text;
end;
procedure TfrmDeviceType.fneFileNameChange(Sender: TObject);
begin
inherited;
//對于桌面上的文件fileNmaeEdit加""存時不認
fneFileName.Text := checkFilename('"', fneFileName.Text);
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -