In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Apertura base de datos

Foro de Xailer profesional en español
Responder
Paco Gomis
Mensajes: 70
Registrado: Mar Oct 27, 2009 2:59 pm

Apertura base de datos

Mensaje por Paco Gomis »

Hola
Tengo una aplicación que estoy intentando pasar a Xailer, al ser una
aplicación multipuesto, las bases de datos (dbf)las abria al inicio de la
aplicación, con Xailer, las he pasado a ADS, y las abro en el formulario.
Mis dudas:
1- ¿ Seria mejor si abriese la base de datos al inicio de la aplicación ?
2 - De ser asi ¿como debo habrirlas y enlazarlas con el TDbfDataSet del
formulario?
3 - Al cerrar un formulario con TDbfDataSet ¿se cierra la base de datos?
4 - Y por ultimo que me aconsejan que habra la aplicación desde un mismo
puesto con multiple instancia, o que el ejecutable este en todos los puestos
y las bases de datos en uno.
Desde ya gracias por sus respuestas
Un saludo
Francisco Gomis
fvgomis@ono.com
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9447
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Apertura base de datos

Mensaje por ignacio »

Paco,
> 1- ¿ Seria mejor si abriese la base de datos al inicio de la aplicación ?
Si. ADS donde más tarda es en la apertura de tablas. No es ninguna mala idea
abrir todas al principio. De hecho en la última versión de xharbour hay una
función para que las tablas no se cierren realmente hasta que se salga de la
aplicación: AdsCacheOpenTables( nAreas )
> 2 - De ser asi ¿como debo habrirlas y enlazarlas con el TDbfDataSet del
> formulario?
De momento no tenemos el diseño de componentes públicos para toda la
aplicación pero estarán en breve. De momento puedes crearlos por código
utilizando la clase AppData. Ejemplo:
WITH OBJECT AppData
:AddData( "oDataSource" )
:AddData( "oDbfClientes" )
:AddData( "oDbfArticulos" )
AdsCacheOpenTables( 100 )
With object :oDataSource := TAdsDataSource():Create()
:cConnect := "..."
:cUser := "..."
:cPassword := ".."
:lRightsCheck := .f.
:lUseDictionary := .t.
:lConnected := .t.
AppData:oDbfClientes := :NewDataSet( "clientes" )
AppData:oDbfArticulo := :NewDataSet( "articulos" )
:OpenProcess()
end with
END
En el evento OnCreate de cualquier DataControl se haría la asignación del
DataSet correspondiente:
oSender:oDataSet := AppData:oDbfClientes
> 3 - Al cerrar un formulario con TDbfDataSet ¿se cierra la base de datos?
Si, si el DataSet es un COMPONENTE del propio formulario. En el ejemplo
anterior NO.
> 4 - Y por ultimo que me aconsejan que habra la aplicación desde un mismo
> puesto con multiple instancia, o que el ejecutable este en todos los
> puestos y las bases de datos en uno.
Depende de la velocidad de tu red y del tamaño del ejecutable. Yo
personalmente pongo los ejecutables en un directorio dentro de la red y
cualquier usuario lo ejecuta desde allí sin problemas. Tiene la gran ventaja
de que la actualizacion del ejecutable es sencilla ya que no hay que tocar
nada en los puestos. Te recomiendo que utiilces la utilidad UPX para
comprimir el EXE, que se encuentra dentro del directorio Bin.
Saludos,
"Paco Gomis" <fvgomis@ono.com> escribió en el mensaje
news:43e87c31$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
> Hola
> Tengo una aplicación que estoy intentando pasar a Xailer, al ser una
> aplicación multipuesto, las bases de datos (dbf)las abria al inicio de la
> aplicación, con Xailer, las he pasado a ADS, y las abro en el formulario.
> Mis dudas:
> 1- ¿ Seria mejor si abriese la base de datos al inicio de la aplicación ?
> 2 - De ser asi ¿como debo habrirlas y enlazarlas con el TDbfDataSet del
> formulario?
> 3 - Al cerrar un formulario con TDbfDataSet ¿se cierra la base de datos?
> 4 - Y por ultimo que me aconsejan que habra la aplicación desde un mismo
> puesto con multiple instancia, o que el ejecutable este en todos los
> puestos y las bases de datos en uno.
> Desde ya gracias por sus respuestas
> Un saludo
>
> Francisco Gomis
> fvgomis@ono.com
>
>
>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Paco Gomis
Mensajes: 70
Registrado: Mar Oct 27, 2009 2:59 pm

Apertura base de datos

Mensaje por Paco Gomis »

José
Gracias, hare pruebas sobre tus explicaciones
Saludos
Francisco Gomis
fvgomis@ono.com
Responder