📄 ubookreg.pas
字号:
unit uBookReg;
{$WARN SYMBOL_PLATFORM OFF}
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ComServ, ComObj, VCLCom, StdVcl, bdemts, DataBkr, DBClient,
MtsRdm, Mtx, pBookReg_TLB, Provider, DB, ADODB, uPublic;
type
TxzBooksBookReg = class(TMtsDataModule, IxzBooksBookReg)
ADOConnection1: TADOConnection;
ADODataSet1: TADODataSet;
adoBookIsActive: TADODataSet;
dspBookIsActive: TDataSetProvider;
private
function BookIDISActived(BookID:String):Boolean;
{ Private declarations }
protected
class procedure UpdateRegistry(Register: Boolean; const ClassID, ProgID: string); override;
procedure CBook(const ID, Name, Author, Pub: WideString; Money: Single;
const RKRQ: WideString; CS: Integer; var vResult: OleVariant);
safecall;
public
{ Public declarations }
end;
var
xzBooksBookReg: TxzBooksBookReg;
implementation
{$R *.DFM}
class procedure TxzBooksBookReg.UpdateRegistry(Register: Boolean; const ClassID, ProgID: string);
begin
if Register then
begin
inherited UpdateRegistry(Register, ClassID, ProgID);
EnableSocketTransport(ClassID);
EnableWebTransport(ClassID);
end else
begin
DisableSocketTransport(ClassID);
DisableWebTransport(ClassID);
inherited UpdateRegistry(Register, ClassID, ProgID);
end;
end;
//BookID是否已经存在;.T.不存在,.F.存在了,返回这本图书的详细信息
function TxzBooksBookReg.BookIDISActived(BookID: String): Boolean;
begin
try
if ADOConnection1.Connected then
ADOCOnnection1.Connected :=False;
ADOConnection1.ConnectionString :=GetConStr;
adoBookIsActive.Close;
adoBookIsActive.Parameters.ParamByName('aid').Value :=BookID;
adoBookIsActive.Open;
Result:=adoBookIsActive.IsEmpty;
finally
adoBookIsActive.Close;
end;
end;
procedure TxzBooksBookReg.CBook(const ID, Name, Author, Pub: WideString;
Money: Single; const RKRQ: WideString; CS: Integer;
var vResult: OleVariant);
begin
if BookIDISActived(ID) then
try
ADODataSet1.Open;
ADODataSet1.Append;
ADODataSet1.FieldByName('ID').Value :=ID;
ADODataSet1.FieldByName('CS').Value :=CS;
ADODataSet1.FieldByName('Name').Value :=Name;
ADODataSet1.FieldByName('Author').Value :=Author;
ADODataSet1.FieldByName('Pub').Value :=Pub;
ADODataSet1.FieldByName('Money').Value :=Money;
ADODataSet1.FieldByName('RKRQ').Value :=strtoDate(RKRQ);
ADODataSet1.Post;
setComplete;
vResult:='Complete';
except
setAbort;
vResult:=ADOConnection1.Errors[0].Description;
end
else
begin
adoBookIsActive.Close;
adoBookIsActive.Parameters.ParamByName('aid').Value :=ID;
adoBookIsActive.Open;
vResult:=dspBookIsActive.Data;
end;
end;
initialization
TComponentFactory.Create(ComServer, TxzBooksBookReg,
Class_xzBooksBookReg, ciMultiInstance, tmApartment);
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -