Para que sirve el complemento de Fox Activevfp?..

1,299 views
Skip to first unread message

TheNewInquirer

unread,
Feb 14, 2012, 2:38:51 PM2/14/12
to Comunidad de Visual Foxpro en Español

http://activevfp.codeplex.com/

Alguien podría explicarlo en términos sencillos... Ahi dice que con
eso se está en igualdad o mayor velocidad que el .NET o PHP... K
significa todo eso?...

Luis Maria Guayan

unread,
Feb 14, 2012, 2:40:41 PM2/14/12
to publice...@googlegroups.com
Es un framework que permite hacer páginas Web y ejecutar código VFP

Luis María Guayán
Tucumán, Argentina
_________________________
http://www.PortalFox.com
Nada corre como un zorro
_________________________

Intel Man

unread,
Feb 14, 2012, 2:47:32 PM2/14/12
to publice...@googlegroups.com
Hola, el activevfp en resumen se puede decir que es un intérprete del código vfp que puede usarse y generar páginas dinámicas html.

Osea con el activevfp tu puedes escribir tu programa en vfp y el activevfp te generará automáticamente la página html y podras verlo por internet.

Saludos


> Date: Tue, 14 Feb 2012 11:38:51 -0800
> Subject: [vfp] Para que sirve el complemento de Fox Activevfp?..
> From: thenewin...@gmail.com
> To: publice...@googlegroups.com

Jairo

unread,
Feb 14, 2012, 3:22:25 PM2/14/12
to publice...@googlegroups.com
Puedes lograr hacer aplicaciones tipo web con paginas ASP utilizando el
OLE y accesar tus base de datos de fox .. yo lo estoy probando y funciona
bien .. solo hay que seguir la programación de las paginas básicas.

Te permite incrustar código de fox en la pagina htm utilizando las
directivas de <% %> , que encapsulan el código como tipo PHP y ASP .NET ..


Instala el sitio en IIS , puedes usar el puerto 8090 ,
Asi http://localhost:8090

JM

-----Mensaje original-----
De: publice...@googlegroups.com
[mailto:publice...@googlegroups.com] En nombre de TheNewInquirer
Enviado el: martes, 14 de febrero de 2012 02:39 p.m.
Para: Comunidad de Visual Foxpro en Español
Asunto: [vfp] Para que sirve el complemento de Fox Activevfp?..

Victor Espina

unread,
Feb 14, 2012, 4:01:17 PM2/14/12
to publice...@googlegroups.com
Voy a hacer una abstraccion bien simple de como funciona una pagina web para, en ese marco, explicar que papel cumple productos como ActiveVFP, PHP, Java o .NET.

Una pagina web no es mas que un archivo de texto que, en su version mas simple, contiene codigo HTML. El HTML es un lenguaje de hipertexto, es decir, texto normal que contiene ademas etiquetas que son interpretadas por el browser y que le indican como debe ser mostrado el texto. Por ejemplo, cuando un navegador recibe el texto:

Hola <b>Mundo</b>

entiende que debe mostrar la palabra "Hola", un espacio y luego la palabra "Mundo" en negrita (<b> </b>).  Cuando apuntamos a una direccion web en nuestro navegador, lo que estamos haciendo es ir a un servidor web en internet y "pedirle" que nos de una pagina html especifica.

Por ejemplo, digamos que apuntamos a "http://www.miservidor.com/apps/index.html".  Lo primero que hace el browser es resolver el nombre "www.miservidor.com" y obtener la direccion IP asociada a ese nombre. Luego, con la direccion IP, establece una conexion con el servidor y le pide el archivo "/apps/index.html".

En el escenario mas simple, el servidor recibe el requerimiento, ubica el archivo y lo devuelve al browser, el cual lo lee y lo muestra en pantalla. Entre los muchos "tags" html que este archivo puede contener, hay uno de vital importancia: el tag "<a>", el cual sirve para crear un hiperenlace a OTRO archivo html en ese servidor o en otro servidor externo.  Asi, por ejemplo, si el navegador se encuentra el siguiente texto:

<a href="www.google.com">Google</a>

Mostrara la palabra "Google" como un hiperenlace que, al ser pulsado por el usuario, nos mostrara la pagina principal de Google.

Ahora, en algun momento en la historia de la red, se incluyo la posibilidad de incluir codigo dinamico en las paginas html, el cual se ejecutaria en el servidor y permitiria alterar el HTML que el servidor devuelve al browser cuando este solicita una pagina web que contiene codigo dinamico. 

Esto se logra instruyendo al servidor para que cuando reciba una solicitud de un archivo con una cierta extension, le pase ese archivo a un programa externo el cual sera el encargado de devolver el texto HTML que el servidor le pasara a su vez al browser.

Por ejemplo, si yo tengo un archivo llamado "hola.php" cuyo contenido es:

<html>
<body>
 <?php echo "<b>Hola</b>"; ?>
</body>
</html>

Cuando el browser le solicite el archivo "hola.php" al servidor, este vera que la extension ".php" esta asociada al programa "php.exe" y lo invocara para que este procese el archivo. El php tomara el contenido de foo.php y sustituira todos los bloques <?php ...?> por el resultado de la ejecucion del codigo indicado.  En el ejemplo, el php.exe devolveria al webserver el siguiente texto:

<html>
<body>
<b>Hola</b>
</body>
</html>

El cual, al ser procesado por el browser, mostraria la palabra "Hola" en negrita.  Esto nos permite generar paginas HTML de forma dinamica, lo cual es la base de todas las aplicaciones web.

ActiveVFP hace esto mismo, solo que nos permite usar codigo VFP para la parte dinamica de la pagina. En el caso de activeVFP, la extesion asociada es ".avfp", pero el principio es exactamente el mismo.

Para finalizar, quiero hacer una aclaracion: existen dos clases de codigos dinamicos que puede contener una pagina web:

a) Server-side scripts:  es codigo que se ejecuta en el servidor web y que resulta en codigo HTML a ser devuelto al browser. Ejemplo de estos es PHP, ActiveVFP, .NET, etc.

b) Browser-side scripts: es codigo que se evalua EN EL BROWSER, luego que este recive el HTML devuelto por el servidor. Este codigo esta escrito en JavaScript o VBScript y se indica mediante el tag <script>.  Un ejemplo de esto es JQuery, ExtJS, etc.

Espero que esta pequena explicacion les sea de ayuda para visualizar mejor los conceptos relacionados con la programacion Web y donde entra cada elemento de los que mencionamos aca ultimamente.

Saludos

Victor Espina

@Mlaynes

unread,
Feb 14, 2012, 4:07:42 PM2/14/12
to publice...@googlegroups.com

Conviene le des una revisada a estas discusiones del foro:
y estas entradas del proyecto Integracion Google donde se desarrolla cada tema (ejercicios de laboratorio o "codelabs" incluidos) :

@Mlaynes

TheNewInquirer

unread,
Feb 15, 2012, 1:16:12 AM2/15/12
to Comunidad de Visual Foxpro en Español
Maestro Victor,

Usted es de los que merece ser llamado "maestro".

He tenido muchos "seudo maestros" en toda mi vida de estudiante. Los
típicos ingenieros que resuelven todo ellos, pero simplemente no son
capaces de "explicarlo en términos sencillos".

Ser maestro y poder explicar de forma sencilla lo complejo es un don
que muy pocos tienen.

Aunque el 95% de lo que me explicó ya lo sabía jeje

Pero la magistral explicación se agradece, ya que habrá quien este en
0, con los temas web.

Tiene varios años que lleve HTML en una escuelita de computacion
privada junto con en ese entonces el Flash 5(parte animada), para
crear animaciones .gif sobre la linea de tiempo. Por cierto que nada
que ver el famoso windows contra los equipos imac de machintosh que
habia en el taller.. y k decir del Corel, Photoshop, Ilustrator para
Mac..ja..

Ahora bien el famoso lenguaje Action Script, el Flex(parte dinamica),
etc. todos van pal mismo rumbo...: Desaparecer jeje

Flexbuilder:

http://www.xinterface.net/2008/07/25/%C2%BFque-es-flex-que-es-flexbuilder-y-que-tienen-que-ver-con-flash/

http://ceroflex.blogspot.com/

Tal como lo quería desde un inicio Steve Jobs, de Apple.

http://es.wikipedia.org/wiki/Adobe_Flash_Professional#Cr.C3.ADticas_a_Flash

Anyway...

Entonces, despues de entender mejor para que sirve el complemento
ActiveVFP (Generar codigo dinamico o scripts del lado del servidor)...

¿Necesitaría un servidor Web para poder usarlo como el que sugiere
@Mlaynes?...

Podré grabar datos en la página, enviarlos a un manejador de base de
datos como MySql, abrir la aplicacion desde cualquier navegador en
cualquier parte del mundo y toda la cosa...? jaja (Soné como comercial
de lenguaje web jeje)

Si decidiera utilizar una empresa de hosting, en vez de montar yo el
servidor, sabrían ellos de que les estoy hablando...?

Gracias a todos por sus excelentes respuestas!

Irlandes 1960

unread,
Feb 15, 2012, 7:17:10 AM2/15/12
to publice...@googlegroups.com
Gracias Victor, muy claro lo tuyo, me es de mucha utilidad para hacer pie en este terreno para mi desconocido.

Victor Espina

unread,
Feb 15, 2012, 8:31:57 AM2/15/12
to publice...@googlegroups.com
Es correcto. Necesitas un webserver con IIS para poder ejecutar el ActiveVFP. Como seguro sabes, VFP puede interactuar sin problemas con MySQL asi que esa parte no sera problema y, al ser una aplicacion web, puedes accederla desde cualquier parte del mundo con una conexion a internet.

Saludos

Victor Espina

Samuel SM-H

unread,
Feb 15, 2012, 9:53:38 AM2/15/12
to publice...@googlegroups.com
Excelente artículo Victor, muy entretenido.
mi pregunta es, ya tienes algún proyecto ejecutando este servicio todo hecho en ActiveVFP?
como te va con el performance?
Saludos.

Victor Espina

unread,
Feb 15, 2012, 10:00:07 AM2/15/12
to publice...@googlegroups.com
No samuel, aun no he hecho nada con ActiveVFP. De hecho, solo he hecho un par de pruebas relacionadas con la forma de implementar interfaces REST con ActiveVFP.

Tampoco se si vaya a usar ActiveVFP en algun proyecto real. A pesar de que obviamente me siento mucho mas comodo con VFP que con cualquier otro lenguaje, lo cierto es que lo que busco es irme apartando poco a poco de VFP hacia algo que no este descontinuado y que, de paso, no me obligue a usar solo servidores Windows, tal como PHP.

Sin embargo, no lo descarto. Una ventaja innegable de VFP es la facilidad para la manipulacion de datos interna, lo cual ahorra no poco trabajo en un proyecto real... asi que como digo, no lo descarto del todo, pero la idea es centrarme en otras tecnologias.

Aun asi, ten en cuenta que por un lado VFP siempre ha sido un lenguaje que ejecuta muy rapidamente, y ActiveVFP hace uso de tecnologias multithreaded que garantizan que multiples requerimientos puedan ser procesados concurrentemente. Combinadas ambas cosas deberian garantizar un tiempo de respuesta mas que aceptable en condiciones reales.

Saludos

Victor Espina

TheNewInquirer

unread,
Feb 15, 2012, 10:22:44 AM2/15/12
to Comunidad de Visual Foxpro en Español
Estimados,

Dense una vuelta por Xampp.

http://www.apachefriends.org/es/xampp.html

Verán que PHP ha sido multiplataforma desde hace mucho. De hecho, está
más integrado con el Servidor Apache, que con el famoso IIS de MS, ya
que se lleva más con el software libre, es decir, "son ombligo con
ombligo" jeje.

Y lo mismo se puede decir de las distribuciones Linux como Fedora y
Centos. De hecho, es ahi, bajo ambiente Linux donde las empresas host
montan los servidores Apache para PHP. Es su ambiente nativo, por
decirlo así.


Por cierto, que el artículo en inglés da a entender que el ActiveVFP
corre más rapido que el famoso .NET y PHP.

Saludos!

Carlos Miguel FARIAS

unread,
Feb 15, 2012, 5:15:42 PM2/15/12
to publice...@googlegroups.com
PHP corre muy facil sobre windows tambien, creo que comente que la ventaja de php (circunstancialmente perl y/o python) es como son libres de licencia y corren en S.O. que son libre tambien de licencia, es mas facil encontrar hosting y mas baratos tambien.
Saludos: Miguel, La Pampa (RA)

@Mlaynes

unread,
Feb 24, 2012, 12:22:51 AM2/24/12
to publice...@googlegroups.com

PHP es un lenguaje de programación principalmente para desarrollo Web (aunque también se puede utilizar en sistemas de escritorio ..pero allí VFP es muchísimo mejor..), y es cierto que PHP se encuentra bastante bien integrado en los servidores Apache : LAMP, WAMP, etc como Appserv ó  WAMPSERVER, y que su uso esta actualmente bastante difundido en la mayoria de servicios de Hosting externos y a orecios bastante atractivos (y que siguen bajando cada vez mas).... pero también debe considerarse que PHP no es "exclusivo" de los servidores Apache y que también puede "instalarse" en los servidores IIS (directamente o sobre WebMatrix), e incluso puede ser "instalado" en contenedores de Servlets como los servidores Tomcat, Glassfish o incluso JBoss y Jetty (empleado por el SDK para Java de Google AppEngine ).. y por supuesto, PHP puede instalarse sobre la plataforma de Desarrollo WebMatrix que presentamos en este foro, donde hicimos nuestras pruebas de como Trabajar con ActiveVFP, y donde también mostramos el proceso de trabajar con PHP en un servidor IIS utilizando WebMatrix :

Los interesados en esas opciones de trabajo con PHP pueden consultar estos enlaces :
el tema es : cuando es practico e interesante usar ActiveVFP ?, y la respuesta : cuando tenemos sistemas desarrollados 100% con VFP, es decir usando las tablas y el código VFP (no conozco algún comando o alguna manera con PHP que nos conecte y nos permita trabajar con las bases de  datos o tablas *.dbf de VFP.. y que por supuesto, de existir, debe tener un buen rendimiento como con MySQL, para trabajar bien con un servicio de Internet "convencional" de 2 o 3 Mbps..), pero con ActiveVFP, en una aplicación o Desarrollo Web, podemos acceder a nuestras tablas usando directamente los comandos VFP que ya conocemos.. como USE ,  e interactuar con nuestras tablas mediante los comandos SQL de VFP (Select y Update principalmente),..y una vez que se entiende la forma de trabajo de ActiveVFP, es realmente sencillo practico de utilizar incluso en desarrollos mas sofisticados y complejos.. utilizando incluso JQuery o ExtJS por el front-side o lado del cliente...

Como indique anteriormente, sería interesante y de bastante utilidad que den una revisada y practiquen con los ejercicios propuestos en el proyecto Integracion Google donde se desarrolla cada tema como códigos de laboratorio ("codelabs") o Taller Web los temas :
si algo no esta claro.. los apoyaremos en todo lo que se pueda.

saludos
@Mlaynes

Carlos Miguel FARIAS

unread,
Feb 24, 2012, 10:38:05 AM2/24/12
to publice...@googlegroups.com
PHP cuenta con comandos para acceder directamente a DBF, pero a las
dbf estandar, no a las del VFP, o sea que si tenemos nativas que usan
toda la funcionalidad de vfp (aún de lo que da vfp8) es muy probable
que no pueda leer los datos, ni aprovechar los indices propios del
vfp.
Y si se modifican datos de las tablas, no se si actualizara los
respectivos indices.
Además, habría que hacer pruebas, pero vfp corriendo en el servidor,
en algunos casos podría tener mejor rendimiento que php (salvo que php
este cacheado) porque vfp corre desde pseudo-codigo y php desde
fuente.

Saludos: Miguel, La Pampa (RA)


El 24/02/12, @Mlaynes <mlaynes...@gmail.com> escribió:


>
> PHP es un lenguaje de programación principalmente para desarrollo Web
> (aunque también se puede utilizar en sistemas de escritorio ..pero allí VFP
> es muchísimo mejor..), y es cierto que PHP se encuentra bastante bien
> integrado en los servidores Apache : LAMP, WAMP, etc como Appserv ó
> WAMPSERVER,
> y que su uso esta actualmente bastante difundido en la mayoria de servicios
> de Hosting externos y a orecios bastante atractivos (y que siguen bajando
> cada vez mas).... pero también debe considerarse que PHP no es "exclusivo"
> de los servidores Apache y que también puede "instalarse" en los servidores
> IIS (directamente o sobre WebMatrix), e incluso puede ser "instalado" en
> contenedores de Servlets como los servidores Tomcat, Glassfish o incluso
> JBoss y Jetty (empleado por el SDK para Java de Google AppEngine ).. y por
> supuesto, PHP puede instalarse sobre la plataforma de Desarrollo

> WebMatrix<http://mlaynessanchez.blogspot.com/2011/10/webmatrix-la-plataforma-opensource-de.html>que


> presentamos en este foro, donde hicimos nuestras pruebas de como
> Trabajar con

> ActiveVFP<http://mlaynessanchez.blogspot.com/2011/12/working-with-activevfp-56.html>,


> y donde también mostramos el proceso de trabajar con PHP en un servidor IIS
> utilizando WebMatrix :
>
> Los interesados en esas opciones de trabajo con PHP pueden consultar estos
> enlaces :
>
>

> - WebMatrix: Using PHP on IIS
> server<http://mlaynessanchez.blogspot.com/2011/10/webmatrix-using-php-on-iis-server.html>
> - Using PHP like a JavaWeb Project on Tomcat
> server<http://mlaynessanchez.blogspot.com/2011/11/quercus-using-java-with-php.html>
>
> - Using PHP on Appengine-JavaWeb
> projects<http://mlaynessanchez.blogspot.com/2011/12/using-php-in-appengine-javaweb-projects.html>
>
>
>
> el tema es : *cuando es practico e interesante usar ActiveVFP ?*, y la


> respuesta : cuando tenemos sistemas desarrollados 100% con VFP, es decir
> usando las tablas y el código VFP (no conozco algún comando o alguna manera
> con PHP que nos conecte y nos permita trabajar con las bases de datos o
> tablas *.dbf de VFP.. y que por supuesto, de existir, debe tener un buen
> rendimiento como con MySQL, para trabajar bien con un servicio de Internet

> "convencional" de 2 o 3 Mbps..), pero *con ActiveVFP, en una aplicación o


> Desarrollo Web, podemos acceder a nuestras tablas usando directamente los

> comandos VFP que ya conocemos*.. como USE , e interactuar con nuestras


> tablas mediante los comandos SQL de VFP (Select y Update
> principalmente),..y una vez que se entiende la forma de trabajo de
> ActiveVFP, es realmente sencillo practico de utilizar incluso en
> desarrollos mas sofisticados y complejos.. utilizando incluso JQuery o
> ExtJS por el front-side o lado del cliente...
>
> Como indique anteriormente, sería interesante y de bastante utilidad que
> den una revisada y practiquen con los ejercicios propuestos en el proyecto
> Integracion

> Google <http://mlaynessanchez.blogspot.com/> donde se desarrolla cada tema


> como códigos de laboratorio ("codelabs") o Taller Web los temas :
>

> - WebMatrix, la plataforma de esarrollo Web opensource de
> Microsoft<http://mlaynessanchez.blogspot.com/2011/10/webmatrix-la-plataforma-opensource-de.html>
>
> - Trabajando con ActiveVFP
> 5.6<http://mlaynessanchez.blogspot.com/2011/12/working-with-activevfp-56.html>

@Mlaynes

unread,
Feb 24, 2012, 4:05:32 PM2/24/12
to publice...@googlegroups.com

Exacto.. con PHP nos podemos conectar con las tablas *.dbf en su formato Dbase, e incluso a las tablas dbf de VFP utilizando ODBC, pero en el primero de los casos no reconoce las tablas de VFP; y en el segundo, mantiene las restricciones de perfomance propios del uso de una conexión ODBC..es allí donde radica la importancia de ActiveVFP, porque de una manera relativamente sencilla nos permite utilizar las mismas tablas VFP que estemos utilizando en algunos de nuestros sistemas ó desarrollos (y que se mantenga una completa compatibilidad con los indices CDX que estemos utilizando y con la data que pueda estar registrándose o trabajándose desde las aplicaciones de escritorio)..y utilizando por el lado del servidor todos los comandos y clases VFP que conozcamos ...pero por supuesto, usando HTML, CSS y Javascript para mostrar nuestras pantallas o "screens" en nuestro navegador, y entonces así podremos "dar salida a la Web" a nuestros proyectos y sistemas VFP de escritorio.. 

Como bien indica el titulo de la entrada ActiveVFP puede ser principalmente un "complemento" para los desarrollos 100% Full VFP.. aunque con sus últimos avances (ActiveVFP ya esta en su versión 5.6.1 por lo que es una herramienta bastante consolidada), buscan también consolidarse como una alternativa para Desarrollo Web... aunque particularmente en mis desarrollos prefiero otras alternativas: VFP + MySQL para aplicaciones de escritorio.. y generalmente ExtJS+PHP +MySQLsobre un servidor Apache para desarrollos Web de uso "convencional".. aunque para mayores recurro a ExtJS+Java(JSP) +MySQL sobre un servidor Tomcat...

saludos
@Mlaynes

Reply all
Reply to author
Forward
0 new messages