Ir al contenido


Foto

Application must have only one single FDManager


  • Por favor identifícate para responder
3 respuestas en este tema

#1 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 17 septiembre 2018 - 12:12

Pues tal como dice el enunciado, estoy haciendo un servidor restful isapi con firedac y firebird, me ha saltado ese error en las pruebas, lo que tengo es un TFDConnection, TFDManager, un TFDTransacion y los demás componentes que requiere firedac, y tengo un FDConnectionDef.ini con una sóla definición tal vez estoy obviando alguna configuración ó tal vez no estoy entendiendo bien el uso de FDManager, el servidor es consumido vía web con VueJS.

 

El ConnectionDef es el siguiente:


delphi
  1. [FDConnectionDefs.ini]
  2. Encoding=UTF8
  3.  
  4. [SisVEM]
  5. DriverID=FB
  6. Protocol=Local
  7. Database=C:\Users\Fernando\Desktop\SISAUTO_02-07-2018.FDB
  8. User_Name=SYSDBA
  9. Password=masterkey
  10. Pooled=True

¿Alguien me puede explicar de acuerdo a su experiencia cómo se utiliza el FDManager para el manejo de conecciones múltiples con FireDAC?.

 

Actualmente mi TFDConnection está todo el tiempo conectado.

 

Saludos.


  • 0

#2 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 18 septiembre 2018 - 08:05

No llego a entender lo del Pooling, lo que he hecho es como se hace en aplicaciones web como PHP y demás es crear una conección a la BD cada vez que se hace una consulta, modificación ó inserción, algo como esto:

delphi
  1. function ObtenerPiezas: TJsonArray;
  2. var aConn: TFDConnection;
  3. aQuery: TFDQuery;
  4. begin
  5. aConn := ConnectToDB;
  6. aQuery := TFDQuery.Create(nil);
  7. try
  8. aQuery.Connection := aconn;
  9. ...
  10. ...
  11. finally
  12. aQuery.Free;
  13. aConn.Free;
  14. end;
  15. end;
  16.  
  17. function ConnectToDB: TFDConnection;
  18. var aConn: TFDConnection;
  19. begin
  20. aConn := TFDConnection.Create(nil);
  21. aConn.ConnectionDefName := 'SisVEM';
  22. try
  23. aConn.Connected := True
  24.  
  25. Result := aConn;
  26. except
  27. on E:Exception do Result := nil;
  28. end;
  29. end;

Hasta ahora no he tenido problemas de pooling ó el mencionado en el asunto, seguiré haciendo las pruebas pertinentes.
 
Saludos
  • 0

#3 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.446 mensajes
  • LocationMéxico

Escrito 19 septiembre 2018 - 07:28

Pues tal como dice el enunciado, estoy haciendo un servidor restful isapi con firedac y firebird, me ha saltado ese error en las pruebas, lo que tengo es un TFDConnection, TFDManager, un TFDTransacion y los demás componentes que requiere firedac, y tengo un FDConnectionDef.ini con una sóla definición tal vez estoy obviando alguna configuración ó tal vez no estoy entendiendo bien el uso de FDManager, el servidor es consumido vía web con VueJS.

 

El ConnectionDef es el siguiente:


delphi
  1. [FDConnectionDefs.ini]
  2. Encoding=UTF8
  3.  
  4. [SisVEM]
  5. DriverID=FB
  6. Protocol=Local
  7. Database=C:\Users\Fernando\Desktop\SISAUTO_02-07-2018.FDB
  8. User_Name=SYSDBA
  9. Password=masterkey
  10. Pooled=True

¿Alguien me puede explicar de acuerdo a su experiencia cómo se utiliza el FDManager para el manejo de conecciones múltiples con FireDAC?.

 

Actualmente mi TFDConnection está todo el tiempo conectado.

 

Saludos.

 

Le daré un vistazo, no he tenido problemas con eso. 

 

Saludos


  • 0

#4 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 19 septiembre 2018 - 04:45

Gracias Egostar, hasta ahora la configuración estilo PHP y demás jergas web como menciono en el post #2 me ha funcionado sin sobresaltos, aunque no descarto cualquier recomendación ó configuración más estable y viable.

 

Saludos.


  • 1




IP.Board spam blocked by CleanTalk.