?? stockmain.pas
字號:
unit StockMain;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, NEOFORM, ExtCtrls, StdCtrls, jpeg, ComCtrls, ImgList, Buttons,
fcButton, fcImgBtn, fcShapeBtn, fcImager, fcClearPanel, fcButtonGroup,
fcOutlookBar, ToolWin, DB, ADODB;
type
TGBKPFrmStockMain = class(TGBKPForm)
StatusBar1: TStatusBar;
ImageListLarge: TImageList;
fcOutlookBar1: TfcOutlookBar;
fcImager1: TfcImager;
fcOutlookBar1fcShapeBtnSys: TfcShapeBtn;
fcOutlookBar1fcShapeBtnInvioce: TfcShapeBtn;
fcOutlookBar1fcShapeBtnDeclare: TfcShapeBtn;
fcOutlookBar1fcShapeBtnCheck: TfcShapeBtn;
fcOutlookBar1fcShapeBtnProtect: TfcShapeBtn;
TreeView1: TTreeView;
TreeView2: TTreeView;
TreeView3: TTreeView;
TreeView5: TTreeView;
TreeView6: TTreeView;
ImageListsmall: TImageList;
CoolBar1: TCoolBar;
ToolBar2: TToolBar;
SpeedBtnOrderToBarCode: TSpeedButton;
SpeedButton2: TSpeedButton;
Image1: TImage;
SpeedBtnBoxIncome: TSpeedButton;
imlistXXL: TImageList;
ToolButtonImages: TImageList;
SpeedButton5: TSpeedButton;
SpeedButton6: TSpeedButton;
Button1: TButton;
ADOQuery1: TADOQuery;
BitBtn1: TBitBtn;
ADOQuery2: TADOQuery;
ADOQuery3: TADOQuery;
Button2: TButton;
LabelMessage: TLabel;
Button3: TButton;
Edit1: TEdit;
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure BitBtn1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure fcOutlookBar1fcShapeBtnSysMouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
procedure fcOutlookBar1fcShapeBtnSysMouseLeave(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TreeView1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure TreeView2Click(Sender: TObject);
procedure TreeView5Click(Sender: TObject);
procedure TreeView6Click(Sender: TObject);
procedure SpeedBtnBoxIncomeClick(Sender: TObject);
procedure SpeedBtnOrderToBarCodeClick(Sender: TObject);
procedure SpeedButton6Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure ToolBar2DblClick(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
GBKPFrmStockMain: TGBKPFrmStockMain;
implementation
uses calendarFun, PublicFunction, StockDataModel, Login, PublicParameter,
DeviceType, ProSeriseMan, GBarCodes, Shipment, OrderToBarCode,
BarCodeQuery, BoxIncome, User, DevhardOptions;
{$R *.dfm}
procedure TGBKPFrmStockMain.FormCloseQuery(Sender: TObject;
var CanClose: Boolean);
begin
inherited;
if application.MessageBox('真的要退出此系統嗎?', '提示', mb_yesno) = id_no then
canclose := false;
end;
procedure TGBKPFrmStockMain.BitBtn1MouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
inherited;
if (Sender is TBitBtn) then
begin
(Sender as TBitBtn).Font.Color := $00400040;
(Sender as TBitBtn).Font.Style := [fsBold, fsUnderline]; //,fsItalic
end;
end;
procedure TGBKPFrmStockMain.fcOutlookBar1fcShapeBtnSysMouseMove(
Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
inherited;
(Sender as TfcShapeBtn).Color := clYellow;
end;
procedure TGBKPFrmStockMain.fcOutlookBar1fcShapeBtnSysMouseLeave(
Sender: TObject);
begin
inherited;
(Sender as TfcShapeBtn).Color := clSkyBlue;
end;
procedure TGBKPFrmStockMain.FormShow(Sender: TObject);
begin
inherited;
//展開所有treeview
fcOutlookBar1.ActivePage := fcOutlookBar1fcShapeBtnInvioce;
TreeView1.FullExpand;
TreeView2.FullExpand;
TreeView3.FullExpand;
//TreeView4.FullExpand;
TreeView5.FullExpand;
TreeView6.FullExpand;
//StatusBar1.Panels[0].Text :=
//StatusBar1.Panels[1].Text :='登錄人:'+OperatorName;
StatusBar1.Panels[2].Text := '登錄日期:陽歷:' + FormatDateTime('yyyy-mm-dd',date) + ' 農歷:' + GetCuurDateInfo + ' 登錄時間:' + TimeToStr(now);
//if OperatorName <> '' then StatusBar1.Panels[2].Text := '當前操作員:' + OperatorName else StatusBar1.Panels[2].Text := '當前操作員:無';
end;
procedure TGBKPFrmStockMain.TreeView1Click(Sender: TObject);
begin
inherited;
if TreeView1.Selected.Text = '機器類型' then
begin
frmDeviceType := TfrmDeviceType.Create(self);
try
frmDeviceType.ShowModal;
finally
FreeAndNil(frmDeviceType);
end;
end;
if TreeView1.Selected.Text = '產品系列' then
begin
frmBProSeriseMan := TfrmBProSeriseMan.Create(self);
try
frmBProSeriseMan.ShowModal;
finally
FreeAndNil(frmBProSeriseMan);
end;
end;
if TreeView1.Selected.Text = '機器功能配置' then
begin
FrmDevhardOptions := TFrmDevhardOptions.Create(self);
try
FrmDevhardOptions.ShowModal;
finally
FreeAndNil(FrmDevhardOptions);
end;
end;
end;
procedure TGBKPFrmStockMain.FormCreate(Sender: TObject);
var
FrmLogonTemp: TFrmLogin;
UserName: string; //登錄人
LoginNum: byte;
begin
inherited;
AppPath := ExtractFilePath(application.ExeName); //+ cfgfpfile;
ConnStr := GetCfgValue('DataStr', cfgfpfile);
//應該在窗口啟動之前創建數據模塊。
FrmLogonTemp := TFrmLogin.Create(self);
//ConnStr:='Provider=SQLOLEDB.1;Password=123;Persist Security Info=True;User ID=sa;Initial Catalog=zem400ini;Data Source=192.168.1.36' ;
if not connect_DB(StockDM.ADOConn, connstr) then //數據庫連接
begin
if messagedlg('連接數據庫失敗,選擇數據庫?', mtinformation, [mbok, mbno], 0) = mrOk then
begin
ConnStr := selectDB(GBKPFrmStockMain);
if not connect_DB(StockDM.ADOConn, connstr) then
begin
FrmLogonTemp.Free;
application.Terminate;
end
else
begin
//save the options.
SetCfgValue('DataStr', ConnStr, cfgfpfile); //存入iniDeviceName文件
end;
end
else
begin
//DM.ADOCnn.Connected:=false;
FrmLogonTemp.Free;
stockDM.Free;
application.Terminate;
end;
end;
//連接己經成功
if StockDM.QUser.Active = false then StockDM.QUser.Active := true;
LoginNum := 0;
while (true) do
begin
if FrmLogonTemp.ShowModal = mrok then
begin
//a key for first aid.
UserName := copy(FrmLogonTemp.cbbName.Text, 0, pos('[', FrmLogonTemp.cbbName.Text) - 1);
Userkey := FrmLogonTemp.EDTPassword.Text;
if (StockDM.QUser.Locate('UserName', UserName, [])) and (StockDM.QUser.FieldValues['UserKey'] = UserKey) then
begin
LoginPriStr := StockDM.QUser.FieldValues['UserSecurity']; //讀出用戶權限
FrmLogonTemp.Free;
LoginMan := UserName;
Loginkey := Userkey;
LoginNum := 0;
//權限分配.
if LoginPriStr = '2' then
begin
//toolbar.Enabled := false;
end;
break;
end;
LoginNum := LoginNum + 1;
if LoginNum = 3 then
begin
FrmLogonTemp.Free;
FrmLogonTemp := nil;
stockDM.Free;
ShowMessage('你無權使用此系統,請與管理員聯系!');
Application.Terminate;
break;
end;
end else
begin
FrmLogonTemp.Free;
FrmLogonTemp := nil;
stockDM.Free;
Application.Terminate;
break;
end; //end if recset if not DM.QUser.Isempty then
end; //登陸處理 end while (true) do
end;
procedure TGBKPFrmStockMain.TreeView2Click(Sender: TObject);
begin
inherited;
if TreeView2.Selected.Text = '裝箱入庫' then
begin
FrmShipment := TFrmShipment.Create(self);
try
FrmShipment.ShowModal;
finally
FreeAndNil(FrmShipment);
end;
end;
if TreeView2.Selected.Text = '條碼生成' then
begin
FrmOrderToBarCode := TFrmOrderToBarCode.Create(self);
try
FrmOrderToBarCode.ShowModal;
finally
FreeAndNil(FrmOrderToBarCode);
end;
end;
if TreeView2.Selected.Text = '機器包裝' then
begin
FrmBoxIncome := TFrmBoxIncome.Create(self);
try
FrmBoxIncome.ShowModal;
finally
FreeAndNil(FrmBoxIncome);
end;
end;
end;
procedure TGBKPFrmStockMain.TreeView5Click(Sender: TObject);
begin
inherited;
if TreeView5.Selected.Text = '條碼查詢' then
begin
FrmBarCodeQuery := TFrmBarCodeQuery.Create(self);
try
FrmBarCodeQuery.ShowModal;
finally
FreeAndNil(FrmBarCodeQuery);
end;
end;
end;
procedure TGBKPFrmStockMain.TreeView6Click(Sender: TObject);
begin
inherited;
if TreeView6.Selected.Text = '操作員管理' then
begin
frmBUser := TfrmBUser.Create(self);
try
frmBUser.ShowModal;
finally
FreeAndNil(frmBUser);
end;
end;
end;
procedure TGBKPFrmStockMain.SpeedBtnBoxIncomeClick(Sender: TObject);
begin
inherited;
FrmBoxIncome := TFrmBoxIncome.Create(self);
try
FrmBoxIncome.ShowModal;
finally
FreeAndNil(FrmBoxIncome);
end;
end;
procedure TGBKPFrmStockMain.SpeedBtnOrderToBarCodeClick(Sender: TObject);
begin
inherited;
FrmOrderToBarCode := TFrmOrderToBarCode.Create(self);
try
FrmOrderToBarCode.ShowModal;
finally
FreeAndNil(FrmOrderToBarCode);
end;
end;
procedure TGBKPFrmStockMain.SpeedButton6Click(Sender: TObject);
begin
inherited;
FrmShipment := TFrmShipment.Create(self);
try
FrmShipment.ShowModal;
finally
FreeAndNil(FrmShipment);
end;
end;
procedure TGBKPFrmStockMain.SpeedButton2Click(Sender: TObject);
begin
inherited;
Application.Terminate;
end;
procedure TGBKPFrmStockMain.SpeedButton5Click(Sender: TObject);
begin
inherited;
FrmBarCodeQuery := TFrmBarCodeQuery.Create(self);
try
FrmBarCodeQuery.ShowModal;
finally
FreeAndNil(FrmBarCodeQuery);
end;
end;
procedure TGBKPFrmStockMain.Button1Click(Sender: TObject);
begin
inherited;
with ADOQuery1 do
begin
Active:=true;
while not Eof do
begin
edit;
if not FieldByName('PostDate').IsNull then FieldValues['PostDate']:=FormatDateTime('yyyy-mm-dd',strtodate(FieldValues['PostDate']));
if not FieldByName('PackDate').IsNull then FieldValues['PackDate']:=FormatDateTime('yyyy-mm-dd',strtodate(FieldValues['PackDate']));
if not FieldByName('InComeDate').IsNull then FieldValues['InComeDate']:=FormatDateTime('yyyy-mm-dd',strtodate(FieldValues['InComeDate']));
//if not FieldByName('PostDate').IsNull then FieldValues['PostDate']:=copy(FieldValues['PostDate'],1,8)+'06';
//if not FieldByName('PackDate').IsNull then FieldValues['PackDate']:=copy(FieldValues['PackDate'],1,8)+'06';
//if not FieldByName('InComeDate').IsNull then FieldValues['InComeDate']:=copy(FieldValues['InComeDate'],1,8)+'09';
post;
Next;
end;
end;
ShowMessage('數據處理完畢');
end;
procedure TGBKPFrmStockMain.BitBtn1Click(Sender: TObject);
begin
inherited;
with ADOQuery3 do
begin
Active:=true;
while not Eof do
begin
edit;
if not FieldByName('PostDate').IsNull then FieldValues['PostDate']:=FormatDateTime('yyyy-mm-dd',strtodate(FieldValues['PostDate']));
//if not FieldByName('PackDate').IsNull then FieldValues['PackDate']:=FormatDateTime('yyyy-mm-dd',strtodate(FieldValues['PackDate']));
//if not FieldByName('InComeDate').IsNull then FieldValues['InComeDate']:=FormatDateTime('yyyy-mm-dd',strtodate(FieldValues['InComeDate']));
post;
Next;
end;
end;
with ADOQuery2 do
begin
Active:=true;
while not Eof do
begin
edit;
if not FieldByName('UPDateDate').IsNull then FieldValues['UPDateDate']:=FormatDateTime('yyyy-mm-dd',strtodate(FieldValues['UPDateDate']));
//if not FieldByName('PackDate').IsNull then FieldValues['PackDate']:=FormatDateTime('yyyy-mm-dd',strtodate(FieldValues['PackDate']));
//if not FieldByName('InComeDate').IsNull then FieldValues['InComeDate']:=FormatDateTime('yyyy-mm-dd',strtodate(FieldValues['InComeDate']));
post;
Next;
end;
end;
ShowMessage('數據處理完畢');
end;
procedure TGBKPFrmStockMain.ToolBar2DblClick(Sender: TObject);
begin
inherited;
Button1.Visible:=true;
BitBtn1.Visible:=true;
Button2.Visible:=true;
LabelMessage.Visible:=true;
Button3.Visible:=true;
Edit1.Visible:=true;
end;
procedure TGBKPFrmStockMain.Button2Click(Sender: TObject);
var iBegin: Cardinal;
begin
inherited;
iBegin := GetTickCount; // GetTickCount() 取得當前系統時間的毫秒值
ADOQuery1.Active:=true;
ADOQuery3.Active:=true;
while not ADOQuery1.Eof do
begin
ADOQuery3.Locate('OrderID',ADOQuery1.Fieldbyname('OrderID').AsString,[]);
ADOQuery1.Edit;
ADOQuery1.FieldByName('CustomerName').AsString:=ADOQuery3.FieldByName('CustomerName').AsString;
ADOQuery1.post;
ADOQuery1.next;
end;
iBegin := GetTickCount - iBegin; //
LabelMessage.Caption:='用時' + inttostr(iBegin) + '毫秒)'
end;
procedure TGBKPFrmStockMain.Button3Click(Sender: TObject);
begin
inherited;
with ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Text:=Edit1.Text;
ExecSQL;
end;
ShowMessage('ok');
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -