?? mrclxx.pas
字號:
unit MRCLXX;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ImgList, Grids, DBGrids, StdCtrls, ComCtrls, ToolWin, ExtCtrls,
DB;
type
TFRM_CLXX = class(TForm)
Panel2: TPanel;
ToolBar1: TToolBar;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
ToolButton5: TToolButton;
ToolButton6: TToolButton;
ToolButton7: TToolButton;
ToolButton8: TToolButton;
ToolButton9: TToolButton;
ToolButton10: TToolButton;
ToolButton11: TToolButton;
ToolButton12: TToolButton;
ToolButton13: TToolButton;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
Panel1: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
TabSheet2: TTabSheet;
GroupBox1: TGroupBox;
DBGrid1: TDBGrid;
ImageList1: TImageList;
Label4: TLabel;
Edit4: TEdit;
Label5: TLabel;
Edit5: TEdit;
Label6: TLabel;
Edit6: TEdit;
Label7: TLabel;
Edit7: TEdit;
Datalb: TDataSource;
procedure FormShow(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure ToolButton8Click(Sender: TObject);
procedure ToolButton9Click(Sender: TObject);
procedure ToolButton10Click(Sender: TObject);
procedure ToolButton11Click(Sender: TObject);
procedure ToolButton13Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
procedure Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit4KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit5KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit6KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure ToolButton6Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FRM_CLXX: TFRM_CLXX;
tb : integer = 0;
implementation
uses MR_DATA, MRCLXX_CX;
{$R *.dfm}
procedure TFRM_CLXX.FormShow(Sender: TObject);
var
i : integer;
s : string;
begin
i := 1;
with data.ADOa do
begin
close;
sql.Clear;
sql.Add('select * from tb_cl order by cl_hh');
open;
end;
datalb.DataSet := data.ADOa;
if data.ADOa.RecordCount < 1 then
begin
edit1.Clear;
edit2.Clear;
edit3.Clear;
edit4.Clear;
edit5.Clear;
edit6.Clear;
edit7.Clear;
end
else
begin
data.ADOa.First;
edit1.Text := data.ADOa.fieldbyname('cl_hh').AsString;
edit2.Text := data.ADOa.fieldbyname('cl_gys').AsString;
edit3.Text := data.ADOa.fieldbyname('cl_dw').AsString;
edit4.Text := floattostr(data.ADOa.fieldbyname('cl_dj').AsFloat);
edit5.Text := data.ADOa.fieldbyname('cl_rname').AsString;
edit6.Text := data.ADOa.fieldbyname('cl_name').AsString;
edit7.Text := data.ADOa.fieldbyname('cl_cd').AsString;
end;
end;
procedure TFRM_CLXX.ToolButton1Click(Sender: TObject);
var
i : integer;
s : string;
begin
i := 1;
tb := 1;
edit1.Clear;
edit2.Clear;
edit3.Clear;
edit4.Clear;
edit5.Clear;
edit6.Clear;
edit7.Clear;
s := 'H'+formatdatetime('yyyymm',now());
if data.ADOa.RecordCount<1 then
begin
edit1.Text := s+'000'+inttostr(i);
end
else
begin
data.ADOa.Last;
i := strtoint(copy(data.ADOa.fieldbyname('cl_hh').AsString,8,4));
edit1.Text := s+formatfloat('0000',i+1);
end;
ToolButton2.Enabled := false;
ToolButton4.Enabled := true;
ToolButton5.Enabled := true;
edit2.SetFocus;
end;
procedure TFRM_CLXX.ToolButton2Click(Sender: TObject);
begin
tb := 2;
ToolButton1.Enabled := false;
ToolButton4.Enabled := true;
ToolButton5.Enabled := true;
edit2.SetFocus;
end;
procedure TFRM_CLXX.ToolButton4Click(Sender: TObject);
var
eh,en,ed : string;
begin
try
if (edit1.Text = '')or(edit3.Text = '')or(edit6.Text = '') then
begin
showmessage('單位和物料名稱不能為空。');
end
else
begin
eh := edit1.Text;
en := edit6.Text;
ed := edit3.Text;
if tb = 1 then
data.ADOa.Append;
if tb = 2 then
data.ADOa.Edit;
data.ADOa.FieldByName('cl_hh').AsString := edit1.Text;
data.ADOa.FieldByName('cl_gys').AsString := edit2.Text;
data.ADOa.FieldByName('cl_dw').AsString := edit3.Text;
data.ADOa.FieldByName('cl_dj').AsFloat := strtofloat(edit4.Text);
data.ADOa.FieldByName('cl_rname').AsString := edit5.Text;
data.ADOa.FieldByName('cl_name').AsString := edit6.Text;
data.ADOa.FieldByName('cl_cd').AsString := edit7.Text;
data.ADOa.Post;
FRM_CLXX.FormShow(Sender);
end;
ToolButton1.Enabled := true;
ToolButton2.Enabled := true;
ToolButton4.Enabled := false;
ToolButton5.Enabled := false;
tb := 0;
with data.ADOd do
begin
close;
sql.Clear;
sql.Add('select * from tb_cpcl where clhh='+''''+eh+'''');
open;
end;
if data.ADOd.RecordCount>0 then
begin
while not data.adod.Eof do
begin
data.ADOd.Edit;
data.adod.FieldByName('clmc').AsString := en;
data.ADOd.FieldByName('dw').AsString := ed;
data.ADOd.Post;
data.ADOd.Next;
end;
end;
with data.ADOd do
begin
close;
sql.Clear;
sql.Add('select * from tb_ll where wlhh='+''''+eh+'''');
open;
end;
if data.ADOd.RecordCount>0 then
begin
while not data.adod.Eof do
begin
data.ADOd.Edit;
data.adod.FieldByName('wlmc').AsString := en;
data.ADOd.FieldByName('dw').AsString := ed;
data.ADOd.Post;
data.ADOd.Next;
end;
end;
except
showmessage('物料名稱不能重復。');
end;
end;
procedure TFRM_CLXX.ToolButton5Click(Sender: TObject);
begin
data.ADOa.Cancel;
FRM_CLXX.FormShow(Sender);
ToolButton1.Enabled := true;
ToolButton2.Enabled := true;
ToolButton4.Enabled := false;
ToolButton5.Enabled := false;
ToolButton8.Enabled := true;
ToolButton9.Enabled := true;
ToolButton10.Enabled := true;
ToolButton11.Enabled := true;
end;
procedure TFRM_CLXX.ToolButton8Click(Sender: TObject);
begin
data.ADOa.First;
edit1.Text := data.ADOa.fieldbyname('cl_hh').AsString;
edit2.Text := data.ADOa.fieldbyname('cl_gys').AsString;
edit3.Text := data.ADOa.fieldbyname('cl_dw').AsString;
edit4.Text := floattostr(data.ADOa.fieldbyname('cl_dj').AsFloat);
edit5.Text := data.ADOa.fieldbyname('cl_rname').AsString;
edit6.Text := data.ADOa.fieldbyname('cl_name').AsString;
edit7.Text := data.ADOa.fieldbyname('cl_cd').AsString;
ToolButton8.Enabled := false;
ToolButton9.Enabled := false;
ToolButton10.Enabled := true;
ToolButton11.Enabled := true;
end;
procedure TFRM_CLXX.ToolButton9Click(Sender: TObject);
begin
data.ADOa.Prior;
if not data.ADOa.Bof then
begin
ToolButton8.Enabled := true;
ToolButton9.Enabled := true;
ToolButton10.Enabled := true;
ToolButton11.Enabled := true;
end
else
begin
ToolButton8.Enabled := false;
ToolButton9.Enabled := false;
ToolButton10.Enabled := true;
ToolButton11.Enabled := true;
end;
edit1.Text := data.ADOa.fieldbyname('cl_hh').AsString;
edit2.Text := data.ADOa.fieldbyname('cl_gys').AsString;
edit3.Text := data.ADOa.fieldbyname('cl_dw').AsString;
edit4.Text := floattostr(data.ADOa.fieldbyname('cl_dj').AsFloat);
edit5.Text := data.ADOa.fieldbyname('cl_rname').AsString;
edit6.Text := data.ADOa.fieldbyname('cl_name').AsString;
edit7.Text := data.ADOa.fieldbyname('cl_cd').AsString;
end;
procedure TFRM_CLXX.ToolButton10Click(Sender: TObject);
begin
data.ADOa.Next;
if not data.ADOa.Eof then
begin
ToolButton8.Enabled := true;
ToolButton9.Enabled := true;
ToolButton10.Enabled := true;
ToolButton11.Enabled := true;
end
else
begin
ToolButton8.Enabled := true;
ToolButton9.Enabled := true;
ToolButton10.Enabled := false;
ToolButton11.Enabled := false;
end;
edit1.Text := data.ADOa.fieldbyname('cl_hh').AsString;
edit2.Text := data.ADOa.fieldbyname('cl_gys').AsString;
edit3.Text := data.ADOa.fieldbyname('cl_dw').AsString;
edit4.Text := floattostr(data.ADOa.fieldbyname('cl_dj').AsFloat);
edit5.Text := data.ADOa.fieldbyname('cl_rname').AsString;
edit6.Text := data.ADOa.fieldbyname('cl_name').AsString;
edit7.Text := data.ADOa.fieldbyname('cl_cd').AsString;
end;
procedure TFRM_CLXX.ToolButton11Click(Sender: TObject);
begin
data.ADOa.Last;
ToolButton8.Enabled := true;
ToolButton9.Enabled := true;
ToolButton10.Enabled := false;
ToolButton11.Enabled := false;
edit1.Text := data.ADOa.fieldbyname('cl_hh').AsString;
edit2.Text := data.ADOa.fieldbyname('cl_gys').AsString;
edit3.Text := data.ADOa.fieldbyname('cl_dw').AsString;
edit4.Text := floattostr(data.ADOa.fieldbyname('cl_dj').AsFloat);
edit5.Text := data.ADOa.fieldbyname('cl_rname').AsString;
edit6.Text := data.ADOa.fieldbyname('cl_name').AsString;
edit7.Text := data.ADOa.fieldbyname('cl_cd').AsString;
end;
procedure TFRM_CLXX.ToolButton13Click(Sender: TObject);
begin
close;
end;
procedure TFRM_CLXX.ToolButton3Click(Sender: TObject);
begin
if application.MessageBox('真的要刪除該記錄嗎?','提示',mb_yesno) = idyes then
begin
if data.ADOa.FieldByName('cl_hh').AsString = '' then
showmessage('物料信息表已經為空,無法刪除。')
else
begin
data.ADOa.Delete;
FRM_CLXX.FormShow(Sender);
end;
end;
end;
procedure TFRM_CLXX.DBGrid1CellClick(Column: TColumn);
begin
edit1.Text := data.ADOa.fieldbyname('cl_hh').AsString;
edit2.Text := data.ADOa.fieldbyname('cl_gys').AsString;
edit3.Text := data.ADOa.fieldbyname('cl_dw').AsString;
edit4.Text := floattostr(data.ADOa.fieldbyname('cl_dj').AsFloat);
edit5.Text := data.ADOa.fieldbyname('cl_rname').AsString;
edit6.Text := data.ADOa.fieldbyname('cl_name').AsString;
edit7.Text := data.ADOa.fieldbyname('cl_cd').AsString;
end;
procedure TFRM_CLXX.Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = vk_return then
edit3.SetFocus;
end;
procedure TFRM_CLXX.Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (key = vk_return)and(edit3.Text <> '') then
edit4.SetFocus;
end;
procedure TFRM_CLXX.Edit4KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = vk_return then
edit5.SetFocus;
end;
procedure TFRM_CLXX.Edit5KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = vk_return then
edit6.SetFocus;
end;
procedure TFRM_CLXX.Edit6KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (key = vk_return)and(edit6.Text <> '') then
edit7.SetFocus;
end;
procedure TFRM_CLXX.ToolButton6Click(Sender: TObject);
begin
ToolButton5.Enabled := True;
Application.CreateForm(TFRM_CLXX_CX, FRM_CLXX_CX);
FRM_CLXX_CX.ShowModal;
FRM_CLXX_CX.Free;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -