Comandos FOXPRO.docx

March 25, 2019 | Author: rhamerlina | Category: Sql, Table (Database), Window (Computing), Computer File, Information Technology Management
Share Embed Donate


Short Description

Download Comandos FOXPRO.docx...

Description

ZAP (Comando)

Elimina todos los registros de la tabla actual y deja sólo la estructura de la tabla.

ZAP

[IN nWorkArea | cTableAlias]

Parámetros

IN nWorkArea Especifica el área de trabajo de la tabla cuyos registros se eliminan. IN cTableAlias Especifica el alias de la tabla en la que se eliminan todos los registros. Si omite nWorkArea y nWorkArea y cTableAlias, cTableAlias, se eliminan todos los registros de la tabla del área de trabajo tr abajo seleccionada actualmente. Observaciones

El uso de ZAP equivale a especificar DELETE ALL y a continuación PACK, pero ZAP es mucho más rápido. Si SET SAFETY está establecido en ON, Microsoft Visual FoxPro le preguntará si desea eliminar los registros de la tabla actual. Ejecutar ZAP no hace que se produzca el desencadenador desencadenador Delete. Para obtener más información acerca de cómo crear desencadenadores Precaución Los registros registros de la tabla actual eliminados con con ZAP no pueden recuperarse. recuperarse.

SET STATUS (Comando) Muestra o quita la barra de estado basada en caracteres. SET STATUS ON | OFF

Parámetros

ON Si SET STATUS está establecido a ON, se muestra la barra de estado basada en caracteres con el nombre del programa actualmente en ejecución (si lo hay), el alias de la l a tabla activa, la posición del puntero en el registro actual, el número de registros de la tabla y el estado de las teclas Insert, Bloq Num y Bloq Mayús. El estado de bloqueo del registro o del archivo también se muestra en la barra de estado cuando se abre la l a tabla para uso compartido. La barra de estado se actualiza cada vez que ejecuta un comando que cambia la información de estado. OFF (Predeterminado) Ejecute SET STATUS OFF para quitar la barra de estado.

SET DEFAULT (Comando) Especifica la unidad o el directorio predeterminados. SET DEFAULT TO [cPath]

Parámetros

cPath    

Especifica uno de los elementos siguientes: Un designador de unidad. Un designador de unidad con un nombre de directorio. dir ectorio. Un nombre de un directorio secundario. Cualquiera de los anteriores, utilizando la notación abreviada abreviada de Microsoft MS-DOS ( \ o ..).

Observaciones

SET DEFAULT cambia el directorio predeterminado al directorio que usted especifique. Microsoft® Visual FoxPro® busca un archivo en el directorio predeterminado de Visual FoxPro. El directorio predeterminado es aquél desde el cual se inicia Visual FoxPro. No obstante, puede especificar otro directorio predeterminado en el archivo de configuración de Visual FoxPro o en un  programa de inicio. inicio. Si Visual FoxPro no encuentra un archivo en el el directorio predeterminado, predeterminado, buscará

en la ruta de acceso de Visual FoxPro si se ha especificado una. Utilice SET PATH para especificar la ruta de Visual FoxPro. Si crea un archivo y no especifica dónde desea ubicarlo, el archivo se colocará en el directorio  predeterminado de de Visual FoxPro. En los servidores que admiten varios subprocesos, SET DEFAULT afecta a todo t odo el proceso. Es decir, si se crean varios subprocesos y se utiliza util iza SET DEFAULT TO "MYDIR" en uno de ellos, el comando afectará a todos los subprocesos y al proceso en que se carguen objetos. Cuando salga de Visual FoxPro, volverá a Microsoft® Windows®. Si sale de Windows, volverá a la unidad y al directorio desde los que inició Windows. Sugerencia SYS(5) devuelve devuelve la unidad predeterminada. predeterminada. SYS(2003) devuelve devuelve el el directorio  predeterminado sin sin designador de de unidad. SYS(5) SYS(5) + SYS(2003) devuelven devuelven la unidad unidad y el directorio  predeterminados.  predeterminados. Puede cambiar la unidad predeterminada a la unidad A ejecutando cualquiera de los comandos siguientes: SET DEFAULT TO A SET DEFAULT TO A:

Puede especificar un directorio determinado: SET DEFAULT TO A:\sales SET DEFAULT TO C:\sales\data

Puede especificar especificar un directorio secundario. Si el directorio raíz de la unidad C es el directorio  predeterminado de de Visual FoxPro, ejecute ejecute este comando comando para cambiar cambiar el directorio predeterminado predeterminado a C:\Sales: SET DEFAULT TO sales

Puede ejecutar la notación abreviada de MS-DOS. Si el directorio actual es C:\Sales\Data, ejecute el comando siguiente para hacer que el directorio raíz sea el directorio predeterminado: SET DEFAULT TO \

También puede mover el directorio predeterminado al directorio anterior hacia el directorio raíz con este comando: .SET DEFAULT TO ..

SET EXCLUSIVE (Comando)

Especifica si Visual FoxPro abre los archivos de tabla para uso exclusivo o compartido en una red. SET EXCLUSIVE ON | OFF

Parámetros

ON (El valor predeterminado para la sesión de datos global.) Limita el acceso a una tabla abierta en red al usuario que la abrió. Otros usuarios de la red no tienen acceso a la tabla. A diferencia de FLOCK( ), SET EXCLUSIVE ON impide también que otros usuarios tengan acceso de sólo lectura. También puede abrirse un archivo en una red para uso exclusivo incluyendo la cláusula EXCLUSIVE con el comando USE. No es necesario realizar un bloqueo de registro o archivo en una tabla abierta para uso exclusivo. Al abrir una tabla para uso exclusivo se asegura que otros usuarios no puedan cambiar el archivo. Algunos comandos no pueden ejecutarse a menos que se abra una tabla para uso exclusivo. Estos comandos son INSERT, INSERT BLANK, MODIFY STRUCTURE, PACK, REINDEX y ZAP. OFF (El valor predeterminado para una sesión de datos privada.) Permite que cualquier usuario de la red  pueda compartir compartir y modificar una tabla tabla abierta en red. Para obtener información adicional acerca del bloqueo de registros y archivos, y el uso compartido de tablas en una red, vea Programar para acceso compartido. compartido . Observaciones

Al cambiar la configuración de SET EXCLUSIVE no cambiará el estado de las tablas abiertas  previamente. Por Por ejemplo, si una tabla tabla se abre con con SET EXCLUSIVE EXCLUSIVE ON y SET EXCLUSIVE EXCLUSIVE se cambia posteriormente a OFF, la tabla mantendrá su estado de uso exclusivo. SET EXCLUSIVE tiene como alcance la sesión actual de datos.

SET DELETED (Comando) Especifica si Visual FoxPro procesará o no los registros marcados para su eliminación, y si estarán disponibles o no para utilizarse en otros comandos. SET DELETED ON | OFF

Parámetros

ON Especifica que los comandos que realizan operaciones en registros (incluidos los registros de l as tablas relacionadas) utilizando un alcance pasen por alto los registros marcados para su eliminación. OFF (Predeterminado) Especifica que puedan tener acceso a los registros marcados para eliminación los comandos que actúan sobre registros (incluidos los registros de las tablas relacionadas), utilizando un alcance. Observaciones

Las consultas que utilizan DELETED( ) para comprobar el estado de los registros pueden optimizarse utilizando la tecnología Rushmore si la tabla está indizada en DELETED( ). Para obtener más información acerca de la optimización optimi zación de consultas, vea Puede marcar registros para su eliminación ejecutando DELETE - SQL o DELETE, o eligiendo Eliminar registros... en el menú Tabla desde una ventana Examinar o Modificar. Puede recuperar registros ejecutando RECALL o eligiendo Desmarcar registros... en el menú Tabla de una ventana Examinar o Modificar. Nota SET DELETED se pasa por alto si si el alcance predeterminado predeterminado del comando comando es el registro registro actual o si incluye un alcance de un único registro. INDEX y REINDEX siempre pasan por alto SET DELETED e indizan todos los registros de la tabla. SET DELETED tiene como alcance la sesión actual de datos.

SET DATE (Comando)

Especifica el formato para mostrar las expresiones Date y DateTime. SET DATE [TO] AMERICAN | ANSI | BRITISH | FRENCH | GERMAN | ITALIAN | JAPAN | TAIWAN | USA | MDY | DMY | YMD| SHORT | LONG

Observaciones

A continuación se muestran las configuraciones y los formatos de fecha resultantes: Valor

AMERICAN ANSI BRITISH/FRENCH GERMAN ITALIAN JAPAN TAIWAN USA MDY DMY

Formato

mm/dd/aa aa.mm.dd dd/mm/aa dd.mm.aa dd-mm-aa aa/mm/dd aa/mm/dd mm-dd-aa mm/dd/aa dd/mm/aa

AMD SHORT

aa/mm/dd El formato de fecha corto determinado en la configuración de fecha corta del Panel de Control de Windows. LONG El formato de fecha larga determinado en la configuración de fecha larga del Panel de Control de Windows. Nota Cuando se establece establece SET DATE DATE en SHORT o LONG, LONG, las fechas fechas anteriores a {^1601-01-01} {^1601-01-01} no serán válidas y generarán un error. La configuración predeterminada es AMERICAN. El valor SET DATE también determina cómo aparecerá la fecha en las expresiones DateTime. Si se establece DATE en SHORT o en LONG, se omitirán omiti rán los valores de configuración establecidos  para SET CENTURY, CENTURY, SET MARK, SET HOURS y SET SECONDS. SECONDS. SET DATE tiene como alcance la sesión actual de datos.

SET CENTURY (Comando) Determina si Microsoft Visual FoxPro mostrará o no el siglo en las expresiones Date y cómo interpreta Visual FoxPro las fechas que sólo especifican los años con 2 dígitos. SET CENTURY ON | OFF | TO [nCentury [ROLLOVER nYear]]

Parámetros

ON Especifica un formato de año con cuatro dígitos que ocupa 10 caracteres (incluidos los delimitadores de fecha). Nota Para proporcionar proporcionar compatibilidad con el milenio, milenio, se recomienda recomienda que establezca siempre SET CENTURY en ON. OFF (Predeterminado) Especifica un formato de año de dos dígitos que ocupa ocho caracteres y supone el siglo veinte para los cálculos de fechas. TO nCentury Un número de 1 a 99 que especifica el siglo actual. Cuando una fecha tiene un año de dos dígitos, nCentury determina nCentury determina en qué siglo se encuentra el año. El valor ROLLOVER determina si el año está en nCentury o nCentury o en el siglo que sigue a nCentury. nCentury. ROLLOVER nYear  Un número de 0 a 99 que especifica el año a partir del cual es el siglo actual y por debajo del cual es el próximo siglo. El valor predeterminado para nYear  es  es los dos últimos dígitos del año actual más 50 años (si el año actual es 1998, nYear  es  es 48, los dos últimos dígitos de 2048 (1998 + 50). Tenga en cuenta que el valor de ROLLOVER sólo determina el siglo para una fecha escrita sin la  parte del siglo (un formato de fecha ambiguo que no no se recomienda). recomienda). Por ejemplo, si el año actual es 1998 y nYear  es  es el valor predeterminado (48), cualquier fecha escrita sin la parte del siglo y un año 48 o superior se considerará en el siglo actual (el siglo XX). Cualquier fecha escrita sin la parte del siglo pero con un año anterior al 48 se considera como  perteneciente al próximo siglo (el siglo siglo XXI). Observaciones

Utilice SET CENTURY para especificar cómo se mostrarán las variables y las funciones de fecha. Ejecute SET CENTURY TO sin argumentos adicionales para restaurar el siglo predeterminado al siglo actual y aplicar ROLLOVER al valor predeterminado del año actual más 50 años. En Visual FoxPro 5.0, al ejecutar SET CENTURY TO sin ningún argumento adicional se establece el siglo en 19 y ROLLOVER en cero. SET CENTURY tiene como alcance la sesión de datos d atos actual. Las nuevas sesiones de datos se inician en los valores predeterminados y se pasa por alto el valor de SET CENTURY para la sesión de datos actual. SET CENTURY TO ROLLOVER está disponible en Visual FoxPro 5.0 y las versiones posteriores, y  permite controlar el año año de las fechas fechas cuando el el valor es SET CENTURY CENTURY OFF. También También permite

utilizar un valor de ROLLOVER, puesto que muchas aplicaciones aplicaciones contienen fechas que abarcan varios siglos. Nota SET CENTURY OFF siempre utiliza fechas del siglo XX. Sin embargo, la sintaxis de SET CENTURY TO tiene prioridad sobre este valor. Por tanto, en Visual FoxPro 5.0 y en las l as versiones  posteriores, el valor valor SET CENTURY ON/OFF ON/OFF sólo controla el el número de dígitos mostrados. El valor de SET CENTURY TO tiene como alcance la sesión de datos actual. En Visual FoxPro 5.0, si se ejecuta SET CENTURY TO sin parámetros adicionales, se establece como siglo el siglo actual  – 1 y se pasa a cero si el año de dos dígitos de la fecha del sistema es menor que 50. Se establece como siglo el siglo actual si la fecha del sistema de dos dígitos es mayor que 50. Por ejemplo, si el año actual fuera 1998, nYear  sería  sería 48, los dos últimos dígitos de 2048 (1998 + 50).

SELECT - SQL (Comando) Recupera datos de una o más tablas. SELECT [ALL | DISTINCT] [TOP nExpr [PERCENT]] [Alias.] Select_Item [[AS] Column_Name] [, [Alias.] Select_Item [[AS] Column_Name] ...] FROM [FORCE][DatabaseName!]Table [[AS] Local_Alias] [[INNER | LEFT [OUTER] | RIGHT [OUTER] | FULL [OUTER] JOIN DatabaseName!] Table [[AS] Local_Alias] [ON JoinCondition …] [[INTO Destination] | [TO FILE FileName [ADDITIVE] | TO PRINTER [PROMPT] | TO SCREEN]] [PREFERENCE PreferenceName] [NOCONSOLE] [PLAIN] [NOWAIT] [WHERE JoinCondition [AND JoinCondition ...] [AND | OR FilterCondition [AND | OR FilterCondition ...]]] [GROUP BY GroupColumn [, GroupColumn ...]] [HAVING FilterCondition] [UNION [ALL] SELECTCommand] [ORDER BY Order_Item [ASC | DESC] [, Order_Item [ASC | DESC] ...]]

Parámetros

SELECT Especifica los campos, constantes y expresiones que se mostrarán en el resultado de la consulta. ALL De forma predeterminada, se muestran todas las filas fil as del resultado de la consulta. DISTINCT Excluye duplicados de cualquier fila del resultado de la consulta. Nota Puede utilizar utilizar DISTINCT únicamente una vez por cada cada cláusula cláusula SELECT. TOP nExpr  [PERCENT]  [PERCENT] Especifica que el resultado de la consulta contenga un número determinado de filas o un porcentaje de filas en el resultado de la consulta. Es necesario incluir una cláusula ORDER BY si incluye la cláusula TOP. La cláusula ORDER BY especifica las columnas en las que la cláusula TOP determinará el número de filas que se va a incluir en el resultado r esultado de la consulta. Puede especificar desde 1 a 32.767 filas. Las filas de valores idénticos para las columnas especificadas en la cláusula ORDER BY se incluyen en el resultado de la consulta. Por lo tanto, si especifica 10 para nExpr , el resultado de la consulta podrá obtener más de 10 filas, si hay más de 10 filas con valores idénticos para las columnas especificadas en la cláusula ORDER BY. Si se incluye la palabra clave PERCENT, se redondeará al número entero más alto el número de columnas devuelto en el resultado. Los valores permitidos para nExpr  cuando  cuando se incluye la palabra clave PERCENT son de 0,01 a 99,99.  Alias.  Alias. Califica nombres de elementos coincidentes. Cada elemento que especifique con Select_Item genera Select_Item genera una columna de los resultados de la consulta. Si dos o más elementos tienen el mismo nombre, incluya

el alias de la tabla y un punto antes del nombre del elemento para impedir la duplicación de las columnas. Select_Item especifica un elemento que se incluirá en el resultado de la consulta. Un elemento puede ser uno de los siguientes: El nombre de un campo de una tabla de la cláusula FROM. Una constante, especificando que el mismo valor constante debe aparecer en cada fila del resultado de la consulta. Una expresión que puede ser el nombre de una función definida por el usuario (FDU).  



AS Column_Name Especifica el título de una columna en el resultado de la consulta. Esta opción resulta muy útil cuando Select_Item es una expresión o contiene una función de campo y desea dar un nombre significativo a la columna. Column_Name puede ser una expresión, pero no puede contener caracteres (por ejemplo, espacios) que no estén permitidos para nombres de campos de tablas. FROM Indica las tablas que contienen los datos que ha obtenido la consulta. Si no hay ninguna tabla abierta, Visual FoxPro muestra el cuadro de diálogo Abrir, donde puede especificar la ubicación del archivo. Una vez abierta, la tabla permanece abierta cuando finaliza la consulta. FORCE especifica que las tablas se combinen en el orden de aparición en la cláusula FROM. Si se omite FORCE, Visual FoxPro intentará optimizar la consulta. Sin embargo, es posible que la consulta se ejecute más rápido si se incluye la palabra clave FORCE para desactivar la optimización de consultas de Visual FoxPro.  DatabaseName! Especifica el nombre de una base de datos inactiva que contiene la tabla. Es necesario incluir el nombre de la base de datos que contiene la tabla en caso de que no sea la base de datos activa. Incluya el delimitador signo de exclamación (!) después del nombre de la base de datos y antes del nombre de la tabla. [AS] Local_Alias Especifica un nombre temporal para la tabla indicada en Table. Si especifica un alias local, debe utilizar el alias local en lugar del nombre de la tabla en toda la instrucción SELECT. INNER JOIN especifica que el resultado de la consulta contenga sólo filas en una tabla con la que coincidan una o varias filas de otra tabla. LEFT [OUTER] JOIN especifica que el resultado de la consulta contenga todas las filas de la tabla a la izquierda de la palabra clave JOIN y sólo las filas que coincidan procedentes de la tabla a la derecha de la palabra clave JOIN. La palabra clave OUTER es opcional; se puede incluir  para resaltar que se ha creado una combinación externa. RIGHT [OUTER] JOIN especifica que el resultado de la consulta contenga todas las filas de la tabla a la derecha de la palabra clave JOIN y sólo las filas que coincidan de la tabla a la izquierda de la palabra clave JOIN. La palabra clave OUTER es opcional; se puede incluir para resaltar que se ha creado una combinación externa. FULL [OUTER] JOIN especifica que el resultado de la consulta contenga todas las filas, coincidan o no, de ambas tablas. La palabra clave OUTER es opcional; se puede incluir para resaltar que se ha creado una combinación externa. ON Join Condition especifica las condiciones según las cuales se combinan las tablas. INTO Destination Determina donde se almacenan los resultados de la consulta. Si incluye una cláusula INTO y una cláusula TO en la misma consulta, la cláusula TO se pasará por alto. Si no incluye la cláusula INTO, los resultados de la consulta se mostrarán en la ventana Examinar. Los resultados de la consulta  pueden dirigirse también a la impresora o a un archivo con la cláusula TO.  Destination puede ser uno de los siguientes:

ARRAY ArrayName, que almacena los resultados de la consulta en una matriz de variable de memoria. Si la consulta selecciona 0 registros, la matriz no se creará. CURSOR CursorName [NOFILTER | READWRITE], que almacena los resultados de una consulta en un cursor. Si especifica el nombre de una tabla abierta, Visual FoxPro generará un mensaje de error. Después de ejecutar SELECT, el cursor temporal permanecerá abierto y estará activo y será de sólo lectura a menos que se especifique la opción READWRITE. Cuando cierre este cursor temporal, se borrará. Los cursores pueden existir como un archivo temporal en la unidad SORTWORK. Incluya NOFILTER para crear un cursor que se pueda usar en consultas posteriores. En versiones anteriores de Visual FoxPro, era necesario incluir una expresión o una constante adicional como un filtro para crear un cursor utilizable en consultas posteriores. Por ejemplo, la adición de un valor lógico verdadero como una expresión de filtro creaba una consulta que podía utilizarse en consultas  posteriores: 



SELECT *, .T. FROM customers INTO CURSOR myquery

Si se incluye NOFILTER, es posible que disminuya el rendimiento de la consulta, puesto que se crea una tabla temporal en el disco. Cuando se cierre el cursor se eliminará del disco la tabla temporal. La cláusula READWRITE especifica que el cursor es temporal y se puede modificar. DBF | TABLE TableName[DATABASE DatabaseName [NAME LongTableName]] almacena los resultados de una consulta en una tabla. Si especifica una tabla que ya esté abierta y SET SAFETY está en OFF, Visual FoxPro sobrescribirá la tabla sin previo aviso. Si no ha especificado ninguna extensión, Visual FoxPro asignará la extensión .DBF a la tabla. La tabla permanecerá abierta y activa después de ejecutar SELECT. Incluya DATABASE DatabaseName para especificar una base de datos a la que se agregará la tabla. Incluya NAME LongTableName para especificar un nombre largo para la tabla. Los nombres largos  pueden contener un máximo de 128 caracteres y se pueden utilizar en lugar de nombres de archivo cortos en la base de datos. 

TO FILE FileName Si incluye una cláusula TO pero no una cláusula INTO, puede dirigir el resultado de la consulta a un archivo de texto ASCII llamado FileName, a la impresora o a la ventana principal de Visual FoxPro. ADDITIVE anexa los resultados de la consulta al contenido existente del archivo de texto especificado en TO FILE FileName. TO PRINTER [PROMPT] dirige los resultados de la consulta a una impresora. Utilice la cláusula PROMPT opcional para mostrar un cuadro de diálogo antes de que empiece la impresión. En este cuadro de diálogo puede modificar la configuración de la impresora. Las opciones de configuración de la impresora que puede ajustar dependen del controlador de impresora que tenga instalado actualmente. Coloque PROMPT justo después de TO PRINTER. TO SCREEN dirige los resultados de la consulta a la ventana principal de Visual FoxPro o a una ventana activa definida por el usuario. PREFERENCE PreferenceName Si el resultado de una consulta se envía a una ventana Examinar, guarda los atributos y opciones de la ventana Examinar para utilizarlos después. PREFERENCE guarda los atributos, o preferencias, por tiempo indefinido en el archivo de recursos FOXUSER. Las preferencias se pueden recuperar en cualquier momento. Ejecutando SELECT con PREFERENCE PreferenceName por primera vez, se crea la preferencia. Ejecutando posteriormente SELECT con el mismo nombre de preferencia, se restaura la ventana Examinar con el mismo estado de preferencia. Cuando se cierre la ventana Examinar, se actualiza la  preferencia. Si sale de una ventana Examinar presionando CTRL+Q+W, no se guardarán los cambios de la ventana Examinar en el archivo de recursos.  NOCONSOLE Impide que el resultado de la consulta se envíe a un archivo, a la impresora o a la ventana principal de Visual FoxPro.

PLAIN Impide que aparezcan los encabezados de las columnas al mostrar los resultados de la consulta. PLAIN  puede utilizarse tanto si está presente una cláusula TO como si no. Si se incluye una cláusula TO, se  pasará por alto PLAIN.  NOWAIT Continúa la ejecución del programa después de abrir la ventana Examinar y de dirigir a ella los resultados de la consulta. El programa no esperará a que la ventana Examinar se cierre, sino que continuará con la ejecución de la línea de programa inmediatamente siguiente a la instrucción SELECT. Cuando se incluye TO SCREEN para dirigir los resultados hacia la ventana principal de Visual FoxPro o una ventana definida por el usuario, los resultados se detienen cuando la ventana principal de Visual FoxPro o la ventana definida por el usuario se llena con resultados de la consulta. Presione una tecla para ver el siguiente conjunto de resultados de la consulta. Si se incluye NOWAIT, los resultados de la consulta se desplazarán fuera de la ventana principal de Visual FoxPro o de la ventana definida por el usuario sin esperar a que se presione una tecla. NOWAIT se pasa por alto si se incluye con la cláusula INTO. WHERE Especifica que Visual FoxPro sólo debe incluir en los resultados de la consulta los registros que satisfagan los criterios especificados.  JoinCondition Especifica los campos que vinculan las tablas en la cláusula FROM. Si incluye más de una tabla en una consulta, deberá especificar una condición de combinación para cada tabla después de la primera. Las condiciones de combinación múltiples deben conectarse mediante el operador AND. Cada condición de combinación tiene la forma siguiente: FieldName1 Comparison FieldName2  FieldName1 es el nombre de un campo de una tabla,  FieldName2 es el nombre de un campo de otra tabla y Comparison es uno de los operadores siguientes: Operador

Comparación

= Igual == Exactamente igual LIKE SQL LIKE , !=, # Distinto de > Mayor que >= Mayor o igual que < Menor que = 1000

Ejemplo 3

En el ejemplo 3 se muestra FilterCondition como FieldName Comparison ALL (Subquery) Cuando la condición de filtro incluye ALL, el campo debe cumplir la condición de comparación para todos los valores generados por la subconsulta antes de que se incluya el registro en el resultado de la consulta. company < ALL ; (SELECT company FROM customer WHERE country = "UK")

Ejemplo 4

En el ejemplo 4 se muestra FilterCondition como FieldName Comparison ANY | SOME (Subquery) Cuando la condición de filtro incluye ANY o SOME, el campo debe cumplir la condición de comparación en al menos uno de los valores generados por la subconsulta. company < ANY ; (SELECT company FROM customer WHERE country = "UK")

En el ejemplo 5 se muestra FilterCondition como FieldName [NOT] BETWEEN Start_Range AND  End_Range Este ejemplo comprueba si los valores del campo están dentro de un intervalo de valores especificado. customer.postalcode BETWEEN 90000 AND 99999

Ejemplo 6

En el ejemplo 6 se muestra FilterCondition como [NOT] EXISTS (Subquery) Este ejemplo comprueba si al menos una línea cumple los criterios de la subconsulta. Cuando la condición de filtro incluye EXISTS, la condición de filtro se evalúa como verdadero (.T.) a no ser que la subconsulta sea un conjunto vacío. EXISTS ; (SELECT * FROM orders WHERE customer.postalcode =

orders.postalcode)

Ejemplo 7

En el ejemplo 7 se muestra FilterCondition como FieldName [NOT] IN Value_Set  Cuando una condición de filtro incluye IN, el campo debe contener uno de los valores antes de que el registro se incluya en los resultados de la consulta. customer.postalcode NOT IN ("98052","98072","98034")

Ejemplo 8

En el ejemplo 8 se muestra FilterCondition como FieldName [NOT] IN (Subquery) Aquí, el campo debe contener uno de los valores devueltos por la subconsulta antes de que su registro se incluya en los resultados de la consulta. customer.cust_id IN ;

(SELECT orders.cust_id FROM orders WHERE orders.city="Seattle")

Ejemplo 9

En el ejemplo 9 se muestra FilterCondition como FieldName [NOT] LIKE cExpression customer.country NOT LIKE "UK"

Esta condición de filtro busca cada uno de los campos que coinciden con cExpression. Puede utilizar el signo de porcentaje (%) y subrayado ( _ ) como parte de cExpression. El signo de  porcentaje representa a cualquier secuencia de caracteres desconocidos en la cadena. El subrayado representa un solo carácter desconocido en la cadena. GROUP BY GroupColumn [, GroupColumn ...] Agrupa las filas de la consulta basándose en los valores de una o más columnas. GroupColumn  puede ser el nombre de un campo normal de una tabla, o un campo que incluya una función de campo SQL o una expresión numérica que indique la posición de la columna en la tabla de resultados (la columna más a la izquierda tiene el número 1). HAVING FilterCondition Especifica una condición de filtro que los grupos deben satisfacer para quedar incluidos en el resultado de la consulta. HAVING debe utilizarse con GROUP BY. Puede incluir tantas condiciones de filtro como desee, conectadas con los operadores AND u OR. También puede utilizar NOT para invertir el valor de una expresión lógica.  FilterCondition no puede contener una subconsulta. Una cláusula HAVING sin una cláusula GROUP BY actúa como una cláusula WHERE. Puede utilizar alias locales y funciones de campo en la cláusula HAVING. Utilice una cláusula WHERE  para acelerar el rendimiento si la cláusula HAVING no contiene funciones de campo. No olvide que la cláusula HAVING debería de aparecer antes de una cláusula INTO porque de lo contrario se producirá un error de sintaxis. [UNION [ALL] SELECTCommand ] Combina el resultado final de un SELECT con el resultado final de otro SELECT. De forma  predeterminada, UNION comprueba el resultado combinado y elimina las filas duplicadas. Puede utilizar paréntesis para combinar varias cláusulas UNION. ALL impide que UNION elimine filas duplicadas de los resultados combinados. Las cláusulas UNION siguen las reglas siguientes:  No puede utilizar UNION para combinar subconsultas. Los resultados de ambos SELECT deben tener el mismo número de columnas. Cada columna de resultados de la consulta de un SELECT debe tener el mismo tipo de datos y ancho que su columna correspondiente en el otro SELECT. Únicamente el SELECT final puede tener una cláusula ORDER BY, que debe referirse a las columnas de resultados por su 







número. Si se incluye otra cláusula ORDER BY, afectará al resultado completo. También puede utilizar la cláusula UNION para simular una combinación externa. Al combinar dos tablas en una consulta, sólo se incluirán en los resultados los registros que tengan valores coincidentes en los campos combinados. Si un registro de la tabla primaria no tiene un registro correspondiente en la tabla secundaria, no se incluirá en los resultados. Una combinación externa  permite incluir todos los registros de la tabla  primaria en los resultados, junto con los registros coincidentes de la tabla secundaria. Para crear una combinación externa en Visual FoxPro, debe utilizar un comando SELECT anidado, como en el siguiente ejemplo: SELECT customer.company, orders.order_id, orders.emp_id ; FROM customer, orders ; WHERE customer.cust_id = orders.cust_id ; UNION ; SELECT customer.company, 0, 0 ; FROM customer ; WHERE customer.cust_id NOT IN ; (SELECT orders.cust_id FROM orders)

Asegúrese de incluir el espacio que  precede a cada punto y coma. Si no lo hace así; se producirá un error. La sección del comando anterior a la cláusula UNION selecciona registros de las dos tablas que tengan valores coincidentes. No se incluirán las compañías de clientes que no tengan facturas asociadas. La sección del comando situada después de la cláusula UNION selecciona registros de la tabla de clientes que no tengan registros coincidentes en la tabla de pedidos. En cuanto a la segunda sección del comando, tenga en cuenta lo siguiente: Se procesará primero la instrucción SELECT escrita entre paréntesis. Esta instrucción realiza una selección de todos los números de cliente de la tabla de  pedidos. La cláusula WHERE busca todos los números de cliente de la tabla de clientes que no estén en la tabla de pedidos. Como la  primera sección del comando proporcionaba todas las compañías que tuvieran un número de cliente en la tabla de pedidos, ahora se incluirán en el resultado de la consulta todas las compañías de la tabla de clientes. Como las estructuras de las tablas incluidas en una cláusula UNION deben ser idénticas, hay dos marcadores en la segunda instrucción SELECT para representar los  parámetros orders.order_id  y Nota







orders.emp_id  de la primera instrucción SELECT. Nota Los marcadores deben tener el mismo tipo que los campos que representan. Si el campo es un tipo de datos, el marcador debe ser { / / }. Si el campo es un tipo Character, el marcador debe ser la cadena vacía (""). En determinadas circunstancias puede  producirse una transformación de datos automática, como en los dos ejemplos siguientes: CREATE CREATE SELECT SELECT

CURSOR table1 (field1 c(1)) CURSOR table2 (field1 c(2)) field1 FROM table1 UNION NVL(field1,' ') FROM table2

CREATE CURSOR n(20,5)) CREATE CURSOR SELECT field1 SELECT field1

ORDER BY Order_Item

table1 (field1 table2 (field1 i) FROM table1 UNION FROM table2

Ordena el resultado de la consulta basándose en los datos de una o varias columnas. Cada Order_Item debe corresponder a una columna de resultados de la consulta y puede ser uno de los siguientes: Un campo de una tabla FROM que también es un elemento de selección en la cláusula  principal SELECT (no en una subconsulta). Una expresión numérica que indica la ubicación de la columna en la tabla de resultados. (La columna de la izquierda es la número 1.) ASC especifica un orden ascendente para los resultados de la consulta, de acuerdo con el elemento o los elementos de orden, y es el valor  predeterminado para ORDER BY. DESC especifica un orden descendente para los resultados de la consulta. Los resultados de la consulta aparecerán desordenados si no especifica un orden con ORDER BY. 



Observaciones

SELECT es un comando SQL incorporado en Visual FoxPro como cualquier otro comando de Visual FoxPro. Cuando utiliza SELECT para componer una consulta, Visual FoxPro interpreta la consulta y recupera los datos especificados de las tablas. Puede crear una consulta SELECT: En la ventana Comandos En un programa de Visual FoxPro (como cualquier otro comando de Visual FoxPro) En el Diseñador de consultas Cuando ejecuta SET TALK ON y ejecuta SELECT, Visual FoxPro muestra la duración de la consulta y el número de registros del resultado. _TALLY contiene el número de registros del resultado de la consulta. SELECT no respeta la condición de filtro actual especificada con SET FILTER. Nota  Una subconsulta, a la que se hace referencia en los argumentos siguientes, es un comando SELECT dentro de otro SELECT y debe incluirse entre paréntesis. Puede tener hasta dos subconsultas 





al mismo nivel (no anidadas) en la cláusula WHERE (consulte esta sección de los argumentos). Las subconsultas pueden contener condiciones de combinación múltiples. Cuando se obtiene el resultado de una consulta, las columnas se denominan según las siguientes reglas: Si un elemento seleccionado es un campo con un nombre único, el nombre de la columna de resultados es el nombre del campo. Si hay más de un elemento seleccionado con el mismo nombre, se anexarán un signo de subrayado y una letra al nombre de la columna. Por ejemplo, si una tabla llamada Customer tiene un campo llamado STREET, y una tabla llamada Employees también tiene un campo llamado STREET, las columnas de resultado se llamarán Extension _A y Extension _B (STREET_A y STREET_B). En el caso de un elemento seleccionado con un nombre de 10 caracteres, se truncará el nombre para agregar el símbolo de subrayado y la letra. Por ejemplo, DEPARTMENT se convertiría en DEPARTME_A. Si un elemento seleccionado es una expresión, su columna de resultado se llamará EXP_A. Cualquier otra expresión recibirá el nombre de EXP_B, EXP_C, y así sucesivamente. Si un elemento seleccionado contiene una función de campo como, por ejemplo, COUNT( ), la columna de resultado se llamará CNT_A. Si otro elemento seleccionado contiene SUM( ), su columna de resultado se llamará SUM_B. Funciones definidas por el usuario con SELECT Aunque la utilización de funciones definidas por el usuario en la cláusula SELECT ofrece unas ventajas evidentes, también debería tener en cuenta las siguientes limitaciones: Es posible que la velocidad de las operaciones con SELECT se vea limitada por la velocidad a la que se ejecutan las funciones definidas por el usuario. Las manipulaciones de un gran volumen que impliquen funciones definidas por el usuario se pueden realizar mejor utilizando funciones API y funciones definidas por el usuario escritas en C o en lenguaje ensamblador.  No se puede suponer nada acerca de la entrada/salida (E/S) de Visual FoxPro ni del entorno de la tabla en funciones definidas por el usuario invocadas a partir de SELECT. Generalmente no se  puede saber qué área de trabajo se ha seleccionado, el nombre de la tabla actual, ni los nombres de los campos que se están procesando. El valor de estas variables depende del lugar específico, en el  proceso de optimización, en el que se invoque la función definida por el usuario. En funciones definidas por el usuario invocadas desde SELECT, no es seguro cambiar la E/S de Visual FoxPro ni el entorno de la tabla. En general, los resultados son impredecibles. La única forma segura de pasar valores a funciones definidas por el usuario invocadas desde SELECT es por medio de la lista de argumentos pasada a la función al invocarla. Si prueba y descubre una manipulación teóricamente prohibida que funciona correctamente en una versión determinada de FoxPro, eso no significa que también funcione en versiones posteriores. Fuera de estas limitaciones, las funciones definidas por el usuario son aceptables en la cláusula SELECT. Sin embargo, recuerde que la utilización de SELECT puede reducir el rendimiento. Las siguientes funciones de campo están disponibles para ser utilizadas con un elemento seleccionado que sea un campo o una expresión que incluya a un campo: AVG(Select_Item), que promedia una columna de datos numéricos. COUNT(Select_Item), que cuenta el número de elementos seleccionados en una columna. COUNT(*) cuenta el número de filas en el resultado de la consulta. MIN(Select_Item), que determina el menor valor de Select_Item en una columna. MAX(Select_Item), que determina el mayor valor de Select_Item en una columna. SUM(Select_Item), que proporciona el total de la suma de una columna de datos numéricos.  No se pueden anidar las funciones de campo. Combinaciones Visual FoxPro admite sintaxis de combinación de 1992 SQL ANSI, lo que le  permite crear consultas que vinculen las filas en dos o más tablas mediante la comparación de los valores de campos especificados. Por ejemplo, una combinación interna selecciona filas procedentes de dos tablas sólo cuando los valores de los campos combinados son iguales. Visual FoxPro admite combinaciones anidadas. Como SQL está basado en la teoría matemática de conjuntos, cada tabla se puede representar como un círculo. La cláusula ON que especifica las condiciones de la combinación determina el punto de intersección, que representa el conjunto de filas que coinciden. En el caso de una combinación interna, 

















 

  

la intersección tendrá lugar en el interior o en una parte “interna” de los dos círculos. Una combinación

externa incluye tanto las filas coincidentes que se han encontrado en la sección de intersección interna

de las tablas, como las filas de la parte externa del círculo, a la izquierda o a la derecha de la intersección. Nota Tenga presente la siguiente información a la hora de crear condiciones de combinación: Si incluye dos tablas en una consulta y no especifica una condición de combinación, cada registro de la primera tabla se combinará con cada registro de la segunda tabla mientras se cumplan las condiciones del filtro. Una consulta de este tipo puede producir unos resultados muy largos. Sea prudente al utilizar, en condiciones de combinación, funciones como DELETED( ), EOF( ), FOUND( ), RECCOUNT( ) y RECNO( ), que aceptan un área de trabajo o un alias opcional. La inclusión de un alias o de un área de trabajo en estas funciones puede producir resultados inesperados. SELECT no utiliza sus áreas de trabajo; realiza lo mismo que USE ... AGAIN. Las consultas de una sola tabla que utilizan estas funciones sin un área de trabajo o un alias opcional, devolverán resultados correctos. De todas formas, las consultas de varias tablas que utilicen dichas funciones (incluso sin un área de trabajo o un alias opcional) pueden devolver resultados inesperados. Tenga cuidado al combinar tablas que contengan campos vacíos, ya que Visual FoxPro establece coincidencias entre los campos vacíos. Por ejemplo, si combina CUSTOMER.ZIP e INVOICE.ZIP, y CUSTOMER contiene 100 códigos postales vacíos e INVOICE contiene 400 códigos postales vacíos, el resultado de la consulta contendrá 40.000 registros más, como resultado de los campos vacíos. Use la función EMPTY( ) para eliminar los registros vacíos del resultado de la consulta. El número de combinaciones que puede utilizar está limitado. Por cada instrucción Select se admiten nueve combinaciones como máximo. Si se incluye la función EVALUATE( ) en la cláusula WHERE de una consulta SQL, podrían devolverse datos incorrectos. Para obtener información adicional acerca de las combinaciones, vea Definir múltiples condiciones de combinación en Crear vistas. 







Ejemplos

Los siguientes ejemplos ilustran la utilización de las funciones definidas por el usuario con SELECT SQL: Ejemplo 1

En el ejemplo 1 se muestran los nombres de todas las compañías en tabla). Copiar 

customer (un campo de una

CLOSE ALL CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') SELECT customer.company ; FROM customer

Ejemplo 2

El ejemplo 2 muestra el contenido de tres campos de dos tablas y combina las dos tablas basándose en el campo cust_id. Utiliza alias locales para ambas tablas. Copiar  CLOSE ALL CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') SELECT x.company, y.order_date, y.shipped_on ; FROM customer x, orders y ; WHERE x.cust_id = y.cust_id

Ejemplo 3

El ejemplo 3 muestra únicamente registros con datos únicos en los campos especificados. Copiar  CLOSE ALL CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') SELECT DISTINCT x.company, y.order_date, y.shipped_on ; FROM customer x, orders y ; WHERE x.cust_id = y.cust_id

Ejemplo 4

El ejemplo 4 muestra los campos country, postalcode y company en orden ascendente. Copiar 

CLOSE ALL CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') SELECT country, postalcode, company ; FROM customer ; ORDER BY country, postalcode, company

Ejemplo 5

El ejemplo 5 almacena el contenido de los campos de dos tablas en una tercera tabla. Copiar  CLOSE ALL CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') SELECT x.company, y.order_date, y.shipped_on ; FROM customer x, orders y ; WHERE x.cust_id = y.cust_id ; INTO TABLE custship.dbf BROWSE

Ejemplo 6

El ejemplo 6 muestra únicamente los registros con una fecha de pedido anterior al 16/02/1994. Copiar  CLOSE ALL CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') SELECT x.company, y.order_date, y.shipped_on ; FROM customer x, orders y ; WHERE x.cust_id = y.cust_id ; AND y.order_date < {^1994-02-16}

Ejemplo 7

El ejemplo 7 muestra los nombres de todas las compañías de coincida con el código postal de la tabla orders. Copiar 

customer con un

código postal que

CLOSE ALL CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') SELECT company FROM customer x WHERE ; EXISTS (SELECT * FROM orders y WHERE x.postalcode = y.postalcode)

Ejemplo 8

El ejemplo 8 muestra todos los registros de customer que tengan un nombre de compañía que comience por una C mayúscula y tenga cualquier longitud. Copiar  CLOSE ALL CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') SELECT * FROM customer x WHERE x.company LIKE "C%"

Ejemplo 9

El ejemplo 9 muestra todos los registros de customer que tengan un nombre de país que comience por U mayúscula seguido de un carácter desconocido. Copiar  CLOSE ALL CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') SELECT * FROM customer x WHERE x.country LIKE "U_"

Ejemplo 10

El ejemplo 10 muestra los nombres de todas las ciudades de CityList a la columna de resultados. Copiar  CLOSE ALL CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') SELECT UPPER(city) AS CityList FROM customer

Ejemplo 11

customer en

mayúsculas y llama

El ejemplo 11 muestra cómo se puede realizar una consulta de datos que contengan signos de  porcentaje (%). Se colocará una barra inversa (\) antes del signo de porcentaje para indicar que debe ser tratado como un literal, y la barra inversa se especifica como el carácter de escape en la cláusula ESCAPE. Dado que las tablas de ejemplo incluidas con Visual FoxPro no contienen el carácter de signo de  porcentaje, esta consulta no devolverá ningún resultado. Copiar  CLOSE ALL CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') SELECT * FROM customer; WHERE company LIKE "%\%%" ESCAPE "\"

Ejemplo 12

En el ejemplo 12 se muestra cómo se puede realizar una consulta de datos que contenga signos de subrayado (_). Se coloca una barra inversa (\) antes del signo de subrayado para indicar que debe ser tratado como un literal, y se especifica la barra inversa como el carácter de escape en la cláusula ESCAPE. Dado que las tablas de ejemplo incluidas con Visual FoxPro no contienen el carácter de subrayado, esta consulta no devolverá ningún resultado. Copiar  CLOSE ALL CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') SELECT * FROM customer; WHERE company LIKE "%\_%" ESCAPE "\"

Ejemplo 13

En el ejemplo 13, el carácter Escape se utiliza como un literal. El guión es tanto el carácter escape como un literal. La consulta devuelve todas las filas en las que el nombre de la organización contiene un signo de porcentaje seguido de un guión. Dado que las tablas de ejemplo incluidas con Visual FoxPro no contienen el carácter de signo de  porcentaje, esta consulta no devolverá ningún resultado. Copiar  CLOSE ALL CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') SELECT * FROM customer; WHERE company LIKE "%-%--%" Escape "-"

RECALL (Comando) Visual Studio .NET 2003

Personas que lo han encontrado útil: 1 de 2 - Valorar este tema Quita la marca de los registros marcados para eliminación en la tabla seleccionada. Copiar  RECALL [Scope] [FOR lExpression1] [WHILE lExpression2] [NOOPTIMIZE] [IN nWorkArea | cTableAlias]

Parámetros

Scope Especifica un intervalo de registros para recuperar. Solamente se recuperan los registros incluidos en el intervalo especificado. Las cláusulas de alcance son: ALL, NEXT nRecords, RECORD nRecordNumber  y REST. Para obtener más información acerca de las cláusulas de alcance, vea los temas en pantalla Cláusulas de alcance e Introducción al lenguaje. El alcance predeterminado de RECALL es el registro actual (NEXT 1). FOR lExpression1

Especifica que sólo se recuperarán los registros  para los que el valor de lExpression1 sea verdadero (.T.). Esta opción permite filtrar los registros no deseados. Si lExpression1 es una expresión optimizable, Rushmore optimizará RECALL FOR. Para obtener el máximo rendimiento, utilice una expresión optimizable en la cláusula FOR. Para obtener más información, vea SET OPTIMIZE y Utilizar Rushmore para agilizar el acceso a datos. WHILE lExpression2 Especifica una condición por la cual se recuperan los registros siempre y cuando la expresión lExpression2 dé como resultado verdadero (.T.).  NOOPTIMIZE Impide la optimización Rushmore de RECALL. Para obtener más información, vea SET OPTIMIZE y Utilizar Rushmore para agilizar el acceso a datos. IN nWorkArea | cTableAlias Especifica el área de trabajo o el alias de tabla afectado por el comando RECALL. Utilice esta cláusula para especificar un área de trabajo o una tabla fuera del área de trabajo actual. Observaciones

RECALL puede utilizarse para recuperar registros, siempre y cuando no se haya ejecutado PACK o ZAP. Precaución Una vez empaquetado el archivo, todos los registros marcados para eliminación se  pierden para siempre. Puede marcar registros para eliminarlos con los comandos DELETE o DELETE  –  SQL, o si elige Eliminar registros en el menú Tabla cuando haya una ventana Examinar o de edición activa. Puede recuperar registros si ejecuta RECALL o elige Desmarcar registros en el menú Registro cuando hay una ventana Examinar o Editar activa. Si omite la cláusula IN, el comando RECALL actuará en el área de trabajo actual. Ejemplo

El ejemplo siguiente abre la tabla customer de la base de datos testdata. DELETE –  SQL se utiliza  para marcar todos los registros donde el campo country contenga USA para su eliminación. Se muestran todos los registros marcados para ser eliminados. Se usa RECALL ALL para quitar las marcas de todos los registros marcados para eliminar. Copiar  CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') USE customer && Opens Customer table DELETE FROM customer WHERE country = 'USA' && Mark for deletion CLEAR LIST FIELDS company, country FOR DELETED( ) && List marked records RECALL ALL && Unmark all records marked for deletion

QUIT (Comando) Visual Studio .NET 2003

Personas que lo han encontrado útil: 1 de 1 - Valorar este tema Termina la sesión actual de Visual FoxPro y devuelve el control al sistema operativo. Copiar  QUIT

Observaciones

Para finalizar una sesión de Visual FoxPro, debe utilizar siempre el comando QUIT. Si apaga el equipo sin ejecutar QUIT, se pueden dañar los archivos abiertos y perder datos. Además, puede dejar en el disco archivos temporales de trabajo que normalmente se eliminarían.

PACK (Comando) Visual Studio .NET 2003

Personas que lo han encontrado útil: 4 de 7 - Valorar este tema Borra definitivamente todos los registros marcados para eliminar de la tabla actual y reduce el tamaño de un archivo memo asociado a la tabla. Copiar  PACK [MEMO] [DBF] [Tablename ] [IN nWorkarea | cTableAlias]

Parámetros

MEMO Elimina el espacio no utilizado del archivo memo,  pero no elimina los registros marcados para eliminar de la tabla. La información de los campos memo se almacena en un archivo memo asociado. Un archivo memo tiene el mismo nombre que la tabla y la extensión .fpt. DBF Elimina de la tabla los registros marcados para eliminación, pero no afecta al archivo memo. Tablename Especifica la tabla que se va a empaquetar. Visual FoxPro abre la tabla especificada, la empaqueta y la cierra. IN nÁreaTrabajo | cAliasTabla Especifica el área de trabajo o el alias de tabla afectados por el comando PACK. Utilice esta cláusula para especificar un área de trabajo o una tabla fuera del área de trabajo actual. Observaciones

Cuando se ejecuta PACK, Microsoft Visual FoxPro copia todos los registros que no están marcados  para borrar a una tabla temporal. Cuando se termine de ejecutar PACK, Visual FoxPro eliminará la tabla original del disco y cambiará el nombre de la tabla temporal por el nombre de la tabla original. Al  presionar ESC se detiene PACK, la tabla temporal se borra y la tabla original permanece inalterada. La tabla original se recuperará también si se agota el espacio del disco durante la ejecución de PACK. Cuando se ejecuta PACK sin las cláusulas MEMO y DBF, se empaquetan tanto la tabla como el archivo memo. PACK necesita utilizar la tabla de forma exclusiva. Para obtener más información acerca de cómo abrir una tabla en red de forma exclusiva, vea SET EXCLUSIVE. Si la tabla activa tiene uno o varios índices abiertos, PACK regenera los archivos de índice. Precaución Tenga cuidado de marcar solamente los registros que ya no va a necesitar. No hay ninguna forma de recuperar los registros eliminados después de utilizar PACK. Si se omite la cláusula IN, PACK actuará en el área de trabajo actual.

DELETE (Comando) Visual Studio .NET 2003

Personas que lo han encontrado útil: 3 de 7 - Valorar este tema Marca los registros que se van a eliminar. Copiar  DELETE [Scope] [FOR lExpression1] [WHILE lExpression2] [IN nWorkArea | cTableAlias] [NOOPTIMIZE]

Parámetros

Scope

Especifica un intervalo de registros que desea marcar para su eliminación. Las cláusulas de alcance son: ALL, NEXT nRecords, RECORD nRecordNumber y REST. Para obtener más información acerca de las cláusulas de alcance, vea el tema Cláusulas de alcance. Para obtener más información acerca de las cláusulas de alcance, vea el tema Introducción al lenguaje. El alcance predeterminado para el comando DELETE es el registro actual (NEXT 1). FOR lExpression1 Especifica una condición por la cual solamente se marcan para su eliminación los registros que satisfacen la condición lógica lExpression1. Rushmore optimizará una consulta creada con DELETE ... FOR si lExpression1 es una expresión optimizable y la tabla está indizada por DELETED( ). Para obtener el máximo rendimiento, utilice una expresión optimizable en la cláusula FOR. Si desea obtener más información acerca de las expresiones optimizables con Rushmore, vea SET OPTIMIZE y Usar Rushmore para agilizar el acceso a los datos en Optimizar aplicaciones. WHILE lExpression2 Especifica una condición por la cual los registros se marcan para su eliminación siempre y cuando lExpression2 dé como resultado verdadero (.T.). IN nWorkArea Especifica el área de trabajo de la tabla en la cual se marcan los registros para su eliminación. IN cTableAlias Especifica el alias de la tabla en la cual se marcan los registros para su eliminación. Si omite nWorkArea y cTableAlias, los registros se marcarán para su eliminación en la tabla del área de trabajo seleccionada actualmente.  NOOPTIMIZE Desactiva la optimización Rushmore de DELETE. Observaciones

Los registros marcados para su eliminación no se eliminarán físicamente de la tabla hasta que se ejecute PACK. Los registros marcados para su eliminación pueden recuperarse (o quitar las marcas) con RECALL. Ejemplo

El ejemplo siguiente abre la tabla customer de la base de datos testdata. Se utiliza DELETE para marcar para eliminación todos los registros en los que el campo country contenga USA. Se muestran todos los registros marcados para ser eliminados. Se utiliza RECALL ALL para quitar las marcas de todos los registros marcados para eliminar. Copiar  CLOSE DATABASES OPEN DATABASE (HOME(2) + 'Data\testdata') USE customer && Opens Customer table DELETE FOR country = 'USA' CLEAR

&& Mark for deletion

LIST FIELDS company, country FOR DELETED( ) && List marked records RECALL ALL && Unmark all records marked for deletion

CREATE (Comando) Visual Studio .NET 2003

Personas que lo han encontrado útil: 1 de 4 - Valorar este tema Crea una nueva tabla de Visual FoxPro. Copiar  CREATE [FileName | ?]

Parámetros

 FileName Especifica el nombre de la tabla que desea crear. ? Presenta el cuadro de diálogo Crear, que le pide el nombre para la tabla que se va a crear. Observaciones

En Visual FoxPro, si hay una base de datos abierta cuando usted crea una tabla, dicha tabla se agregará automáticamente a la base de datos. En el sistema operativo de Windows, no puede crear una tabla con el nombre de un dispositivo de MSDOS, como CON, NUL, PRN y COM1. Debe evitar la utilización de guiones en el nombre de una tabla porque los nombres de tabla con guiones no aparecen en la ventana Sesión de datos y pueden crear confusión con el puntero de alias (->). Una tabla se crea al definir el nombre, tipo y tamaño de cada campo. Una vez creada la estructura de la tabla, puede agregar registros a la tabla. Para obtener información acerca de las tablas, vea Crear tablas.

COUNT (Comando) Visual Studio .NET 2003

Personas que lo han encontrado útil: 4 de 7 - Valorar este tema Cuenta los registros de una tabla. Copiar  COUNT [Scope] [FOR lExpression1] [WHILE lExpression2] [NOOPTIMIZE]

[TO VarName]

Parámetros

Scope Especifica el intervalo de registros que se va a incluir en la cuenta. Las cláusulas de alcance son: ALL, NEXT nRecords, RECORD nRecordNumber y REST. Para obtener más información acerca de las cláusulas de alcance, vea el tema Cláusulas de alcance. Los comandos que incluyen Scope sólo actúan sobre la tabla del área de trabajo activa. El alcance predeterminado de COUNT es ALL (todos los registros). FOR lExpression1 Especifica que solamente se cuentan los registros que satisfacen la condición lógica lExpression1. Incluir FOR le permite contar registros condicionalmente y desechar los registros no deseados. Rushmore optimizará una consulta COUNT FOR si lExpression1 es una expresión optimizable. Para obtener el máximo rendimiento, utilice una expresión optimizable en la cláusula FOR.

Si desea obtener más información acerca de las expresiones optimizables, vea SET OPTIMIZE y Usar Rushmore para agilizar el acceso a los datos. WHILE lExpression2 Especifica una condición por la cual los registros se cuentan siempre y cuando la expresión lógica lExpression2 dé como resultado verdadero (.T.). TO VarName Especifica la variable o la matriz en que se almacena la cuenta de registros. Si la variable especificada no existe, Visual FoxPro la creará.  NOOPTIMIZE Desactiva la optimización Rushmore de COUNT. Si desea obtener más información, vea SET OPTIMIZE y Usar Rushmore para agilizar el acceso a los datos. Observaciones

COUNT cuenta los registros que estén en el alcance de registros para los que se cumplen las condiciones FOR o WHILE. Si SET TALK está establecido en ON, se mostrará la cuenta de registros. Si SET DELETE está establecido en OFF, los registros marcados para su eliminación se incluirán en la cuenta. Para ver una explicación de cómo los valores nulos influyen en COUNT, vea Introducción al lenguaje. Ejemplo

El ejemplo siguiente cuenta y muestra el número de clientes de París. Copiar  CLOSE DATABASES OPEN DATABASE (HOME(2) + 'Data\testdata') USE customer && Opens Customer table CLEAR COUNT FOR UPPER(city) = 'PARIS' DISPLAY FIELDS company, contact FOR UPPER(city) = 'PARIS'

COPY TO (Comando) Visual Studio .NET 2003

Personas que lo han encontrado útil: 1 de 1 - Valorar este tema Crea un nuevo archivo a partir del contenido de la tabla seleccionada actualmente. Copiar  COPY TO FileName [DATABASE DatabaseName [NAME LongTableName]] [FIELDS FieldList | FIELDS LIKE Skeleton | FIELDS EXCEPT Skeleton] [Scope] [FOR lExpression1] [WHILE lExpression2] [[WITH] CDX] | [[WITH] PRODUCTION] [NOOPTIMIZE] [[TYPE] [FOXPLUS | FOX2X | DIF | MOD | SDF | SYLK | WK1 | WKS | WR1 | WRK | CSV | | XLS | XL5 | DELIMITED [WITH Delimiter | WITH BLANK | WITH TAB | WITH CHARACTER Delimiter]]] [AS nCodePage]

Parámetros

 FileName Especifica el nombre del nuevo archivo que crea COPY TO. Si no incluye una extensión de nombre de archivo, se asignará la extensión predeterminada  para el tipo de archivo especificado. Si no especifica un tipo de archivo, COPY TO creará una nueva tabla de Visual FoxPro y asignará al nombre del archivo de tabla la extensión predeterminada .dbf. DATABASE DatabaseName

Especifica una base de datos a la que se agregará la nueva tabla.  NAME LongTableName Especifica un nombre largo para la nueva tabla. Los nombres largos pueden contener un máximo de 128 caracteres y se pueden utilizar en lugar de nombres cortos de archivo en la base de datos. FIELDS FieldList  Especifica qué campos se copiarán al nuevo archivo. Si omite FIELDS FieldList , todos los campos se copiarán al archivo. Si el archivo que está creando no es una tabla, los campos memo no se copiarán al nuevo archivo, incluso aunque en la lista de campos haya incluido nombres de campo memo. FIELDS LIKE Skeleton Especifica que los campos de la tabla original que concuerdan con la estructura Skeleton se incluyen en el nuevo archivo creado por COPY TO. FIELDS EXCEPT Skeleton Especifica que todos los campos excepto aquéllos que concuerden con la estructura de campos Skeleton se incluirán en el nuevo archivo creado  por COPY TO. La estructura de campos Skeleton admite caracteres comodín. Por ejemplo, para especificar que todos los campos que empiecen por las letras A y P se incluirán en el nuevo archivo, use lo siguiente: Copiar  COPY TO mytable FIELDS LIKE A*,P*

Puede combinar la cláusula LIKE con la cláusula EXCEPT: Copiar  Scope

COPY TO mytable FIELDS LIKE A*,P* EXCEPT PARTNO*

Especifica un intervalo de registros que desea copiar a un archivo. Sólo se copiarán los registros comprendidos en ese intervalo. Las cláusulas de alcance son: ALL, NEXT nRecords, RECORD nRecordNumber  y REST. Para obtener más información acerca de las cláusulas de alcance, vea el tema Cláusulas de alcance. FOR lExpression1 Especifica que sólo se copiarán al archivo aquellos registros para los cuales la condición lógica lExpression1 dé como resultado verdadero (.T.). Incluya FOR lExpression1 para copiar condicionalmente registros y excluir los registros no deseados. Rushmore™ optimiza COPY TO con una cláusula

FOR lExpression1 si lExpression1 es una expresión optimizable. Para conseguir el máximo rendimiento, utilice una expresión optimizable en la cláusula FOR lExpression1.

Si desea obtener más información acerca de las expresiones optimizables con Rushmore, vea SET OPTIMIZE y Usar Rushmore para agilizar el acceso a los datos. WHILE lExpression2 Especifica una condición por la cual se copiarán los registros siempre y cuando la expresión lógica lExpression2 dé como resultado verdadero (.T.). [WITH] CDX | [WITH] PRODUCTION Crea un archivo de índice estructural para la nueva tabla idéntico al de la tabla existente. Las etiquetas y expresiones de índice del archivo de índice estructural original se copian al nuevo archivo de índice estructural. Las cláusulas CDX y PRODUCTION son idénticas.  No incluya CDX o PRODUCTION si va a copiar a un archivo que no es una nueva tabla de Visual FoxPro.  NOOPTIMIZE Desactiva la optimización Rushmore de COPY TO. Si desea obtener más información, vea SET OPTIMIZE y Usar Rushmore para agilizar el acceso a los datos. TYPE Especifica el tipo de archivo si el archivo que va a crear no es una tabla de Visual FoxPro. Aunque debe especificar un tipo de archivo, no es necesario incluir la palabra clave TYPE. FOXPLUS Los archivos memo de Visual FoxPro tienen una estructura diferente que los archivos memo de Microsoft FoxBASE+™. Si la tabla de origen de

Visual FoxPro contiene un campo memo, incluya la cláusula FOXPLUS para crear una tabla que pueda utilizarse en FoxBASE+. El campo memo de Visual FoxPro no puede contener datos binarios, ya que FoxBASE+ no admite datos binarios en campos memo. FOX2X Crea una nueva tabla que se puede abrir en versiones anteriores de FoxPro (versiones 2.0, 2.5 y 2.6). Para campos de los tipos Numeric, Float, Integer, Double y Currency, los valores nulos de la tabla de origen se convierten en cero en la nueva tabla. Para otros tipos de campos, los valores nulos de la tabla de origen se convierten a espacios en blanco en la nueva tabla. Para obtener más información acerca de los valores en blanco, vea ISBLANK( ). En la tabla siguiente se muestran los tipos de campo de Visual FoxPro que se convierten a distintos tipos de campo en la nueva tabla cuando se incluye el argumento FOX2X. Tipo de campo de Visual FoxPro

Currency

Tipo de campo de FoxPro 2.x

Float

DateTime Double Integer

Date Float Numeric

DIF Crea un archivo .dif (Formato de intercambio de datos) de VisiCalc®. Los campos de la tabla de Visual FoxPro se convierten en vectores (columnas) y los registros se convierten en filas. Si no incluye ninguna extensión en  FileName se asignará una extensión .dif al nuevo nombre de archivo. MOD Crea un archivo de Microsoft Multiplan® versión 4.01. Si no incluye una extensión, se asignará la extensión .mod al nuevo nombre de archivo de Microsoft Multiplan. SDF Crea un archivo SDF (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. Si no incluye una extensión, se asignará la extensión .txt al nombre de archivo SDF. Observe que la configuración de SET CENTURY se omite cuando se crean archivos SDF con COPY TO. Si los archivos SDF incluyen datos de fecha, deben tener el formato AAAAMMDD para permitir una reconversión efectiva en tablas de Visual FoxPro. Si la información de fecha está almacenada con formatos ambiguos, deberá asegurarse de que las fechas tengan el formato AAAAMMDD antes de ejecutar la operación COPY TO. SYLK Crea un archivo de intercambio SYLK (Vínculo simbólico). Los archivos SYLK se utilizan con Microsoft MultiPlan. Cada campo de la tabla seleccionada actualmente se convierte en una columna de la hoja de cálculo y cada registro se convierte en una fila. Los nombres de archivo SYLK no tienen ninguna extensión. WK1 Crea un archivo de hoja de cálculo de Lotus® 1-23® versión 2.x. Cada campo de la tabla seleccionada actualmente se convierte en una columna de la hoja de cálculo y cada registro se convierte en una fila. Se asigna a la nueva hoja de cálculo la extensión .wk1. WKS Crea un archivo de hoja de cálculo de Lotus 1-2-3 versión 1a. Cada campo de la tabla seleccionada actualmente se convierte en una columna de la hoja de cálculo y cada registro se convierte en una fila. Se asigna a la nueva hoja de cálculo la extensión .wks.

WR1 Crea un archivo de hoja de cálculo de Lotus Symphony® versión 1.1 ó 1.2. Cada campo de la tabla seleccionada actualmente se convierte en una columna de la hoja de cálculo y cada registro se convierte en una fila. Se asigna a la nueva hoja de cálculo la extensión .wr1. WRK Crea un archivo de hoja de cálculo de Lotus Symphony versión 1.0. Cada campo de la tabla seleccionada actualmente se convierte en una columna de la hoja de cálculo y cada registro se convierte en una fila. Se asigna a la nueva hoja de cálculo la extensión .wr1. CSV Crea un archivo de valores separados por comas. Un archivo CSV tiene los nombres de campo como  primera línea en el archivo y los valores de campo de la parte restante del archivo se separan con comas. XLS Crea un archivo de hoja de cálculo de Microsoft Excel versión 2.0. Cada campo de la tabla seleccionada actualmente se convierte en una columna de la hoja de cálculo y cada registro se convierte en una fila. Si no incluye ninguna extensión de archivo, se asignará a la nueva hoja de cálculo la extensión .xls. XL5 Crea un archivo de hoja de cálculo de Microsoft Excel versión 5.0. Cada campo de la tabla seleccionada actualmente se convierte en una columna de la hoja de cálculo y cada registro se convierte en una fila. Si no incluye ninguna extensión de archivo, se asignará a la nueva hoja de cálculo la extensión .xls. DELIMITED Crea un archivo delimitado. Un archivo delimitado es un archivo de texto ASCII en el cual cada registro termina con un retorno de carro y un avance de línea. El separador predeterminado de campo es una coma. Puesto que los datos de tipo Character pueden incluir comas, los campos de caracteres se delimitan además mediante dobles comillas. A menos que especifique lo contrario, se asignará una extensión .txt a todos los archivos DELIMITED recién creados. DELIMITED WITH Delimiter  Crea un archivo delimitado con los campos de caracteres delimitados por un carácter que no es una comilla. El carácter que delimita los campos de caracteres se especifica mediante  Delimiter . DELIMITED WITH BLANK Crea un archivo delimitado con campos separados  por espacios en blanco, no por comas.

DELIMITED WITH TAB Crea un archivo delimitado con campos delimitados  por tabulaciones, no por comas. DELIMITED WITH CHARACTER Delimiter  Crea un archivo delimitado con cada uno de los campos entre caracteres como el 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 . Observe que la cláusula de WITH Delimiter  se  puede combinar con la cláusula WITH CHARACTER. Por ejemplo, el siguiente comando crea un archivo de texto en el que los campos de tipo Character aparecen entre caracteres de subrayado, y todos los campos están delimitados entre sí con signos de punto y coma: Copiar  COPY TO mytxt.txt DELIMITED WITH _ WITH CHARACTER ';'

AS nCodePage Especifica la página de códigos para la tabla o el archivo que crea COPY TO. Visual FoxPro copia el contenido de la tabla seleccionada actualmente y, a medida que copia los datos, los convierte automáticamente a la página de códigos especificada para la nueva tabla o el nuevo archivo. Si es posible, Visual FoxPro marcará la tabla o el archivo recién creados con la página de códigos que usted especifique. Si especifica un valor no admitido para nCodePage, Visual FoxPro generará un mensaje de error. Puede utilizar GETCP( ) con nCodePage para mostrar el cuadro de diálogo Página de códigos, de forma que  pueda especificar una página de códigos para la tabla o el archivo que crea Visual FoxPro. Si se omite AS nCodePage, la tabla o el archivo recién creados se convertirán en la página de códigos actual de Visual FoxPro. Si nCodePage es 0, no se producirá ninguna conversión de página de códigos y la tabla o el archivo recién creados no se marcarán con ninguna  página de códigos. Observaciones

Si se ha establecido un orden de índice, los registros se copiarán según el orden de índice principal. Ejemplo

En el ejemplo siguiente se abre la tabla customer y los tres registros siguientes se copian a un nuevo archivo de datos DELIMITED llamado TEMP.TXT. Copiar  CLOSE DATABASES OPEN DATABASE (HOME(2) + 'Data\testdata') USE customer && Opens Customer table COPY NEXT 3 TO temp TYPE DELIMITED WAIT WINDOW 'This is the delimited text file' NOWAIT

MODIFY FILE temp.txt DELETE FILE temp.txt

COPY STRUCTURE (Comando) Visual Studio .NET 2003

Este tema aún no ha recibido ninguna valoración - Valorar este tema Crea una nueva tabla vacía con la misma estructura que la tabla seleccionada actualmente. Copiar  COPY STRUCTURE TO TableName [FIELDS FieldList] [[WITH] CDX | [WITH] PRODUCTION] [DATABASE cDatabaseName [NAME cTableName]]

Parámetros

TableName Especifica el nombre de la nueva tabla vacía que se desea crear. En Visual FoxPro, los procedimientos almacenados y las expresiones desencadenadoras de la tabla nueva son idénticos a los de la tabla seleccionada actualmente. FIELDS FieldList  Especifica que solamente se copien a la tabla nueva los campos cuyos nombres se especifican en  FieldList . Si omite FIELDS FieldList , se copiarán todos los campos a la nueva tabla. [WITH] CDX | [WITH] PRODUCTION Crea un archivo de índice estructural para la nueva tabla idéntico al de la tabla existente. Las etiquetas y expresiones de índice del archivo de índice estructural original se copian al nuevo archivo de índice estructural. Las cláusulas CDX y PRODUCTION son idénticas. En Visual FoxPro, se convierte un índice principal  para la tabla actualmente seleccionada en un índice candidato para la nueva tabla vacía. DATABASE cDatabaseName Especifica el nombre de una base de datos existente a la que se agrega la nueva base de datos. Observe que las propiedades de tabla y campo no se copian a la base de datos.  NAME cTableName Especifica el nombre de la tabla como aparece en la  base de datos. Ejemplo

En el ejemplo siguiente, se abre la tabla customer, se copia su estructura a una tabla denominada backup y se abre la tabla backup. Después, APPEND FROM anexa registros de la tabla customer a la tabla backup y se abre la ventana Examinar para la tabla backup. Copiar  CLOSE DATABASES OPEN DATABASE (HOME(2) + 'Data\testdata') USE customer && Opens Customer table COPY STRUCTURE TO backup USE backup APPEND FROM customer FOR country = 'UK' BROWSE FIELDS contact, country USE DELETE FILE backup.dbf

CLOSE (Comandos) Visual Studio .NET 2003

Personas que lo han encontrado útil: 1 de 2 - Valorar este tema Cierra varios tipos de archivo. Copiar  CLOSE [ALL | ALTERNATE | DATABASES [ALL] | DEBUGGER | FORMAT | INDEXES | PROCEDURE | TABLES [ALL]]

Parámetros

ALL Cierra todas las bases de datos, tablas e índices abiertos en la sesión de datos actual y en todas las sesiones de datos inactivas y selecciona el área de trabajo 1. CLOSE ALL también cierra los archivos abiertos con las funciones de archivo de bajo nivel FCREATE( ) y FOPEN( ). CLOSE ALL no cierra un archivo abierto con SET PRINT. CLOSE ALL también cierra lo siguiente: Diseñador de formularios Administrador de proyectos Diseñador de etiquetas Diseñador de informes Diseñador de consultas CLOSE ALL no cierra lo siguiente: La ventana Comandos La ventana Depuración Ayuda La ventana Seguimiento     

   

CLOSE ALTERNATE Cierra un archivo alternativo abierto con SET ALTERNATE. CLOSE DATABASES [ALL] Cierra la base de datos actual de la sesión de datos actual, así como sus tablas. Si no hay ninguna base de datos activa, se cierran todas las tablas libres, los índices y los archivos de formato abiertos en todas las áreas de trabajo y se selecciona el área de trabajo 1. ALL Especifica que, en la sesión de datos actual y en todas las sesiones de datos inactivas, se cierre lo siguiente: Todas las bases de datos abiertas y sus tablas. Todas las tablas libres abiertas. Todos los índices y archivos de formato de todas las áreas de trabajo. Se selecciona el área de trabajo 1. 

 

CLOSE DEBUGGER Cierra el depurador de Visual FoxPro. CLOSE FORMAT Cierra un archivo de formato del área de trabajo actual abierto con SET FORMAT. CLOSE INDEXES

Cierra todos los archivos de índice (tanto .idx de entrada simple como .cdx compuestos independientes) abiertos en el área de trabajo actual. Un índice compuesto estructural (un archivo .cdx abierto automáticamente con la tabla) no se cierra. CLOSE PROCEDURE Cierra el archivo de procedimientos abierto con SET PROCEDURE. CLOSE TABLES [ALL] Cierra todas las tablas de la base de datos seleccionada actualmente. CLOSE TABLES cierra todas las tablas libres de todas las áreas de trabajo en caso de que no haya una base de datos abierta. Incluya ALL para cerrar todas las tablas en todas las bases de datos y todas las tablas independientes. Todas las bases de datos permanecen abiertas. CLOSE TABLES no debe ejecutarse cuando hay una transacción en progreso, porque Visual FoxPro generará un mensaje de error.

CLEAR (Comandos) Visual Studio .NET 2003

Personas que lo han encontrado útil: 3 de 4 - Valorar este tema Libera de la memoria el elemento o los elementos especificados. Copiar  CLEAR [ALL | CLASS ClassName | CLASSLIB ClassLibraryName | DEBUG | DLLS [cAliasNameList]| EVENTS | FIELDS | GETS | MACROS | MEMORY | MENUS | POPUPS | PROGRAM | PROMPT | READ [ALL] | RESOURCES [FileName] | TYPEAHEAD | WINDOWS]

Parámetros

ALL Libera de la memoria todas las variables y matrices, así como las definiciones de todas las barras de menús, menús y ventanas definidas por el usuario. CLOSE ALL también cierra las tablas, lo que incluye todos los archivos de índices, memo y de formato asociados, y selecciona el área de trabajo 1. CLEAR ALL también libera de la memoria todas las funciones de bibliotecas compartidas externas registradas con DECLARE - DLL. CLEAR ALL no libera las variables del sistema y no borra el búfer de programas compilados. Utilice CLEAR PROGRAM para borrar el búfer de  programas compilados. Si ejecuta CLEAR ALL sobre un evento o un método para un control o un objeto activo, se genera un mensaje de error de Visual FoxPro. Una variable de tipo Object no se puede liberar de la memoria cuando su control u objeto asociado está activo. CLASS ClassName Borra de la memoria una definición de clase. Cuando se crea una instancia de una clase, Visual FoxPro conserva en memoria la definición de clase después de liberar la instancia. Utilice CLEAR

CLASS para borrar de la memoria una definición de clase después de liberar su instancia. CLASSLIB ClassLibraryName Borra de la memoria todas las definiciones de clase contenidas en una biblioteca de clases visuales. Si existen instancias de clases en la biblioteca de clases, las definiciones de clase no se borrarán de la memoria y se generará un mensaje de error. Sin embargo, todas las definiciones de clase que no tengan instancias se borrarán de la memoria. DEBUG Borra todos los puntos de interrupción en el Depurador y restaura las ventanas del Depurador (Pila de llamadas, Seguimiento, Inspección, etc.) a sus posiciones predeterminadas. Si se ejecuta Clear Debug mientras está cerrado el Depurador, se abrirá el Depurador con sus ventanas en las posiciones predeterminadas. Funciona tanto en modo de marco de depurador como en modo de marco de fox. DLLS cAliasNameList  Borra de la memoria las bibliotecas compartidas externas registradas con DECLARE - DLL. cAliasNameList  es una lista, separada por comas, de los alias de función que se van a quitar de la memoria, como en el siguiente ejemplo: Copiar  CLEAR DLLS

"RegCloseKey","RegOpenKey"

Si no utilizó ningún alias en la declaración, cAliasNameList  es igual al nombre de la función. Si se especifica cAliasNameList , todas las DLL se quitan de la memoria. Puede utilizar la función ADLLS( ) para determinar qué DLL están cargadas. Vea DECLARE - DLL (Comando) para obtener más información acerca del registro de bibliotecas compartidas externas. EVENTS Detiene el procesamiento de eventos iniciado con READ EVENTS. Cuando se ejecuta CLEAR EVENTS, la ejecución del programa continúa en la línea de programa inmediatamente posterior a READ EVENTS. FIELDS Libera una lista creada con SET FIELDS y ejecuta SET FIELDS OFF. CLEAR FIELDS se diferencia de SET FIELDS TO en que libera todas las listas de campos en todas las áreas de trabajo, no sólo la lista de campos del área de trabajo actual. Además, SET FIELDS TO no ejecuta implícitamente SET FIELDS OFF. GETS Libera todos los controles @ ... GET pendientes. La ejecución de CLEAR también libera todos los controles @ ... GET pendientes.

GETS se incluye por compatibilidad con versiones anteriores. Nota

MACROS Libera de la memoria todas las macros de teclado, incluidas todas las asignaciones de teclas de SET FUNCTION. Las macros se pueden guardar en un archivo de macro o en un campo memo con SAVE MACROS y restaurarse más tarde con RESTORE MACROS. También puede restaurar las macros  predeterminadas con RESTORE MACROS. MEMORY Libera de la memoria todas las variables y matrices  públicas y privadas. Las variables del sistema no se liberan. MENUS Libera de la memoria todas las definiciones de  barras de menús. POPUPS Libera de la memoria todas las definiciones de menús creadas con DEFINE POPUP. PROGRAM Borra el búfer del programa compilado. Visual FoxPro mantiene un búfer de los programas ejecutados más recientemente. En raras ocasiones  puede ocurrir que Visual FoxPro no reconozca los cambios efectuados en los archivos de programa en disco. CLEAR PROGRAM obliga a Visual FoxPro a leer los programas en el disco, en lugar de en el  búfer de programas. La razón más común por la que Visual FoxPro puede no reconocer los cambios en los archivos de programa es el uso de un editor TSR (programa residente) o externo para modificar un archivo de programa. Salvo esta excepción, no debería ser necesario el uso de CLEAR PROGRAM. PROMPT Libera los elementos de menú creados con @ ... PROMPT. READ [ALL] Se incluye por compatibilidad con versiones anteriores. Utilice CLEAR EVENTS en su lugar. RESOURCES [ FileName] Especifica el nombre de un mapa de bits, una imagen, una fuente, un cursor o un archivo de icono en caché que se va a borrar de la memoria. Si no se especifica ningún nombre de archivo, se borrarán de la memora todos los mapas de bits, imágenes, fuentes, cursores y archivos de icono. Cuando Visual FoxPro muestra un mapa de bits, un cursor, una imagen, un icono o un recurso de fuentes, se almacenará el recurso en la caché para mejorar el rendimiento. Si se ha utilizado un recurso con el mismo nombre (por ejemplo, un mapa de bits distinto con el mismo nombre que otro que ya está en la caché), Visual FoxPro no volverá a cargar el recurso.

El hecho de borrar un archivo de recursos es, por tanto, especialmente útil para quitar una imagen gráfica de la memoria y para forzar a Visual FoxPro a volver a cargar una imagen del mismo nombre del disco. Por ejemplo, es posible que un informe muestre imágenes gráficas procedentes de una base de datos y que todas se llamen TEMP. Sin embargo, dado que todas se llaman igual, Visual FoxPro no volverá a cargar cada nuevo gráfico a no ser que se haya borrado de la memoria el ya existente mediante el comando CLEAR RESOURCES. TYPEAHEAD Borra el búfer de escritura de teclado. CLEAR TYPEAHEAD es útil cuando se desea impedir la entrada en un campo o la respuesta a una petición antes de que se muestren el campo o la petición. WINDOWS Libera de la memoria todas las definiciones de ventanas definidas por el usuario y borra las ventanas de la ventana principal de Visual FoxPro o la ventana activa definida por el usuario. Las definiciones de ventanas se pueden guardar con SAVE WINDOW en un archivo o campo memo  para su uso posterior. La ejecución de CLEAR WINDOWS libera cualquier referencia de variable de sistema a formularios. Por ejemplo, los comandos siguientes crean una referencia de variable de sistema para un formulario y, después, muestran información acerca de dicha variable: Copiar  goMyForm = CREATEOBJECT('FORM') DISPLAY MEMORY LIKE goMyForm && Displays GOMYFORM O FORM

La ejecución de CLEAR WINDOWS libera la referencia de variable de sistema y la variable contiene ahora el valor nulo: Copiar  CLEAR WINDOWS DISPLAY MEMORY LIKE goMyForm GOMYFORM O .NULL.

&& Displays

Observaciones

CLEAR borra la ventana principal de Visual FoxPro o la ventana activa definida por el usuario y libera de la memoria todos los controles @ ... GET pendientes. Se puede incluir CLEAR en archivos de formato.

CANCEL (Comando) Visual Studio .NET 2003

Este tema aún no ha recibido ninguna valoración - Valorar este tema Finaliza la ejecución del archivo de programa actual de Visual FoxPro. Copiar  CANCEL

Observaciones

El control vuelve a la ventana Comandos cuando se utiliza Visual FoxPro de forma interactiva. Si se está ejecutando una aplicación distribuida en tiempo de ejecución, CANCEL termina la aplicación y el

control vuelve a Windows. Si se está ejecutando un programa en Visual FoxPro en tiempo de diseño, CANCEL terminará el programa y el control volverá a la ventana Comandos. La ejecución de CANCEL libera todas las variables privadas. Ejemplo

En el siguiente ejemplo se simula un bucle de ejecución de programa. En cada bucle se le preguntará si desea continuar. Si presiona el botón Cancelar, CANCEL detendrá la ejecución del programa. Copiar  DO WHILE .T. IF MESSAGEBOX("Do you want to continue?",36) 6 CANCEL ENDIF ENDDO

BROWSE (Comando) Visual Studio .NET 2003

Personas que lo han encontrado útil: 12 de 16 - Valorar este tema Abre la ventana Examinar y muestra los registros de la tabla en uso o seleccionada. Copiar  BROWSE [FIELDS FieldList] [FONT cFontName [, nFontSize]] [STYLE cFontStyle] [FOR lExpression1 [REST]] [FORMAT] [FREEZE FieldName] [KEY eExpression1 [, eExpression2]] [LAST | NOINIT] [LOCK nNumberOfFields] [LPARTITION] [NAME ObjectName] [NOAPPEND] [NOCAPTIONS] [NODELETE] [NOEDIT | NOMODIFY] [NOLGRID] [NORGRID] [NOLINK] [NOMENU] [NOOPTIMIZE] [NOREFRESH] [NORMAL] [NOWAIT] [PARTITION nColumnNumber [LEDIT] [REDIT]] [PREFERENCE PreferenceName] [SAVE] [TIMEOUT nSeconds] [TITLE cTitleText] [VALID [:F] lExpression2 [ERROR cMessageText]] [WHEN lExpression3] [WIDTH nFieldWidth] [WINDOW WindowName1] [IN [WINDOW] WindowName2 | IN SCREEN] [COLOR SCHEME nSchemeNumber]

Parámetros

FIELDS FieldList  Especifica los campos que aparecerán en la ventana Examinar. Los campos se muestran en el orden especificado en FieldList . En la lista de campos  puede incluir campos de otras tablas relacionadas. Cuando incluya un campo de una tabla relacionada, incluya delante del nombre de campo su alias de tabla y un punto. Si omite FIELDS, se mostrarán todos los campos de la tabla en el orden en que aparecen en la estructura de la tabla. FONT cFontName [, nFontSize] Especifica la fuente y el tamaño de fuente de la ventana Examinar. La expresión de caracteres cFontName es el nombre de la fuente y la expresión numérica nFontSize es el tamaño de la fuente. Por ejemplo, la cláusula siguiente especifica la fuente Courier de 16 puntos para los campos que se muestran en la ventana Examinar: Copiar  FONT 'Courier',16

Si incluye la cláusula FONT pero omite el tamaño de fuente nFontSize, se usará una fuente de 10  puntos en la ventana Examinar. Si omite la cláusula FONT, se usará MS Sans Serif de 8 puntos. Si la fuente especificada no está disponible, se sustituirá por una fuente de características similares.

STYLE cFontStyle Especifica el estilo de fuente de la ventana Examinar. Si omite la cláusula STYLE, se usará el estilo de fuente normal Si el estilo de fuente especificado no está disponible, se usará un estilo con características similares o bien el estilo de fuente normal. Carácter

B I  N O Q S  –   T U

Estilo de fuente

Negrita Cursiva Normal Contorno Opaco Sombra Tachado Transparente Subrayado Puede incluir más de un carácter para especificar una combinación de estilos de fuente. El ejemplo siguiente abre una ventana Examinar y utiliza una fuente subrayada: Copiar 

FOR lExpression1

CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') USE customer && Open customer table IF _WINDOWS BROWSE FIELDS contact FONT 'System', 15 STYLE 'NU' ENDIF IF _MAC BROWSE FIELDS contact FONT 'Geneva', 14 STYLE 'NU' ENDIF

Especifica una condición por la cual sólo se mostrarán en la ventana Examinar aquellos registros para los que lExpression1 sea verdadera. Rushmore optimiza una consulta especificada con BROWSE FOR si lExpression1 es una expresión optimizable. Para obtener el máximo rendimiento, utilice una expresión optimizable en la cláusula FOR. Si desea obtener más información acerca de las expresiones optimizables con Rushmore, vea SET OPTIMIZE y Utilizar Rushmore para agilizar el acceso a los datos. Incluya FOR si desea mover el puntero de registro hasta el primer registro que cumpla la condición. Incluya REST si desea dejar el puntero de registro en su posición actual. REST Impide que el puntero de registro se desplace desde su posición actual hasta la parte superior de la tabla cuando se abra una ventana Examinar con la cláusula FOR. De lo contrario, BROWSE situará el  puntero de registro al principio de la tabla de forma  predeterminada.

FORMAT Especifica el uso de un archivo de formato para controlar la presentación y el formato de entrada de datos en una ventana Examinar. Es necesario abrir  primero el archivo de formato con SET FORMAT. La información siguiente se extrae del archivo de formato y se aplica a la ventana Examinar: La lista de campos que se van a examinar Todas las cláusulas VALID Todas las cláusulas WHEN Todas las cláusulas RANGE Tamaños de campo (especificados en cláusulas PICTURE) Todas las expresiones SAY (que se incluyen como campos BROWSE calculados) El ejemplo siguiente utiliza un archivo de formato  para validar los datos escritos en una ventana Examinar. Las posiciones especificadas mediante @ ... GET se pasan por alto. La primera línea crea un campo BROWSE (cust_id) que tiene 5 caracteres de ancho y que  permite sólo la entrada de letras y dígitos. La segunda línea crea un campo BROWSE ( company) que no puede quedar en blanco y puede contener un máximo de 20 caracteres alfabéticos. La tercera línea crea un campo BROWSE (contact) en el que sólo se pueden escribir datos cuando está en blanco. Éste es el contenido del archivo de formato Custentr.fmt, que se usa para validar los datos que se escriben en la tabla customer: Copiar      



@ 3,0 GET cust_id PICTURE 'NNNNN' @ 3,0 GET company VALID company != SPACE(40) ; PICTURE 'AAAAAAAAAAAAAAAAAAAA' @ 3,0 GET contact WHEN contact = SPACE(40)

FREEZE FieldName

* This is the program that uses the format file CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') USE customer && Open customer table SET FORMAT TO custentr.fmt BROWSE FORMAT

Permite realizar cambios en un único campo de la ventana Examinar. Debe especificar este campo mediante FieldName. Los demás campos se muestran pero no se pueden modificar. Copiar  CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') USE customer && Open customer table BROWSE FIELDS phone :H = 'Phone Number:' , ; company :H = 'Company:' ; FREEZE phone

KEY eExpression1 [, eExpression2] Limita el alcance de los registros que se presentarán en la ventana Examinar. Con KEY puede especificar un valor de clave de índice (eExpression1) o un intervalo de valores de clave (eExpression1, eExpression2) para los registros que se mostrarán en la ventana Examinar. La tabla que se va a examinar debe estar indizada y el valor o los valores de clave de índice incluidos en la cláusula KEY deben ser del mismo tipo de datos que la expresión de índice del archivo de índice o de la etiqueta principal. Por ejemplo, la tabla customer incluye un campo de caracteres que contiene códigos postales. Si la tabla se indiza mediante el campo de código postal, en la cláusula KEY podrá especificar un intervalo de códigos postales. En el ejemplo siguiente, sólo se presentarán en la ventana Examinar aquellos registros cuyos códigos  postales estén dentro del intervalo de 10.000 a 30.000: Copiar 

LAST | NOINIT

CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') USE customer && Open customer table SET ORDER TO postalcode BROWSE KEY '10000', '30000'

Guarda cualquier cambio de configuración realizado en la apariencia de una ventana Examinar. Los cambios se guardan en el archivo FOXUSER y  pueden incluir cambios a la lista de archivos, al tamaño de cada campo, y a la ubicación y el tamaño de la ventana Examinar. Si ejecuta BROWSE con la cláusula LAST o  NOINIT, la ventana Examinar se abrirá con la misma configuración que tenía la última vez que se guardó en el archivo FOXUSER si SET RESOURCE está establecido en ON. Esto restaurará la configuración anterior de la ventana Examinar creada con el último comando BROWSE. Si el último comando BROWSE ejecutado en la ventana Comandos incluía una lista larga de cláusulas, ejecute BROWSE con la opción LAST o NOINIT para no tener que volver a escribir el comando. Para obtener más información acerca del archivo FOXUSER, vea SET RESOURCE. Si la última ventana Examinar se abrió con un comando BROWSE que incluía una cláusula PREFERENCE, BROWSE LAST no restaurará la  preferencia. Los cambios que se hagan en la configuración de la ventana Examinar durante la sesión actual no se guardarán si sale de BROWSE presionando CTRL+Q.

Las cláusulas LAST y NOINIT son idénticas;  NOINIT ofrece compatibilidad con dBASE. LOCK nNumberOfFields Especifica el número de campos que puede ver en la partición izquierda de la ventana Examinar sin necesidad de desplazarse o de usar tabulaciones. El tamaño de la partición izquierda se ajusta automáticamente para mostrar el número de campos especificado mediante nNumberOfFields. LPARTITION Especifica que el cursor está situado en el primer campo de la partición izquierda de la ventana Examinar. De forma predeterminada, el cursor se sitúa en el primer campo de la partición derecha al abrirse la ventana.  NAME ObjectName Crea una referencia de objeto para la ventana Examinar, lo que permite manipular dicha ventana mediante las propiedades orientadas a objetos disponibles para el control Grid. Si desea obtener información adicional acerca de la programación orientada a objetos en Visual FoxPro, vea Programación orientada a objetos. Para obtener información adicional acerca de las propiedades del control Grid que puede especificar para una ventana Examinar creada mediante la cláusula  NAME, vea el tema Grid (Control).  NOAPPEND Impide que el usuario agregue registros a la tabla al  presionar CTRL+Y o al elegir la opción Anexar registro del menú Tabla. Nota La inclusión de NOAPPEND no impide que se anexen registros desde una rutina (creada con VALID, WHEN u ON KEY LABEL) mientras se está en la ventana Examinar.  NOCAPTIONS Especifica que se utilice siempre el nombre de campo de la tabla o vista para los encabezados de columna, aunque la base de datos contenga un título descriptivo para el campo de la tabla. Esta cláusula sólo se aplica a las tablas o vistas de una  base de datos.  NODELETE Impide marcar registros para su eliminación desde una ventana Examinar. De forma predeterminada, un registro se puede marcar para su eliminación al  presionar CTRL+T, al elegir la opción Alternar eliminación del menú Tabla o al hacer clic en la columna situada más a la izquierda del registro que se va a eliminar.  NOEDIT | NOMODIFY Impide a un usuario modificar la tabla. NOEDIT y  NOMODIFY son idénticas. Si incluye cualquiera de las dos cláusulas, podrá examinar o buscar en la tabla, pero no modificarla. Sin embargo, sí es  posible anexar y eliminar registros.

 NOLGRID Quita las líneas de cuadrícula del campo en la  partición izquierda de la ventana Examinar.  NORGRID Quita las líneas de cuadrícula del campo en la  partición derecha de la ventana Examinar.  NOLINK Desvincula las particiones de una ventana Examinar. De forma predeterminada, las  particiones izquierda y derecha de la ventana Examinar están vinculadas para que cuando usted se desplace por una partición también se desplace la otra.  NOMENU Quita de la barra de menús del sistema el título del menú Tabla, lo que impide el acceso al menú Examinar.  NOOPTIMIZE Desactiva la optimización Rushmore de BROWSE. Si desea obtener más información, vea SET OPTIMIZE y Utilizar Rushmore para agilizar el acceso a los datos.  NOREFRESH Impide actualizar la ventana Examinar. Las ventanas Examinar se actualizan según la frecuencia determinada mediante SET REFRESH.  NOREFRESH es útil con los archivos de sólo lectura y mejora el rendimiento.  NORMAL Abre la ventana Examinar con su configuración normal predeterminada, como colores, tamaño,  posición, título y opciones de controles (GROW, FLOAT, ZOOM, etc.). Si omite NORMAL y la ventana actual de resultado es una ventana definida  por el usuario con su propia configuración, la ventana Examinar utilizará también la configuración definida por el usuario.  NOWAIT Continúa la ejecución del programa inmediatamente después de que se abra la ventana Examinar. El programa no espera a que se cierre la ventana Examinar, sino que sigue ejecutando la línea de programa que sigue inmediatamente a la línea que contiene BROWSE NOWAIT. Si omite  NOWAIT cuando ejecuta BROWSE en un  programa, se abrirá una ventana Examinar y la ejecución del programa se interrumpirá hasta que se cierre dicha ventana.  NOWAIT sólo está disponible desde dentro de un  programa. Incluir NOWAIT no tiene efecto cuando BROWSE se ejecuta en la ventana Comandos. PARTITION nColumnNumber  Divide una ventana Examinar en las particiones izquierda y derecha; nColumnNumber especifica el número de columnas de la barra de división. Por ejemplo, si nColumnNumber  es 20, la barra de

división se situará en la columna 20 de la ventana Examinar. LEDIT Especifica que la partición izquierda de la ventana Examinar aparecerá en modo de edición. REDIT Especifica que la partición derecha de la ventana Examinar aparecerá en modo de edición. El ejemplo siguiente abre una ventana Examinar con la barra de división situada en la columna 20 y la  partición derecha abierta en modo de edición. Incluya ambas palabras clave si desea abrir ambas  particiones en modo de edición. Copiar 

PREFERENCE PreferenceName

CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') USE customer && Open customer table BROWSE PARTITION 20 REDIT

Guarda los atributos y las opciones de una ventana Examinar para su uso posterior. A diferencia de LAST, que restaura la ventana Examinar tal como aparecía en la sesión anterior, PREFERENCE guarda indefinidamente en el archivo de recursos FOXUSER los atributos de una ventana Examinar. Las preferencias se pueden recuperar en cualquier momento. Al ejecutar BROWSE con el nombre de preferencia especificado por primera vez se crea una entrada en el archivo FOXUSER que almacena la configuración de la ventana Examinar. Si más tarde ejecuta BROWSE con el mismo nombre de  preferencia, se restaurará la ventana Examinar con el estado de dicha preferencia. Cuando se cierra la ventana Examinar, las preferencias se actualizan. Los nombres de preferencia pueden tener hasta 10 caracteres de longitud, deben empezar con una letra o un signo de subrayado, y pueden contener cualquier combinación de letras, números y signos de subrayado. Una vez que tenga las preferencias configuradas de la manera deseada, podrá impedir que cambien. Cierre la ventana Examinar, ejecute SET RESOURCE OFF, abra el archivo FOXUSER como tabla y cambie a sólo lectura el registro que contiene la preferencia; para ello, cambie el valor del campo lógico READONLY a verdadero (.T.). Para obtener más información acerca del archivo de recursos FOXUSER, vea SET RESOURCE. Si sale de la ventana Examinar presionando CTRL+Q, los cambios de la ventana Examinar no se guardarán en el archivo de recursos. SAVE Mantiene activas y visibles (abiertas) la ventana Examinar y cualquiera de sus ventanas de edición de texto para campos memo. Puede volver a la

ventana Examinar después de recorrer las demás ventanas abiertas con el teclado o con el mouse. SAVE sólo está disponible desde dentro de un  programa. SAVE no tiene ningún efecto cuando se incluye con BROWSE en la ventana Comandos  porque BROWSE SAVE es siempre la opción  predeterminada en el modo interactivo. TIMEOUT nSeconds Especifica el tiempo que una ventana Examinar espera recibir una entrada. La expresión numérica nSeconds especifica cuántos segundos pueden transcurrir sin que se produzca ninguna entrada antes de que la ventana Examinar se cierre automáticamente. TIMEOUT sólo está disponible desde dentro de un  programa; no tiene efecto cuando BROWSE se ejecuta en la ventana Comandos. En el ejemplo siguiente, la ventana Examinar se cierra si no se recibe ninguna entrada en 10 segundos. Copiar 

TITLE cTitleText 

DEFINE WINDOW wBrowse FROM 1,1 TO 24,40 ; CLOSE ; GROW ; COLOR SCHEME 10 CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') USE customer && Open customer table BROWSE WINDOW wBrowse ; FIELDS phone :H = 'Phone Number:' , ; company :H = 'Company:' ; TIMEOUT 10 RELEASE WINDOW wBrowse

Reemplaza el nombre o el alias predeterminado de tabla que aparece en la barra de título de la ventana Examinar con el título especificado mediante cTitleText . De lo contrario, el nombre o el alias de la tabla que se está examinando aparecerá en la  barra de título. Si ejecuta BROWSE WINDOW para situar la ventana Examinar en una ventana definida por el usuario, el título de la ventana Examinar reemplazará el de la ventana definida por el usuario. Copiar  CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') USE customer && Open customer table BROWSE; TITLE 'My Browse Window' ; FIELDS phone :H = 'Phone Number' , ; company :H = 'Company:'

VALID lExpression2 Realiza una validación a nivel de registros en una ventana Examinar. La cláusula VALID sólo se ejecutará si hace algún cambio en el registro e intenta desplazar el cursor a otro registro. La cláusula VALID no se ejecutará si sólo se hacen cambios en campos memo.

Si VALID devuelve un valor verdadero (.T.), el usuario podrá desplazar el cursor a otro registro. Si VALID devuelve un valor falso (.F.), el cursor  permanecerá en el campo actual y Visual FoxPro mostrará un mensaje de error. Si VALID devuelve 0, el cursor permanecerá en el campo actual y no se mostrará ningún mensaje de error.  No debe confundirse la cláusula VALID con la opción de verificación (:V), que activa la validación a nivel de campo. :F Fuerza la ejecución de la cláusula VALID antes de que el usuario desplace el cursor hasta el siguiente registro. En este caso, VALID se ejecutará aunque no se hagan cambios en el registro. ERROR cMessageText  Especifica un mensaje de error que aparecerá en lugar del mensaje de error predeterminado del sistema. Visual FoxPro mostrará cMessageText  cuando VALID devuelva falso (.F.). WHEN lExpression3 Evalúa una condición cuando el usuario desplaza el cursor a otro registro. Si lExpression3 da como resultado verdadero (.T.), el usuario podrá modificar el registro al que se ha desplazado. Si lExpression3 da como resultado falso (.F.) o 0, el registro al que se desplace el usuario se convertirá en un registro de sólo lectura y no podrá modificarse. La cláusula WHEN no se ejecuta cuando está activada otra ventana. WIDTH nFieldWidth Limita a nFieldWidth el número de caracteres mostrados para todos los campos en una ventana Examinar. Se podrá desplazar horizontalmente por el contenido de un campo mediante las teclas Flecha izquierda y Flecha derecha, o la barra de desplazamiento horizontal. La inclusión de la cláusula WIDTH no cambia el tamaño de los campos de la tabla; sólo altera la forma en que se muestran los campos en la ventana Examinar. Si se ha especificado un ancho para un campo individual con la cláusula FIELDS, éste suplantará al ancho especificado con la cláusula WIDTH para ese campo. WINDOW WindowName1 Especifica una ventana definida por el usuario cuyas características asumirá la ventana Examinar. Por ejemplo, si la ventana se ha definido con la cláusula FLOAT, la ventana Examinar podrá desplazarse. La ventana especificada no tiene que estar activa o visible necesariamente, pero debe estar definida. IN [WINDOW] WindowName2 Especifica la ventana primaria dentro de la cual se abrirá la ventana Examinar. La ventana Examinar

no asume las características de la ventana primaria. Una ventana Examinar activada dentro de una ventana primaria no podrá desplazarse fuera de ella. Si la ventana primaria se mueve, la ventana Examinar se moverá con ella. Para tener acceso a la ventana Examinar, la ventana  primaria debe definirse primero con DEFINE WINDOW y debe estar activa y visible. IN SCREEN Coloca explícitamente una ventana Examinar en la ventana principal de Visual FoxPro cuando está activa una ventana definida por el usuario. COLOR SCHEME nSchemeNumber  Especifica el número de un esquema de colores empleado para los colores de la ventana Examinar. La ventana Examinar asume el esquema de colores establecido mediante Color del Panel de control de Windows. Observaciones

Una ventana Examinar permite ver y modificar registros de una tabla y anexar registros adicionales. Visual FoxPro permite tener varias ventanas Examinar abiertas al mismo tiempo. Si presiona ESC para salir de la ventana Examinar, se descartarán los cambios realizados en el último campo que haya modificado. Sin embargo, si pasa a otro registro después de modificar un campo, se guardarán los cambios realizados al campo. La lista de campos puede especificar cualquier combinación de campos o campos calculados. La sintaxis de la lista de campos es la siguiente: Copiar  FieldName1 [:R] [:nColumnWidth] [:V = lExpression1 [:F] [:E = cMessageText]] [:P = cFormatCodes] [:B = eLowerBound, eUpperBound [:F]] [:H = cHeadingText] [:W = lExpression2] [, FieldName2 [:R]...]

La lista de campos puede contener instrucciones para crear campos calculados. Un campo calculado contiene datos de sólo lectura creados con una expresión. Esta expresión puede tomar cualquier forma, pero debe ser una expresión válida de Visual FoxPro. El formato de la instrucción que se utiliza para crear un campo calculado es la siguiente: CalculatedFieldName = eExpression En este ejemplo se crea un campo calculado llamado location: Copiar  Campos calculados…

CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') USE customer && Open customer table BROWSE FIELDS location = ALLTRIM(city) + ', ' + country city y country son nombres de campos de la tabla seleccionada actualmente.

La lista de campos de la cláusula FIELDS incluye opciones que permiten el tratamiento especial de los campos que se muestran en la ventana Examinar: :R Especifica que el campo es de sólo lectura. Los datos que contiene pueden verse pero no modificarse. En el ejemplo siguiente se abre una ventana Examinar con los campos cust_id y company. El campo cust_id es de sólo lectura y no puede cambiarse. Copiar  CLOSE DATABASES

OPEN DATABASE (HOME(2) + 'data\testdata') USE customer && Open customer table BROWSE FIELDS cust_id:R, company

:nColumnWidth

Especifica el tamaño de presentación de un campo en las columnas. El valor de:nColumnWidth no afecta al tamaño del campo en la tabla; sólo altera la forma en que se muestra el campo en la ventana Examinar. :V = lExpression1 [:F] [:E = cMessageText ] Permite realizar la validación de datos a nivel de campo dentro de la ventana Examinar. Si lExpression1 da como resultado verdadero (.T.) cuando se desplaza el cursor desde un campo, la entrada de datos en el campo se considerará correcta y el cursor se desplazará al campo siguiente. Si lExpression1 da como resultado falso (.F.), la entrada de datos se considerará incorrecta, el cursor  permanecerá en el campo y se mostrará un mensaje. Si lExpression1 da como resultado 0, la entrada de datos se considerará incorrecta y el cursor  permanecerá en el campo, pero no se mostrará ningún mensaje de error. La opción de verificación no se ejecuta para los campos memo. De forma predeterminada, lExpression1 sólo se evalúa cuando se modifica el campo. Para forzar la comprobación, incluya la opción :F. Puede mostrar su propio mensaje de error si incluye la opción :E que se describe más adelante. :F Determina si la expresión especificada en la opción de verificación se evaluará cuando mueva el cursor fuera de un campo o cuando se active otra ventana. Si no se incluye :F, lExpression1 sólo se evaluará si se hace algún cambio en el campo. Si se incluye :F, lExpression1 se evaluará aunque el campo no se haya modificado. :E = cMessageText  Si la expresión de validación:V = lExpression1 da como resultado verdadero (.T), el cursor abandonará el campo normalmente. Si la expresión da como resultado falso (.F.), el cursor permanecerá en el campo y Visual FoxPro mostrará un mensaje de error. Si se incluye la opción de error (:E), se mostrará cMessageText en lugar del mensaje de error del sistema. cMessageText sólo se muestra si SET  NOTIFY es ON. Si SET BELL está establecido en ON, sonará un aviso acústico. Si :V = lExpression1 da como resultado 0, no se mostrará ningún mensaje y el cursor permanecerá en el campo que se esté validando. Esto permite mostrar sus propios mensajes de error en rutinas de validación.

El ejemplo siguiente abre la tabla products y muestra los campos product_id y prod_name. El campo product_id es un campo numérico que aceptará hasta cinco números. Para este ejemplo consideraremos como no válido un product_id mayor que 100. :V especifica el criterio de validación. :F fuerza que se ejecute la validación tanto si se cambian los datos como si no. :E reemplaza el mensaje de error del sistema de Visual FoxPro por un mensaje de error definido por el usuario. En Visual FoxPro, el mensaje de error se muestra en la barra de estado, en la parte inferior de la ventana principal de Visual FoxPro. Presione ESC para cerrar la ventana Examinar. Copiar 

:P = cFormatCodes

CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') USE products && Open products table IF _WINDOWS OR _MAC SET STATUS BAR ON ENDIF USE products BROWSE FIELDS in_stock :V = in_stock < 100 ; :F ; :E = 'The stock amount must be less than 100'

Si incluye una cláusula FIELDS, también podrá especificar una opción de imagen (:P) para cada campo de la lista. La opción de imagen permite crear una lista de códigos que controle la  presentación y entrada de datos para cada campo de la ventana Examinar. cFormatCodes es la lista de códigos. El ejemplo siguiente utiliza la opción de imagen  para permitir únicamente datos numéricos con un determinado formato en el campo unit_price: Copiar  CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') USE products && Open products table BROWSE FIELDS unit_price :P = '99,999.99'

Vea Format (Propiedad) e InputMask (Propiedad)  para obtener más información acerca de los códigos de opción de imagen. :B = eLowerBound , eUpperBound  [:F] Especifica un conjunto de límites entre los cuales deben estar comprendidos los datos de un campo. Las expresiones de límite eLowerBound y eUpperBound  deben coincidir con el tipo de datos del campo. No pueden ser funciones definidas por el usuario. Si los datos escritos no quedan dentro de eLowerBound y eUpperBound , aparecerá un mensaje de error del sistema que indica el intervalo entre el que deben estar comprendidos los datos. De forma predeterminada, se comprueba que los datos escritos quedan dentro de los límites sólo si

se hacen cambios en el contenido del campo. Para forzar la comprobación, incluya la opción de forzar validación (:F). El ejemplo siguiente garantiza que el valor del campo in_stock están entre 1 y 100. Presione ESC  para cerrar la ventana Examinar. Copiar 

:H = cHeadingText 

CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') USE products && Open products table BROWSE FIELDS in_stock :B = 1, 100 :F

Reemplaza los nombres predeterminados de campo  por sus propios encabezados, que usted especifica mediante cHeadingText . De forma predeterminada, los nombres de campo se utilizan como encabezados de columna en la ventana Examinar. El ejemplo siguiente proporciona encabezados definidos por el usuario para los campos mostrados. Copiar 

:W = lExpression2

CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') USE products && Open products table BROWSE FIELDS prod_name :H = 'Product Name:', ; unit_price :H = 'Price per Unit:'

Determina si se puede desplazar el cursor a un campo. Si lExpression2 da como resultado falso (.F.), se prohibirá que el cursor se desplace al campo. Si lExpression2 se evalúa como verdadero (.T.), el cursor puede moverse al campo. En lExpression2 es posible utilizar funciones definidas  por el usuario. Si se prohíbe desplazar el cursor a todos los campos, el registro actual se marcará como de sólo lectura. Esto ocurre sólo cuando todos los campos contienen una cláusula WHEN que da como resultado falso. Soporte de SET SKIP… SET SKIP permite establecer una relación uno a varios entre dos tablas. Por cada registro de la tabla primaria puede haber múltiples registros relacionados en la tabla secundaria. Si crea una relación uno a varios, podrá utilizar BROWSE para ver registros tanto de la tabla primaria como de la tabla secundaria. El registro primario se muestra una vez, junto con el primer registro coincidente de la tabla secundaria. Los demás registros coincidentes se mostrarán en las filas que siguen al registro primario y al primer registro coincidente secundario. El carácter de relleno para la información primaria repetida depende de la fuente actual de la ventana Examinar. Si se sitúa el puntero de registro en un registro primario, podrá desplazarlo entre los registros primarios de la ventana Examinar si presiona CTRL+FLECHA ABAJO para ir al siguiente registro primario o CTRL+FLECHA ARRIBA para ir al registro primario anterior. Si desea obtener más información acerca de la creación de relaciones uno a varios, vea SET SKIP. La lista de campos de la cláusula FIELDS contiene los registros de la tabla primaria y de la secundaria. Los nombres de los campos están precedidos por el alias de su tabla ( orders o customer) y un punto. Copiar  CLEAR CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') USE customer ORDER cust_id IN 0 && Parent table

USE orders ORDER cust_id IN 0 && Child table SELECT customer && Back to parent work area SET RELATION TO cust_id INTO orders && Establish relationship SET SKIP TO orders && One-to-many relationship WAIT WINDOW 'Scroll to see shipping dates for each customer' NOWAIT BROWSE FIELDS customer.cust_id :H='Customer Number', ; customer.city :H='Customer City', orders.shipped_on

Funciones útiles… ventana Examinar.

Algunas funciones de Visual FoxPro devuelven información útil acerca de la

Función

VARREAD( ) RECNO( )

Descripción

Devuelve el nombre del campo donde está situado el cursor para la ventana Examinar activa. Devuelve el número del registro seleccionado en la ventana Examinar activa.

APPEND FROM (Comando) Visual Studio .NET 2003

Personas que lo han encontrado útil: 3 de 8 - Valorar este tema Agrega registros, desde otro archivo, al final de la tabla seleccionada actualmente. Copiar  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: Copiar  "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: Copiar  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: Copiar  APPEND FROM DBF('')

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. Copiar 

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF