unit DMU;
interface
uses
System.SysUtils, System.Classes, EhLibMTE, MemTableDataEh, Data.DB,
MemTableEh, DataDriverEh, Data.Win.ADODB, MemDS, VirtualTable, Vcl.ImgList,
Vcl.Controls, acAlphaImageList, Vcl.Menus, Vcl.Dialogs, sDialogs,
ToolCtrlsEh, DBGridEhToolCtrls, ADODataDriverEh, DynVarsEh, sSkinManager,
PrnDbgeh, frxClass, frxDBSet, frxExportPDF, ADODB2010, comobj, ADOX_TLB;
type
TDM = class(TDataModule)
VPT: TVirtualTable;
VPS: TDataSource;
AOSS: TDataSource;
CabS: TDataSource;
OSS: TDataSource;
SotrS: TDataSource;
DevS: TDataSource;
CON: TADOConnection;
ITT: TADOTable;
CabT: TADOTable;
OST: TADOTable;
SotrT: TADOTable;
DevT: TADOTable;
DSD: TDataSetDriverEh;
AOST: TMemTableEh;
AOSTКод: TAutoIncField;
AOSTCOD: TIntegerField;
AOSTИНВ: TIntegerField;
AOSTУстройство: TIntegerField;
AOSTКабинет: TIntegerField;
AOSTОС: TIntegerField;
AOSTСотрудник: TIntegerField;
AOSTДатаучета: TDateTimeField;
AOSTUpgrade: TDateTimeField;
AOSTSN: TWideStringField;
AOSTКонфигурация: TWideMemoField;
AOSTDev: TStringField;
AOSTCab: TStringField;
AOSTOS: TStringField;
AOSTSotr: TStringField;
VPTКод: TAutoIncField;
VPTKabinet: TWideStringField;
VPTINB: TWideStringField;
VPTName: TWideStringField;
VPTQRCOD: TBlobField;
MImage: TsAlphaImageList;
ITTКод: TAutoIncField;
ITTCOD: TIntegerField;
ITTИНВ: TIntegerField;
ITTУстройство: TIntegerField;
ITTКабинет: TIntegerField;
ITTОС: TIntegerField;
ITTСотрудник: TIntegerField;
ITTДатаучета: TDateTimeField;
ITTUpgrade: TDateTimeField;
ITTSN: TWideStringField;
ITTКонфигурация: TWideMemoField;
CabTКод: TAutoIncField;
CabTКабинет: TWideStringField;
OSTКод: TAutoIncField;
OSTОС: TWideStringField;
SotrTКод: TAutoIncField;
SotrTСотрудник: TWideStringField;
DevTКод: TAutoIncField;
DevTУстройство: TWideStringField;
OpenDB: TsOpenDialog;
sSkinManager1: TsSkinManager;
SFile: TsSaveDialog;
AImage: TsAlphaImageList;
PGrid: TPrintDBGridEh;
QRDS: TfrxDBDataset;
QRPrint: TfrxReport;
frxPDFExport1: TfrxPDFExport;
SQL: TADODataDriverEh;
Query: TADOQuery;
procedure DataModuleCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
DM: TDM;
procedure NewDB(FileName : String);
procedure Connect;
implementation
uses AOSU;
{ %CLASSGROUP 'Vcl.Controls.TControl' }
{$R *.dfm}
procedure NewDB(FileName : String);
begin
//
end;
procedure Connect;
var
FilePath: String;
begin
AOS.GRID.StartLoadingStatus('Загрузка БД...', -1);
if FileExists(ExtractFilePath(ParamStr(0))+ GetCurrentDir + '\db.mdb') then
FilePath := ExtractFilePath(ParamStr(0))+ GetCurrentDir + '\db.mdb'
else if FileExists(ExtractFilePath(ParamStr(0)) + GetCurrentDir + '\DB\db.mdb') then
FilePath := ExtractFilePath(ParamStr(0))+ GetCurrentDir + '\DB\db.mdb'
else if FileExists(ExtractFilePath(ParamStr(0))+ '..\..\DB\db.mdb') then
FilePath := ExtractFilePath(ParamStr(0)) + '..\..\DB\db.mdb'
else if FileExists(ExtractFilePath(ParamStr(0)) + '..\..\..\DB\db.mdb') then
FilePath := ExtractFilePath(ParamStr(0)) + '..\..\..\DB\db.mdb'
else if DM.OpenDB.Execute then
FilePath := DM.OpenDB.FileName else exit;
DM.CON.ConnectionString := ('Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;'
+ 'Data Source=' + FilePath + ';' +
'Mode=Share Deny None;Jet OLEDB:System database="";');
AOS.Caption := 'Инвентаризация оборудования';
DM.AOST.Active := True;
DM.ITT.Active := True;
DM.CabT.Active := True;
DM.OST.Active := True;
DM.SotrT.Active := True;
DM.DevT.Active := True;
DM.DSD.KeyFields:='Код';
DM.AOST.Refresh;
AOS.GRID.FinishLoadingStatus;
AOS.Show;
end;
procedure TDM.DataModuleCreate(Sender: TObject);
begin
CON.Connected:=False;
Connect;
CON.Connected:=True;
end;
end.