mrp_qry_analyzermps.pas
来自「一个MRPII系统源代码版本」· PAS 代码 · 共 115 行
PAS
115 行
unit Mrp_Qry_AnalyzerMps;
Interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Base_Qry, Menus, ExtPrintReport, Db, ActnList, AdODB, Grids, DBGridEh,
StdCtrls, ExtCtrls, ComCtrls, ToolWin, DBCtrls;
Type
TFrm_Mrp_Qry_AnalyzerMps = Class(TFrm_Base_Qry)
DbTxt_ItemFlag: TDBText;
DbTxt_FinishRate: TDBText;
Label2: TLabel;
Label3: TLabel;
Label1: TLabel;
DbTxt_MpsQty: TDBText;
procedure FormDestroy(Sender: TObject);
procedure Act_FilterExecute(Sender: TObject);
procedure FormActivate(Sender: TObject);
private
IsNo:Boolean;//是否已进入一次
{ Private declarations }
public
procedure InitForm(AdOConnection:TAdOConnection;ShowExtendColumn:Boolean);Override;
{ Public declarations }
end;
var
Frm_Mrp_Qry_AnalyzerMps: TFrm_Mrp_Qry_AnalyzerMps;
implementation
uses Mrp_Qry_AnalyzerMps_C, Sys_Global;
{$R *.DFM}
procedure FormatDisplay(AdoQuery:TAdoQuery);
var
I:Integer;
begin
For I:=0 To AdoQuery.FieldCount -1 Do
begin
If (UpperCase(AdoQuery.Fields[I].DisplayName) =UpperCase('MpsFinishRate'))
Or (UpperCase(AdoQuery.Fields[I].DisplayName) =UpperCase('MoFinishRate')) Then
TFloatField(AdoQuery.Fields[I]).DisplayFormat:='#,##0'+'%';
If (AdoQuery.Fields[I].DataType=FtFloat) And
(UpperCase(AdoQuery.Fields[I].DisplayName) <>UpperCase('MpsFinishRate'))
And (UpperCase(AdoQuery.Fields[I].DisplayName) <>UpperCase('MoFinishRate')) Then
TFloatField(AdoQuery.Fields[I]).DisplayFormat:='#,##0.######';
end;
end;
procedure TFrm_Mrp_Qry_AnalyzerMps.InitForm(AdOConnection:TAdOConnection;ShowExtendColumn:Boolean);
begin
Application.ProcessMessages;
Inherited;
Frm_Mrp_Qry_AnalyzerMps_C:=TFrm_Mrp_Qry_AnalyzerMps_C.Create(Application);
Frm_Mrp_Qry_AnalyzerMps_C.SetDBConnect(DbConnect);
If (Frm_Mrp_Qry_AnalyzerMps_C.ShowModal=Mrok) And (AdoQry_Main.RecordCount>0) Then
begin
Act_Locate.Enabled:=True;
Act_Order.Enabled:=True;
IsNo:=True;
end
Else
begin
Act_Locate.Enabled:=False;
Act_Order.Enabled:=False;
end;
DbTxt_MpsQty.DataSource:=DataSource;
DbTxt_MpsQty.DataField:='MpsQty';
DbTxt_ItemFlag.DataSource:=DataSource;
DbTxt_ItemFlag.DataField:='ItemFlag';
DbTxt_FinishRate.DataSource:=DataSource;
DbTxt_FinishRate.DataField:='MpsFinishRate';
FormatDisplay(AdoQry_Main);
OrderByFields:='EmployeeFlag,ItemFlag,MpsQTY';
Frm_Mrp_Qry_AnalyzerMps_C.Release;
end;
procedure TFrm_Mrp_Qry_AnalyzerMps.FormDestroy(Sender: TObject);
begin
Frm_Mrp_Qry_AnalyzerMps:=Nil;
end;
procedure TFrm_Mrp_Qry_AnalyzerMps.Act_FilterExecute(Sender: TObject);
begin
Application.ProcessMessages;
Frm_Mrp_Qry_AnalyzerMps_C:=TFrm_Mrp_Qry_AnalyzerMps_C.Create(Application);
Frm_Mrp_Qry_AnalyzerMps_C.SetDBConnect(DbConnect);
Frm_Mrp_Qry_AnalyzerMps_C.ShowModal;
If (IsNo) Then
If (AdoQry_Main.RecordCount>0) Then
begin
Act_Locate.Enabled:=True;
Act_Order.Enabled:=True;
end
Else
begin
Act_Locate.Enabled:=False;
Act_Order.Enabled:=False;
end;
FormatDisplay(AdoQry_Main);
Frm_Mrp_Qry_AnalyzerMps_C.Release;
end;
procedure TFrm_Mrp_Qry_AnalyzerMps.FormActivate(Sender: TObject);
begin
inherited;
IsNo:=False;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?