FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#21
|
||||
|
||||
Buenas de nuevo.
Retomo el hilo para comentaros los avances, o no. He creado el fichero mediante el uso de un IBSQL tal y como me recomendasteis, el resultado del proceso es un fichero txt exactamente igual que el creado mediante el proceso antiguo. Al importar este fichero en el ejecutable hecho con XE5, sigue mostrando el error -303, si me llevo el txt tanto el creado mediante IBSQL como el anterior al ejecutable generado con Delphi 6, se importa perfectamente. Yo creo que voy a dejar este proyecto congelado en Delphi 6 ya que no se que más mirar, ni si puedo poner un visor para ver donde se para exactamente ya que con el F8 se queda en la linea del BatchInput(F).
Lo único que se me ocurre es que si alguien quiere hacer un teamviewer conmigo pues estaré encantado de mostrar el proceso que me lleva de craneo y verlo "fallar" los dos a la vez. Gracias a todos Saludos Josep Nota esta es una de las lineas creadas con el proceso normal: 43;12;1;FERNANDEZ ALBERTI, Josep Antoni;22/08/2010;ESCALADA CASTELL BLANES;626;1.5;2 Solo me queda dudar de que interprete el espacio entre apellidos como final de linea........ Última edición por jafera fecha: 16-06-2014 a las 15:12:10. |
#22
|
||||
|
||||
Por lo que entiendo, en este último mensaje, utilizas Delphi 6 para generar la exportación y Delphi XE5 para la importación.
Este podría ser el problema. A partir de Delphi 2009 (creo) se trabaja con Unicode. Deberías ver la posibilidad de crear la exportación con Delphi XE5 y ver si el fichero es igual al exportado con Delphi 6. En un fichero de texto, los primeros bytes te dicen si en qué formato está. Mira BOM |
#23
|
||||
|
||||
Gracias por la respuestas.
Igual no me he explicado bien, el fichero lo genero en XE5 y no lo importo en XE5 pero si en D6, que es lo que me tiene la mosca en la oreja. Saludos Josep |
#24
|
||||
|
||||
Entonces sería al contrario... mira como se codifica el fichero que sale de Delphi XE5. Si lo miras byte a byte, podrás ver si tiene algo delante (BOM).
Por ejemplo, podría ser que el fichero empiece con EF BB BF si se tratara de UTF8 y que Delphi 6 los interpretaría como 3 caracteres que se deben procesar. Así, el primer campo de la importación sería "43" que daría un error de conversión si se espera un número. Podrías preprocesar el fichero con algo así y generar un fichero temporal que luego importarás.
Última edición por duilioisola fecha: 16-06-2014 a las 16:00:08. |
#25
|
||||
|
||||
Ok, pero como se mira un fichero txt para ver esta codificación?
He mirado el enlace que me has puesto y estoy más perdido que un pulpo en un garaje. Saludos Josep |
#26
|
||||
|
||||
Y una duda que me queda para la prueba, "sl" como se declara?
Es una variable? Josep |
#27
|
||||
|
||||
Hechas las primeras pruebas, la primera linea empieza por......tachan..... , pero en el codigo puesto, lo he modificado así:
ejecutando paso a paso , me dice que primeralinea := False, o sea que no pasa por el caracteresIgnorar y viendo que vale registro y siendo realmente la primera linea pues empieza por los caracteres descritos. Algo sigo haciendo mal Gracias Josep |
#28
|
||||
|
||||
Más avances.
Si codifico el txt como UTF8 (guardar como) es cuando detecta los caracteres iniciales. Si lo codifico Annsi, no me reconoce caracteres al inicio y la linea (Registro) se ve correcta, pero el código no hace sl.Add, peta y da access violation Codigo modificado:
No se si todo el código de pruebas esta correctamente realizado. Esta variable sl se debe inicializar? Por esto da access violation? Saludos Josep Última edición por jafera fecha: 16-06-2014 a las 18:26:33. |
#29
|
||||
|
||||
Buenas a todos los que seguis este hilo y a los nuevos curiosos pues también.
He tardado bastante en contestar a las modificaciones que he realizado desde el último post ya que no sabía como solucionar el problema, no era un defecto del txt, ya que esto pasaba en varios archivos de este tipo. Al final, he implementado una solución utilizando el componente JvCsvDataSet al que le cargo el fichero txt generado y anda de maravilla. No conocía este componente y realmente es potente y sencillo de usar aunque al principio el declarar los campos, las cabeceras etc., es un poco lioso hasta que se asimila bien. Hoy por fin doy por finiquitado el problema ya que la importación se realiza sin problemas y sin usar tablas temporales intermedias. Saludos Josep |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
DELPHI6 Importar fichero codificado UTF-8 a Dbase | Jose Manuel | Varios | 0 | 16-05-2011 18:46:14 |
Importar fichero XML | cincosoft | OOP | 1 | 08-02-2009 10:29:58 |
Importar fichero .dat desde cobol | julian_ch | Varios | 0 | 08-08-2005 17:43:17 |
Error al importar dll | mguixot | Varios | 2 | 08-07-2005 15:47:26 |
importar fichero consumo telefonica | tonid | Varios | 3 | 11-09-2003 09:49:28 |
|