SQL to DBF
Moderator: Rathinagiri
SQL to DBF
...::: SPANISH :::...
Bueno...
Despues de mucho trabajo he desarrollado una aplicación que se las dejo aquí, la cual importa datos de una base MS-SQL a una DBF (por medio de una sentencia TRANSQ-SQL ejecutada a gusto por el usuario) y muestra el resultado en un GRID.
Si necesitan trabajar la DBF al salir de la aplicación los resultados del GRID quedan en una DBF denominada _DATADIC.
Lo he probado con 957258 registros y funciona muy rápido, el acceso a la base MS-SQL lo hago a traves de "SQL Native Client".
Los resultados se pueden exportar a un EXCEL ( utilidad que he tomado de SUDIP con pequeñas modificaciones desde "viewtopic.php?f=15&t=284" ).
Los tipos de datos de MS-SQL son respetados al migrar a DBF, con exepción del tipo de dato BIGINT, que no sé por qué motivo la clase TODBC() toma este dato como CARACTER en vez de NUMERICO.
Los tipos de datos que están soportados por ahora son:
INT
BIGINT
DECIMAL
VARCHAR
DATETIME
NVARCHAR
CHAR
BIT
NUMERIC
Un pequeño problema se presenta cuando el nombre del campo de la tabla MS-SQL supera los 15 permitidos en xBASE, este lo trunca.
Bueno espero que lo disfruten.
...::: ENGLISH :::...
Well ...
After much work I have developed an application that I leave here, which imports data from a database MS-SQL to DBF (by a TRANSQ-SQL statement executed at ease by the user) and displays the result in a GRID .
If you need to work the DBF to exit the application of GRID results are in a DBF called _DATADIC.
I have tried it with 957,258 records and works very quickly, the access to the database MS-SQL I do through "SQL Native Client".
Results can be exported to an EXCEL (utility that I have taken of Sudip with slight modifications from "viewtopic.php?f=15&t=284").
The data types of MS-SQL are respected when migrating to DBF, with Exception of the data type BIGINT, I do not know why the class TODBC () takes this as a character instead of NUMERIC.
The data types that are supported for now are:
INT
BIGINT
DECIMAL
VARCHAR
DATETIME
NVARCHAR
CHAR
BIT
NUMERIC
A small problem arises when the field name of the MS-SQL table exceeds 15 xBASE permitted, this is truncated.
Well I hope you enjoy.
Bueno...
Despues de mucho trabajo he desarrollado una aplicación que se las dejo aquí, la cual importa datos de una base MS-SQL a una DBF (por medio de una sentencia TRANSQ-SQL ejecutada a gusto por el usuario) y muestra el resultado en un GRID.
Si necesitan trabajar la DBF al salir de la aplicación los resultados del GRID quedan en una DBF denominada _DATADIC.
Lo he probado con 957258 registros y funciona muy rápido, el acceso a la base MS-SQL lo hago a traves de "SQL Native Client".
Los resultados se pueden exportar a un EXCEL ( utilidad que he tomado de SUDIP con pequeñas modificaciones desde "viewtopic.php?f=15&t=284" ).
Los tipos de datos de MS-SQL son respetados al migrar a DBF, con exepción del tipo de dato BIGINT, que no sé por qué motivo la clase TODBC() toma este dato como CARACTER en vez de NUMERICO.
Los tipos de datos que están soportados por ahora son:
INT
BIGINT
DECIMAL
VARCHAR
DATETIME
NVARCHAR
CHAR
BIT
NUMERIC
Un pequeño problema se presenta cuando el nombre del campo de la tabla MS-SQL supera los 15 permitidos en xBASE, este lo trunca.
Bueno espero que lo disfruten.
...::: ENGLISH :::...
Well ...
After much work I have developed an application that I leave here, which imports data from a database MS-SQL to DBF (by a TRANSQ-SQL statement executed at ease by the user) and displays the result in a GRID .
If you need to work the DBF to exit the application of GRID results are in a DBF called _DATADIC.
I have tried it with 957,258 records and works very quickly, the access to the database MS-SQL I do through "SQL Native Client".
Results can be exported to an EXCEL (utility that I have taken of Sudip with slight modifications from "viewtopic.php?f=15&t=284").
The data types of MS-SQL are respected when migrating to DBF, with Exception of the data type BIGINT, I do not know why the class TODBC () takes this as a character instead of NUMERIC.
The data types that are supported for now are:
INT
BIGINT
DECIMAL
VARCHAR
DATETIME
NVARCHAR
CHAR
BIT
NUMERIC
A small problem arises when the field name of the MS-SQL table exceeds 15 xBASE permitted, this is truncated.
Well I hope you enjoy.
- Attachments
-
- sqltodbf_FORO.zip
- (67.2 KiB) Downloaded 649 times
Saludos, Fernando Chirico.
- Rathinagiri
- Posts: 5471
- Joined: Tue Jul 29, 2008 6:30 pm
- DBs Used: MariaDB, SQLite, SQLCipher and MySQL
- Location: Sivakasi, India
- Contact:
Re: SQL to DBF
Fantastic Fernando!
East or West HMG is the Best.
South or North HMG is worth.
...the possibilities are endless.
South or North HMG is worth.
...the possibilities are endless.
Re: SQL to DBF
Wow, very nice.
Fantastic and useful. Thanks for share.
My best regards,
Fantastic and useful. Thanks for share.
My best regards,
- luisvasquezcl
- Posts: 1258
- Joined: Thu Jul 31, 2008 3:23 am
- Location: Chile
- Contact:
Re: SQL to DBF
Excelente Fernando, una herramienta muy útil.
Veo que estas inspirado .
Saludos cordiales,
Luis Vasquez
Veo que estas inspirado .
Saludos cordiales,
Luis Vasquez
Re: SQL to DBF
Ja Ja!!!luisvasquezcl wrote:Excelente Fernando, una herramienta muy útil.
Veo que estas inspirado .
Saludos cordiales,
Luis Vasquez
En realidad son dos aplicaciones que las empecé hace 2 meses, pero con las vacaciones y sumado a el poco tiempo que me dá mi trabajo no podía terminarlos.
Pero en estas ultimas dos semanas le pude dedicar el tiempo sufuciente.
Gracias Luis!!
Saludos, Fernando Chirico.
Re: SQL to DBF
Fernando,
Al probar la herramienta me arroja error con el tipo de dato 6
faltaria incluirlo en tu funcion cTipoDato
Gracias,
Ed
Fernando
When I try your tool, it show error with the data type 6, could you include these kind of data type
Regards,
Ed
Al probar la herramienta me arroja error con el tipo de dato 6
faltaria incluirlo en tu funcion cTipoDato
Gracias,
Ed
Fernando
When I try your tool, it show error with the data type 6, could you include these kind of data type
Regards,
Ed
Re: SQL to DBF
Por favor, fíjate en el diseño de la tabla de tu base SQL cuál es el tipo que no esté en la lista que menciono y pásamelo así lo agrego:Steed wrote:Fernando,
Al probar la herramienta me arroja error con el tipo de dato 6
faltaria incluirlo en tu funcion cTipoDato
Ed
4 int
-5 bigint
3 decimal
12 varchar
11 datetime
-9 nvarchar
1 char
-7 bit
2 numeric
ya que no tengo un diccionario de datos para esto, lo fuí probando a mano.
Saludos,
Saludos, Fernando Chirico.
- luisvasquezcl
- Posts: 1258
- Joined: Thu Jul 31, 2008 3:23 am
- Location: Chile
- Contact:
Re: SQL to DBF
Hola Fernando.
en este mismo foro encontraras el demo que hice browseado.
allí hay un archivo que se llama adodb.ch que contiene las definiciones de tipos de datos.
espero te sea de utilidad.
saludos cordiales,
luis vasquez
en este mismo foro encontraras el demo que hice browseado.
allí hay un archivo que se llama adodb.ch que contiene las definiciones de tipos de datos.
espero te sea de utilidad.
saludos cordiales,
luis vasquez
Re: SQL to DBF
Ed:Steed wrote:Fernando,
6: Float
regards,
Ed
Agregué el campo FLOAT, pero si tiene decimales la clase TODBC() no me los reconoce, solo trae la parte entera.
Le he enviado un mail al creador de la classe para que me ayude a resolver el problema. Algo similar ocurre con el tipo de datos BIGINT.
Te dejo la aplicación corregida.
- Attachments
-
- sqltodbf_FORO.zip
- (67.21 KiB) Downloaded 495 times
Saludos, Fernando Chirico.