mrp_enter_normalmps.pas

来自「一个MRPII系统源代码版本」· PAS 代码 · 共 134 行

PAS
134
字号
unit Mrp_Enter_NormalMps;

Interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Base_Outer, Menus, ExtPrintReport, Db, ActnList, AdODB, Grids, DBGridEh,
  StdCtrls, ExtCtrls, ComCtrls, ToolWin,ComObj, DBCtrls, jpeg;

Type
  TFrm_Mrp_Enter_NormalMps = Class(TFrm_Base_Outer)
    AdoQry_MainMpsId: TBCDField;
    AdoQry_MainMpsMonth: TStringField;
    AdoQry_MainItemCode: TStringField;
    AdoQry_MainMpsDATE: TDateTimeField;
    AdoQry_MainMpsStatus: TIntegerField;
    AdoQry_MainMpsRemArk: TStringField;
    AdoQry_MainItemName: TStringField;
    AdoQry_MainUomName: TStringField;
    AdoQry_MainMpsQTY: TFloatField;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    DBText2: TDBText;
    DBText3: TDBText;
    Lbl_ItemFlag: TLabel;
    procedure FormDestroy(Sender: TObject);
    procedure DataSourceDataChange(Sender: TObject; Field: TField);
    procedure Act_DeleteExecute(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
   procedure InitForm(AdOConnection:TAdOConnection;ReadOnly:Boolean);Override;
    { Public declarations }
  end;

var
  Frm_Mrp_Enter_NormalMps: TFrm_Mrp_Enter_NormalMps;

implementation

uses  Mrp_Enter_NormalMps_D, Sys_Global;

{$R *.DFM}


procedure TFrm_Mrp_Enter_NormalMps.InitForm(AdOConnection:TAdOConnection;ReadOnly:Boolean);
begin
  Application.ProcessMessages;
  inherited;
  Frm_Mrp_Enter_NormalMps.Caption:='主生产计划准备';
  SelectFromSql:='select Mps.*,Item.ItemName,Uom.UomName '
                +' from Mps '
                +'  left join Item on Mps.ItemCode=Item.ItemCode '
                +'  left join Uom on Item.UomCode=Uom.UomCode ';
  OrderByFields:='MpsMonth,ItemCode,MpsDate';
  ConditionUserDefine:='(     '
                      +'  (MpsStatus=2) And (Item.ItemType=0))';
  GetData;
  Frm_Sys_Detail:=TFrm_Mrp_Enter_NormalMps_D.Create(Application);
end;



procedure TFrm_Mrp_Enter_NormalMps.FormDestroy(Sender: TObject);
begin
  inherited;
  Frm_Mrp_Enter_NormalMps:=nil;
end;

procedure TFrm_Mrp_Enter_NormalMps.DataSourceDataChange(Sender: TObject;
  Field: TField);
begin
  inherited;
  Lbl_ItemFlag.Caption:=AdoQry_Main.fieldbyname('ItemCode').AsString+' '+AdoQry_Main.fieldbyname('ItemName').AsString;
end;

procedure TFrm_Mrp_Enter_NormalMps.Act_DeleteExecute(Sender: TObject);
var
  SqlText:String;
  tmPmpsid:integer;
begin
  If AdoQry_Main.RecordCount=0 Then
    Exit;
  IF DispInfo('真的要删除这条记录吗?',2)='y' Then
  begin
    Dbconnect.beginTrans;
    Try
      {SqlText:='Insert MpsHistory '
                + ' (MpsMonth,ItemCode,Mpsdate,Mpsqty,Mpsstatus,'
                + ' MpsremArk,MpSchgEmployeeCode,MpSchgTime,MpsId,MpSchgType)'
                + ' Values('
                + ''''+AdoQry_Main.fieldbyname('MpsMonth').AsString+''''+','
                +''''+AdoQry_Main.fieldbyname('ItemCode').AsString+''''+','
                +''''+DateTimeToStr(AdoQry_Main.fieldbyname('MpsDate').AsDateTime)+''''+','
                +''''+FloatToStr(AdoQry_Main.fieldbyname('MpsQty').AsFloat)+''''+','
                +''''+IntToStr(AdoQry_Main.fieldbyname('MpsStatus').AsInteger)+''''+','
                +''''+AdoQry_Main.fieldbyname('MpsremArk').AsString+''''+','
                +''''+UserCode+''''+','
                +''''+FormatDateTime('yyyy.mm.dd hh:mm:ss',Now)+''''+','
                +''''+IntToStr(AdoQry_Main.fieldbyname('MpsId').AsInteger)+''''+','
                +''''+'删除'+''''+')';
      AdoQry_Tmp.Close;
      AdoQry_Tmp.SQL.Text:=SqlText;
      AdoQry_Tmp.ExecSQL;   //保存历史记录 }
      saveMpshistory(dbconnect,AdoQry_Main.fieldbyname('Mpsid').asinteger,userCode,2);
      SqlText:='Delete Mps '
              +' where MpsId='+''''+inttostr(AdoQry_Main.fieldbyname('Mpsid').asinteger)+'''';
      AdoQry_Tmp.Close;
      AdoQry_Tmp.SQL.Text:=SqlText;
      AdoQry_Tmp.ExecSQL;
      DbConnect.CommitTrans;
      AdoQry_Main.Delete;
      tmPmpsid:=AdoQry_Main.fieldbyname('Mpsid').asinteger;
      AdoQry_Main.reQuery;
      AdoQry_Main.Locate('Mpsid',tmPmpsid,[loCaseInsensitive]);
    Except
      DbConnect.RollBackTrans;
      DispInfo('删除数据过程中出错,记录未删除!',1);
      Abort;
    end;
  end;
end;

procedure TFrm_Mrp_Enter_NormalMps.FormCreate(Sender: TObject);
begin
  inherited;
  ExtendCaption:=False;
end;


end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?