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

📄 gl_enter_credencetypeh.pas

📁 一个MRPII系统源代码版本
💻 PAS
字号:
unit Gl_Enter_CredenceTypeH;

Interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Base_Entry_Head, Menus, Db, ActnList, AdODB, Grids, DBGridEh, StdCtrls,
  ExtCtrls, ComCtrls, ToolWin, ExtPrintReport, jpeg;

Type
  TFrm_Gl_Enter_CredenceTypeH = Class(TFrm_Base_Entry_Head)
    AdoQry_HeadCharacterNo: TStringField;
    AdoQry_HeadCharacterCode: TStringField;
    AdoQry_HeadCharacterName: TStringField;
    AdoQry_HeadLimitType: TIntegerField;
    procedure Act_DeleteExecute(Sender: TObject);
  private
    procedure SaveCredenceTypeHistory(AdoConnection:TAdoConnection;CharacterNo:string;UserCode:string;HisType:integer);
    procedure SaveCredenceTypeLineHistory(AdoConnection:TAdoConnection;CharacterNo,CredenceTypeLineId:string;UserCode:string;HisType:integer);

    { Private declarations }
  public
    procedure InitForm(AdOConnection:TAdOConnection;ReadOnly:Boolean);Override;
    { Public declarations }
  end;

var
  Frm_Gl_Enter_CredenceTypeH: TFrm_Gl_Enter_CredenceTypeH;

implementation

uses Gl_Enter_CredenceType, Sys_Global;

{$R *.DFM}

{ TFrm_Gl_Enter_ForeignCurrencyRateH }

procedure TFrm_Gl_Enter_CredenceTypeH.InitForm(
  AdOConnection: TAdOConnection; ReadOnly: Boolean);
begin
  inherited;
  SelectFromSql:='Select * From Gl_CredenceType '  ;
  OrderByFields:=' CharacterNo ';
  GetData;
  Frm_Entry_Body:=TFrm_Gl_Enter_CredenceType.Create(Application);
end;

procedure TFrm_Gl_Enter_CredenceTypeH.Act_DeleteExecute(
  Sender: TObject);
begin
  if(not AdoQry_Head.IsEmpty)and
    (DispInfo(' 真的删除当前记录吗? ',2)='y')then
  begin
    try
      DbConnect.beginTrans;
      SaveCredenceTypeHistory(DbConnect,AdoQry_Head.fieldbyname('CharacterNo').AsString ,UserCode,2);

      AdoQry_Tmp.Close;
      AdoQry_Tmp.sql.clear;
      AdoQry_Tmp.SQL.Text := ' Select * From Gl_CredenceTypeLine '
                            +'     Where   CharacterNo='''+AdoQry_Head.fieldbyname('CharacterNo').AsString +''' ' ;
      AdoQry_Tmp.Open;
      while not AdoQry_Tmp.Eof do
      begin
        SaveCredenceTypeLineHistory(DbConnect,AdoQry_Tmp.fieldbyname('CharacterNo').AsString ,AdoQry_Tmp.fieldbyname('CredenceTypeLineId').AsString,UserCode,2);
        AdoQry_Tmp.Next;
      end;
      AdoQry_Tmp.Close;
      AdoQry_Tmp.sql.clear;
      AdoQry_Tmp.SQL.Text := ' Delete Gl_CredenceTypeLine '
                            +'     Where   CharacterNo='''+AdoQry_Head.fieldbyname('CharacterNo').AsString+''' ' ;
      AdoQry_Tmp.ExecSQL;

      AdoQry_Tmp.Close;
      AdoQry_Tmp.sql.clear;
      AdoQry_Tmp.SQL.Text := ' Delete Gl_CredenceType '
                            +'     Where   CharacterNo='''+AdoQry_Head.fieldbyname('CharacterNo').AsString+''' ' ;
      AdoQry_Tmp.ExecSQL;
      DbConnect.CommitTrans;
      AdoQry_Head.Delete;

    except
      DbConnect.RollBackTrans ;
      DispInfo(' 无法删除当前记录,可能已经被其他数据表引用!',1);
      Abort;
    end;
  end;
end;

procedure TFrm_Gl_Enter_CredenceTypeH.SaveCredenceTypeHistory(
  AdoConnection: TAdoConnection; CharacterNo, UserCode: string;
  HisType: integer);
var AdoQry:TAdoQuery;
    AdoQrytmp:TAdoQuery;
    sqltext:string;
    chgType:string;
begin
 case hisType of
   0: chgType:='新增';
   1: chgType:='修改';
   2: chgType:='删除';
 end;
 AdoQry:=TAdoQuery.Create(Application);
 AdoQry.EnableBCD:=False;
 AdoQry.Connection:=AdoConnection;
 AdoQrytmp:=TAdoQuery.Create(Application);
 AdoQrytmp.EnableBCD:=False;
 AdoQrytmp.Connection:=AdoConnection;
 SqlText := ' Select * From Gl_CredenceType Where CharacterNo = '''+CharacterNo+''' ';
 AdoQry.Close;
 AdoQry.SQL.clear;
 AdoQry.Sql.Text := SqlText;
 AdoQry.Open;
   SqlText:='Insert Gl_CredenceTypeHistory '
              +' (CharacterNo,CharacterCode,CharacterName,LimitType, '
              +'  ChgEmployeeCode,ChgTime,ChgType )'
              +'  Values('
              +''''+ AdoQry.fieldbyname('CharacterNo').AsString+''','
              +''''+ AdoQry.fieldbyname('CharacterCode').AsString+''','
              +''''+ AdoQry.fieldbyname('CharacterName').AsString+''','
              +''''+ AdoQry.fieldbyname('LimitType').AsString+''','
              +Quotedstr(userCode)+','
              +'getdate(),'
              +quotedstr(chgType)+')';

  with AdoQrytmp do
    begin
      Close;
      sql.clear;
      sql.Text:=sqltext;
      try
      execsql;
      except
      end;
    end;
 try
  AdoQry.Free;
  AdoQrytmp.Free;
 except
 end;
end;

procedure TFrm_Gl_Enter_CredenceTypeH.SaveCredenceTypeLineHistory(
  AdoConnection: TAdoConnection; CharacterNo, CredenceTypeLineId,
  UserCode: string; HisType: integer);
var AdoQry:TAdoQuery;
    AdoQrytmp:TAdoQuery;
    sqltext:string;
    chgType:string;
begin
 case hisType of
   0: chgType:='新增';
   1: chgType:='修改';
   2: chgType:='删除';
 end;
 AdoQry:=TAdoQuery.Create(Application);
 AdoQry.EnableBCD:=False;
 AdoQry.Connection:=AdoConnection;
 AdoQrytmp:=TAdoQuery.Create(Application);
 AdoQrytmp.EnableBCD:=False;
 AdoQrytmp.Connection:=AdoConnection;
 with AdoQry do
   begin
    Close;
    sql.clear;
    sql.Text:='select * from Gl_CredenceTypeLine where CharacterNo='+CharacterNo
              +' and  CredenceTypeLineId='+CredenceTypeLineId;
    Prepared;
    open;
   end;
   SqlText:='Insert Gl_CredenceTypeLineHistory '
                +' (CredenceTypeLineId,CharacterNo,KmCode, '
                +' ChgEmployeeCode,ChgTime,ChgType)'
                +' Values('
                + Quotedstr(AdoQry.fieldbyname('CredenceTypeLineId').AsString)+','
                + Quotedstr(AdoQry.fieldbyname('CharacterNo').AsString)+','
                + Quotedstr(AdoQry.fieldbyname('KmCode').AsString)+','
                + quotedstr(userCode)+','
                +'getdate(),'
                + quotedstr(chgType)+')';
  with AdoQrytmp do
    begin
      Close;
      sql.clear;
      sql.Text:=sqltext;
      try
      execsql;
      except
      end;
    end;
  try
    AdoQry.Free;
    AdoQrytmp.Free;
  except
  end;

end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -