pricemove.pas

来自「企业商品管理系统」· PAS 代码 · 共 179 行

PAS
179
字号
unit PriceMove;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ImgList, ComCtrls, ToolWin, DBCtrls, StdCtrls, Mask, Grids,
  DBGrids, ExtCtrls, DB, ADODB, Buttons,Theme;

type
  TFrm_PriceMove = class(TBaseForm)
    CoolBar1: TCoolBar;
    ToolBar1: TToolBar;
    ToolButton1: TToolButton;
    ToolButton2: TToolButton;
    ToolButton6: TToolButton;
    ToolButton3: TToolButton;
    ToolButton4: TToolButton;
    ToolButton9: TToolButton;
    ToolButton5: TToolButton;
    ImageList1: TImageList;
    StatusBar1: TStatusBar;
    Panel1: TPanel;
    DBGrid1: TDBGrid;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    DBEdit1: TDBEdit;
    Label2: TLabel;
    DBEdit2: TDBEdit;
    ADOMaster: TADODataSet;
    DSMaster: TDataSource;
    DSDetail: TDataSource;
    Panel3: TPanel;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    SpeedButton4: TSpeedButton;
    ADOQ: TADOQuery;
    ADODetail: TADODataSet;
    procedure ToolButton1Click(Sender: TObject);
    procedure ToolButton2Click(Sender: TObject);
    procedure ToolButton3Click(Sender: TObject);
    procedure ToolButton4Click(Sender: TObject);
    procedure ToolButton5Click(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
    procedure SpeedButton4Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
    { Private declarations }
    OrderID:string;
  public
    { Public declarations }
  end;

var
  Frm_PriceMove: TFrm_PriceMove;

implementation
uses Main, XSSelWare,DM;
{$R *.dfm}

procedure TFrm_PriceMove.ToolButton1Click(Sender: TObject);
var
  Str:string;
begin
  Str:=StringReplace(DateTimeToStr(Now),'-','',[rfReplaceAll]);
  Str:=StringReplace(Str,':','',[rfReplaceAll]);
  str:=StringReplace(Str,' ','',[rfReplaceAll]);
  OrderID:='I'+str;
  ADOMaster.Append;
  DBEdit1.Text:=OrderID;
  DBEdit2.Text:=Operator;
  ADOMaster.FieldByName('MR_Date').AsDateTime:=Now;
  ADOMaster.UpdateBatch;
  Panel3.Enabled:=True;
end;

procedure TFrm_PriceMove.ToolButton2Click(Sender: TObject);
var
  SQLStr,SQL:string;
begin
  SQLStr:='Delete From MR_PriceMove_Tab Where MR_PriceMoveID='+QuotedStr(DBEdit1.Text);
  SQL:='Delete From MR_PriceMoveList_Tab Where MR_PriceMoveID='+QuotedStr(DBEdit1.Text);
  ADOQ.Close;

  if Application.MessageBox('您是否要删除此出库单!', '明日科技', MB_OKCANCEL) = IDOK then
  begin
    try
      ADOQ.SQL.Text:=SQLStr;
      ADOQ.ExecSQL;
      ADOQ.SQL.Text:=SQL;
      ADOQ.ExecSQL;
    except
      Application.MessageBox('数据删除失败!','明日科技');
    end;
  end;
  ADOMaster.Requery;
  ADODetail.Requery;
  Panel3.Enabled:=False;
end;

procedure TFrm_PriceMove.ToolButton3Click(Sender: TObject);
begin
  ADODetail.UpdateBatch;
  
  ADOMaster.UpdateBatch;
  Panel3.Enabled:=False;
  Application.MessageBox('数据保存成功!','明日科技');
end;

procedure TFrm_PriceMove.ToolButton4Click(Sender: TObject);
var
  SQLStr:string;
begin
  SQLStr:='Delete From MR_PriceMove_Tab Where MR_PriceMoveID='+QuotedStr(OrderID)+'  '+
          'Delete From MR_PriceMoveList_Tab Where MR_PriceMoveID='+QuotedStr(OrderID);
  ADOQ.Close;
  ADOQ.SQL.Text:=SQLStr;
  if Application.MessageBox('您是否要取消此次调价操作!', '明日科技', MB_OKCANCEL) = IDOK then
  begin
    try
      ADOQ.ExecSQL;
    except
      Application.MessageBox('取消操作失败!','明日科技');
    end;
  end;
  ADOMaster.Requery;
  ADODetail.Requery;
  Panel3.Enabled:=False;
end;

procedure TFrm_PriceMove.ToolButton5Click(Sender: TObject);
begin
  Close;
end;

procedure TFrm_PriceMove.SpeedButton2Click(Sender: TObject);
begin
  ADODetail.Append;
  Frm_XSSelWare.ShowModal;
  with  Frm_XSSelWare.ADOWare do
  begin
    if RecordCount>0 then
    begin
      ADODetail.FieldByName('MR_PriceMoveID').AsString:=DBEdit1.Text;
      ADODetail.FieldByName('MR_Code').AsString:=FieldByName('MR_Code').AsString;
      ADODetail.FieldByName('MR_Name').AsString:=FieldByName('MR_Name').AsString;
      ADODetail.FieldByName('MR_Spce').AsString:=FieldByName('MR_Spce').AsString;
      ADODetail.FieldByName('MR_Unit').AsString:=FieldByName('MR_Unit').AsString;
      ADODetail.FieldByName('MR_OutPrice').AsFloat:=FieldByName('MR_OutPrice').AsFloat;
      ADODetail.FieldByName('MR_Cards').AsString:=FieldByName('MR_Cards').AsString;
    end;
  end;
end;

procedure TFrm_PriceMove.SpeedButton3Click(Sender: TObject);
begin
  ADODetail.Delete;
end;

procedure TFrm_PriceMove.SpeedButton4Click(Sender: TObject);
begin
  ADODetail.CancelBatch;
  DBGrid1.Refresh;
end;

procedure TFrm_PriceMove.FormShow(Sender: TObject);
begin
  ADOMaster.Close;
  ADOMaster.Open;

  ADODetail.Close;
  ADODetail.Open;

  Panel3.Enabled:=False;
end;

end.

⌨️ 快捷键说明

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