这段行吧。
unit BaseDataModule;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, ADODB;
type
TDataModuleBase = class(TDataModule)
ADOTableClientInfo: TADOTable;
ADOTableVictualerInfo: TADOTable;
ADOTableVictualerInfoDSDesigner: TWideStringField;
ADOTableVictualerInfoDSDesigner2: TWideStringField;
ADOTableVictualerInfoDSDesigner3: TWideStringField;
ADOTableVictualerInfoDSDesigner4: TWideStringField;
ADOTableVictualerInfoDSDesigner5: TWideStringField;
ADOTableVictualerInfoDSDesigner6: TWideStringField;
ADOTableVictualerInfoDSDesigner7: TWideStringField;
ADOTableVictualerInfoDSDesigner8: TWideStringField;
ADOTableVictualerInfoDSDesigner9: TMemoField;
ADOTableClientInfoDSDesigner: TWideStringField;
ADOTableClientInfoDSDesigner2: TWideStringField;
ADOTableClientInfoDSDesigner3: TWideStringField;
ADOTableClientInfoDSDesigner4: TWideStringField;
ADOTableClientInfoDSDesigner5: TWideStringField;
ADOTableClientInfoDSDesigner6: TWideStringField;
ADOTableClientInfoDSDesigner7: TWideStringField;
ADOTableClientInfoDSDesigner8: TWideStringField;
ADOTableClientInfoDSDesigner9: TWideStringField;
ADOTableClientInfoEMAIL: TWideStringField;
ADOTableClientInfoDSDesigner10: TWideStringField;
ADOTableClientInfoDSDesigner11: TWideStringField;
ADOTableClientInfoDSDesigner12: TWideStringField;
ADOTableClientInfoDSDesigner13: TMemoField;
ADOTableVictualerLinkMan: TADOTable;
DataSourceVictualerInfo: TDataSource;
ADOConnectionBase: TADOConnection;
ADOTableSelfClass: TADOTable;
ADOTableSelfClassDSDesigner: TWideStringField;
ADOTableSelfClassDSDesigner2: TWideStringField;
ADOTableISBNClass: TADOTable;
ADOTableISBNClassISBN: TWideStringField;
ADOTableISBNClassISBN2: TWideStringField;
ADOTableBookInfo: TADOTable;
ADOConnectionop: TADOConnection;
ADOTablePublish: TADOTable;
ADOTablePublishDSDesigner: TWideStringField;
ADOTablePublishDSDesigner2: TWideStringField;
ADOTablePublishDSDesigner3: TWideStringField;
ADOTablePublishDSDesigner4: TWideStringField;
ADOTableVictualerLinkManDSDesigner: TWideStringField;
ADOTableVictualerLinkManDSDesigner2: TWideStringField;
ADOTableVictualerLinkManDSDesigner3: TWideStringField;
ADOTableVictualerLinkManDSDesigner4: TWideStringField;
ADOTableVictualerLinkManDSDesigner5: TWideStringField;
ADOTableVictualerLinkManDSDesigner6: TWideStringField;
ADOTableVictualerLinkManEMAIL: TWideStringField;
ADOTableSailClass: TADOTable;
ADOTableSailClassDSDesigner: TWideStringField;
ADOTableSailClassDSDesigner2: TWideStringField;
ADOTableBookInfoDSDesigner: TWideStringField;
ADOTableBookInfoDSDesigner2: TWideStringField;
ADOTableBookInfoDSDesigner4: TWideStringField;
ADOTableBookInfoDSDesigner6: TWideStringField;
ADOTableBookInfoDSDesigner7: TWideStringField;
ADOTableBookInfoDSDesigner8: TBCDField;
ADOTableBookInfoDSDesigner9: TWideStringField;
ADOTableBookInfoDSDesigner10: TSmallintField;
ADOTableBookInfoDSDesigner12: TWideStringField;
ADOTableBookInfoDSDesigner13: TWideStringField;
ADOTableBookInfoDSDesigner14: TWideStringField;
ADOTableBookInfoISBN: TWideStringField;
ADOTableBookInfoDSDesigner15: TWideStringField;
ADOTableBookInfoDSDesigner16: TWideStringField;
ADOTableBookInfoDSDesigner17: TMemoField;
ADOTableBookInfoDSDesigner18: TWideStringField;
ADOTableStorage: TADOTable;
ADOTableStorageDSDesigner: TWideStringField;
ADOTableStorageDSDesigner2: TWideStringField;
ADOTableBookInfoDSDesigner3: TWideStringField;
ADOTableStock: TADOTable;
ADOTableOp: TADOTable;
ADOTablePotence: TADOTable;
DataSourceOp: TDataSource;
ADOTableOpDSDesigner: TWideStringField;
ADOTableOpDSDesigner2: TWideStringField;
ADOTableOpDSDesigner3: TWideStringField;
ADOTableOpDSDesigner4: TWideStringField;
ADOTablePotenceDSDesigner2: TWideStringField;
ADOTablePotenceDSDesigner3: TBooleanField;
ADOTablePotenceDSDesigner4: TBooleanField;
ADOTablePotenceDSDesigner5: TBooleanField;
ADOTablePotenceDSDesigner: TWideStringField;
ADOTableBookInfoShow: TBooleanField;
ADOTableBookInfoDSDesigner19: TWideStringField;
ADOTableBookInfoDSDesigner5: TWideStringField;
ADOTableBookInfoDSDesigner11: TWideStringField;
ADOTableFDJL: TADOTable;
ADOTableStockDSDesigner: TWideStringField;
ADOTableStockDSDesigner2: TWideStringField;
ADOTableStockDSDesigner3: TIntegerField;
ADOTableFDJLDSDesigner: TWideStringField;
ADOTableFDJLDSDesigner2: TWideStringField;
ADOTableFDJLDSDesigner3: TWideStringField;
ADOTableFDJLDSDesigner4: TWideStringField;
ADOTableFDJLDSDesigner5: TWideStringField;
ADOTableFDJLDSDesigner6: TWideStringField;
ADOTableFDJLDSDesigner7: TWideStringField;
ADOTableFDJLDSDesigner8: TWideStringField;
ADOTableFDJLDSDesigner9: TWideStringField;
ADOTableFDJLDSDesigner10: TWideStringField;
ADOTableFDJLDSDesigner11: TWideStringField;
ADOTableFDJLDSDesigner12: TWideStringField;
ADOTableFDJLDSDesigner13: TMemoField;
procedure DataModuleCreate(Sender: TObject);
procedure ADOTablePostError(DataSet: TDataSet;
E: EDatabaseError; var Action: TDataAction);
procedure SonADOTableAfterInsert(DataSet: TDataSet);
procedure SonADOTableBeforeInsert(DataSet: TDataSet);
procedure SonADOTableBeforePost(DataSet: TDataSet);
procedure SonADOTableAfterPost(DataSet: TDataSet);
procedure SonADOTableBeforeDelete(DataSet: TDataSet);
procedure SonBeforeDelete(DataSet: TDataSet);
procedure ADOTableAfterInsert(DataSet: TDataSet);
procedure ParentADOTableAfterUpdate(DataSet: TDataSet);
PROCEDURE ZheKouDisplay(Sender:TField;var Text:String;DisplayText:Boolean);
procedure ADOTableCalcFields(DataSet: TDataSet);
procedure ADOTableOpDSDesigner3GetText(Sender: TField;
var Text: String; DisplayText: Boolean);
procedure ADOTableBookInfoAfterInsert(DataSet: TDataSet);
procedure ADOTableStorageAfterInsert(DataSet: TDataSet);
private
oldValue,NewValue:integer;
OldStorage,newStorage:String;
{ Private declarations }
public
{ Public declarations }
Protected
procedure SonTableRequery(DataSet:TCustomADODataSet);virtual;
function IsIncreaseStock(DataSet:TDataSet):Boolean;virtual;
end;
var
DataModuleBase: TDataModuleBase;
implementation
uses UserGlobal;
{$R *.DFM}
procedure TDataModuleBase.DataModuleCreate(Sender: TObject);
var
i:integer;
begin
for I := ComponentCount - 1 downto 0 do
Begin
if Components is TADOConnection then
begin
try
(Components as TADOConnection).Open;
except
ShowMessage('数据库路径不对或被其他用户锁定!');
Halt(1);
end;
end;
if Components is TADOTable then
begin
// (Components As TADOTable).CacheSize:=10;
if not Assigned((Components as TCustomADODataSet).OnPostError) then
(Components as TADOTable).OnPostError:=ADOTablePostError;
if Assigned((Components as TADOTable).MasterSource) then
begin
if Assigned((Components as TADOTable).MasterSource.DataSet) then
begin
if Not Assigned((Components as TADOTable).BeforeDelete) then
(Components as TADOTable).BeforeDelete:=SonBeforeDelete;
if not Assigned((Components as TADOTable).AfterInsert) then
(Components as TADOTable).AfterInsert:=SonADOTableAfterInsert;
if not Assigned((Components as TADOTable).BeforeInsert) then
(Components as TADOTable).BeforeInsert:=SonADOTableBeforeInsert;
if Not Assigned((Components as TADOTable).MasterSource.DataSet.AfterPost) then
(Components as TADOTable).MasterSource.DataSet.AfterPost:=ParentADOTableAfterUpdate;
if Not Assigned((Components as TADOTable).MasterSource.DataSet.AfterDelete) then
(Components as TADOTable).MasterSource.DataSet.AfterDelete:=ParentADOTableAfterUpdate;
end;
end
else
if not Assigned((Components as TADOTable).AfterInsert) then
(Components as TADOTable).AfterInsert:=ADOTableAfterInsert;
end;
if (Components is TField) then
if (Components as TField).FieldName='折扣' then
(Components as TField).OnGetText:=ZheKouDisplay;
end;
ADOTableStock.Open;
end;