📄 u_goodsedit.pas
字号:
unit u_GoodsEdit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ADODB, DB, StdCtrls, Buttons, ExtCtrls;
type
TfrmGoodsEdit = class(TForm)
Panel1: TPanel;
Label1: TLabel;
edtBH: TLabeledEdit;
edtName: TLabeledEdit;
edtSpec: TLabeledEdit;
edtModel: TLabeledEdit;
edtUnit: TLabeledEdit;
edtInPrice: TLabeledEdit;
edtOutPrice: TLabeledEdit;
edtNote: TLabeledEdit;
edtArea: TLabeledEdit;
cmbClass: TComboBox;
btnOk: TBitBtn;
btnClose: TBitBtn;
qry: TADOQuery;
pup_GoodsInfo: TADOStoredProc;
procedure InitEdt();
function CheckEdt: Boolean;
procedure btnCloseClick(Sender: TObject);
procedure edtBHKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure edtNameKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure edtSpecKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure edtModelKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure edtUnitKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure edtInPriceKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure edtOutPriceKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure cmbClassChange(Sender: TObject);
procedure edtAreaKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure edtNoteKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FormShow(Sender: TObject);
procedure btnOkClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmGoodsEdit: TfrmGoodsEdit;
implementation
uses u_GoodsInfo, u_DataCtrl;
{$R *.dfm}
function TfrmGoodsEdit.CheckEdt: Boolean;
begin
if edtBH.Text = '' then
begin
Application.MessageBox('请输入编号','警告',MB_OK);
edtBH.SetFocus;
Result := False;
Exit;
end;
if edtName.Text = '' then
begin
Application.MessageBox('请输入产品名称','警告',MB_OK);
edtName.SetFocus;
Result := False;
Exit;
end;
if cmbClass.Text = '' then
begin
Application.MessageBox('请选择类别','警告',MB_OK);
cmbClass.SetFocus;
Result := False;
Exit;
end
else
Result := true;
end;
procedure TfrmGoodsEdit.btnCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmGoodsEdit.edtBHKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = VK_RETURN then
btnOk.SetFocus;
end;
procedure TfrmGoodsEdit.edtNameKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = VK_RETURN then
btnOk.SetFocus;
end;
procedure TfrmGoodsEdit.edtSpecKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = VK_RETURN then
btnOk.SetFocus;
end;
procedure TfrmGoodsEdit.edtModelKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = VK_RETURN then
btnOk.SetFocus;
end;
procedure TfrmGoodsEdit.edtUnitKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = VK_RETURN then
btnOk.SetFocus;
end;
procedure TfrmGoodsEdit.edtInPriceKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = VK_RETURN then
btnOk.SetFocus;
end;
procedure TfrmGoodsEdit.edtOutPriceKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = VK_RETURN then
btnOk.SetFocus;
end;
procedure TfrmGoodsEdit.cmbClassChange(Sender: TObject);
begin
btnOk.SetFocus;
end;
procedure TfrmGoodsEdit.edtAreaKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = VK_RETURN then
btnOk.SetFocus;
end;
procedure TfrmGoodsEdit.edtNoteKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = VK_RETURN then
btnOk.SetFocus;
end;
procedure TfrmGoodsEdit.InitEdt;
begin
edtBH.Text := frmGoodsInfo.qry.FieldValues['GoodsBH'];
edtName.Text := frmGoodsInfo.qry.FieldValues['GoodsName'];
edtSpec.Text := frmGoodsInfo.qry.FieldValues['GoodsSpec'];
edtModel.Text := frmGoodsInfo.qry.FieldValues['GoodsModel'];
edtUnit.Text := frmGoodsInfo.qry.FieldValues['GoodsUnit'];
edtInPrice.Text := frmGoodsInfo.qry.fieldbyname('GoodsInPrice').AsString ;
edtOutPrice.Text := frmGoodsInfo.qry.fieldbyname('GoodsOutPrice').AsString ;
edtArea.Text := frmGoodsInfo.qry.FieldValues['GoodsArea'];
edtNote.Text := frmGoodsInfo.qry.FieldValues['GoodsNote'];
cmbClass.Text := frmGoodsInfo.qry.FieldValues['ClassName'];
qry.Active := True;
qry.Close;
qry.Open;
while not(qry.Eof) do
begin
cmbClass.Items.Add(qry.FieldValues['ClassName']);
qry.Next;
end;
end;
procedure TfrmGoodsEdit.FormShow(Sender: TObject);
begin
InitEdt();
end;
procedure TfrmGoodsEdit.btnOkClick(Sender: TObject);
var
Success : Integer;
begin
if CheckEdt() = False then
Exit;
with pup_GoodsInfo do
begin
Parameters.ParamByName('@GoodsBH').Value := edtBH.Text;
Parameters.ParamByName('@GoodsName').Value := edtName.Text;
Parameters.ParamByName('@GoodsSpec').Value := edtSpec.Text;
Parameters.ParamByName('@GoodsModel').Value := edtModel.Text;
Parameters.ParamByName('@GoodsUnit').Value := edtUnit.Text;
Parameters.ParamByName('@ClassName').Value := cmbClass.Text;
Parameters.ParamByName('@GoodsInPrice').Value := edtInPrice.Text;
Parameters.ParamByName('@GoodsOutPrice').Value := edtOutPrice.Text;
Parameters.ParamByName('@GoodsArea').Value := edtArea.Text;
Parameters.ParamByName('@GoodsNote').Value := edtNote.Text;
ExecProc;
Success := Parameters.ParamByName('@RETURN_VALUE').Value;
if Success = 1 then
begin
Application.MessageBox('数据修改成功','警告',MB_OK);
frmGoodsEdit.Close;
frmGoodsInfo.qry.Close;
frmGoodsInfo.qry.Open;
frmGoodsInfo.qry.GotoBookmark(frmGoodsInfo.BookFlag);
end;
end;
end;
procedure TfrmGoodsEdit.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
cmbClass.Clear;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -