Перейти к содержанию
Fire Monkey от А до Я
  • 0

FD + BD accsses (Delphi Alexandrin)


Эльвинтель

Вопрос

Опубликовано (изменено)
unit Core;

interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
  IdBaseComponent, IdComponent, IdCustomTCPServer, IdTCPServer, Data.DB,
  Data.Win.ADODB, IdContext, FireDAC.Stan.Intf, FireDAC.Stan.Option,
  FireDAC.Stan.Error, FireDAC.UI.Intf, FireDAC.Phys.Intf, FireDAC.Stan.Def,
  FireDAC.Stan.Pool, FireDAC.Stan.Async, FireDAC.Phys, FireDAC.FMXUI.Wait,
  FireDAC.Stan.Param, FireDAC.DatS, FireDAC.DApt.Intf, FireDAC.DApt,
  FireDAC.Comp.DataSet, FireDAC.Comp.Client, FMX.Controls.Presentation, FMX.Edit;

type
  TForm4 = class(TForm)
    IdTCPServer1: TIdTCPServer;
    IdTCPServer2: TIdTCPServer;
    IdTCPServer3: TIdTCPServer;
    IdTCPServer4: TIdTCPServer;
    FDConnection1: TFDConnection;
    FDConnection2: TFDConnection;
    FDConnection3: TFDConnection;
    FDConnection4: TFDConnection;
    FDQuery1: TFDQuery;
    FDQuery2: TFDQuery;
    FDQuery3: TFDQuery;
    FDQuery4: TFDQuery;
    Edit1: TEdit;
    procedure IdTCPServer1Execute(AContext: TIdContext);
    procedure Edittext (Port,Besepath:TEdit);
    function Serveronoff (connectionS:string=''):string;
    function Formshow (FormNamba:integer):string;
    function FDnnection(SQLwe:string):string;

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form4: TForm4;
 s,L,P:string;

implementation

{$R *.fmx}

uses Grid, Settings, UsersGrid;

procedure TForm4.Edittext(Port, Besepath: TEdit);
var
Path:string;
Asi,Asi1:Tstringlist;
begin
Asi:= TStringList.Create;
Asi1:= TStringList.Create;
Path:=Extractfilepath(paramstr(0));
Asi.LoadFromFile(Path+'settings\Defautport.txt');
Asi1.LoadFromFile(Path+'settings\settings.txt');
Port.Text:=Asi[0];
Besepath.Text:=Asi1[0];
end;
function TForm4.FDnnection(SQLwe:string): string;
begin
FDConnection1.Params.DriverID:='MSAcc';
FDConnection1.ConnectionString:=form2.PathBaseEdit.Text;
FDConnection1.Params.Database:=Form2.PathBaseEdit.Text;
FDConnection1.LoginPrompt:=false;
FDQuery1.Connection:=FDConnection1;
FDQuery1.SQL.Add(SQLwe);
FDConnection1.Connected:=true;
FDQuery1.Active:=true;


end;

function TForm4.Formshow(FormNamba: integer): string;
begin
case FormNamba of
1:begin
  Form1.Visible:=true;
  Result:='sucsesful';
end;
2:begin
  Form2.Visible:=true;
  Result:='sucsesful'
end;
3:begin
  Form3.Visible:=true;
  Result:='sucsesful'
end;

end;
end;

procedure TForm4.IdTCPServer1Execute(AContext: TIdContext);


begin
s:=AContext.Connection.Socket.ReadLn; //Записываем в переменную "s" сообщение, присланное клиентом.
Form1.Memo1.Lines.add('['+Timetostr(time)+']'+'['+AContext.Connection.Socket.Binding.PeerIP+']'+s); //Добавляем в Memo время, ip-adress клиента и сообщение
 if AnsiPos('!',s)=0 then
 begin
L:=s;
P:=s;
delete(L,AnsiPos('/',L),L.Length.Size);
delete(P, 1,AnsiPos('/',P));
AContext.Connection.Socket.Writeln(L+'?'+P);
 end
    Else
  AContext.Connection.Socket.Writeln('Connected successfully');
end;


function TForm4.Serveronoff(connectionS: string): string;
begin

if Form2.Server.Text='Server On' then
begin
idTcpServer1.Active:=false; //Выключаем сервер
idTcpServer1.DefaultPort:=0; //Сбрасываем порт.
Form1.PortNamba.Text:='';
Result:='Server Off';
end
else
begin
  idTcpServer1.DefaultPort:=form2.PortEdit.Text.ToInteger;//Устанавливаем порт, такой же, как и у клиента
  idTcpServer1.Active:=true; //Включаем сервер
  Form1.PortNamba.Text:=Form2.PortEdit.Text;
  Result:='Server On';
end;

end;

end.

 

21.jpg

Кто может помочь с ошибкой?

Server.7z

Изменено пользователем Эльвинтель

Рекомендуемые сообщения

  • 0
Опубликовано

А так не пробовали

function TForm4.FDnnection(SQLwe:string): string;
begin
   FDConnection1.Params.DriverID:='MSAcc';
   FDConnection1.Params.Database:=Form2.PathBaseEdit.Text;
   FDConnection1.Connected:=true;
   FDQuery1.SQL.Add(SQLwe);
   FDQuery1.Active:=true;

end;

 

  • 0
Опубликовано

Благодарю, немного немного откорректировав помощь:
 

FDConnection1.DriverName:='IscDbc';
 FDConnection1.Params.DriverID:='MSAcc';
 FDConnection1.LoginPrompt:=false;
    FDConnection1.Params.Database:=Form2.PathBaseEdit.Text;
   FDConnection1.Connected:=true;
   FDQuery1.Connection:=FDConnection1;
   FDQuery1.SQL.Clear;
   FDQuery1.SQL.Add(SQLwe);
   FDQuery1.Active:=true;

Все вышло как надо.

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...