📄 base2infosubject.pas
字号:
unit Base2InfoSubject;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
EditForm, StdCtrls, Buttons, ComCtrls, DBData, ExtCtrls, dxCntner,
dxEditor, dxEdLib, dxDBELib, dxExEdtr, Db, ADODB, KsControls, KsButtons,
KsSkinButtons, KsHooks, KsForms, KsSkinForms, KsLabels, KsSkinLabels,
KsPanels, KsSkinPanels, KsCheckBoxs, KsSkinCheckBoxs, KsGroupBoxs,
KsSkinGroupBoxs;
type
TfrmBase2InfoSubject = class(TfrmEditForm)
bbOk: TSeSkinButton;
bbNo: TSeSkinButton;
bbAdd: TSeSkinButton;
Panel1: TSeSkinPanel;
lblName: TSeSkinLabel;
Label12: TSeSkinLabel;
lblPinYin: TSeSkinLabel;
edtName: TdxDBEdit;
edtPinYin: TdxDBEdit;
Label1: TSeSkinLabel;
dxDBEdit1: TdxDBEdit;
dxDBEdit2: TdxDBEdit;
Label3: TSeSkinLabel;
edtShortName: TdxDBEdit;
SeSkinGroupBox1: TSeSkinGroupBox;
srbJ: TSeSkinRadioButton;
srbD: TSeSkinRadioButton;
SeSkinGroupBox2: TSeSkinGroupBox;
edtCurrency: TdxDBButtonEdit;
srbNoCurrency: TSeSkinRadioButton;
srbAllCurrency: TSeSkinRadioButton;
srbOneCurrency: TSeSkinRadioButton;
dxDBCheckEdit1: TdxDBCheckEdit;
edtJD: TdxDBEdit;
edtWB: TdxDBEdit;
procedure bbNoClick(Sender: TObject);
procedure bbOkClick(Sender: TObject);
procedure bbAddClick(Sender: TObject);
procedure edtNameExit(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure edtCurrencyButtonClick(Sender: TObject; AbsoluteIndex: Integer);
private
{ Private declarations }
bReturn: Boolean;
lMode,lTabIndex,lRootID: Integer;
procedure MainShow;
procedure LoadData;
public
{ Public declarations }
end;
function Base2InfoSubjectShow(l1Mode,l1TabIndex,l1RootID: Integer): Boolean;
implementation
uses SysPublic, Base2Info;
{$R *.DFM}
function Base2InfoSubjectShow(l1Mode,l1TabIndex,l1RootID: Integer): Boolean;
var
frmBase2InfoSubject: TfrmBase2InfoSubject;
begin
frmBase2InfoSubject := TfrmBase2InfoSubject.Create(Application);
with frmBase2InfoSubject do
begin
lMode := l1Mode;
lTabIndex:=l1TabIndex;
lRootID:=l1RootID;
MainShow;
Result := bReturn;
Free;
end;
end;
procedure TfrmBase2InfoSubject.MainShow;
begin
DataSet:=edtName.DataSource.DataSet;
LoadData;
ShowModal;
end;
procedure TfrmBase2InfoSubject.LoadData;
var
lWB: Integer;
begin
bReturn := false;
Caption := '会计科目信息编辑';
srbJ.Checked := True;
srbAllCurrency.Checked := True;
if edtJD.Text = srbJ.Caption then
srbJ.Checked := True
else
srbD.Checked := True;
lWB := DataSet.FieldByName(edtWB.DataField).AsInteger;
case lWB of
1: srbAllCurrency.Checked := True;
2: srbOneCurrency.Checked := True;
else
srbNoCurrency.Checked := True;
end;
end;
procedure TfrmBase2InfoSubject.bbNoClick(Sender: TObject);
begin
inherited;
Close;
end;
procedure TfrmBase2InfoSubject.bbOkClick(Sender: TObject);
var
lWB: Integer;
begin
inherited;
if not CheckEditEmpty(1, self, [lblName.Name], [edtName.Name]) then
Exit;
if srbJ.Checked = True then
DataSet.FieldByName(edtJD.DataField).AsString := srbJ.Caption
else
DataSet.FieldByName(edtJD.DataField).AsString := srbD.Caption;
if srbAllCurrency.Checked = True then
lWB := 1
else if srbOneCurrency.Checked = True then
lWB := 2
else
lWB := 0;
DataSet.FieldByName(edtWB.DataField).AsInteger := lWB;
DataSet.FieldByName('ClassID').Value := lTabIndex;
DataSet.FieldByName('RootID').Value := lRootID;
bReturn := true;
Close;
end;
procedure TfrmBase2InfoSubject.bbAddClick(Sender: TObject);
var
lWB: Integer;
begin
inherited;
if not CheckEditEmpty(1, self, [lblName.Name], [edtName.Name]) then
Exit;
DataSet.Edit;
if srbJ.Checked = True then
DataSet.FieldByName(edtJD.DataField).AsString := srbJ.Caption
else
DataSet.FieldByName(edtJD.DataField).AsString :=srbD.Caption;
if srbAllCurrency.Checked = True then
lWB := 1
else if srbOneCurrency.Checked = True then
lWB := 2
else
lWB := 0;
DataSet.FieldByName(edtWB.DataField).AsInteger := lWB;
DataSet.FieldByName('ClassID').Value := lTabIndex;
DataSet.FieldByName('RootID').Value := lRootID;
SaveDataSet(TADODataSet(DataSet), false);
UpdateICCount('Subject', TADODataSet(DataSet).FieldByName('TreeParent').AsInteger);
DataSet.Last;
DataSet.Insert;
end;
procedure TfrmBase2InfoSubject.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 TfrmBase2InfoSubject.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 TfrmBase2InfoSubject.edtCurrencyButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
var
sCurrency1: string;
begin
inherited;
sCurrency1 := BaseSelect(BASE_CURRENCY_STYLE, 1, edtCurrency.Text);
if sCurrency1 <> '' then DataSet.FieldByName(edtCurrency.DataField).AsString := sCurrency1;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -