⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 base2infosubject.pas

📁 胜天财务进销存2003源代码,SQLSERVER版,目前最完整的财务进销存系统.
💻 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 + -