Visual FoxPro (VFP) es un lenguaje de programación por procedimientos, orientado a objetos que posee un Sistema Gestor de Bases de datos o Database Management System (DBMS) y Sistema administrador de bases de datos relacionales, producido por Microsoft. Es una herramienta para desarrollar rápidamente aplicaciones de base de datos de alto rendimiento para escritorio, cliente pesado, cliente distribuido, cliente-servidor, aplicaciones web de base de datos y computación en la nube.[1] Está basado en FoxPro 2.6 que inicialmente trabajó en Mac OS, DOS, Windows y Unix.
Visual FoxPro | ||
---|---|---|
Información general | ||
Tipo de programa | Lenguaje de programación de base de datos | |
Autor | Microsoft Corporation | |
Desarrollador | Microsoft | |
Lanzamiento inicial | 21 de junio de 1995 | |
Licencia | Microsoft EULA | |
Estado actual | Descontinuado | |
Idiomas |
IDE: Inglés, Alemán, Español Runtime: Adicionalmente a los ya mencionados, Francés, Chino, Ruso, Checo, Coreano | |
Información técnica | ||
Programado en | Lenguaje de programación C | |
Plataformas admitidas |
x86 y superior PowerPC (VFP 3.0 para Mac) | |
Versiones | ||
Última versión estable | Visual FoxPro 9.0 Service Pack 2 (SP2) (info) ( 11 de octubre de 2007 (17 años, 2 meses y 1 día)) | |
Enlaces | ||
Sitio web oficial
| ||
VFP es un producto descontinuado más de Microsoft; debido a la política de usar Basic como lenguaje bandera de la empresa y no el xBase. Adicional al apoyo retirado de las grandes empresas de software... sin embargo no deja de ser un producto estable y potente de Microsoft.
Microsoft brindó soporte al núcleo de Visual FoxPro hasta 2015 con soporte estándar hasta enero de 2010 y soporte extendido hasta el 13 de enero del 2015 a través del plan de soporte de ciclo de vida de las herramientas de desarrollo. [2] No obstante, es posible utilizar buena parte de su sintaxis con el resto de compiladores de la familia XBASE.
Fue continuado nuevamente. Bajo la licencia de extensibilidad de código abierto, que permite generar a partir de una instalación de Visual Foxpro 9 IDE instalado en la computadora de desarrollo. Un add-on de código libre. En este caso llamado Visual Foxpro Advanced 10.2. 32 y 64 bits.
Microsoft solicita una licencia por estar instalado el IDE de VFP 9, Que puede ser la original, o la de reemplazo en la actualidad Visual Studio Profesional retail. [3]
Con este modo de licenciamiento otorgado por Microsoft en su momento. Reconocemos sus esfuerzo por el excelente lenguaje que nos dejó, y a su vez los desarrolladores se benefician de actualizaciones y mejoras, para integrar nuevas tecnologías.
El modelo de licenciamiento que estrenaba Microsoft con Visual Foxpro 9, no fue correctamente interpretado por muchos programadores. Pero siempre se debe considerar los beneficios de ambas partes, que bajo este concepto se ha logrado.
Este fue el anuncio que genero confusión.
A finales de marzo de 2007, la comunidad de FoxPro de habla hispana en MásFoxPro ("MoreFoxPro" en inglés ) inició una campaña de base para firmar una petición a Microsoft para continuar actualizando Visual FoxPro o distribuirlo a la comunidad como código abierto . El 3 de abril de 2007 el movimiento fue notado por la prensa técnica.
El 3 de abril de 2007, Microsoft respondió a la petición con esta declaración de Alan Griver:
"Somos muy conscientes de la comunidad FoxPro y eso jugó un papel importante en lo que anunciamos el 13 de marzo. Nunca es una decisión fácil anunciar que no lanzaremos otra versión de un producto y es una que consideramos muy cuidadosamente.
"No estamos anunciando el final de FoxPro: obviamente, las aplicaciones FoxPro seguirán funcionando. Según algunas de nuestras estimaciones internas, hay más aplicaciones ejecutándose en FoxPro 2.6 que en VFP y FoxPro 2.6 no ha sido compatible en muchos Microsoft admitirá Visual FoxPro 9 hasta 2015.
"Para que Microsoft continúe evolucionando la base de FoxPro, tendríamos que considerar la creación de un entorno de desarrollo de 64 bits y eso implicaría una reescritura casi completa del producto principal. También hemos invertido en la creación de una base de datos escalable con SQL Server , incluida la edición gratuita SQL Server Express Edition. En lo que respecta a formar una sociedad con un tercero, hemos escuchado de varios clientes importantes de FoxPro que esto les haría imposible continuar usando FoxPro, ya que ya no sería de un proveedor aprobado. Sentimos que poner el entorno en código abierto en CodePlex , que equilibra las necesidades tanto de la comunidad como de los grandes clientes, era el mejor camino a seguir ".
El lenguaje FoxPro contiene comandos similares a otros lenguajes de programación tal como Basic.
Los ciclos incluyen los comandos do
, if
, while
, for
, else
en un uso familiar como en otros lenguajes de programación.
Los comandos se usan de la forma "comando" y "fincomando".
No hay necesidad de terminar las líneas con un ";" como en otros lenguajes de programación, sin embargo un ";" se debe colocar al final de esos comandos o instrucciones que necesitan más de una línea para una mejor legibilidad. Es posible después de un ";" poner "&&" para comentar la línea en cuestión.
Como en la mayoría de dialectos XBase, basta con solo escribir las primeras 4 letras para un comando. Es para la mayoría de comandos que se pueden abreviar pero hay excepciones como "Loca" puede ser comando LOCATE o comando LOCAL. Es válido escribir "Loca for". Más no puedes abreviar el comando Local.
Visual FoxPro no es sensible a la diferencia entre minúsculas y mayúsculas. Ni al carácter "\" o "/" (no importa cual se usa). Esto es debido a que Foxpro fue proyectado para trabajar de modo multiplataformas con rutas en distintos sistemas operativos. El carácter delimitador es la barra inversa (\
) en sistemas operativos MS-DOS y Windows (de Microsoft) y es la barra diagonal (/
) en sistemas UNIX o Linux. Para Foxpro no hay distinción.
Una de las más grandes ventajas de codificar con VFP es la macro-sustitución. Se usa con el carácter "&" luego una variable y se debe finalizar con dos puntos si es necesario. Así es como VFP mediante la macro-sustitución logra que el código se comporte diferente en tiempo de ejecución.
Ejemplo "Hola Mundo":
* Versión 1:
? "Hola Mundo"
* Versión 2:
@ 1,1 SAY "Hola Mundo"
* Versión 3:
WAIT WINDOW "Hola Mundo"
* Versión 4:
MESSAGEBOX("Hola Mundo")
* Version 5: macro-sustitución
cVariable = "Hola Mundo"
? &cVariable
* Version 6:
loForm = CREATEOBJECT("HolaForm")
loForm.Show(1)
DEFINE CLASS HolaForm AS Form
AutoCenter= .T.
Caption= "Hola Mundo"
ADD OBJECT lblHola as Label ;
WITH Caption = "Hola Mundo"
ENDDEFINE
desde la ventana de comandos:
SET TABLEVALIDATE TO 0
USE TABLA
APPEND BLANK
DELE
PACK
USE
SET TABLEVALIDATE TO 1
...y listo!.
Visual FoxPro provee a los desarrolladores un conjunto de herramientas para crear aplicaciones de bases de datos para Escritorio, entornos cliente/servidor, tableta PC o para La Web y hasta para Computación en la nube.
Entre sus características se pueden enumerar:
USE "c:\users\nombreusuario\google drive\tabla.dbf"
.XLS
y manejar el formato de columnas sin automatización alguna, gracias a una nueva clase. Ya que Excell y VFP son de Microsoft no hay necesidad de un ODBC para desde Office se pueda leer un .dbf. Se usa el dobble slash (\\) para acceder a un .dbf y ya.1) VFP9r.dll | 2) VFP9resn.dll | 3) Msvcr71.dll |
Visual FoxPro proviene de FoxPro, que a su vez se deriva de FoxBASE, creado por Fox Software; inicialmente un clon de dBase, que acabó superándolo, convirtiéndose en la estrella de los lenguajes xBase. Microsoft hizo de Fox el Nro. 2 en base de datos del mercado. Su gran velocidad era muy bien reconocida. Este era su fondo de comercio o goodwill.
David L. Fulton fue el presidente de Fox Research Inc./ Fox Software Inc/ Fox Holdings Inc., compañía que ganó reconocimiento internacional por su aplicación de administración de base de datos: FoxPro. El vendió su compañía por $173 millones a Microsoft en 1992. (Técnicamente, Fox Holdings y Microsoft se fusionaron). Dr. Dave fue profesor de programación en la universidad. El enseñaba a sus estudiantes a hacer las cosas mejores que dBase y a esto lo llamó Foxbase. Desde entonces ellos estudiaban, discutían y re-escribían cada función, y ésta es la razón de la superior velocidad de Foxbase. Los mejores estudiantes de cada año universitario eran contratados por Fox Software, el cual empezó como una pequeña tienda en un Mall.
Fox fue una compañía privada basada en Perrysburg, Ohio. Tenía cerca de 300 empleados y un estimado de $40 millones al año en ventas. La compañía fue fundada en 1983 por David Fulton & Richard LaValley, en ese tiempo solo eran 6 empleados. Con la compra todo el equipo de programación de Fox Holdings se mudó a Seattle.
Microsoft compró Fox Software en junio de 1992.[12] Tres años duraron las negociaciones. Solo fueron posibles una vez se levantó la demanda de Borland contra Fox Software. La demanda inició con Ashton-Tate, que posteriormente fue comprada por Borland en septiembre de 1991. Borland gastó tiempo & energía en la demanda pues ya era contra Microsoft.
William H. Gates, Jefe de Microsoft, dijo que la compañía había decido hacer lo mejor por comprar Fox.
"La idea es ser el nro. 1 en este negocio. Daremos nuestro mejor golpe."
Cuando se presentó FoxPro 2.0 se incluyeron varias tecnologías que revolucionaron el mercado de desarrollo de bases de datos las cuales son:
En el momento de la compra de Fox por parte de Microsoft el desarrollo de FoxPro 2.5 estaba casi terminado, añadiéndole la capacidad de generar ejecutables para Windows. Las versiones de FoxPro 2.6 para Windows, Mac y Unix se consideran las últimas versiones de FoxPro.
En junio de 1995[14] aparece Visual FoxPro 3.0, conocido durante su desarrollo como Taz, es la primera versión Visual y se considera un punto de ruptura al evolucionar de un lenguaje procedimental a un lenguaje orientado a objetos. Fue lanzado en Standard Edition (versión recortada sin archivos de runtime distribuibles) y Professional Edition, con el runtime licenciado y el juego completo de componentes. Requiere como mínimo de un compatible IBM PC con microprocesador Intel 80386 ejecutando Windows 3.1 / Windows NT 3.5 o superiores, 8 Megabytes de memoria RAM (se recomiendan 12 MB), de 15 a 50 MB de espacio libre en el disco duro, mouse o equivalente y tarjeta gráfica VGA o superior. Tiene las siguientes características:
Más adelante aparecerá Visual FoxPro 3.0b que aporta soporte a los lenguajes de doble byte (Double Byte Character Set, como el chino o el japonés) y mejoras en el soporte de ODBC. Además el logotipo para de utilizar una fuente serif a una sans-serif bold, que utilizará en adelante.
Visual FoxPro 3.0 for Macintosh, conocido durante su desarrollo como Speedy aparece el mismo año. Será la última versión de Visual FoxPro para Macintosh. Requiere un equipo Power Macintosh con un microprocesador PowerPC PPC 601 o superior, 8 MB de RAM, (16 MB de RAM recomendado), 80 MB espacio en disco disponible (instalación completa) y sistema operativo System 7.1.2 o posterior.
Para comienzos de 1996 existió una preversion del VFP 4.0 llamada con código nombre: "Renard". Cuando ya estaba una versión beta de VFP 4.0 esta se convirtió en VFP 5.0 ya que Microsoft decidió sincronizar la versión al número 5 para VB, VC++ & VFP vendidos como un paquete en Visual Studio.
En octubre de 1996 aparece Visual FoxPro 5.0, conocido durante su desarrollo como RoadRunner. Presenta un cambio en la estructura de los proyectos y otros archivos por lo que debe de realizarse una conversión desde versiones anteriores. Trae como novedades:
El 18 de mayo de 1998 aparece Visual FoxPro 6.0, conocido durante su desarrollo como Tahoe. Tras FoxPro 2.6 para Windows es la versión con que más aplicaciones FoxPro se han realizado. Se incluye con Microsoft Visual Studio 6. Requiere de un compatible IBM PC con microprocesador Intel 80486-DX a 66 MHz o superior (se recomienda un Intel Pentium) ejecutando Windows 95/Windows 98/Windows NT 4.0 con Service Pack 3 o superior; 16 Megabytes (32 recomendados) de memoria RAM para Windows95/98; 24 MB (32 recomendados) para Windows NT 4.0; Internet Explorer 4.01 con Service Pack 1 (se incluye en el paquete); 85 MB de espacio libre en el disco duro para una instalación típica, 90 MB para una completa; 43 a 59 MB adicionales si debe instalar IE 4.0; de 57 a 493 MD para el MSDN; unidad de CD-ROM, mouse o equivalente y tarjeta gráfica VGA o superior (se recomienda Super VGA). 20
Aporta mejoras para Internet y una nueva galería de componentes y clases.
El 21 de junio de 2001 aparece Visual FoxPro 7.0, conocido durante su desarrollo como Sedona. Trae como novedades:
El 1 de febrero de 2003 aparece Visual FoxPro 8.0, conocido durante su desarrollo como Toledo. Trae como novedades:
El 17 de diciembre de 2004 aparece Visual FoxPro 9.0, conocido durante su desarrollo como Europa con un amplio soporte a XML y una mejora notable en los reportes permitiendo detalles en múltiples bandas, la rotación de texto, y el encadenamiento de informe. Los informes de salida soportados incluyen XML, HTML, formatos de imagen, y personalización de la salida de impresión.
En marzo de 2007, Microsoft anunció que no habrá VFP 10,[16] con lo que VFP9 es la última versión comercial de Visual FoxPro. Su soporte está garantizado hasta 2015 y se han publicado dos Service Packs, el 8 de diciembre de 2005 y el 11 de octubre de 2007. Se trata del soporte más largo para un producto de Microsoft.
A finales de marzo de 2007, se origina una campaña grassroots entre la comunidad hispana de usuarios de FoxPro en MasFoxPro[17] para firmar una petición a Microsoft para continuar con la actualización de Visual FoxPro o liberarlo a la comunidad como Open Source. El 3 de abril de 2007, el movimiento tuvo eco en la prensa especializada[18]
También el 3 de abril de 2007 Microsoft respondió a las solicitudes de los peticionarios, con esta declaración de Alan Griver:
Somos muy conscientes de la comunidad FoxPro y esto jugó un papel importante en el anuncio del 13 de marzo. Nunca es una decisión fácil anunciar que no vamos a sacar otra versión de un producto y es algo que consideramos con mucho cuidado.No estamos anunciando el fin de FoxPro. Obviamente, las aplicaciones de FoxPro seguirán funcionando. Por algunas de nuestras estimaciones internas, hay más aplicaciones que se ejecutan en FoxPro 2.6 que en VFP y FoxPro 2.6 no ha recibido soporte en muchos años. Visual FoxPro 9 será soportado por Microsoft hasta el año 2015.
Para que Microsoft continuara evolucionando la base de FoxPro, tendríamos que comenzar por la creación de un entorno de desarrollo de 64 bits lo que implicaría una reescritura casi completa del producto principal. También hemos invertido en la creación de una base de datos escalable con SQL Server, incluyendo la libremente disponible SQL Server Express Edition. En cuanto a la formación de una asociación con terceras partes, hemos escuchado de una serie de grandes clientes FoxPro que esto haría imposible para ellos seguir utilizando FoxPro, ya que ya no sería de un proveedor aprobado. Nos pareció que poner el entorno en código abierto en CodePlex, equilibra las necesidades de la comunidad y los grandes clientes, y era el mejor camino a seguir.
En el momento del anuncio del fin de la vida de FoxPro, el trabajo en la próxima versión con nombre en código Sedna que había comenzado sobre la parte superior de la base de código VFP9 ya había comenzado. "Sedna" es un conjunto de ampliaciones para VFP 9.0 de los componentes xBase para soportar una serie de escenarios de interoperabilidad con varias tecnologías de Microsoft, incluyendo SQL Server 2005, .NET Framework, Windows Vista, Microsoft Office 2007, Windows Search y Team Foundation Server (TFS). Microsoft liberó Sedna bajo licencia Shared Source en CodePlex. Microsoft ha aclarado que el núcleo de VFP seguirá siendo de código cerrado. Sedna fue lanzado el 25 de enero de 2008. A partir de marzo de 2008, todos los componentes xBase de VFP 9 SP2 (incluyendo Sedna) están disponibles para el desarrollo comunitario en CodePlex.
Sedna contiene seis componentes: VistaDialogs4COM, Upsizing Wizard, Data Explorer, NET4COM, MY para VFP y VS 2005 Extensión para VFP.
Versiones listadas para Windows.[19]
Versión | Fecha de Versión |
---|---|
Visual FoxPro 3.0 | Junio de 1995 |
Visual FoxPro 5.0 | Octubre de 1996 |
Visual FoxPro 5.0a | Octubre de 1997 |
Visual FoxPro 6.0 | 18 de mayo de 1998 |
Visual FoxPro 7.0 | 27 de junio de 2001 |
Visual FoxPro 8.0 | 1 de febrero de 2003 |
Visual FoxPro 8.0 Service Pack 1 | 7 de octubre de 2003 |
Visual FoxPro 9 | 20 de diciembre de 2004 |
Visual FoxPro 9 Service Pack 1 | 8 de diciembre de 2005 |
Visual FoxPro 9 Service Pack 2 | 16 de octubre de 2007 |
A pesar de que Microsoft ha decidido no continuar con Microsoft Visual FoxPro desde el año 2015, existe una comunidad de desarrolladores que sigue trabajando en él, ya no solo en portales de páginas web o foros, sino también en redes sociales.
A julio de 2019 existen muchos "grupos" en Facebook relacionados con VFP conformados por programadores tanto expertos como novatos que comparten soluciones y debaten.
Una de estas comunidades es la Comunidad de Visual Fox en Español con su respectivo foro. Otro foro muy concurrido es el que se encuentra dentro del sitio La web del programador en el apartado correspondiente a Visual Fox. También en Google Groups está presente la comunidad Mundo Visual Foxpro donde se comparten códigos por correo electrónico.
La última versión liberada es la 9.0. Esta cuenta con el SP1 y el (más reciente) SP2 (en inglés) en los que hay algunas nuevas características que especialmente brindan estabilidad al producto.
Pero hay esfuerzos e intentos de lograr un Visual FoxPro 10, entre ellos:
Acerca de la suspensión del soporte de Visual FoxPro 9 por parte de Microsoft que fue hasta el año 2015, estás son las declaraciones de Alan Griver (escritor de la serie de libros FoxPro CodeBook) a la petición MasFoxPro:
Hay más aplicaciones que se ejecutan en FoxPro 2.6 que en VFP y FoxPro 2.6 no ha recibido soporte en muchos años.
Foxconsole, es el VFP 9.0 en solo 120KB (tamaño en disco). Versión mínima & personalizada de la ventana de comandos Ctrl+F2
, también guarda "historia" de los comandos emitidos y cuenta con el apoyo de 4 letras. VFP puede correr en viejas computadoras ya descartadas.
VFP Portable es un único archivo tipo .exe de solo 127.047KB.
Versión | VFP 3.0 | VFP 5.0 | VFP 6.0 | VFP 7.0 | VFP 8.0 | VFP 9.0 |
---|---|---|---|---|---|---|
Windows 3.x | Si | No | No | No | No | No |
Windows NT 4.0 | Si | Si | Si | Si | Si | No |
Windows 95 | Si | Si | Si | Sólo ejecutable | No | No |
Windows 98 | Si | Si | Si | Si | Sólo ejecutable | Sólo ejecutable |
Windows Me | Si | Si | Si | Si | Sólo ejecutable | Sólo ejecutable |
Windows 2000 | Si | Si | Si | Si | Si | Si |
Windows XP | Si | Si | Si | Si | Si | Si |
Windows Server 2003 | Si | Si | Si | Si | Si | Si |
Windows Vista | Modo de compatibilidad | Si | Si | Si | Si | Si |
Windows 7 | No | Si | Si | Si | Si | Si |
Windows 8 | No | No | Si | Si | Si | Si |
Windows 8.1 | No | No | Si | Si | Si | Si |
Windows 10 | No | No | Si | Si | Si | Si |
Windows CE.Net | ? | ? | ? | ? | ? | ? |
Versión | Versión y compilación | Tamaño EXE | Fecha EXE | Tamaño DLL | Nombre DLL |
---|---|---|---|---|---|
VFP 9 SP2 con Revisiones | Visual FoxPro 09.00.0000.7423 para Windows | 5,648 kb | 3 de abril de 2009 | 4,624 kb | VFP9R.DLL |
VFP 9 SP2 | Visual FoxPro 09.00.0000.5721 para Windows | 5,648 kb | 21 de septiembre de 2007 | 4,624 kb | VFP9R.DLL |
VFP 9 | Visual FoxPro 09.00.0000.2412 para Windows | 5,620 kb | 13 de diciembre de 2004 | 4,600 kb | VFP9R.DLL |
VFP 8 | Visual FoxPro 08.00.0000.3117 para Windows | 5,236 kb | 25 de septiembre de 2003 | 4,200 kb | VFP8R.DLL |
VFP 7 | Visual FoxPro 07.00.0000.9465 para Windows | 4,260 kb | 4 de enero de 2002 | 3,344 kb | VFP7R.DLL |
VFP 6 | Visual FoxPro 06.00.8961.00 para Windows | 4,091 kb | 18 de agosto de 2000 | 3,295 kb | VFP6R.DLL |
VFP 5 | Visual FoxPro 5.0.0.415 para Windows | 4,065 kb | 24 de enero de 1997 | 3,148 kb | VFP500.DLL |
VFP 3 | Visual FoxPro 03.00.00.0711 para Windows | 4,374 kb | 16 de diciembre de 1995 | 3,657 kb | VFP300.ESL |
FPW 2.6a | FoxPro 2.6a para Windows | 2,444 kb | 28 de septiembre de 1994 | 2,946 kb | FOXW2600.ESL |
Lanzamiento | Versión | Nota |
---|---|---|
RTM | 9.0.0.2412 | |
SP1 | 9.0.0.3504 | |
SP2 | 9.0.0.5721 | |
SP2 | 9.0.0.5815 | |
Corrección 1 | 9.0.0.6303 | Corrección KB 948528 |
Corrección 2 | 9.0.0.6602 | Corrección KB 952548 |