📄 mrjy.pas
字号:
unit MRJY;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ImgList, Grids, DBGrids, StdCtrls, ComCtrls, ToolWin,
ExtCtrls;
type
TFRM_JY = 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;
TabSheet2: TTabSheet;
GroupBox1: TGroupBox;
DBGrid1: TDBGrid;
ImageList1: TImageList;
Datalb: TDataSource;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Edit3: TEdit;
Label7: TLabel;
Edit4: TEdit;
Label8: TLabel;
Label9: TLabel;
Edit5: TEdit;
ComboBox1: TComboBox;
Edit6: TEdit;
DateTimePicker1: TDateTimePicker;
ComboBox2: TComboBox;
procedure FormShow(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure ComboBox2Change(Sender: TObject);
procedure Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit4KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure DateTimePicker1Change(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton3Click(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 Edit3KeyPress(Sender: TObject; var Key: Char);
procedure Edit4KeyPress(Sender: TObject; var Key: Char);
procedure ToolButton6Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FRM_JY: TFRM_JY;
jymc,jysl : string;
tb : integer;
implementation
uses MR_DATA, MRJY_CX;
{$R *.dfm}
procedure TFRM_JY.FormShow(Sender: TObject);
begin
combobox1.Clear;
with data.ADOa do
begin
close;
sql.Clear;
sql.Add('select * from tb_cprk where jy<>1');
open;
end;
if data.ADOa.RecordCount>0 then
begin
while not data.ADOa.Eof do
begin
combobox1.Items.Add(data.ADOa.fieldbyname('scddh').AsString);
data.ADOa.Next;
end;
end;
with DATA.ADOa do
begin
close;
sql.Clear;
sql.Add('select * from tb_jy');
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;
combobox1.Text := '';
combobox2.Text := '';
DateTimePicker1.Date := now();
ToolButton8.Enabled := false;
ToolButton9.Enabled := false;
ToolButton10.Enabled := false;
ToolButton11.Enabled := false;
end
else
begin
data.ADOa.First;
edit1.Text := data.ADOa.fieldbyname('jyid').AsString;
combobox1.Text := data.ADOa.fieldbyname('scddh').AsString;
edit2.Text := data.ADOa.fieldbyname('cpmc').AsString;
combobox2.Text := data.ADOa.fieldbyname('jylx').AsString;
edit3.Text := floattostr(data.ADOa.fieldbyname('zs').AsFloat);
edit4.Text := floattostr(data.ADOa.fieldbyname('jysl').AsFloat);
edit5.Text := data.ADOa.fieldbyname('hgl').AsString;
DateTimePicker1.Date := data.ADOa.fieldbyname('jytime').AsDateTime;
edit6.Text := data.ADOa.fieldbyname('jyr').AsString;
end;
end;
procedure TFRM_JY.ComboBox1Change(Sender: TObject);
begin
if combobox1.Text <> '' then
begin
with data.ADOb do
begin
close;
sql.Clear;
sql.Add('select * from tb_cprk where scddh='+''''+trim(combobox1.Text)+'''');
open;
end;
edit2.Text := data.ADOb.fieldbyname('cpmc').AsString;
jysl := floattostr(data.ADOb.fieldbyname('sl').AsFloat);
combobox2.SetFocus;
end;
end;
procedure TFRM_JY.ComboBox2Change(Sender: TObject);
begin
if combobox2.Text = '全数检验' then
begin
with data.ADOb do
begin
close;
sql.Clear;
sql.Add('select * from tb_cprk where scddh='+''''+trim(combobox1.Text)+'''');
open;
end;
jysl := floattostr(data.ADOb.fieldbyname('sl').AsFloat);
edit3.Text := jysl;
edit4.SetFocus;
end
else
begin
edit3.Clear;
edit3.SetFocus;
end;
end;
procedure TFRM_JY.Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = vk_return then
begin
if strtoint(edit3.Text)>strtoint(jysl) then
edit3.Text := jysl;
edit4.SetFocus;
end;
end;
procedure TFRM_JY.Edit4KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (key = vk_return)and(edit4.Text <> '0') then
begin
if strtoint(edit4.Text)>strtoint(edit3.Text) then
begin
showmessage('合格数不能大于样本数。');
edit4.Clear;
end
else
begin
edit5.Text := floattostr((strtofloat(edit4.Text)/strtofloat(edit3.Text))*100)+'%';
DateTimePicker1.SetFocus;
end;
end;
end;
procedure TFRM_JY.DateTimePicker1Change(Sender: TObject);
begin
edit6.SetFocus;
end;
procedure TFRM_JY.ToolButton1Click(Sender: TObject);
var
i : integer;
s : string;
begin
i := 1;
tb := 1;
FRM_jy.FormShow(Sender);
edit1.Clear;
edit2.Clear;
edit3.Clear;
edit4.Clear;
edit5.Clear;
edit6.Clear;
combobox1.Text := '';
combobox2.Text := '';
DateTimePicker1.Date := now();
s := 'JY'+formatdatetime('yyyymm',now());
if data.ADOa.RecordCount<1 then
begin
edit1.Text := s+'00000'+inttostr(i);
end
else
begin
data.ADOa.Last;
i := strtoint(copy(data.ADOa.fieldbyname('jyid').AsString,9,6));
edit1.Text := s+formatfloat('000000',i+1);
end;
ToolButton2.Enabled := false;
ToolButton4.Enabled := true;
ToolButton5.Enabled := true;
combobox1.SetFocus;
end;
procedure TFRM_JY.ToolButton2Click(Sender: TObject);
begin
tb := 2;
ToolButton1.Enabled := false;
ToolButton4.Enabled := true;
ToolButton5.Enabled := true;
combobox1.Enabled := false;
combobox2.SetFocus;
end;
procedure TFRM_JY.ToolButton3Click(Sender: TObject);
var
ip : string;
begin
if application.MessageBox('真的要删除该记录吗?','提示',mb_yesno) = idyes then
begin
if data.ADOa.FieldByName('jyid').AsString = '' then
showmessage('质量检验信息表已经为空,无法删除。')
else
begin
ip := data.ADOa.fieldbyname('scddh').AsString;
data.ADOa.Delete;
FRM_jy.FormShow(Sender);
with data.ADOb do
begin
close;
sql.Clear;
sql.Add('select * from tb_cprk where scddh='+''''+ip+'''');
open;
end;
if data.ADOb.RecordCount>0 then
begin
data.ADOb.Edit;
data.ADOb.FieldByName('jy').AsString := '0';
data.ADOb.Post;
end;
end;
end;
end;
procedure TFRM_JY.ToolButton4Click(Sender: TObject);
var
pk : string;
begin
if (edit2.Text = '')or(edit3.Text = '')or(combobox1.Text = '')or
(edit4.Text = '')or(edit5.Text = '')or(edit6.Text = '')or
(combobox1.Text = '') then
begin
showmessage('请将质量检验信息填全。');
end
else
begin
pk := combobox1.Text;
if tb = 1 then
data.ADOa.Append;
if tb = 2 then
data.ADOa.Edit;
data.ADOa.fieldbyname('jyid').AsString := edit1.Text;
data.ADOa.fieldbyname('scddh').AsString := combobox1.Text;
data.ADOa.fieldbyname('cpmc').AsString := edit2.Text;
data.ADOa.fieldbyname('jylx').AsString := combobox2.Text;
data.ADOa.fieldbyname('zs').AsFloat := strtofloat(edit3.Text);
data.ADOa.fieldbyname('jysl').AsFloat := strtofloat(edit4.Text);
data.ADOa.fieldbyname('hgl').AsString := edit5.Text;
data.ADOa.fieldbyname('jytime').AsDateTime := DateTimePicker1.Date;
data.ADOa.fieldbyname('jyr').AsString := edit6.Text;
data.ADOa.Post;
combobox1.Enabled := true;
FRM_jy.FormShow(Sender);
with data.ADOb do
begin
close;
sql.Clear;
sql.Add('select * from tb_cprk where scddh='+''''+pk+'''');
open;
end;
if data.ADOb.RecordCount>0 then
begin
data.ADOb.Edit;
data.ADOb.FieldByName('jy').AsString := '1';
data.ADOb.Post;
end;
end;
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_JY.ToolButton5Click(Sender: TObject);
begin
data.ADOa.Cancel;
FRM_jy.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_JY.ToolButton8Click(Sender: TObject);
begin
data.ADOa.First;
ToolButton8.Enabled := false;
ToolButton9.Enabled := false;
ToolButton10.Enabled := true;
ToolButton11.Enabled := true;
edit1.Text := data.ADOa.fieldbyname('jyid').AsString;
combobox1.Text := data.ADOa.fieldbyname('scddh').AsString;
edit2.Text := data.ADOa.fieldbyname('cpmc').AsString;
combobox2.Text := data.ADOa.fieldbyname('jylx').AsString;
edit3.Text := floattostr(data.ADOa.fieldbyname('zs').AsFloat);
edit4.Text := floattostr(data.ADOa.fieldbyname('jysl').AsFloat);
edit5.Text := data.ADOa.fieldbyname('hgl').AsString;
DateTimePicker1.Date := data.ADOa.fieldbyname('jytime').AsDateTime;
edit6.Text := data.ADOa.fieldbyname('jyr').AsString;
end;
procedure TFRM_JY.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('jyid').AsString;
combobox1.Text := data.ADOa.fieldbyname('scddh').AsString;
edit2.Text := data.ADOa.fieldbyname('cpmc').AsString;
combobox2.Text := data.ADOa.fieldbyname('jylx').AsString;
edit3.Text := floattostr(data.ADOa.fieldbyname('zs').AsFloat);
edit4.Text := floattostr(data.ADOa.fieldbyname('jysl').AsFloat);
edit5.Text := data.ADOa.fieldbyname('hgl').AsString;
DateTimePicker1.Date := data.ADOa.fieldbyname('jytime').AsDateTime;
edit6.Text := data.ADOa.fieldbyname('jyr').AsString;
end;
procedure TFRM_JY.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('jyid').AsString;
combobox1.Text := data.ADOa.fieldbyname('scddh').AsString;
edit2.Text := data.ADOa.fieldbyname('cpmc').AsString;
combobox2.Text := data.ADOa.fieldbyname('jylx').AsString;
edit3.Text := floattostr(data.ADOa.fieldbyname('zs').AsFloat);
edit4.Text := floattostr(data.ADOa.fieldbyname('jysl').AsFloat);
edit5.Text := data.ADOa.fieldbyname('hgl').AsString;
DateTimePicker1.Date := data.ADOa.fieldbyname('jytime').AsDateTime;
edit6.Text := data.ADOa.fieldbyname('jyr').AsString;
end;
procedure TFRM_JY.ToolButton11Click(Sender: TObject);
begin
data.ADOa.Last;
ToolButton8.Enabled := true;
ToolButton9.Enabled := true;
ToolButton10.Enabled := false;
ToolButton11.Enabled := false;
edit1.Text := data.ADOa.fieldbyname('jyid').AsString;
combobox1.Text := data.ADOa.fieldbyname('scddh').AsString;
edit2.Text := data.ADOa.fieldbyname('cpmc').AsString;
combobox2.Text := data.ADOa.fieldbyname('jylx').AsString;
edit3.Text := floattostr(data.ADOa.fieldbyname('zs').AsFloat);
edit4.Text := floattostr(data.ADOa.fieldbyname('jysl').AsFloat);
edit5.Text := data.ADOa.fieldbyname('hgl').AsString;
DateTimePicker1.Date := data.ADOa.fieldbyname('jytime').AsDateTime;
edit6.Text := data.ADOa.fieldbyname('jyr').AsString;
end;
procedure TFRM_JY.ToolButton13Click(Sender: TObject);
begin
close;
end;
procedure TFRM_JY.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['0'..'9',#8]) then
key := #0;
end;
procedure TFRM_JY.Edit4KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['0'..'9',#8]) then
key := #0;
end;
procedure TFRM_JY.ToolButton6Click(Sender: TObject);
begin
ToolButton5.Enabled := TRUE;
Application.CreateForm(TFRM_JY_CX, FRM_JY_CX);
FRM_JY_CX.ShowModal;
FRM_JY_CX.Free;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -