Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Problema con la creacion de archivo .txt y .dat desde VB

Estas en el tema de Problema con la creacion de archivo .txt y .dat desde VB en el foro de Visual Basic clásico en Foros del Web. Hola a todos....Aki esta mi problema a ver si me pueden ayudar Tengo una base de datos en Access, pero mediante un formulario mando llamar ...
  #1 (permalink)  
Antiguo 08/11/2006, 12:44
Avatar de OlaIsa  
Fecha de Ingreso: diciembre-2005
Mensajes: 105
Antigüedad: 18 años, 5 meses
Puntos: 0
Busqueda Problema con la creacion de archivo .txt y .dat desde VB

Hola a todos....Aki esta mi problema a ver si me pueden ayudar

Tengo una base de datos en Access, pero mediante un formulario mando llamar una rutina de VB, esa rutina lo k hace es llenar una tabla temporal(tempXXX) con datos de una consulta, y despues esos datos son mandados a dos archivos uno .txt y otro .dat, el problema es k a estos archivo mandaba una columna con datos decimales y !no me aparecen los decimales!, despues de hacer varias pruebas y no poder cambie el tipo de campo a cadena así k por ejemplo todos kedaron asi "120.0", pero aun asi en los archivo me siguie sin aparecer el ".0". . Ahora menos se pork, si se supone k es una cadena y no deberia de haber ningun problema....

Para darles una idea el archivo de texto tiene N filas con datos como estos:

42 520 173 120

En donde este ultimo deberia de ser el decimal.

No se si sea algo de codificacion o algo así, (la verdad es k no se mucho)

La instruccion que realiza para crear el archivo es la siguiente:

Código:
vari = vari & "\dep" & Mes & unidad

DoCmd.TransferText acExportFixed, "exportpaso", _
    "tempxxx", vari & ".txt"
nombre1 = vari & ".txt"
nombre2 = vari & ".dat"
Set fs = CreateObject("Scripting.FileSystemObject")
fs.CopyFile nombre1, nombre2
Gracias a todos...Saludos
__________________
Se feliz!!!!!
  #2 (permalink)  
Antiguo 08/11/2006, 13:24
Avatar de tazzito  
Fecha de Ingreso: agosto-2006
Mensajes: 381
Antigüedad: 17 años, 9 meses
Puntos: 2
OlaIsa

hola, consulta, en la tabla temporal los datos de que tipo son numericos o de tipo texto?
verifica que en ella se esten guardando con el .0 y si es asi creo que lo mejor sera pasar la tabla temporal en forma manual (osea registro a registro)
  #3 (permalink)  
Antiguo 08/11/2006, 13:29
Avatar de OlaIsa  
Fecha de Ingreso: diciembre-2005
Mensajes: 105
Antigüedad: 18 años, 5 meses
Puntos: 0
Hola tazzito...la tabla temporal anteriormente tenia tipo numerico...pero por la cuestion de k no aparecian los decimales (fueran los k fueran), la cambie a texto y si los llena como cadena y le incluye el ".0".

Y la tabla temporal se llena con una consulta que puede variar, así k kada k un usuario diferente entra y kiere generar el .txt la tabla temporal borra todo lo k tiene y se vuelve a llenar con los datos nuevos, así k pasarla manualmente seria algo dificil... No sera k algo en el DoCmd.TransferText ???? mmmm.

saludos.
__________________
Se feliz!!!!!
  #4 (permalink)  
Antiguo 08/11/2006, 13:47
Avatar de tazzito  
Fecha de Ingreso: agosto-2006
Mensajes: 381
Antigüedad: 17 años, 9 meses
Puntos: 2
OlaISa,

a eso voy, la verdad ese comando nunca lo eh usado y cada vez que tengo que generar un archivo lo hago registro por registro dandole el formato los espacion etc que yo necesito.
  #5 (permalink)  
Antiguo 08/11/2006, 14:53
Avatar de OlaIsa  
Fecha de Ingreso: diciembre-2005
Mensajes: 105
Antigüedad: 18 años, 5 meses
Puntos: 0
Ok..entonces tendria k llenar la tabla(igual k eta ahorita), luego recorrer la tabla y pasar fila por fila al archivo de texto...??

Bien..voy a investigar mas sobre esto , estamos en contacto.

Gracias...
__________________
Se feliz!!!!!
  #6 (permalink)  
Antiguo 08/11/2006, 15:08
Avatar de tazzito  
Fecha de Ingreso: agosto-2006
Mensajes: 381
Antigüedad: 17 años, 9 meses
Puntos: 2
ok investiga supongo que algo mas se puede hace ;) pero asi sin ver mucho me es mas complicado.
  #7 (permalink)  
Antiguo 09/11/2006, 09:16
Avatar de [EX3]  
Fecha de Ingreso: marzo-2006
Ubicación: Fuenlabrada, Madrid
Mensajes: 203
Antigüedad: 18 años, 1 mes
Puntos: 1
Y por que no trabajas los datos en binario? Generando una estructura similar a esta podrias tanto leer como escribir una tabla de valores decimales en un archivo de forma binaria:
Código:
Public Type DatosTabla
    nFilas As Long 'Numero de filas de la tabla.
    nColumnas As Long 'Numero de columnas de la tabla.
    Datos() As Double 'Redim Datos(nFilas, nCeldas) - Almacena los datos de las celdas de cada fila.

End Type 
Echa un vistazo a este ejemplo que hice aplicandolo a un MSHFlexGrid:

vb6TrabajarEnBinario.zip (3 kb)

Para probarlo pulsa primero en el boton "Generar Datos" para crear la tabla y llenarla de datos, despues guarda la tabla, vacia la tabla y por ultimo carga los datos. Veras que el codigo no es muy complicado y es adaptable a cualquier necesidad por compleja que esta sea (si vieras las estructuras que trabajo en mi ultimo proyecto te quedabas palido jeje). Este metodo, al menos para mi, es mas comodo y organizado que grabar en registros en modo texto los datos en un archivo.

Salu2...
__________________
Proyecto dx_lib32 (http://dxlib32.se32.com) Libreria DLL ActiveX para el desarollo de juegos y programas multimedia en Visual Basic 6.0 con la potencia de DirectX

Dice un dicho que "el que calla otorga". En internet tenemos otro que dice "nunca alimentes a un troll" que viene a decir "dejale hablar solo que se ya se cansara de incordiar". Solo los necios creen tener la razon con la ultima palabra.

  #8 (permalink)  
Antiguo 09/11/2006, 10:16
Avatar de OlaIsa  
Fecha de Ingreso: diciembre-2005
Mensajes: 105
Antigüedad: 18 años, 5 meses
Puntos: 0
Muchas gracias [EX3]...voy a probar el ejemplo...

Saludos
__________________
Se feliz!!!!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:48.