APPEND FROM (Comando)

Agrega registros, desde otro archivo, al final de la tabla seleccionada actualmente.

APPEND FROM FileName | ?   [FIELDS FieldList] [FOR lExpression]
   [[TYPE] [DELIMITED [WITH Delimiter | WITH BLANK | WITH TAB
      | WITH CHARACTER Delimiter] | DIF | FW2 | MOD | PDOX | RPD |
      SDF | SYLK | WK1 | WK3 | WKS | WR1 | WRK | CSV | XLS | XL5 
      [SHEET cSheetName] | XL8 [SHEET cSheetName]]] [AS nCodePage]

Parámetros

  • FileName
    Especifica el nombre del archivo desde el que desea agregar registros. Si no incluye ninguna extensión de archivo, se asumirá una tabla de Visual FoxPro y la extensión predeterminada .dbf. Si desea agregar desde una tabla de Visual FoxPro, se agregarán los registros de la tabla que estén marcados para su eliminación, independientemente de la configuración de SET DELETED.

  • ?
    Muestra el cuadro de diálogo Abrir, en el que puede elegir una tabla desde la que agregar registros.

  • FIELDS FieldList
    Especifica a qué campos se van a agregar datos.

  • FOR lExpression
    Agrega un nuevo registro por cada registro de la tabla actualmente seleccionada para la que lExpression dé como resultado verdadero (.T.). Los registros se agregan hasta alcanzar el final de la tabla seleccionada. Si omite FOR, todo el archivo de origen se agrega a la tabla seleccionada actualmente.

  • TYPE
    Especifica el tipo del archivo de origen desde el que se van a agregar datos. Aunque debe especificar un tipo de archivo si el archivo desde el que va a agregar no es una tabla de Visual FoxPro, no necesita incluir la palabra clave TYPE. Puede agregar desde varios tipos de archivos diferentes, incluidos archivos de texto ASCII delimitados, en los que puede especificar un delimitador de campos.

    Si el archivo de origen desde el que va a agregar datos no tiene la extensión predeterminada habitual para ese tipo de archivo, el nombre del archivo de origen deberá incluir la extensión del archivo. Por ejemplo, las hojas de cálculo de Microsoft Excel normalmente tienen una extensión .xls. Si la hoja de cálculo de Microsoft Excel desde la que va a agregar datos tiene una extensión distinta de la esperada, .xls, asegúrese de especificar la extensión.

    Nota   Cuando agregue datos desde una hoja de cálculo, los datos de esa hoja deben estar almacenados en un orden principal de fila, no de columna. Esto permite que los datos agregados de la hoja de cálculo coincidan con la estructura de la tabla.

  • DELIMITED
    Especifica que el archivo de origen desde el que se agregan los datos a la tabla actual de Visual FoxPro es un archivo delimitado. Un archivo delimitado es un archivo de texto ASCII en el que cada registro termina con un retorno de carro y un avance de línea. De forma predeterminada, se supone que el contenido de los campos está separado entre sí mediante comas (no incluya espacios adicionales antes o después de las comas) y que los valores de los campos de caracteres están delimitados además por dobles comillas. Por ejemplo:

    "Smith",9999999,"TELEPHONE"
    

    Para todos los archivos delimitados, se supone que la extensión de archivo es .txt.

    Puede importar fechas de archivos delimitados si las fechas tienen el formato de fecha adecuado. El formato de fecha predeterminado es mm/dd/aa. Es opcional incluir la parte de siglo de una fecha. Visual FoxPro importará una fecha, como 12/25/95, que no incluye el siglo y supondrá que la fecha corresponde al siglo XX. Los delimitadores de fecha pueden ser cualquier carácter no numérico, excepto el delimitador que separa los campos en el archivo delimitado.

    Es posible importar fechas en otros formatos si su formato coincide con un formato de fecha disponible en SET DATE. Para importar fechas que no tienen el formato predeterminado, ejecute SET DATE con el formato de fecha apropiado antes de utilizar APPEND FROM. Para comprobar si un formato de fecha se puede importar correctamente, utilícelo con CTOD( ). Si la fecha es aceptable para CTOD( ), la fecha se importará correctamente.

  • DELIMITED WITH Delimiter
    Indica que los campos de caracteres están delimitados entre sí por un carácter distinto de la comilla.

  • DELIMITED WITH BLANK
    Especifica archivos que contienen campos separados por espacios en blanco en vez de comas.

  • DELIMITED WITH TAB
    Especifica archivos que contienen campos separados por tabulaciones en vez de comas.

  • DELIMITED WITH CHARACTER Delimiter
    Especifica archivos que contienen campos separados por el carácter especificado en Delimiter. Si Delimiter es un punto y coma (el carácter utilizado en Visual FoxPro para indicar continuación de línea de comandos), escriba el punto y coma entre comillas. También puede especificar las palabras clave BLANK y TAB para Delimiter.

    La cláusula WITH Delimiter se puede combinar con la cláusula WITH CHARACTER. Por ejemplo, el siguiente comando agrega registros de un archivo de texto con campos de caracteres delimitados con caracteres subrayados y todos los campos delimitados unos de otros por asteriscos:

    APPEND FROM mytxt.txt DELIMITED WITH _ ;   WITH CHARACTER *
    
  • DIF
    Incluya DIF para importar datos de un archivo .dif (formato de intercambio de datos) de VisiCalc. Los vectores (columnas) se convierten en campos en la tabla seleccionada actualmente y las filas se transforman en registros. Se presupone que los nombres de archivos DIF tienen una extensión .dif.

  • FW2
    Incluya FW2 para importar datos de un archivo creado por Framework II. Se asume que los nombres de archivo FW2 tienen una extensión .fw2.

  • MOD
    Incluya MOD para importar datos de un archivo Microsoft Multiplan versión 4.01. Microsoft Multiplan versión 4.01 crea archivos MOD, que se supone deben tener una extensión .mod.

  • PDOX
    Incluya PDOX para importar datos de un archivo de base de datos Paradox versión 3.5 ó 4.0. Se supone que los nombres de archivo Paradox deben tener una extensión .db.

  • RPD
    Incluya RPD para importar datos de un archivo creado por RapidFile versión 1.2. Se supone que los nombres de archivo RapidFile deben tener una extensión .rpd.

  • SDF
    Incluya SDF para importar datos de un archivo de Formato de datos del sistema. Un archivo SDF es un archivo de texto ASCII en el que los registros tienen una longitud fija y terminan con un retorno de carro y un avance de línea. Los campos no están delimitados. Se supone que la extensión del archivo SDF debe ser .txt.

    La conversión efectiva de datos de fecha de archivos SDF en tablas de Visual FoxPro requiere que los datos se almacenen con formato AAAAMMDD.

    Si la información de fecha está almacenada con formatos ambiguos, es recomendable asignar la columna de fecha a una columna de caracteres con el ancho adecuado, de modo que pueda inspeccionar el valor y, a continuación, aplicar la rutina de conversión correcta para crear datos de fecha con el formato correcto.

  • SYLK
    Incluya SYLK para importar datos desde un formato de intercambio SYLK (Vínculo simbólico). Los archivos SYLK se utilizan con Microsoft MultiPlan. Las columnas del archivo SYLK se transforman en campos en la tabla de Visual FoxPro y las filas se transforman en registros. Los nombres de archivo SYLK no tienen ninguna extensión.

  • WK1
    Incluya WK1 para importar datos de una hoja de cálculo Lotus 1-2-3 versión 2.x. Cada columna de la hoja de cálculo se transforma en un campo de la tabla y cada fila de la hoja de cálculo se transforma en un registro de la tabla. Se asigna una extensión .WK1 al nombre de archivo de la hoja de cálculo creada en Lotus 1-2-3 versión 2.x.

  • WK3
    Incluya WK3 para importar datos de una hoja de cálculo Lotus 1-2-3. Cada columna de la hoja de cálculo se transforma en un campo de la tabla y cada fila de la hoja de cálculo se transforma en un registro de la tabla. Se asigna una extensión .wk3 al nombre de archivo de hoja de cálculo creada en Lotus 1-2-3 versión 3.x.

  • WKS
    Incluya WKS para importar datos de una hoja de cálculo Lotus 1-2-3 revisión 1-A. Cada columna de la hoja de cálculo se transforma en un campo de la tabla y cada fila de la hoja de cálculo se transforma en un registro de la tabla. Se asigna una extensión .wks al nombre de archivo de la hoja de cálculo creada en Lotus 1-2-3 revisión 1-A.

  • WR1
    Incluya WR1 para importar datos de una hoja de cálculo Lotus Symphony versión 1.1 ó 1.2. Las columnas de la hoja de cálculo se convierten en campos de la tabla y las filas se transforman en registros de la tabla. Se asigna la extensión .wr1 al nombre de archivo de hoja de cálculo creada en Symphony versiones 1.1 ó 1.2.

  • WRK
    Incluya WRK para importar datos de una hoja de cálculo Lotus Symphony versión 1.0. Las columnas de la hoja de cálculo se convierten en campos de la tabla y las filas se transforman en registros de la tabla. Se asigna una extensión .wrk al nombre de archivo de hoja de cálculo creado en Symphony versión 1.0.

  • CSV
    Incluya CSV para importar datos de un archivo de valores separados por comas. Un archivo CSV contiene los nombres de campos en la primera línea del archivo; los nombres de campos se pasarán por alto cuando se importe el archivo.

  • XLS
    Incluya XLS para importar datos de una hoja de cálculo Microsoft Excel. Las columnas de la hoja de cálculo se transforman en campos de la tabla y las filas se convierten en registros de la tabla. Los nombres de archivos de hoja de cálculo creados en Microsoft Excel reciben la extensión .xls.

  • XL5
    Incluya XL5 si desea importar datos de Microsoft Excel versión 5.0. Las columnas de la hoja de cálculo se convierten en campos de la tabla y las filas de la hoja de cálculo se convierten en registros de la tabla. Los archivos de hoja de cálculo creados en Microsoft Excel tienen una extensión .xls.

    Si omite la cláusula SHEET, se importan los datos de la Hoja1. Para importar datos de una hoja específica, incluya la palabra clave SHEET y especifique el nombre de la hoja mediante cSheetName.

  • XL8
    Incluya XL8 para importar datos de Microsoft Excel 97. Las columnas de la hoja de cálculo se convierten en campos de la tabla; las filas de la hoja de cálculo se convierten en registros de la tabla. Los archivos de hoja de cálculo creados en Microsoft Excel tienen una extensión .xls.

    Si omite la cláusula SHEET, se importan los datos de la Hoja1. Para importar datos de una hoja específica, incluya la palabra clave SHEET y especifique el nombre de la hoja mediante cSheetName.

  • AS nCodePage
    Especifica la página de códigos de la tabla o el archivo de origen. Visual FoxPro copia el contenido de la tabla o el archivo de origen y, a medida que copia los datos, los convierte automáticamente a la página de códigos de la tabla actual.

    Si especifica un valor no admitido para nCodePage, Visual FoxPro generará un mensaje de error. Puede utilizar GETCP( ) para que nCodePage muestre el cuadro de diálogo Página de códigos, lo que permite especificar una página de códigos para la tabla o el archivo anexado.

    Si omite AS nCodePage y Visual FoxPro no puede determinar la página de códigos de la tabla o archivo de origen, Visual FoxPro copiará el contenido de la tabla o archivo de origen. Cuando copie los datos, los convertirá automáticamente a la página de códigos actual de Visual FoxPro. Si SET CPDIALOG tiene el valor ON, la tabla del área de trabajo seleccionada actualmente se marcará con una página de códigos. Si va a anexar datos de una tabla que no está marcada con una página de códigos, aparecerá el cuadro de diálogo Página de códigos, de forma que pueda elegir la página de códigos de la tabla desde la que está anexando datos. La página de códigos actual de Visual FoxPro puede determinarse mediante CPCURRENT( ).

    Si omite AS nCodePage y Visual FoxPro puede determinar la página de códigos de la tabla o archivo que se está anexando, Visual FoxPro copiará el contenido de la tabla o archivo anexados. Cuando copie los datos, los convertirá automáticamente a la página de códigos de la tabla actualmente seleccionada.

    Si nCodePage es 0, Visual FoxPro asume que la página de códigos de la tabla o archivo que se está anexando es la misma que la de la tabla actualmente seleccionada. No se produce ninguna conversión a la página actual de códigos de Visual FoxPro.

Observaciones

Si el archivo desde el que va a anexar datos es una tabla de Visual FoxPro o una tabla creada en una versión anterior de FoxPro, se supone que tiene una extensión .dbf. Si la tabla de Visual FoxPro o la tabla creada en una versión anterior de FoxPro no tiene una extensión .dbf, deberá especificar su extensión. Si el archivo no es una tabla de Visual FoxPro ni una tabla creada en una versión anterior de FoxPro, deberá especificar el tipo de archivo desde el que va a anexar datos.

Antes de poder anexar datos de una tabla creada en dBASE IV o dBASE V que contenga un campo memo, debe abrir primero la tabla en Visual FoxPro mediante USE. Cuando se le pregunte si desea convertir el archivo, responda afirmativamente.

Si anexa datos de una tabla de Visual FoxPro o de una tabla creada en una versión anterior de FoxPro, la tabla desde la que anexa datos puede estar abierta en otra área de trabajo. Los registros marcados para eliminación en la tabla cuyos datos está anexando se desmarcan una vez anexados los registros.

Utilice la función DBF( ) para anexar desde un cursor temporal de sólo lectura creado por un comando SELECT - SQL. Incluya el nombre del cursor en la función DBF( ) como en el ejemplo siguiente:

APPEND FROM DBF('<Cursor Name>')

Ejemplo

El ejemplo siguiente abre la tabla customer, copia su estructura a una tabla llamada backup y, a continuación, abre backup. Después, Visual FoxPro anexa todos los registros relativos a Finlandia de la tabla customer. Estos registros se copian a un nuevo archivo delimitado, TEMP.TXT.

CLOSE DATABASES
OPEN DATABASE (HOME(2) + 'Data\testdata')
USE customer  && Open customer table
COPY STRUCTURE TO backup
USE backup
APPEND FROM customer FOR country = 'Finland'
COPY TO temp TYPE DELIMITED
MODIFY FILE temp.txt
USE
DELETE FILE backup.dbf
DELETE FILE temp.txt

Vea también

COPY FILE | COPY TO | EXPORT | GETCP( ) | IMPORT