<?xml version="1.0" encoding="ISO-8859-1"?><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<front>
<journal-meta>
<journal-id>0012-7353</journal-id>
<journal-title><![CDATA[DYNA]]></journal-title>
<abbrev-journal-title><![CDATA[Dyna rev.fac.nac.minas]]></abbrev-journal-title>
<issn>0012-7353</issn>
<publisher>
<publisher-name><![CDATA[Universidad Nacional de Colombia]]></publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id>S0012-73532005000200007</article-id>
<title-group>
<article-title xml:lang="es"><![CDATA[MEDUSA: UNA APLICACIÓN DE LA INTEGRACIÓN ENTRE PDF Y ASP.NET®]]></article-title>
<article-title xml:lang="en"><![CDATA[MEDUSA: AN APPLICATION OF INTEGRATION BETWEEN PDF AND ASP.NET®]]></article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname><![CDATA[ZAPATA J.]]></surname>
<given-names><![CDATA[CARLOS M.]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[SIERRA A.]]></surname>
<given-names><![CDATA[JUAN CARLOS]]></given-names>
</name>
<xref ref-type="aff" rid="A02"/>
</contrib>
</contrib-group>
<aff id="A01">
<institution><![CDATA[,Universidad Nacional de Colombia Facultad de Minas Escuela de Sistemas]]></institution>
<addr-line><![CDATA[ ]]></addr-line>
</aff>
<aff id="A02">
<institution><![CDATA[,VSDC s. a  ]]></institution>
<addr-line><![CDATA[ ]]></addr-line>
</aff>
<pub-date pub-type="pub">
<day>00</day>
<month>07</month>
<year>2005</year>
</pub-date>
<pub-date pub-type="epub">
<day>00</day>
<month>07</month>
<year>2005</year>
</pub-date>
<volume>72</volume>
<numero>146</numero>
<fpage>89</fpage>
<lpage>102</lpage>
<copyright-statement/>
<copyright-year/>
<self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_arttext&amp;pid=S0012-73532005000200007&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_abstract&amp;pid=S0012-73532005000200007&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_pdf&amp;pid=S0012-73532005000200007&amp;lng=en&amp;nrm=iso"></self-uri><abstract abstract-type="short" xml:lang="es"><p><![CDATA[El formato de Documentos Portátiles (PDF por sus siglas en inglés) se ha venido consolidando en el mundo como un estándar para la transmisión de documentos vía Web, especialmente reconocidos como sólo lectura. Sin embargo, poco se han trabajado las capacidades interactivas de dicha tecnología, en particular para la captura y transmisión de datos a un servidor. En este artículo se presenta MEDUSA, un software basado en tecnología PDF que interactúa con ASP® y ASP.NET® para el manejo de una plataforma de compras vía Web.]]></p></abstract>
<abstract abstract-type="short" xml:lang="en"><p><![CDATA[Portable Document Format (PDF) has being consolidating itself in the world as a Web Document Transmission Standard, specially recognized like only-to be read- documents. However, there are few works on its interactive capabilities, particularly in capture and transmission data to a server. In this paper we present MEDUSA, a PDF-based software that interacts with ASP® and ASP.NET® to manage a Web shopping platform.]]></p></abstract>
<kwd-group>
<kwd lng="es"><![CDATA[PDF]]></kwd>
<kwd lng="es"><![CDATA[ASP®]]></kwd>
<kwd lng="es"><![CDATA[ASP.NET®]]></kwd>
<kwd lng="es"><![CDATA[Aplicaciones en ambientes Web]]></kwd>
<kwd lng="en"><![CDATA[PDF]]></kwd>
<kwd lng="en"><![CDATA[ASP®]]></kwd>
<kwd lng="en"><![CDATA[ASP.NET®]]></kwd>
<kwd lng="en"><![CDATA[Web Environment Applications.]]></kwd>
</kwd-group>
</article-meta>
</front><body><![CDATA[ <p align="center"><font size="4" face="Verdana, Arial, Helvetica, sans-serif"> <b>MEDUSA:      UNA APLICACIÓN DE LA INTEGRACIÓN    ENTRE PDF Y ASP.NET® </b></font> </p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>MEDUSA:    AN APPLICATION OF INTEGRATION BETWEEN PDF AND ASP.NET®</b></font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>CARLOS M. ZAPATA J.</b>    <br>    <i>Grupo de Investigación UN-INFO. Escuela de Sistemas. Facultad de Minas. Universidad Nacional de Colombia.  <a href="mailto:cmzapata@unalmed.edu.co">cmzapata@unalmed.edu.co</a></i></font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>JUAN CARLOS SIERRA A.</b>    <br> <i>VSDC s. a.. (Visual Systems)</i></font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Recibido       para revisar 6 de Agosto de 2004, aceptado 19 de Octubre de 2004, versión  final 10 de Diciembre de 2004</b></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>RESUMEN:  </b>El      formato de Documentos Portátiles    (PDF por sus siglas en inglés) se ha venido consolidando en el mundo como un    estándar para la transmisión de documentos vía Web, especialmente reconocidos    como sólo lectura.  Sin embargo, poco se han trabajado las capacidades interactivas    de dicha tecnología, en particular para la captura y transmisión de datos a    un servidor.  En este artículo se presenta MEDUSA, un software basado en tecnología    PDF que interactúa con ASP® y ASP.NET® para el manejo de una plataforma de  compras vía Web.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>PALABRAS CLAVES:</b> PDF,      ASP®, ASP.NET®, Aplicaciones  en ambientes Web</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>ABSTRACT:</b>  Portable Document Format (PDF)    has being consolidating itself in the world as a Web Document Transmission    Standard, specially recognized like only-to be read- documents.  However, there    are few works on its interactive capabilities, particularly in capture and    transmission data to a server.  In this paper we present MEDUSA, a PDF-based    software that interacts with ASP® and ASP.NET®   to manage a Web shopping  platform.</font></p>     ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>KEYWORDS:</b> PDF,      ASP®, ASP.NET®, Web Environment  Applications.</font></p>     <p><font size="3" face="Verdana, Arial, Helvetica, sans-serif"><b>1. INTRODUCCIÓN</b></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">La portabilidad      de las aplicaciones Web es una de las necesidades predominantes en un entorno      cambiante y ágil que exige rapidez    en la transferencia de información.  En este entorno, los archivos en Portable    Document Format (PDF) han proliferado y se están convirtiendo paulatinamente    en un estándar para la transmisión de datos en la Web, debido a su sencillez    y a la independencia del formato en relación con los diferentes productos de    visualización.  La invención del PDF se remonta a principios de la década de    1990 (Bienz y Cohn, 1993), como una evolución de los archivos PostScript, que    se usaban para la producción de páginas impresas.  La novedad de los archivos    PDF radicaba en la estructuración del texto en capas que permitían la navegabilidad    y agregaban ciertos elementos que los archivos PostScript no tenían, como los  hipervínculos y las anotaciones (Adobe Systems Incorporated, 2003).</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Hasta la versión 1.1 del PDF, los documentos PDF    se habían limitado a la realización de documentos de sólo lectura con pocas    posibilidades de interactuar con el usuario.  La necesidad de tener documentos    de tipo más interactivo basados en el formato PDF posibilitó el surgimiento    de ciertas capacidades de programación que a partir de la versión 1.2 del PDF    se han hecho más comunes.  Dentro de estas nuevas capacidades, se cuenta el    FDF (Forms Data Format – o formato de datos de formulario), que es un formato    de archivos PDF empleado específicamente para la transmisión de datos mediante    formularios interactivos, tal y como se haría en una página del tipo HTML,    con controles como cajas de texto, botones y listas desplegables.  Los usuarios    convencionales de este tipo de documentos desconocen las capacidades de programación    que pueden estar accesibles para el desarrollo de aplicaciones basadas en Web    utilizando el formato FDF y por ello en este artículo se describe MEDUSA, un    software con la funcionalidad de plataforma de compras, que utiliza las capacidades    del Adobe Acrobat® para realizar operaciones con bases de datos y servidores    Web, a través de una Intranet o de la Internet, interactuando además con ASP.NET® para  la comunicación entre el cliente, el servidor y la base de datos.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Este artículo está organizado de la siguiente manera:    en la sección 2 se describen los formularios interactivos y la tecnología FDF,    que hacen parte de los PDF, en la sección 3 se muestran algunas de las características    de ASP.NET®, en la sección 4 se describe MEDUSA, una plataforma de compras    basada en tecnología PDF y ASP.NET® y en la sección 5 se presentan algunas  conclusiones y trabajos futuros.</font></p>     <p><font size="3" face="Verdana, Arial, Helvetica, sans-serif"><b>2. LOS FORMULARIOS  INTERACTIVOS Y LA TECNOLOGÍA PDF</b></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Los documentos      PDF tienen como principal finalidad la portabilidad, que implica la independencia      del documento de la aplicación    en la cual fue realizada (ya sea procesador de texto, hoja de cálculo, manejador    de presentaciones, constructor de páginas web, etc.) y su acceso de sólo lectura,    sin posibilidad de modificación, a menos que se cuente con un intérprete que    pueda tomar el documento y editarlo (como por ejemplo el Adobe Acrobat®).  El    acceso de sólo lectura se ha hecho común debido a la distribución gratuita  de productos para lectura de documentos PDF (como por ejemplo el Acrobat Reader ®).</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Otra característica importante de los documentos    PDF tiene que ver con el manejo profesional que realiza de la información con  destino a su visualización, que incluye:</font></p> <ul>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Preferencias     para la presentación, tales como la forma como se visualiza o se imprime un     documento, que serán universales independientemente del browser o de la impresora     de que se disponga.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Navegabilidad     en el documento, mediante la incorporación de ciertas marcas en el documento     y una estructura jerárquica que facilita la ubicación rápida de los diferentes     temas del documento.</font></li>       ]]></body>
<body><![CDATA[<li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Anotaciones,     que asocian una región de texto con un objeto, que puede ser un sonido, un     movimiento o una aclaración interactiva.</font></li>     </ul>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">A partir de la      versión 1.2. del PDF, los documentos    realizados con esta tecnología presentan la posibilidad de incluir formularios    interactivos.  Este cambio se generó   debido a la dificultad manifiesta de modificación de ciertos elementos de los    documentos PDF por parte de los usuarios finales, que sólo era posible mediante    aplicaciones tipo Adobe Acrobat® que posibilitaran la edición de dichos documentos.  Los    formularios interactivos, también denominados AcroForms (Adobe Systems Incorporated,    2003) se conforman con conjuntos de campos que pueden ser llenados de manera    interactiva por el usuario, de la misma manera que se realiza el llenado de    formularios en aplicaciones basadas en Web en lenguajes como el HTML.  Los    formularios interactivos soportan los siguientes tipos de campos (Adobe Systems  Incorporated, 2001):</font></p> <ul>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Campos     de Botón, que representan controles interactivos en la pantalla que el usuario     puede manipular con el mouse o con el teclado, tales como botones, cajas de     chequeo y botones radio.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Campos     de texto, que son cajas o espacios en los cuales el usuario puede ingresar     textos a partir del teclado.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Campos     de selección, que contienen algunos ítemes de texto, de los cuales al menos     uno puede ser seleccionado como valor del campo, como por ejemplo cajas de     listas y cajas de combo.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Campos     de firma, que representan “firmas” electrónicas para la autenticación de la     identidad de un usuario y la validez de los contenidos de los documentos.</font></li>     </ul>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Para estos tipos de campo, los formularios interactivos   soportan cuatro tipos de acciones especiales:</font></p> <ul>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Acciones     de envío de formulario, que transmiten los nombres y valores de los campos     del formulario interactivo para especificar una URL, que posteriormente lo     procese y devuelva alguna respuesta.</font></li>       ]]></body>
<body><![CDATA[<li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Acciones     de Borrado, que llevan los campos del formulario a sus valores por defecto.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Acciones     de importación, que importan datos incluidos en archivos del tipo FDF en la     forma interactiva a partir del archivo especificado.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Acciones     de Scripts de Java, que permiten la compilación y ejecución de un script de     Java a partir del intérprete.</font></li>     </ul>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Los tipos de      campos de los formularios interactivos y sus posibles acciones se crean      mediante un escritor de archivos PDF, como el Adobe Acrobat®.  En la <a href="#fig01">Figura      1</a> se muestra la interfaz de creación de tipos    de campo de esta aplicación. Igualmente, en la <a href="#fig02">Figura 2</a> se muestran las diferentes  acciones que se pueden asociar con un tipo de campo de formulario determinado.</font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="fig01"></a><img src="/img/revistas/dyna/v72n146/a07fig01.gif">    <br>   Figura 1.</b> Interfaz      de creación de tipos de campo de  formularios interactivos.</font>    <br>  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Figure  1.  </b>Interface of creation of types of field  of interactive forms.</font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="fig02"></a><img src="/img/revistas/dyna/v72n146/a07fig02.gif">    <br>   Figura 2.</b> Interfaz de acciones que se pueden asociar  con tipos de campo de formularios.</font>    ]]></body>
<body><![CDATA[<br>  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Figure  2.  </b>Interface of actions that can be associated  with types of field of forms.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Nótese que, además de las acciones convencionales    que se pueden asociar con los controles de formularios enunciados, también    se pueden asociar scripts de Java, que le dan a los formularios interactivos  la posibilidad de programación mediante ese lenguaje.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Los formularios      interactivos utilizan un formato de archivo denominado FDF para el envío de datos a un servidor, la recepción    de una respuesta y su incorporación en el formulario interactivo (Padoba, 2002).  El    formato FDF posee conjuntos de herramientas que permiten la interacción con    algunos lenguajes y tecnologías tales como C++, Java y  Perl, y posee también    herramientas para interactuar con controles ActiveX, que le permiten la comunicación    con scripts de lenguajes basados en Web, como ASP® y ASP.NET®, conjuntamente  con Internet Information Server (Adobe Systems Incorporated, 2003b).</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Para la interacción con controles ActiveX, FDF    posee cuatro tipos de métodos, que se listan y describen en las <a href="#tab01">Tablas    <st1:metricconverter ProductID="1 a" w:st="on">  1</a> a <a href="#tab04">4</a> consignadas en el anexo (Adobe Systems Incorporated, 2003b).</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">El uso de los      formularios interactivos combinados con la tecnología FDF presenta algunas ventajas comparativas en relación con  su manejo homólogo en HTML:</font></p> <ul>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> El     archivo PDF que contiene los formularios interactivos al igual que el archivo     FDF que los procesa podrían estar residentes en el cliente o ser descargados     únicamente una vez, tal como se hace con los applets, de modo que podrían estar     disponibles sin conexión con su funcionalidad plena.  En el caso de los archivos     HTML, cada vez que sean invocados por el cliente deben ser descargados desde     el servidor.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> La     apariencia de los formularios interactivos en PDF con FDF es la misma independientemente     del browser que se utilice.  Esto no ocurre con HTML, donde las preferencias     del browser inciden en la manera de visualización de los formularios.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Los     documentos PDF pueden hacer uso de la opción de firma digital, que garantiza     la autenticidad de la autoría de un documento y el manejo de opciones de seguridad.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Los     documentos PDF incluyen todos los elementos necesarios para la visualización,     tales como imágenes, tablas, etc.  Los documentos HTML usualmente deben incluir     archivos anexos que pueden no funcionar de manera adecuada en el momento de     la descarga.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> La     navegabilidad de los documentos PDF se garantiza de manera automática desde     su creación.  En HTML la navegabilidad se debe construir desde el código con     hipervínculos o creando marcos (frames) en los documentos, los cuales presentan     dificultades de visualización en algunos browser.</font></li>     ]]></body>
<body><![CDATA[</ul>     <p><font size="3" face="Verdana, Arial, Helvetica, sans-serif"><b>3. ASP.NET®: TECNOLOGÍA  PARA EL DESARROLLO DE APLICACIONES WEB</b></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">ASP® (Active Server Pages) es una tecnología en    la cual es posible desarrollar aplicaciones ejecutables desarrolladas bajo    VBScript y JavaScript (MacDonald, 2003) que corren bajo un servidor Web y que    permiten tener acceso programático a los recursos de éste, para poder realizar    un amplio conjunto de funciones; además, ASP® brinda la posibilidad de realizar    cálculos y ejecutar secciones completas de código de una página antes de que   ésta sea enviada al cliente.  El gran inconveniente de esta tecnología radica    en el hecho de que las herramientas para la depuración del código brindadas,  no siempre funcionan de la forma esperada.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">ASP.NET® (Kauffman et al, 2001) es una evolución    del ASP® y se constituye en un ambiente de programación construído sobre el    entorno NGWS (New Generation Windows Services), que permite crear poderosas    aplicaciones de Internet y Servicios Web que corren sobre IIS (Internet Information    Server). ASP.NET® no sólo sirve para la creación de aplicaciones Web (que bien    podrían ser creadas usando otras tecnologías como CGI);  además de esta funcionalidad,    se pueden resaltar en ASP.NET® sus capacidades de integración con el servidor    Microsoft, que posibilita el acceso a datos y el control de herramientas de  seguridad (Webb, 2002).</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Una aplicación ASP.NET® incluye  las siguientes partes (Microsoft Corporation 2002):</font></p> <ul>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Web     Forms (Formularios tipo Web) o páginas aspx.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Código     asociado con el Web Form, el cual queda al lado del servidor.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Los     archivos de configuración, los cuales son archivos XML, que definen las características     predeterminadas de la aplicación y el servidor Web.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> El     archivo Global.asax, el cual contiene el código necesario para los eventos     que se dan a nivel de la aplicación cuando es iniciado el ASP.NET®.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Enlaces     a XML Web Service que permiten que la aplicación envíe y reciba datos desde     un XML Web Service.</font></li>       ]]></body>
<body><![CDATA[<li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Conectividad     a bases de datos.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Sistema     de caché, que permite que la aplicación retorne más rápidamente una Web Form.</font></li>     </ul>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">ASP.NET® ofrece  ventajas importantes sobre los modelos previos de desarrollo para Internet:</font></p> <ul>       <li> <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Mayor     Eficiencia.  </b>ASP.NET® corre código compilado sobre el entorno NGWS en     el servidor. Distinto a sus predecesores interpretados, ASP.NET® usa amarres     tempranos (&quot;early binding&quot;), así     como compilación justo a tiempo (&quot;just-in-time compilation&quot;), optimización     nativa, y servicios de caché, sin configuración adicional. Para los desarrolladores,     esto significa eficiencia superior antes de escribir la primera línea de código. </font></li>       <li> <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Poder     y Flexibilidad.  </b>Porque ASP.NET®     está basado en el Entorno Común de Ejecución de Lenguajes (Common Language     Runtime, o &quot;CLR&quot;), el poder y la flexibilidad de la plataforma completa     está disponible para los desarrolladores. Las librerías de Clases del CLR,     la Mensajería, y las soluciones de Acceso a Datos, son accesibles al través     de Internet.  ASP.NET® permite el uso de una gran variedad de lenguajes de     programación y, por tanto, se puede escoger el mejor lenguaje para su aplicación,     o dividir su aplicación en varios lenguajes.  Mas aún, la interoperabilidad     del CLR facilita la migración a ASP.NET®.</font></li>       <li> <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Escalabilidad     y Disponibilidad.  </b>ASP.NET® ha sido diseñado para la escalabilidad con     características específicamente dirigidas a mejorar el funcionamiento de     servidores unidos (clustered) y de servidores con procesadores múltiples.     Los procesos del servidor son vigilados y administrados por el entorno del     ambiente de ejecución de ASP.NET® de modo que, si algún proceso se entorpece     o se detiene, un nuevo proceso puede ser creado para reemplazarlo, lo cual     ayuda a mantener la disponibilidad de las aplicaciones para manejar solicitudes     de servicio.</font></li>       <li> <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Facilidad     de Administración.  </b>ASP.NET® usa un sistema jerárquico de configuración,     basado en archivos de texto, que simplifica la aplicación de parámetros de     configuración al servidor y sus aplicaciones. Debido a que la información     de configuración es almacenada como texto, nuevos parámetros pueden ser configurados     sin recurrir a herramientas de administración locales. Esta filosofía de &quot;cero     administración local&quot; también se extiende al despliegue de aplicaciones     de ASP.NET® a un servidor, que se realiza sencillamente copiando los archivos     necesarios al servidor.  No hay que reiniciar el servidor, ni siquiera para     reemplazar código compilado que ya está     en servicio.</font></li>     </ul>     <p> <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Otras  Ventajas (Webb, 2002)</b></font></p> <ul>       ]]></body>
<body><![CDATA[<li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Acceso al Framework     de .NET con extensión del API de Windows, que provee librerías estándar para     el desarrollo de aplicaciones, las cuales se pueden usar independientemente     del sistema Windows que se utilice (a partir de Windows 98).</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Integración con     Microsoft ADO.NET® para proporcionar acceso a bases de datos, además de herramientas     para el diseño de las mismas.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Soporte total     para XML (Extensible Markup Language – Lenguaje de Marcado Extensible), CSS     (Cascade Style Sheet - Hojas de estilo en cascada) y otros nuevos estándares     establecidos.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Permite el       desarrollo multilenguaje, ya que las aplicaciones pueden ser realizadas     en C# o VB.NET®.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En relación con     ASP®, ASP.NET® permite acelerar los tiempos de desarrollo y ofrece un modelo     más consistente, además de que separa la capa de presentación y la lógica del     negocio, algo que no existía en ASP®.</font></li>     </ul>     <p><font size="3" face="Verdana, Arial, Helvetica, sans-serif"><b>4. MEDUSA:  UNA PLATAFORMA DE COMPRAS CON TECNOLOGÍA PDF Y ASP.NET®</b></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">MEDUSA es una plataforma de compras que utiliza  un esquema multicapas, que incluye:</font></p> <ul>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Un     cliente con Internet Explorer® 6.0 y Acrobat Reader® 5.1 o superior para poder     utilizar la aplicación.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Un     servidor con sistema operativo Windows XP® profesional con Servidor Web Internet     Information Server® 5.0, para la administración de las páginas ASP y PDF.</font></li>       ]]></body>
<body><![CDATA[<li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Scripts     de ASP® y ASP.NET® para la interacción entre el cliente, el servidor y la base     de datos.</font></li>     </ul>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">El desarrollo     se realizó como un trabajo de grado  de Ingeniería Informática para el Politécnico Colombiano Jaime Isaza Cadavid,  partiendo de una necesidad planteada por VSDC s. a. para potencializar la interacción  de los archivos en PDF interactuando con bases de datos y tecnología Web.  Se  utilizó la Metodología para el desarrollo de Software de la Escuela de Sistemas  de la Universidad Nacional de Colombia, descrita por Jiménez (2003).</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>4.1. DESCRIPCIÓN  GENERAL DE MEDUSA</b></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">MEDUSA permite,     entre otras, la realización las  siguientes funciones:</font></p> <ul>      <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Compras  interactivas de productos.</font></li>      <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Registro  y Actualización de Clientes.</font></li>      <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Elaboración  de Cotizaciones.</font></li>      <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> Elaboración  de Facturas.</font></li>     </ul>     ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En la <a href="#fig03">Figura       3</a>  se presenta, a modo de ejemplo, el modelo de procesos correspondientes al   registro de clientes y cotizaciones.  Igualmente,  en la <a href="#fig04">Figura 4</a> se presenta el modelo Entidad – Relación completo de MEDUSA.</font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="fig03"></a><img src="/img/revistas/dyna/v72n146/a07fig03.gif">    <br>   Figura       3.</b> Modelo de Procesos de la Gesti&oacute;n de Clientes y Cotizaciones       de MEDUSA.</font>    <br>    <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Figure 3.&nbsp; </b>Model of Processes of the Management of Clients and Quotations of MEDUSA.</font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="fig04"></a><img src="/img/revistas/dyna/v72n146/a07fig04.gif">    <br>   Figura       4.</b>&nbsp; Modelo Entidad &ndash; Relaci&oacute;n de MEDUSA.</font>    <br>   <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Figure 4.&nbsp; </b>Model Organization - Relation of MEDUSA</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">La interacción con el software se realiza mediante  un conjunto de documentos PDF ubicados en el servidor y que invocan procedimientos  en ASP® y ASP.NET®, a medida que se va realizando la navegación entre los documentos  PDF, como se describe en la sección 4.2.  Los documentos PDF emplean formularios  para realizar el ingreso de los diferentes valores requeridos y para la navegación  a través de las demás interfaces del software (que también son documentos PDF).  En  la <a href="#fig05">figura 5</a> se muestra la interfaz de la plataforma de compra de productos  y en la <a href="#fig06">figura 6</a> el ingreso de Clientes en MEDUSA.</font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="fig05"></a><img src="/img/revistas/dyna/v72n146/a07fig05.gif">    <br>   Figura       5.</b> Interfaz (Documento en PDF) para la plataforma de compra de productos       MEDUSA.</font>    ]]></body>
<body><![CDATA[<br>    <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Figure 5.&nbsp; </b>Interface (Document in pdf) for the platform of product purchase MEDUSA.</font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="fig06"></a><img src="/img/revistas/dyna/v72n146/a07fig06.gif">    <br>   Figura       6.</b>&nbsp; Interfaz (Documento PDF) para el ingreso de Clientes en MEDUSA.</font>    <br>    <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Figure 6.&nbsp; </b>Interface (Document pdf) for the entrance of Clients in MEDUSA.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>4.2. INTEGRACIÓN  DE TECNOLOGÍAS PDF, ASP® Y ASP.NET®</b></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En las secciones     2 y 3 se ha presentado el soporte teórico para el manejo de los formularios en tecnología PDF que interactúa  con ASP® y ASP.NET® para el desarrollo de aplicaciones Web que posibiliten  la transmisión de información por Internet, como lo harían páginas de HTML.  En  esta sección se muestra la manera como MEDUSA emplea estas tecnologías de manera  conjunta e integrada para el manejo de una plataforma de compras.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En MEDUSA las     interfaces con el usuario se encuentran en archivos PDF que poseen formularios     que realizan el intercambio de información  entre el usuario y una base de datos remota utilizando tecnologías ASP® y ASP.NET®,  como se explica y ejemplifica a continuación.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">La interfaz correspondiente     a la plataforma para la compra de productos que se muestra en la <a href="#fig05">Figura     5</a>  fue desarrollada siguiendo los lineamientos presentados en la sección 2 de este artículo.  Cuando el usuario  invoca esta interfaz dentro de la aplicación, el archivo PDF que la contiene  realiza una consulta a la base de datos para hallar las categorías existentes  por producto; en el momento de creación del documento PDF en Adobe Acrobat®,  esta funcionalidad se incorpora mediante un script desarrollado en ASP® que  se incluye mediante la opción Page Action, que se encuentra en el menú Document  del Adobe Acrobat®, la cual despliega el cuadro de diálogo que se muestra en  la <a href="#fig07">Figura 7</a>.</font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="fig07"></a><img src="/img/revistas/dyna/v72n146/a07fig07.gif">    <br>   Figura 7. </b>Cuadro     de diálogo de acciones que se pueden  asociar con la carga o cierre de una Página PDF.    ]]></body>
<body><![CDATA[<br> </font><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Figure  7.  </b>Picture of dialogue of actions that can  be associated with the load or closes of a Page pdf.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Cuando se oprime     el botón Add, se invoca la interfaz  de la <a href="#fig02">Figura 2</a>, en la cual se debe seleccionar Submit Form para obtener el  cuadro de diálogo de la <a href="#fig08">Figura 8</a>, en el cual se ingresa la URL correspondiente  a un archivo sobre el cual se ha escrito previamente el script que se incluye  a continuación, el cual consulta los datos existentes en la base de datos y  los convierte a un formato que el formulario PDF pueda entender, de forma que  la información correspondiente a las categorías existentes por producto se  pueda desplegar en pantalla como se muestra en la <a href="#fig05">Figura 5</a> (Software, Impresoras,  Insumos, Computadores).</font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="fig08"></a><img src="/img/revistas/dyna/v72n146/a07fig08.gif">    <br>   Figura 8.</b> Cuadro     de diálogo de acciones asociadas  con la transmisión a través de la Web de la información contenida en un formulario  PDF.</font>    <br>  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Figure  8.  </b>Cuadro     de diálogo de acciones asociadas  con la transmisión a través de la Web de la información contenida en un formulario  PDF.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En el código se han incorporado comentarios en  negrilla para facilitar la lectura.  Los comandos FDF que se emplean en la  realización del Script pueden ser consultados en las tablas  <st1:metricconverter ProductID="1 a" w:st="on">  1 a 4 del anexo.  Una completa guía de referencia del lenguaje ASP® se puede  consultar en Kilcullen (2000).  Otros elementos necesarios para la comprensión  del código son:</font></p> <ul>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> RecordSet     es una tabla temporal que emplea el ASP® para ir guardando los resultados de     una consulta específica que se realice dentro de la base de datos.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> tblCategorias     es una tabla que procede de la entidad Categorías de la <a href="#fig04">Figura     4</a>.</font></li>     </ul>     <p><font size="2" face="Courier New, Courier, mono">&lt;%</font>    ]]></body>
<body><![CDATA[<br>   <font size="2" face="Courier New, Courier, mono">Sub ProcessQuery ()</font>    <br>   <font size="2" face="Courier New, Courier, mono"> Dim SQL, dbContinue, StatusErcMsg</font>    <br> <font size="2" face="Courier New, Courier, mono"> dim text</font>    <br> <font size="2" face="Courier New, Courier, mono"> dim i </font>    <br> <font size="2" face="Courier New, Courier, mono"> i=0</font>    <br> <font size="2" face="Courier New, Courier, mono"><b> 'Cadena que se usará para consultar en la base de datos</b></font>    <br> <font size="2" face="Courier New, Courier, mono"> SQL = &quot;SELECT * From tblCategorias&quot;</font>    <br> <font size="2" face="Courier New, Courier, mono"> Set RecSet = DataConn.Execute(SQL)</font>    <br> <font size="2" face="Courier New, Courier, mono"> dbContinue = True</font>    <br> <font size="2" face="Courier New, Courier, mono"><b> 'Inicializa Objeto que recibirá información tipo FDF </b></font>    ]]></body>
<body><![CDATA[<br> <font size="2" face="Courier New, Courier, mono"><b> 'propia para mostrar en el Formulario PDF</b></font>    <br> <font size="2" face="Courier New, Courier, mono"> currentField = _</font>    <br> <font size="2" face="Courier New, Courier, mono"> FDFin.FDFNextFieldName(&quot;&quot;)  </font>    <br> <font size="2" face="Courier New, Courier, mono"> Do While dbContinue=True</font>    <br> <font size="2" face="Courier New, Courier, mono">     dbCurrentField = Replace(currentField,_</font>    <br> <font size="2" face="Courier New, Courier, mono">                             CStr(i), &quot;&quot;)</font>    <br> <font size="2" face="Courier New, Courier, mono">   if dbCurrentField=&quot;strNombre&quot; then</font>    <br> <font size="2" face="Courier New, Courier, mono"><b>   'No encontró Información ascociada en la base de datos</b></font>    <br> <font size="2" face="Courier New, Courier, mono">   FDFout.FDFSetValue currentField, _</font>    <br> <font size="2" face="Courier New, Courier, mono">   &quot;Categoria no existe&quot;, False</font>    ]]></body>
<body><![CDATA[<br> <font size="2" face="Courier New, Courier, mono">   else</font>    <br> <font size="2" face="Courier New, Courier, mono">   FDFout.FDFSetValue currentField, _</font>    <br> <font size="2" face="Courier New, Courier, mono">   &quot;Producto existe&quot;, False</font>    <br> <font size="2" face="Courier New, Courier, mono"><b>   'Muestra en PDF el campo de la base de datos</b></font>    <br> <font size="2" face="Courier New, Courier, mono"><b>   'Captura información existente en el Recordset para luego mostrarla en el formulario PDF</b></font>    <br> <font size="2" face="Courier New, Courier, mono">   FDFout.FDFSetValue currentField, _</font>    <br> <font size="2" face="Courier New, Courier, mono">   RecSet(dbCurrentField).Value, False</font>    <br> <font size="2" face="Courier New, Courier, mono">   end if</font>    <br> <font size="2" face="Courier New, Courier, mono"><b>    'Avanza       una posición dentro del RecordSet</b></font>    <br> <font size="2" face="Courier New, Courier, mono">   RecSet.MoveNext</font>    ]]></body>
<body><![CDATA[<br> <font size="2" face="Courier New, Courier, mono">   i=i+1</font>    <br> <font size="2" face="Courier New, Courier, mono">   end if</font>    <br> <font size="2" face="Courier New, Courier, mono">   if dbCurrentField=&quot;numId&quot; then</font>    <br> <font size="2" face="Courier New, Courier, mono"><b>      'Consulta por el ID de la Categoria</b></font>    <br> <font size="2" face="Courier New, Courier, mono">      FDFout.FDFSetValue currentField, _</font>    <br> <font size="2" face="Courier New, Courier, mono">      RecSet(dbCurrentField).Value, False</font>    <br> <font size="2" face="Courier New, Courier, mono"><b>   'Avanza       una posición dentro del </b></font>    <br> <font size="2" face="Courier New, Courier, mono"><b>                  'RecordSet</b></font>    <br> <font size="2" face="Courier New, Courier, mono">   RecSet.MoveNext</font>    <br> <font size="2" face="Courier New, Courier, mono">   i=i+1</font>    ]]></body>
<body><![CDATA[<br> <font size="2" face="Courier New, Courier, mono">   end if</font>    <br> <font size="2" face="Courier New, Courier, mono">    on error resume next</font>    <br> <font size="2" face="Courier New, Courier, mono"><b>     'Verifica el valor del próximo campo</b></font>    <br> <font size="2" face="Courier New, Courier, mono"><b>     'Existente en el PDF</b></font>    <br> <font size="2" face="Courier New, Courier, mono">     currentField = _</font>    <br> <font size="2" face="Courier New, Courier, mono">     FDFin.FDFNextFieldName(currentField)</font>    <br> <font size="2" face="Courier New, Courier, mono">     If currentField = &quot;&quot; Or Err.Number &lt;&gt; 0 Then </font>    <br> <font size="2" face="Courier New, Courier, mono">         dbContinue=False </font>    <br> <font size="2" face="Courier New, Courier, mono">     End If</font>    <br> <font size="2" face="Courier New, Courier, mono">    <st1:place w:st="on"> Loop</font>    ]]></body>
<body><![CDATA[<br> <font size="2" face="Courier New, Courier, mono"><b>  'Envia la informacion Al PDF</b></font>    <br> <font size="2" face="Courier New, Courier, mono"> Response.BinaryWrite _</font>    <br> <font size="2" face="Courier New, Courier, mono">              (FDFout.FDFSaveToBuf)</font>    <br> <font size="2" face="Courier New, Courier, mono">End Sub    </font>    <br> <font size="2" face="Courier New, Courier, mono">%&gt;</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">La interfaz correspondiente     al Registro de clientes que se muestra en la <a href="#fig06">Figura 6</a> permite el ingreso     en la base de datos de la información de los clientes que utilicen la plataforma de compras. Esta interfaz  consiste en un formulario que también sigue los lineamientos de la sección  2, el cual, mediante el botón Ingresar datos, se comunica con un código desarrollado  en ASP.NET® que está alojado en un servidor Web. Este código se encarga de  capturar la información procedente del Formulario PDF, establece comunicación  con una base de datos y registra la información, realizando validaciones con  el fin de mantener la integridad de los datos y evitar redundancia en los mismos.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Para lograr la     interacción entre el formulario  PDF y el código ASP.NET®, al botón Ingresar Datos se le agrega una acción invocando  la interfaz de la <a href="#fig02">Figura 2</a> y presionando Submit Form para llegar al cuadro  de diálogo de la <a href="#fig08">Figura 8</a>.  Posteriormente, se le especifica en qué formato  se envían los datos (FDF o HTML); en MEDUSA se ha embebido el código ASP.NET® en  un archivo HTML.  El código ASP.NET®  que se muestra a continuación se encarga  de procesar tal información proveniente desde el formulario para luego realizar  el registro de la misma en la base de datos.</font></p>     <p><font size="2" face="Courier New, Courier, mono">If blnDocEnc = False And _</font><font face="Courier New, Courier, mono">    <br>   <font size="2">            blnNomusuarioEnc = False _</font>    <br> <font size="2">            And blnContraEnc = False Then</font>    ]]></body>
<body><![CDATA[<br> <font size="2"><b>     'Cadena que permite realizar la inserción </b></font>    <br> <font size="2"><b>     'de la información en la base de datos</b></font>    <br> <font size="2">     sSQL =  &quot;INSERT INTO tblCLIENTES &quot; &amp; _</font>    <br>  <font size="2">    &quot;(strDocIdent,strNombre,strApellido,_</font>    <br>  <font size="2">            numTelefono,strEmail, _numCelular,numFax,_</font>    <br> <font size="2">            datFechaIngreso,strDireccion,numIdCiudad,_</font>    <br> <font size="2">            strNombreUsuario, strContraseña)&quot; &amp; _</font>    <br>   <font size="2">    &quot;values ('&quot; &amp; strDocIdent &amp; &quot;','&quot; &amp;  strNombre _</font>    <br>  <font size="2">     &amp; &quot;','&quot; &amp; strApellido  &amp; &quot;','&quot; &amp; strTelefono _</font>    <br>  <font size="2">     &amp; &quot;' ,'&quot; &amp; strEmail &amp; &quot;','&quot; &amp; strCelular  _</font>    ]]></body>
<body><![CDATA[<br>  <font size="2">     &amp; &quot;','&quot; &amp; strFax &amp;  &quot;', '&quot; &amp; DatFechaIng _</font>    <br>  <font size="2">     &amp; &quot;',&quot; &amp;&quot; '&quot;  &amp; strDireccion &amp; &quot;','&quot; &amp; _</font>    <br>  <font size="2">     intNumCiud &amp; &quot;', '&quot; &amp; strNomusuario &amp; _</font>    <br>  <font size="2">    &quot;','&quot; &amp; strContraseña &amp; &quot;')&quot;</font>    <br>   <font size="2"><b>     'Conexión con la base de datos</b></font>    <br> <font size="2">     OdbcConexion = New _</font>    <br> <font size="2">     OdbcConnection(&quot;DSN=BDMedusa&quot;)</font>    <br> <font size="2"><b>     'Abrir       conexión con la base de datos</b></font>    <br> <font size="2">     OdbcConexion.Open()</font>    <br> <font size="2">     Try</font>    ]]></body>
<body><![CDATA[<br>   <font size="2"><b>             'Ejecución del comando para ingresar </b></font>    <br> <font size="2"><b>             'la información</b></font>    <br> <font size="2">        OdbcComando = New _</font>    <br> <font size="2">        OdbcCommand(sSQL, OdbcConexion)</font>    <br> <font size="2">        OdbcComando.ExecuteNonQuery()</font>    <br> <font size="2"><b>        'Cerrar conexión con la base de datos</b></font>    <br> <font size="2">        OdbcConexion.Close()</font>    <br> <font size="2">     Catch     ex As Exception</font>    <br>     <font size="2">        blnHabilita = False</font>    <br> <font size="2">        Response.Write(ex.Message)</font>    ]]></body>
<body><![CDATA[<br> <font size="2">     End     Try</font>    <br>   <font size="2">  Else</font>    <br>   <font size="2"><b>      'Mostrar mensajes de éxito o </b></font>    <br> <font size="2"><b>      'error en la operación</b></font>    <br> <font size="2">     If     blnDocEnc = True Then</font>    <br>   <font size="2">        lblMensaje.Text = _</font>    <br> <font size="2">       &quot;Documento Identificación ya existe&quot;</font>    <br> <font size="2">     Else</font>    <br> <font size="2">        If     blnNomusuarioEnc = True Then</font>    <br>   <font size="2">           lblMensaje.Text = _</font>    ]]></body>
<body><![CDATA[<br> <font size="2">           &quot;Nombre de usuario ya existe&quot;</font>    <br> <font size="2">        Else</font>    <br> <font size="2">           If blnContraEnc = True Then</font>    <br> <font size="2">              lblMensaje.Text = _</font>    <br> <font size="2">              &quot;Nombre de usuario ya existe&quot;</font>    <br> <font size="2">           End If</font>    <br> <font size="2">        End If</font>    <br> <font size="2">     End     If</font>    <br>     <font size="2">  End     If</font>    <br> <font size="2">End If</font></font></p>     ]]></body>
<body><![CDATA[<p><font size="2" face="Courier New, Courier, mono">If blnHabilita = True Then</font><font face="Courier New, Courier, mono">    <br>   <font size="2">   lblMensaje.Text = _</font>    <br> <font size="2">   &quot;Cliente Registrado _Exitosamente&quot;</font>    <br> <font size="2">End If</font></font></p>     <p><font size="3" face="Verdana, Arial, Helvetica, sans-serif"><b>5. CONCLUSIONES  Y TRABAJOS FUTUROS</b></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Mediante la tecnología PDF, en conjunción con FDF,  ASP® Y ASP.NET® es posible realizar aplicaciones Web como MEDUSA, el trabajo  descrito en este artículo, con ventajas sobre las aplicaciones Web convencionales  en lo relativo a la independencia del formato de presentación del browser de  que se disponga, la facilidad de navegación y las demás ventajas que poseen  los documentos PDF.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En este trabajo     se han utilizado las capacidades de interacción de FDF con controles ActiveX mediante los métodos que soportan  esa tecnología.  De manera similar se puede interactuar con lenguajes como  C, C++ y Perl, o incluso con otros formatos tipo ASP® como el CGI.PHP, lo que  se puede constituir en uno de los posibles trabajos futuros que continúen esta  línea.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">La tecnología PDF posee otras capacidades especiales,  como la definición de archivos FDF que pueden realizar la comunicación con  el servidor incorporando Scripts en lenguaje Java, que no requieren el uso  de tecnologías tipo ASP® y ASP.NET® para establecer la comunicación con la  base de datos.  Estas capacidades especiales podrían dinamizar el manejo de  las aplicaciones basadas en tecnología Web, pues no sería necesario tener instalados  programas específicos en los clientes para poder interactuar adecuadamente  con bases de datos remotas.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">No se exploró en MEDUSA el manejo de las opciones  avanzadas de seguridad que pueden hacer parte de los formularios PDF, que pueden  contribuir a evitar posibles alteraciones de los mismos.  La parametrización  de las opciones de seguridad que se puede lograr con el uso de algoritmos especiales  que se pueden incorporar al manejo de firma digital de la tecnología PDF se  constituye en otra de las posibles alternativas a explorar en el desarrollo  de aplicaciones Web usando tecnología PDF.</font></p>     <!-- ref --><p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>REFERENCIAS</b></font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000242&pid=S0012-7353200500020000700001&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref -->[2]</b></font></td> <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">ADOBE SYSTEMS     INCORPORATED. PDF Reference. Adobe® Portable Document Format version 1.5.   1149 p. 2003.</font></td></tr> <tr><td align="right" valign=top><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000243&pid=S0012-7353200500020000700002&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref -->[3]</b></font></td> <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Adobe Systems     Incorporated. FDF Toolkit Overview and Reference. Adobe® Technical Note #5194.   156 p. 2003b.</font></td></tr> <tr><td align="right" valign=top><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000244&pid=S0012-7353200500020000700003&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref -->[4]</b></font></td> <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">BIENZ, T. y COHN,   R. Portable Document Format Reference Manual. Addison – Wesley. 214 p. 1993.</font></td></tr> <tr><td align="right" valign=top><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000245&pid=S0012-7353200500020000700004&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref -->[5]</b></font></td> <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> JIMÉNEZ, C. Guía Metodológica de Desarrollo o Adaptación   de Software. Universidad Nacional de Colombia. 152 p. 2003.</font></td></tr> <tr><td align="right" valign=top><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000246&pid=S0012-7353200500020000700005&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref -->[6]</b></font></td> <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">KAUFFMAN, J.     et al. Beginning ASP.NET databases using VB.NET. Editorial Wrox, Indianápolis.   459 p. 2003.</font></td></tr> <tr><td align="right" valign=top><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000247&pid=S0012-7353200500020000700006&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref -->[7]</b></font></td> <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">KILCULLEN, J. Active Server Pages. IDG Books World Wide, Inc. 301p. 2000.</font></td></tr> <tr><td align="right" valign=top><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000248&pid=S0012-7353200500020000700007&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref -->[8]</b></font></td> <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">MACDONALD, M. Microsoft Visual Basic.Net Programers CookBook. Microsoft Press. 774p. 2003.</font></td></tr> <tr><td align="right" valign=top><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000249&pid=S0012-7353200500020000700008&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref -->[9]</b></font></td> <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">MICROSOFT CORPORATION. Microsoft OfficialCurriculum. MSDN Library, Microsoft Press. 2002.</font></td></tr> <tr><td align="right" valign=top><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000250&pid=S0012-7353200500020000700009&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref -->[10]</b></font></td> <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> PADOBA, T. Creating Adobe Acrobat Forms. Hungry Minds, Inc. 591 p. 2002</font></td></tr> <tr><td align="right" valign=top><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000251&pid=S0012-7353200500020000700010&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref -->[11]</b></font></td> <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">WEBB, J. Developing Web Aplications With Microsoft VISUAL BASIC.NET and Microsoft VISUAL C#.NET. Microsoft Press. 756p. 2002</font></td></tr> </table>    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000252&pid=S0012-7353200500020000700011&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><p align="center"><font size="3" face="Verdana, Arial, Helvetica, sans-serif"><b>ANEXO:       TABLAS DE MÉTODOS PARA CONTROLES ACTIVEX CON FDF</b></font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>ANNEXED: TABLES OF METHODS FOR CONTROLS ACTIVEX WITH FDF</b></font></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="tab01"></a>Tabla 1.</b>  Métodos   expuestos por el objeto FDFApp.    <br>   <b>Table 1. </b> Methods exposed by the FDFApp object.</font>    <br> <img src="/img/revistas/dyna/v72n146/a07tab01.gif"></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="tab02"></a>Tabla 2.</b>  Métodos generales.    <br> <b>Table 2. </b> General methods.</font>    <br> <img src="/img/revistas/dyna/v72n146/a07tab02.gif"></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="tab03"></a>Tabla 3.</b>  Métodos que analizan datos FDF.    <br> <b>Table 3. </b> Methods that analyze data FDF.</font>    ]]></body>
<body><![CDATA[<br> <img src="/img/revistas/dyna/v72n146/a07tab03.gif"></p>     <p align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><a name="tab04"></a>Tabla 4.</b> Métodos que generan datos FDF.    <br> <b>Table 4. </b> Methods that generate data FDF.</font>    <br> <img src="/img/revistas/dyna/v72n146/a07tab04.gif"></p>      ]]></body><back>
<ref-list>
<ref id="B1">
<label>1]</label><nlm-citation citation-type="book">
<collab>ADOBE SYSTEMS INCORPORATED</collab>
<source><![CDATA[Adobe Acrobat® 5.0 Classroom in a book]]></source>
<year>2001</year>
<page-range>369</page-range><publisher-name><![CDATA[Editorial Adobe®.]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B2">
<label>2</label><nlm-citation citation-type="">
<collab>ADOBE SYSTEMS INCORPORATED</collab>
<source><![CDATA[Adobe® Portable Document Format version 1.5.]]></source>
<year>2003</year>
<page-range>1149</page-range></nlm-citation>
</ref>
<ref id="B3">
<label>3</label><nlm-citation citation-type="">
<collab>Adobe Systems Incorporated.</collab>
<source><![CDATA[FDF Toolkit Overview and Reference. Adobe® Technical Note #5194.]]></source>
<year>2003</year>
<page-range>156</page-range></nlm-citation>
</ref>
<ref id="B4">
<label>4</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BIENZ]]></surname>
<given-names><![CDATA[T.]]></given-names>
</name>
<name>
<surname><![CDATA[COHN]]></surname>
<given-names><![CDATA[R.]]></given-names>
</name>
</person-group>
<source><![CDATA[Document Format Reference Manual]]></source>
<year>1993</year>
<page-range>214</page-range><publisher-name><![CDATA[Addison - Wesley.]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B5">
<label>5</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[JIMÉNEZ]]></surname>
<given-names><![CDATA[C.]]></given-names>
</name>
</person-group>
<source><![CDATA[Guía Metodológica de Desarrollo o Adaptación de Software.]]></source>
<year>2003</year>
<page-range>152</page-range><publisher-name><![CDATA[Universidad Nacional de Colombia]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B6">
<label>6</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[KAUFFMAN]]></surname>
<given-names><![CDATA[J.]]></given-names>
</name>
</person-group>
<source><![CDATA[Beginning ASP.NET databases using VB.NET]]></source>
<year>2003</year>
<page-range>459</page-range><publisher-loc><![CDATA[Indianápolis ]]></publisher-loc>
<publisher-name><![CDATA[Editorial Wrox]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B7">
<label>7</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[KILCULLEN]]></surname>
<given-names><![CDATA[J.]]></given-names>
</name>
</person-group>
<source><![CDATA[Active Server Pages]]></source>
<year>2000</year>
<page-range>301</page-range><publisher-name><![CDATA[IDG Books World Wide, Inc.]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B8">
<label>8</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MACDONALD]]></surname>
<given-names><![CDATA[M.]]></given-names>
</name>
</person-group>
<source><![CDATA[Microsoft Visual Basic.Net Programers CookBook]]></source>
<year>2003</year>
<page-range>774</page-range><publisher-name><![CDATA[Microsoft Press]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B9">
<label>9</label><nlm-citation citation-type="book">
<collab>MICROSOFT CORPORATION</collab>
<source><![CDATA[Microsoft Official Curriculum. MSDN Library]]></source>
<year>2002</year>
<publisher-name><![CDATA[Microsoft Press]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B10">
<label>10</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[PADOBA]]></surname>
<given-names><![CDATA[T.]]></given-names>
</name>
</person-group>
<source><![CDATA[Creating Adobe Acrobat Forms]]></source>
<year>2002</year>
<page-range>591</page-range><publisher-name><![CDATA[Hungry Minds, Inc.]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B11">
<label>11</label><nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[WEBB]]></surname>
<given-names><![CDATA[J.]]></given-names>
</name>
</person-group>
<source><![CDATA[Developing Web Aplications With Microsoft VISUAL BASIC.NET and Microsoft VISUAL C#.NET.]]></source>
<year>2002</year>
<page-range>756</page-range><publisher-name><![CDATA[Microsoft Press.]]></publisher-name>
</nlm-citation>
</ref>
</ref-list>
</back>
</article>
