FoxPro/Visual FoxPro - ayuda urgente en copy fil

 
Vista:

ayuda urgente en copy fil

Publicado por bekyna (294 intervenciones) el 27/04/2005 00:39:41
Saludos, espero puedan ayudarme con el siguiente problema:
En mi entorno de datos (form actual) agrego las tablas con la misma ruta que utilizo para copiar un archivo

_origen= "\\cdcruz\Auxrec.DBF"
_destino = \\Datos_Estacion\Auxrec.DBF
COPY FILE &_origen TO &_destino
El error que marca es que mi archivo ya esta en uso...intente con un APPE FROM y también me marca error porque el archivo origen esta en uso.
Probé cambiando mi ruta ya sea la de las tablas del dataenvironmet o la que utilizo para el copy file y de esta forma funciona, el copiado se hace de forma adecuada, pero esto me ocasiona problemas con la ruta, ojala puedan recomendarme una opción.

gracias por la ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Camilo Bernal

RE:ayuda urgente en copy fil

Publicado por Camilo Bernal (39 intervenciones) el 30/04/2005 20:55:24
Hola, una pregunta, has intentado utilizar el "COPY TO"; en alguna ocación tuve el mismo inconveniente que comentas, pero como las tablas se estaban utilizando de manera exclusiva arrojaban el error.

Puedes utilizar algo parecido a esto:

Select <NOMBRE_ALIAS>
copy to <Ruta\tabla.dbf> type dbf

Espero te funcione.

Camilo Bernal
Bogotá, Colombia
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

hice la prueba y tampoco quedo

Publicado por bekyna (4 intervenciones) el 02/05/2005 16:04:18
ARA_origen= "\\cdcruz\datalinkaq\ARA\$MonthlyDataBase\"+STR(YEAR(DATE()),4)+"\"+PADL(ALLTRIM(STR(MONTH(DATE()))),2,'0')+"\Auxrec.DBF"

Select ARA_origen
copy to C:\Datos_Estacion\Estaciones\ARA\Auxrec.DBF type Auxrec.DBF

no identifica mi ruta origen (ARA_origen, de donde voy a tomar los datos)

espero me puedas indicar si lo hice de forma correcta...estoy muy atrasada y esto es lo unico que me esta deteniendo.

saludos desde Mexico
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Camilo Bernal

RE:hice la prueba y tampoco quedo

Publicado por Camilo Bernal (39 intervenciones) el 02/05/2005 23:25:02
Hola, cuando colocas las tablas en el entorno de datos de un form estas tienen un alias ("nombre") para que no tengas que escribir toda la ruta.

Por ejemplo si en el entorno de datos de tu form tienes una tabla cuyo alias es "MITABLA" (sin importar la ruta de esta) solo tienes que colocar:
Select MITABLA y listo.

Para saber cual es el alias de la tabla solo haces click derecho sobre la tabla en el entorno de datos, luego propiedades y ya.

Para poder utlizar el copy to, la tabla tiene que estar cargada en la memoria, por eso no te puede dar el tipo de error que te estava sacando.

Cualquier cosa me avisas para saber en que te puedo ayudar.

Camilo Bernal.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:hice la prueba y tampoco quedo

Publicado por bekyna (294 intervenciones) el 03/05/2005 22:51:35
Si no es que escriba la ruta en el entorno de datos al asignar la tabla, sino que en el momento de asignarla la ruta queda predeterminada de acuerdo como la haya elegido..(así que si importa la ruta que tiene, al menos a mi me esta dando problema)
Lo que uso siempre es el nombre del alias, y me marca el error que te comento porque la que esta en uso es la tabla origen(la que necesito copiar y además esta en modo exclusivo) y no puedo modificar esto porque pertenece a un sistema que ya esta en ejecución, yo solo ocupo los datos.

Gracias por tu ayuda...saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ayuda urgente en copy fil

Publicado por Antonio (207 intervenciones) el 03/05/2005 22:13:17
Saludos desde Republica Dominicana, si el error es porque esta en uso, solo tienes que ponerlas compartidas,
o sea al momento de darle el uso, solo ponle al final SHARED in 0 (cero)

ej: IF !USED ("cdcruz\Auxrec")
USE \\cdcruz\Auxrec.DBF SHARED IN 0
ENDIF

Asi tendras las tablas Compartidas y puedes hacer con ellas lo que quiereas
luego solo que poner la istruccion COPY to \\x.dbf

Si te ayuda eso me dejas saber
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

archivo en uso

Publicado por bekyna (294 intervenciones) el 04/05/2005 16:18:31
Hola amigo pues hice lo que me recomendaste y me dio el mismo error, "el archivo esta en uso" asi es como quedo, tal vez me fallo algo...
origen = "\\ARA\$MonthlyDataBase\"+STR(YEAR(DATE()),4)+"\"+PADL(ALLTRIM(STR(MONTH(DATE()))),2,'0')+"\Aux.DBF"
destino = "C:\Datos_Estacion\Estaciones\ARA\Aux.DBF"

IF !USED("C:\Datos_Estacion\Estaciones\ARA\Aux.DBF")
USE "C:\Datos_Estacion\Estaciones\ARA\Aux.DBF" SHARED IN 0
COPY FILE &origen TO &destino
ENDIF
ojala puedas darme otra idea porque yo no se que mas hacer.

gracias saludos desde Texcoco, Mexico
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:archivo en uso

Publicado por Antonio (207 intervenciones) el 04/05/2005 16:59:23
Estimado amigo o amiga no se como llamarte, es que ese nick name no define tu sexo, pero nada mira la solucion es la siguiente si quieres copiar tu tabla X.dbf a otra Aux.DBF, lo mas facil es de la siguiente forma, te esta dando ese error porque el archivo Aux.DBF existe, y no puede sobre escribirlo de esa forma, porque lo que estas haciendo es un copy file, si lo que quieres es llenara una tabla con otra lo mas recomendado es lo siguiente:
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:archivo en uso

Publicado por Antonio (207 intervenciones) el 04/05/2005 16:59:55

1) Copy la structura de esta tabla la X.DBF al momento de subir la forma, o en un Main anterior a la forma, fasil Ej:

origen = "\\ARA\$MonthlyDataBase\"+STR(YEAR(DATE()),4)+"\"+PADL(ALLTRIM(STR(MONTH(DATE()))),2,'0')+"\Aux.DBF"

IF !USED("ORIGEN")
USE ORIGEN SHARED IN 0 &&(cero)
ENDIF

COPY STRUC TO C:\Datos_Estacion\Estaciones\ARA\Aux.DBF

IF !USED("C:\Datos_Estacion\Estaciones\ARA\Aux.DBF")
USE "C:\Datos_Estacion\Estaciones\ARA\Aux.DBF" SHARED IN 0
ENDIF

USE Aux
APPEND FROM &ORIGEN

PD: si esta tabla tiene los nombres de los campos mayores que 10, estos campos no se copiaran igual al momento del copy struc.

Ej:
ORIGEN= descripcion
Aux = descripcio

Entonces lo recomendable es crear la tabla al moento de cargar el Main del Proyecto.

Ej:
Create table C:\Datos_Estacion\Estaciones\ARA\Aux.DBF free (sta L, codigo C(06), descripcion C(20), monto N(10,2))

index on sta tag sta
index on codigo tag codigo

La istruccion Free te permitira crear la tabla dentro del direcctorio pero fuera del proyecto de la BD, y asi no te dira nunca que esta en uso, porque el tansolo estar una tabla en la BD, ya esta en uso.

Favor de contestar antes de la 5:00 pm hora Domincana
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar