Saludos a todos.
Tengo un sistema desarrollado en clipper que es multiempresa y lo estoy pasando
a xailer, el problema en que me encuentro es el siguiente:
Para diferenciar las BDD de cada empresa utilizo las extenciones D01, D02,
etc para las bases de datos y C01, C02, etc. para los indices.
Las extensiones D01 Y C01 son de la empresa 1 y así.
Si utilizo los las funciones DBUSE no tengo problema, pero quiero utilizar
las clases TDbfDataSet y TCdxDataSource.
En la clase TDbfDataSet no puedo asignarle una BDD que tenga una extension
diferente a .Dbf desde el IDE, tengo que crearlo al vuelo para poder hacerlo.
Pero no logro hacerlo lo mismo con la clase TCdxDataSource o al menos no
se como hacerlo.
Alguien podría decirme como hacerlo
De antemano gracias.
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.
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.
Extensiones diferentes a Dbf y Cdx
-
- Mensajes: 558
- Registrado: Mar Feb 09, 2010 2:26 pm
Extensiones diferentes a Dbf y Cdx
Saludos:
** Crear el DataSource
WITH OBJECT oDataSource := TCdxDataSource():Create()
:cConnect := "." // directorio donde están las bases
:lAutoOpen := .T.
:nLockScheme := dlDEFAULT
:nMemoType := dmFPT_FLEX
:nTableType := ctDBFSTD
END
*
** Abrir la base de inicio
WITH OBJECT oDSInicio := TDbfDataSet():Create()
IF :lOpen
:lOpen := .F.
ENDIF
*
:cName := "INICIO.SPI"
:lShared := .F.
:oDataSource := oDataSource
*
END
José Ramón Castro.
Andrade escribió:
> Saludos a todos.
>
> Tengo un sistema desarrollado en clipper que es multiempresa y lo estoy pasando
> a xailer, el problema en que me encuentro es el siguiente:
>
> Para diferenciar las BDD de cada empresa utilizo las extenciones D01, D02,
> etc para las bases de datos y C01, C02, etc. para los indices.
>
> Las extensiones D01 Y C01 son de la empresa 1 y así.
>
> Si utilizo los las funciones DBUSE no tengo problema, pero quiero utilizar
> las clases TDbfDataSet y TCdxDataSource.
>
> En la clase TDbfDataSet no puedo asignarle una BDD que tenga una extension
> diferente a .Dbf desde el IDE, tengo que crearlo al vuelo para poder hacerlo.
> Pero no logro hacerlo lo mismo con la clase TCdxDataSource o al menos no
> se como hacerlo.
>
> Alguien podría decirme como hacerlo
>
> De antemano gracias.
>
>
>
>
** Crear el DataSource
WITH OBJECT oDataSource := TCdxDataSource():Create()
:cConnect := "." // directorio donde están las bases
:lAutoOpen := .T.
:nLockScheme := dlDEFAULT
:nMemoType := dmFPT_FLEX
:nTableType := ctDBFSTD
END
*
** Abrir la base de inicio
WITH OBJECT oDSInicio := TDbfDataSet():Create()
IF :lOpen
:lOpen := .F.
ENDIF
*
:cName := "INICIO.SPI"
:lShared := .F.
:oDataSource := oDataSource
*
END
José Ramón Castro.
Andrade escribió:
> Saludos a todos.
>
> Tengo un sistema desarrollado en clipper que es multiempresa y lo estoy pasando
> a xailer, el problema en que me encuentro es el siguiente:
>
> Para diferenciar las BDD de cada empresa utilizo las extenciones D01, D02,
> etc para las bases de datos y C01, C02, etc. para los indices.
>
> Las extensiones D01 Y C01 son de la empresa 1 y así.
>
> Si utilizo los las funciones DBUSE no tengo problema, pero quiero utilizar
> las clases TDbfDataSet y TCdxDataSource.
>
> En la clase TDbfDataSet no puedo asignarle una BDD que tenga una extension
> diferente a .Dbf desde el IDE, tengo que crearlo al vuelo para poder hacerlo.
> Pero no logro hacerlo lo mismo con la clase TCdxDataSource o al menos no
> se como hacerlo.
>
> Alguien podría decirme como hacerlo
>
> De antemano gracias.
>
>
>
>
Extensiones diferentes a Dbf y Cdx
José Ramón, gracias por tu respuesta.
Tomando como base tu ejemplo y asumiendo que la BDD se llama
"INICIO.SPI" como le indico que el indice correspondiente es
"INICIO.C01" y no "INICIO.CDX".
Tomando como base tu ejemplo y asumiendo que la BDD se llama
"INICIO.SPI" como le indico que el indice correspondiente es
"INICIO.C01" y no "INICIO.CDX".
-
- Mensajes: 558
- Registrado: Mar Feb 09, 2010 2:26 pm
Extensiones diferentes a Dbf y Cdx
Mira la propiedad aIdxFiles y el método AddIdxFile
::oDataset:aIdxFiles := {"INICIO.C01"}
José Ramón Castro.
Andrade escribió:
> José Ramón, gracias por tu respuesta.
>
> Tomando como base tu ejemplo y asumiendo que la BDD se llama
> "INICIO.SPI" como le indico que el indice correspondiente es
> "INICIO.C01" y no "INICIO.CDX".
>
>
::oDataset:aIdxFiles := {"INICIO.C01"}
José Ramón Castro.
Andrade escribió:
> José Ramón, gracias por tu respuesta.
>
> Tomando como base tu ejemplo y asumiendo que la BDD se llama
> "INICIO.SPI" como le indico que el indice correspondiente es
> "INICIO.C01" y no "INICIO.CDX".
>
>
Extensiones diferentes a Dbf y Cdx
José Ramón
Muchas gracias por tu ayuda.
Muchas gracias por tu ayuda.