¿Hay alguna manera de vincular una tabla Dbase cuyo nombre
sea mayor de 8 caracteres?
¿Me voy a encontrar este problema con algún otro tipo de
fichero?
Gracias
End Sub
codigo que kaska cuando SourceTableName > 8 caracteres.
Se podría intentar con ADO...luego pruebo....
--
Saludos desde Valladolid
Francisco Javier García Aguado
buho...@mvp-access.com
---
http://www.mvp-access.com/buho
http://www.mvp-access.com/foro
http://groups.msn.com/Access2000VisualBasic/
Mi Perfil de MVP en Microsoft:
http://tinyurl.com/6ysvu
---
---
Este correo ha sido testeado y no tiene virus (Al menos conocidos). Saludos
de Francisco Javier García Aguado (Buho)
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.727 / Virus Database: 482 - Release Date: 26/07/2004
¿Y por que de esta limitacion, digo yo?????? no lo entiendo...!!!
Function LinkaTablasDBFADOX(PathDBF As String, ProveedorDBF As String, _
NombreTablaDBF As String)
Dim Catalogo As New ADOX.Catalog
Dim Tabla As New ADOX.Table
Catalogo.ActiveConnection = CurrentProject.Connection
Tabla.Name = "TablaBuhoLinkada"
Set Tabla.ParentCatalog = Catalogo
With Tabla
.Properties("Jet OLEDB:Create Link") = True
.Properties("Jet OLEDB:Link Datasource") = PathDBF
.Properties("Jet OLEDB:Link Provider String") = ProveedorDBF
.Properties("Jet OLEDB:Remote Table Name") = NombreTablaDBF
End With
Catalogo.Tables.Append Tabla
Set Catalogo = Nothing
End Function
'vamos a probar
Sub NomesaleCaguenTOOOOO()
Dim Retval
Retval = LinkaTablasDBFADOX("c:\taller\", "Dbase 5.0",
"facturanombrelargo")
End Sub
Ni con el proveedor Dbase III ni con el Dbase IV ni con el 5. No sale...
Si pongo una DBF de 8 caracteres, perfecto, sin problemas
Me ha funcionado perfectamente con DAO y aDOX...supongo que con los
asistentes funcionará tambien, al igual con el DoCmd.TransferDatabase
...puedes hacer la prueba si quieres...!!!
Me piro a comer
Creía que el proceso era avanzar, tomando referencias de los éxitos del pasado e intentando con nuevas ideas mejorarlos o superarlos, pero eso de intentar hacer una rueda cuadrada....
Saludos E. Feijoo
P.D.
De todas formas, felicidades por haber llegado al único método lógico (y no le borres 'el osito' al ordenador, que te quedas sin el conversor automático)...
"Búho" <pacoQU...@nemo.es> escribió en el mensaje news:u%23BniB9c...@TK2MSFTNGP12.phx.gbl...
Por cierto...la rueda cuadrada está aquí, en forma de ejemplo, por si la
quieres ver:
www.mvp-access.com/buho/ficheros/asistentedbf.zip
--
Saludos desde Valladolid
Francisco Javier García Aguado
---
Supongo que lo que se desea es interactuar con ficheros DBF. ya que alguna aplicación los utiliza y no se desea modificar... lo cual es respetable y punto.
Pero si creas ficheros DBF (y estos han de ser utilizados por esta aplicación), nos encontraremos con el problema de que no los podrá abrir... por ser un nombre demasiado largo, lo cual es un contrasentido...
Y si el fin es utilizarlos bajo Access ¿porque utilizar un formato de ficheros que precisa conversión y probablemente conversión de caracteres por no coincidir los códigos extendidos de los mismos?...
Teniendo en cuenta el primer comentario, y bajo mi punto de vista, es normal que los desarrolladores del Access, respetasen esta limitación dado que cuando fue creada y según Bill Gates 'a los ordenadores les sobraba con 640K. de memoria....
De cualquier forma, si mi comentario te ha molestado, mis mas humildes disculpas (aunque en mi fuero interno, el fin buscado, no el tiempo utilizado en aprender mas, se me asemeje a la cuadratura del circulo.) ;-)
Un saludo Enrique (E. Feijoo)
"Búho" <pacoQU...@nemo.es> escribió en el mensaje news:OWk49SBd...@tk2msftngp13.phx.gbl...
Segundo, respecto a las dbf's te comento algo, ya que creo que, sin ser un
error por tu parte lo que comentas, quizá sí sea desconocimiento de ciertas
situaciones.
Ejemplo real. Programa en Clipper que ataca determinadas Dbf's.
Si una dbf tiene más de 8 caracteres, por ejemplo misfacturas.dbf, el
compilador, al poner la instruccion:
USE misfacturas no produce error, simplemente abre en un area de trabajo,
dicha dbf. A efectos practicos, él mismo trunca todos los caracteres
superiores a 8 y sería lo mismo poner
USE misfacturas
USE misfactu
Luego, aquí tienes ya un escenenario (Que no sea el programa Dbase) en que
sí se permite la apertura de ficheros dbf con > 8 caracteres.
Cabría pensar que Francisco Gomez, que fue quien inició este hilo, se haya
encontrado con una situacion como ésta. Es decir, que algún programador
despistado, en su día, hizo un programa en Clipper que sí soporta ese tipo
de licencias (mas de 8 caracteres, aunque les trunque) y al utilizar el
asistente de access, éste, como ya sabemos, se negó a vincular la tabla.
(¿Es mas listo-practico el compilador de Clipper que los asistentes de
Access?)
La solución es muy simple desde el punto de vista practico. Es sencillamente
truncar con un simple «Rename» dicha Dbf a 8 caracteres. Clipper *no*
protestará, por lo que ya te he comentado y Access tampoco...con lo cual,
problema solucionado. (Esto, si lo lees, Francisco, y es tu caso, es la
solución mas razonable)
No obstante y volviendo a lo que te comentaba al principio me pareció
interesante fabricar un asistente parecido a los de Access, donde además se
contemplara esta situación.
Pues nada más por mi parte...saludos cordiales...:-)
--
Saludos desde Valladolid
Francisco Javier García Aguado
buho...@mvp-access.com
---
http://www.mvp-access.com/buho
http://www.mvp-access.com/foro
http://groups.msn.com/Access2000VisualBasic/
Mi Perfil de MVP en Microsoft:
http://tinyurl.com/6ysvu
---
El otro día recordarás, aunque no sé yo, porque con la
cabeza que tienes (jeje), que me ayudaste con el comando
TransferDataBase vía MSN. Recordarás también que
precisamente se trataba de importar unas tablas DBF a una
base de datos Access...
Esos ficheros DBF nos lo envía cierta empresa en formato
DBF y con los nombres largos para que sean más
descriptivos, tal que: "Obras Del Mes 04 2004.dbf"
Había creado una herramienta para ayudar a la importación
de esos datos, pero los usuarios tenían que renombrar
previamente el nombre de los archivos por la limitación de
los 8 caracteres.
Gracias a haber leído este hilo me he hecho con tu
herramienta y los usuarios pueden buscar en el disco duro
con esos nombres originales y más descriptivos para
realizar la importación. ¡Más fácil para todos!.
Te envio a tu cuenta tu archivo de prueba con la opción de
adicional de "Importar" incluída.
Un abrazo,
CarCar
MVP-Access
PD: Enrique ya ves que las ruedas cuadradas a veces vienen
muy bien, gracias a los inventores de las mismas y que
teníamos las calzadas llenas de baches y con esas ruedad
vamos mejor.
>-----Mensaje original-----
>.
>
Gracias por las modificaciones que hayas hecho para lo de Importar.
No he recibido todavía el correo (Ojo Carlos que la cuenta que utilizo aqui,
para escribir, tiene AntiSpam)
En cuanto lo reciba te aviso...
Primero, reconozco que los dbf y El DBase, los abandone en el 92/93, cuando nació el Access, aunque lo recuerdo con cariño.
Segundo, las aplicaciones (por ejemplo el Conta Plus, como clásica), continúan utilizando el formato de 8+3, el original.
Tercero, los ficheros 'son renombrados' para ser mas descriptivos, no creo que con ese nombre los cree el programa, por simple y pura compatibilidad
Cuarto, si no me equivoco, la utilidad consiste en crear el nombre corto del fichero, lo cual para casos como este es una opción elegante y útil (cosa que no he negado ni desmerecido en ningún momento), pero necesaria por la 'interferencia' en el normal funcionamiento y saltarse los cánones establecidos.
Me queda una curiosidad, dado que el set de caracteres (generalmente) no es el mismo que utiliza el Access para su conversión, que método utilizáis cuando aparecen los acentos y las eñes etc.. ¿los respetáis para evitar su reconversión al devolverlo? o los tratáis para convertirlos (si no fuera preciso el reenvío), otra posibilidad seria indicarle que set utilizar, pero no se en que punto podría afectar a otras partes involucradas.
Saludos Enrique, (E. Feijoo)
"CarCar" <ccar...@hotmail.com> escribió en el mensaje news:5ac801c474a3$eceb9590$a301...@phx.gbl...
Pues no ha habido ningún problema con acentos, eñes, no
caracteres especiales, las tabla son dBase 5.0 y el Access
es XP y todo se importa adecuadamente.
Saludos,
CarCar
MVP-Access
PD: He quedado la mar de bien, cuando he dicho que ya no
tendrían que andar renombrando los archivos.
PD2: Paco, el correo me ha llegado devuelto y sin el
adjunto, mañana te lo haré llegar desde el trabajo.
>-----Mensaje original-----
>.
>
Y yo rueda cuadrada como material auxiliar de un vehiculo ;-)
--
Saludos desde Valladolid
Francisco Javier García Aguado
buho...@mvp-access.com
---
http://www.mvp-access.com/buho
http://www.mvp-access.com/foro
http://groups.msn.com/Access2000VisualBasic/
Mi Perfil de MVP en Microsoft:
http://tinyurl.com/6ysvu
---
---
Este correo ha sido testeado y no tiene virus (Al menos conocidos). Saludos
de Francisco Javier García Aguado (Buho)
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.727 / Virus Database: 482 - Release Date: 27/07/2004
--
Saludos desde Valladolid
Francisco Javier García Aguado
buho...@mvp-access.com
---
http://www.mvp-access.com/buho
http://www.mvp-access.com/foro
http://groups.msn.com/Access2000VisualBasic/
Mi Perfil de MVP en Microsoft:
http://tinyurl.com/6ysvu
---
---
Este correo ha sido testeado y no tiene virus (Al menos conocidos). Saludos
de Francisco Javier García Aguado (Buho)
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.727 / Virus Database: 482 - Release Date: 27/07/2004