------------------------------------
код первой формы (главной)
------------------------------------
unit main;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
DBGrids, Buttons, sqldb, Sqlite3DS, db, sqlite3conn, ShellApi, windows;
type
{ TForm1 }
TForm1 = class(TForm)
BitBtn1: TBitBtn;
DataSource: TDataSource;
DBGrid: TDBGrid;
SQLite3Dataset: TSqlite3Dataset;
SQLite3Connection: TSQLite3Connection;
SQLQuery: TSQLQuery;
SQLTransaction: TSQLTransaction;
procedure BitBtn1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit1;
{$R *.lfm}
{ TForm1 }
procedure TForm1.FormCreate(Sender: TObject);
begin
{Параметры компонентов работы с базой
Можно выставить в опциях у каждого компонента.}
//*******************************
SQLite3Dataset.FileName:='SORBI.db';
SQLite3Dataset.TableName:='jurnal';
DataSource.DataSet:=SQLite3Dataset;
SQLite3Connection.DatabaseName:='SORBI.db';
SQLite3Connection.Transaction:=SQLTransaction;
SQLTransaction.DataBase:=SQLite3Connection;
SQLQuery.DataBase:=SQLite3Connection;
SQLQuery.Transaction:=SQLTransaction;
//*******************************
try
SQLite3Dataset.Open;
SQLite3Connection.Connected:=True;
except
On E:Exception do
ShowMessage('Ошибка открытия базы: '+ E.Message);
end;
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Form2.ShowModal;
end;
end.
--------------------------------------------------------------------------
Код второй формы (где заносятся данные)
--------------------------------------------------------------------------
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, sqldb, Sqlite3DS, db, sqlite3conn, Forms, Controls,
Graphics, Dialogs, StdCtrls, EditBtn, MaskEdit, Buttons;
type
{ TForm2 }
TForm2 = class(TForm)
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
DataSource: TDataSource;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Label1: TLabel;
Label10: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
MaskEdit1: TMaskEdit;
MaskEdit2: TMaskEdit;
MaskEdit3: TMaskEdit;
SQLite3Connection: TSQLite3Connection;
SQLite3Dataset: TSqlite3Dataset;
SQLQuery: TSQLQuery;
SQLTransaction: TSQLTransaction;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
public
end;
var
Form2: TForm2;
implementation
uses main;
{$R *.lfm}
{ TForm2 }
procedure TForm2.BitBtn2Click(Sender: TObject);
begin
Close;
end;
procedure TForm2.FormCreate(Sender: TObject);
begin
{Параметры компонентов работы с базой
Можно выставить в опциях у каждого компонента.}
//*******************************
SQLite3Dataset.FileName:='SORBI.db';
SQLite3Dataset.TableName:='jurnal';
DataSource.DataSet:=SQLite3Dataset;
SQLite3Connection.DatabaseName:='SORBI.db';
SQLite3Connection.Transaction:=SQLTransaction;
SQLTransaction.DataBase:=SQLite3Connection;
SQLQuery.DataBase:=SQLite3Connection;
SQLQuery.Transaction:=SQLTransaction;
//*******************************
try
SQLite3Dataset.Open;
SQLite3Connection.Connected:=True;
except
On E:Exception do
ShowMessage('Ошибка открытия базы: '+ E.Message);
end;
end;
procedure TForm2.BitBtn1Click(Sender: TObject);
begin
SQLite3Dataset.Close;
with SQLQuery do
begin
SQL.Clear;
SQL.Add('INSERT INTO jurnal(nameImanufacturer, series, expiry, supplier, №TTH, storage, dateofissueIvalidity, registration, declaration, reg) VALUES(:NAMEIMANUFACTURER,:SERIES,:EXPIRY,:SUPPLIER, :№TTH, :STORAGE,


ParamByName('NAMEIMANUFACTURER').Text:=Edit1.Text;
ParamByName('SERIES').Text:=MaskEdit1.Text;
ParamByName('EXPIRY').Text:=MaskEdit2.Text;
ParamByName('SUPPLIER').Text:=Edit2.Text;
ParamByName('№TTH').Text:=Edit3.Text;
ParamByName('STORAGE').Text:=Edit4.Text;
ParamByName('DATEOFISSUEIVALIDITY').Text:=MaskEdit3.Text;
ParamByName('REGISTRATION').Text:=Edit5.Text;
ParamByName('DECLARATION').Text:=Edit6.Text;
ParamByName('REG').Text:=Edit7.Text;
ExecSQL;
SQLTransaction.Commit;
Close;
end;
SQLite3Dataset.Open;
ShowMessage('Позиция успешно добавлена');
end;
end.