01. Data Access Object Pool Tdbapool
A. Assigning Access objects: Dbapool.allocateobject; Create a new one every time
B. Return to the object of Access: Dbapool.releaseobject (tdbaccess); Release and log Out
C. Number of allocated objects: dbapool.allocatedobjects;
02. Processing of server-side database configuration information: Tdbconfig
A. Taking the existing registered database information: dbconfig.fetchdatabaselist (var cds:tclientdataset)
B. Registering a new database: Dbconfig.adddatabase (Tdatabaserecord)
-----configured with the TDATABASERECORD structure-----------------parameter names when Qbparcel parameters are taken---------
Tdatabaserecord.databaseid ==> database Access ID-DatabaseID ==> String
Tdatabaserecord.databasedesc==> Database Description--Databasedesc ==> String
Tdatabaserecord.databasetype==> database Type--DatabaseType ==> Integer
Tdatabaserecord.databaseprovider ==> Service Object--Databaseprovider ==> String
Tdatabaserecord.databaseconnectstring ==> Connection string--connectstring ==> string
C. Modify the registered database configuration information: Dbconfig.updatedatabase (Database access ID, Tdatabaserecord);
D. Unregister the registered database configuration information: Dbconfig.removedatabase (database access ID);
E. Extracting registered Database configuration information: Dbconfig.getdatabaseproperty (Database access ID, tqbparcel)
F. Testing registered Database configuration information: Dbconfig.testdatabase (Database access ID)
G. Tests for unregistered database connections: dbconfig.testdatabase (Service object, connection string)
03. Processing of service-side service plug-in configuration information: Tdllplugin
A. Extraction of service plug-in information: Dllplugin.fetchpluginlist (Fcds:tclientdataset)
B. Register a new plugin: Dllplugin.addplugin (Tpluginrecord);
-----Configure------------Qbparcel corresponding parameters using the TPLUGINRECORD structure-----
Tpluginrecord.pluginid ==> Module Identification ==> pluginID
Tpluginrecord.plugindesc==> Module Description ==> Plugindesc
Tpluginrecord.pluginfilename==> Module name ==> pluginfilename
tpluginrecord.pluginpassword==> Module Password ==> pluginpassword
tpluginrecord.pluginthreadmode=> Threading Mode ==> Pluginthreadmode
Whether the tpluginrecord.pluginexecmode=> resides in memory = = Pluginexecmode
tpluginrecord.plugindbsupport==> Need database support = Plugindbsupport
C. Modification of registered plug-in information: Dllplugin.updateplugin (module ID, Tpluginrecord)
D. Removal of registered plugin information: dllplugin.removeplugin (module ID)
E. Extraction of registered plug-in information: Dllplugin.getpluginproperty (module ID, tqbparcel)
F. Invocation of the service plug-in function: DLLPLUGIN.BINARYRPC (module ID, password, enter parameter qbparcel, return parameter qbparcel);
Data access pool + Service plug-in configuration + database configuration