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

📄 classenterprise.pas

📁 发票打印程序源码
💻 PAS
字号:
unit ClassEnterprise;

interface

uses
  Classes, Windows, DBTables;

type
  TEnterprise = class(TObject)
  public
    RatepayingNo: string; //纳税代码
    TaxRegisterNo: string; //税务登记证号
    EnterpriseName: string; //委托企业全称
    AffiliateTown: string; //所属乡镇
    DetailAddress: string; //详细地址
    TelephoneNo: string; //联系电话
    Linkman: string; //联系人
    constructor Create;
    destructor Destroy; override;
    procedure CreateQuery;
    procedure FreeQuery;
    function GetInfo(ARatepayingNo, ATaxRegisterNo: string; AEnterpriseName: string = ''): Boolean;
    function Update: Boolean;
    function Insert: Boolean;
    function Delete: Boolean;
  private
    TmpQuery: TQuery;
  end;

implementation

uses
  SysUtils, Forms, DB, Dialogs;

{ Enterprise }

constructor TEnterprise.Create;
begin
  inherited;
  CreateQuery;
end;

procedure TEnterprise.CreateQuery;
begin
  try
    TmpQuery := TQuery.Create(nil); //创建TEMPQUERY查询
    TmpQuery.DatabaseName := 'JB';
  except
    on E: Exception do
    begin
      Application.MessageBox(PChar(E.Message), '错误框', MB_OK + MB_ICONERROR);
      Application.Terminate; //关闭程序
    end;
  end;
end;

function TEnterprise.Delete: Boolean;
begin
  with TmpQuery do
  try
    try
      Close;
      SQL.Clear;
      SQL.Add(' DELETE FROM Enterprise.DB ');
      SQL.Add(' WHERE  RatepayingNo="' + RatepayingNo + '"');
      Prepare;
      ExecSQL;
      Result := True; //成功,返回TRUE
    finally
      UnPrepare;
      Close;
      Application.MessageBox('删除企业信息成功!', '确认', MB_OK + MB_ICONINFORMATION);
    end;
  except
    Application.MessageBox('删除企业信息出错', '错误框', MB_OK + MB_ICONERROR);
    Result := False;
  end;
end;

destructor TEnterprise.Destroy;
begin
  FreeQuery;
  inherited;
end;

procedure TEnterprise.FreeQuery;
begin
  TmpQuery.Free; //释放TEMPQUERY查询
end;

function TEnterprise.GetInfo(ARatepayingNo, ATaxRegisterNo: string;
  AEnterpriseName: string = ''): Boolean;
begin
  Result := False;
  with TmpQuery do
  try
    Close; //关闭TEMPQUERY查询
    SQL.Clear;
    SQL.Add(' SELECT * FROM Enterprise.DB');
    if ARatepayingNo = '' then
      SQL.Add(' WHERE RatepayingNo= ' + '"' + Trim(ARatepayingNo) + '"')
    else
      SQL.Add(' WHERE TaxRegisterNo=' + '"' + Trim(ATaxRegisterNo) + '"');
    Open; //开始查询
    First;
    if RecordCount > 0 then //如果查出来的记录数不为0(即有记录)
    begin //取出子表中的各个字段
      RatepayingNo := fieldbyname('RatepayingNo').asstring; {取纳税代码}
      TaxRegisterNo := fieldbyname('TaxRegisterNo').asstring; {取税务登记证号}
      EnterpriseName := fieldbyname('EnterpriseName').asstring; {取委托企业全称}
      AffiliateTown := fieldbyname('AffiliateTown').asstring; {取所属乡镇}
      DetailAddress := fieldbyname('DetailAddress').asstring; {取详细地址}
      TelephoneNo := fieldbyname('TelephoneNo').asstring; {取联系电话}
      Linkman := fieldbyname('Linkman').asstring; {取联系人}
      Result := True
    end;
  finally
    Close; //关闭TEMPQUERY查询
  end;
end;

function TEnterprise.Insert: Boolean;
begin
  with TmpQuery do
  try
    try
      Close; //关闭查询
      SQL.Clear; //清除原有SQL语句
      SQL.Add(' INSERT INTO Enterprise.DB ');
      SQL.Add('        (RatepayingNo,');
      SQL.Add('        TaxRegisterNo,');
      SQL.Add('        EnterpriseName,');
      SQL.Add('        AffiliateTown,');
      SQL.Add('        DetailAddress,');
      SQL.Add('        TelephoneNo,');
      SQL.Add('        Linkman)');
      SQL.Add(' VALUES ("' + RatepayingNo + '",'); //纳税代码
      SQL.Add('        "' + TaxRegisterNo + '",'); //税务登记证号
      SQL.Add('        "' + EnterpriseName + '",'); //委托企业全称
      SQL.Add('        "' + AffiliateTown + '",'); //所属乡镇
      SQL.Add('        "' + DetailAddress + '",'); //详细地址
      SQL.Add('        "' + TelephoneNo + '",'); //联系电话
      SQL.Add('        "' + Linkman + '")'); //联系人
      Prepare; //告诉BDE将执行一个SQL
      ExecSQL; //开始更新数据
      Result := True; //返回TRUE
    finally
      Unprepare; //告诉BDE完成SQL的执行
      Close; //关闭查询
      Application.MessageBox('添加企业信息成功!', '确认', MB_OK + MB_ICONINFORMATION);
    end;
  except
    Application.MessageBox('添加企业信息出错', '错误框', MB_OK + MB_ICONERROR);
    Result := False;
  end;
end;

function TEnterprise.Update: Boolean;
begin
  with TmpQuery do
  try
    try
      Close; //关闭查询
      SQL.Clear; //清除原有SQL语句
      SQL.Add(' UPDATE Enterprise.DB ');
      SQL.Add(' SET    TaxRegisterNo="' + TaxRegisterNo + '",'); //税务登记证号
      SQL.Add('        EnterpriseName="' + EnterpriseName + '",'); //委托企业全称
      SQL.Add('        AffiliateTown="' + AffiliateTown + '",'); //所属乡镇
      SQL.Add('        DetailAddress="' + DetailAddress + '",'); //详细地址
      SQL.Add('        TelephoneNo="' + TelephoneNo + '",'); //联系电话
      SQL.Add('        Linkman="' + Linkman + '"'); //联系人
      SQL.Add(' WHERE  RatepayingNo="' + RatepayingNo + '"');
      Prepare; //告诉BDE将执行一个SQL
      ExecSQL; //开始更新数据
      Result := True; //返回TRUE
    finally
      Unprepare; //告诉BDE完成SQL的执行
      Close; //关闭查询
      Application.MessageBox('更新企业信息成功!', '确认', MB_OK + MB_ICONINFORMATION);
    end;
  except
    Application.MessageBox('更新企业信息出错!', '错误', MB_OK + MB_ICONERROR);
    Result := False;
  end;
end;

end.

⌨️ 快捷键说明

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