📄 base2infoware.pas
字号:
unit Base2InfoWare;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
EditForm, StdCtrls, Buttons, ComCtrls, DBData, ExtCtrls, dxCntner,
dxEditor, dxEdLib, dxDBELib, dxExEdtr, Db, ADODB, KsSkinButtons,
KsSkinForms, KsSkinLabels, KsSkinPanels, dxTL, dxDBCtrl, dxDBGrid,
KsSkinGroupBoxs, KsSkinTabs, se_controls, KsSkinSpeedButtons;
type
TfrmBase2InfoWare = class(TfrmEditForm)
PageControl1: TSeSkinPageControl;
TabSheet1: TSeCustomTabSheet;
TabSheet2: TSeCustomTabSheet;
Panel1: TSeSkinPanel;
lblName: TSeSkinLabel;
lblCode: TSeSkinLabel;
edtUserCode: TdxDBEdit;
edtName: TdxDBEdit;
Label3: TSeSkinLabel;
edtShortName: TdxDBEdit;
Label4: TSeSkinLabel;
edtUnit: TdxDBButtonEdit;
dxDBMemo1: TdxDBMemo;
Label12: TSeSkinLabel;
Label5: TSeSkinLabel;
Label6: TSeSkinLabel;
Label11: TSeSkinLabel;
dxDBEdit5: TdxDBEdit;
dxDBEdit6: TdxDBEdit;
dxDBEdit4: TdxDBEdit;
Label1: TSeSkinLabel;
btWareSort: TdxDBButtonEdit;
dxDBCheckEdit1: TdxDBCheckEdit;
bbAdd: TSeSkinButton;
bbOk: TSeSkinButton;
bbNo: TSeSkinButton;
lblPinYin: TSeSkinLabel;
edtPinYin: TdxDBEdit;
Panel3: TSeSkinPanel;
Label15: TSeSkinLabel;
Label17: TSeSkinLabel;
Label18: TSeSkinLabel;
Label19: TSeSkinLabel;
Label20: TSeSkinLabel;
Label21: TSeSkinLabel;
Label22: TSeSkinLabel;
Label16: TSeSkinLabel;
dxDBEdit14: TdxDBEdit;
dxDBEdit16: TdxDBEdit;
dxDBEdit17: TdxDBEdit;
dxDBEdit18: TdxDBEdit;
dxDBEdit19: TdxDBEdit;
dxDBEdit20: TdxDBEdit;
dxDBEdit21: TdxDBEdit;
dxDBEdit15: TdxDBEdit;
SeSkinLabel1: TSeSkinLabel;
dxDBEdit1: TdxDBEdit;
dsList: TDataSource;
ADOSetList: TADODataSet;
SeSkinGroupBox1: TSeSkinGroupBox;
SeSkinLabel5: TSeSkinLabel;
SeSkinLabel6: TSeSkinLabel;
edtUnit2: TdxDBButtonEdit;
edtScale: TdxDBEdit;
procedure bbNoClick(Sender: TObject);
procedure bbOkClick(Sender: TObject);
procedure edtUnitButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
procedure btWareSortButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
procedure bbAddClick(Sender: TObject);
procedure edtNameExit(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure btWareSortKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure btWareSortDblClick(Sender: TObject);
procedure edtUnitDblClick(Sender: TObject);
procedure edtUnit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure edtUnit2ButtonClick(Sender: TObject; AbsoluteIndex: Integer);
private
{ Private declarations }
bReturn: Boolean;
lMode: Integer;
function CheckEdit: Boolean;
procedure MainShow;
procedure LoadData;
public
{ Public declarations }
end;
function Base2InfoWareShow(l1Mode: Integer): Boolean;
implementation
uses SysPublic, Base2Info;
{$R *.DFM}
function Base2InfoWareShow(l1Mode: Integer): Boolean;
var
frmBase2InfoWare: TfrmBase2InfoWare;
begin
frmBase2InfoWare := TfrmBase2InfoWare.Create(Application);
with frmBase2InfoWare do
begin
lMode := l1Mode;
MainShow;
Result := bReturn;
Free;
end;
end;
procedure TfrmBase2InfoWare.MainShow;
begin
DataSet := edtName.DataSource.DataSet;
LoadData;
ShowModal;
end;
procedure TfrmBase2InfoWare.LoadData;
begin
bReturn := false;
if lMode = BASE_WARE then
Caption := '商品详细资料';
end;
procedure TfrmBase2InfoWare.bbNoClick(Sender: TObject);
begin
inherited;
Close;
end;
function TfrmBase2InfoWare.CheckEdit: Boolean;
var
sID: string;
begin
Result := CheckEditEmpty(1, self, [lblName.Name], [edtName.Name]);
if Result then
begin
sID := DataSet.FieldByName('ID').AsString;
if (Trim(edtUserCode.Text) <> '') and (sID <> '') and not
GetDataSetEmpty('Select ID From Ware WHERE Usercode=''' +
Trim(edtUserCode.Text) + ''' and ID<>' + sID) then
begin
ShowMsg('相同编号的商品已存在,请重新输入编号!');
Result := False;
end;
end;
end;
procedure TfrmBase2InfoWare.bbOkClick(Sender: TObject);
begin
inherited;
if not CheckEdit then Exit;
DataSet.FieldByName('Mode').AsInteger := lMode;
bReturn := true;
Close;
end;
procedure TfrmBase2InfoWare.edtUnitButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
var
sUnit: string;
begin
inherited;
sUnit := BaseSelect(BASE_WARE_UNIT, 1, edtUnit.text);
if sUnit <> '' then
DataSet.FieldByName(edtUnit.DataField).AsString := sUnit;
end;
procedure TfrmBase2InfoWare.btWareSortButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
var
sSort1: string;
begin
inherited;
sSort1 := BaseSelect(BASE_WARE_SORT, 1, btWareSort.text);
if sSort1 <> '' then
DataSet.FieldByName(btWareSort.DataField).AsString := sSort1;
end;
procedure TfrmBase2InfoWare.bbAddClick(Sender: TObject);
begin
inherited;
if not CheckEdit then Exit;
DataSet.Edit;
DataSet.FieldByName('Mode').AsInteger := lMode;
SaveDataSet(TADODataSet(DataSet), false);
UpdateICCount('Ware', TADODataSet(DataSet).FieldByName('TreeParent').AsInteger);
DataSet.Last;
DataSet.Insert;
end;
procedure TfrmBase2InfoWare.edtNameExit(Sender: TObject);
begin
inherited;
DataSet.FieldByName(edtPinYin.DataField).AsString := GetPY(edtName.Text);
if Trim(edtShortName.Text) = '' then
DataSet.FieldByName(edtShortName.DataField).AsString := Copy(edtName.Text, 1, 8);
end;
procedure TfrmBase2InfoWare.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
if (bReturn = False) and (DataSet.State = dsInsert)
and (Trim(edtName.Text) <> '') then
begin
if MsgBox('你没有保存数据,确定要退出吗?',
'提示', MB_OKCANCEL) <> IDOK then
Action := caNone;
end;
end;
procedure TfrmBase2InfoWare.btWareSortKeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState);
begin
inherited;
case KEY of
VK_RETURN: TdxDBButtonEdit(Sender).OnButtonClick(nil, 0);
end;
end;
procedure TfrmBase2InfoWare.btWareSortDblClick(Sender: TObject);
begin
inherited;
TdxDBButtonEdit(Sender).OnButtonClick(nil, 0);
end;
procedure TfrmBase2InfoWare.edtUnitDblClick(Sender: TObject);
begin
inherited;
TdxDBButtonEdit(Sender).OnButtonClick(nil, 0);
end;
procedure TfrmBase2InfoWare.edtUnit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
inherited;
case KEY of
VK_RETURN: TdxDBButtonEdit(Sender).OnButtonClick(nil, 0);
end;
end;
procedure TfrmBase2InfoWare.edtUnit2ButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
var
sUnit: string;
begin
inherited;
sUnit := BaseSelect(BASE_WARE_UNIT, 1, edtUnit2.text);
if sUnit <> '' then DataSet.FieldByName(edtUnit2.DataField).AsString := sUnit;
end;
end.
//此源码由程序太平洋收集整理发布,任何人都可自由转载,但需保留本站信息
//╭⌒╮┅~ ¤ 欢迎光临程序太平洋╭⌒╮
//╭⌒╭⌒╮╭⌒╮~╭⌒╮ ︶ ,︶︶
//,︶︶︶︶,''︶~~ ,''~︶︶ ,''
//╔ ╱◥███◣═╬╬╬╬╬╬╬╬╬╗
//╬ ︱田︱田 田 ︱ ╬
//╬ http://www.5ivb.net ╬
//╬ ╭○╮● ╬
//╬ /■\/■\ ╬
//╬ <| || 有希望,就有成功! ╬
//╬ ╬
//╚╬╬╬╬╬╬╬╬╬╬╗ ╔╬╬╬╬╝
//
//说明:
//专业提供VB、.NET、Delphi、ASP、PB源码下载
//包括:程序源码,控件,商业源码,系统方案,开发工具,书籍教程,技术文档
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -