Equipos Programas Media Internet Telecomunicaciones Seguridad Base de Datos Programación Calidad Desarrollo Empresa

Ruta: Desarrollo>AppmlPasos en el desarollo manual

Pasos en el desarollo manual

Descripcion

Crear una nueva aplicación a partir de una base de datos existente

  • Una Aplicación se compone de:
    • Una base de datos con una serie de tablas.
    • Un archivo xml por cada tabla, donde se define el informe, la lista y los formularios para añadir, borrar o eliminar un elemento de la tabla o el formulario filtro para filtar los elementos que aparecen en la lista.
    • Un archivo html desde el cual se invocan los informes y formularios de cada tabla.
    • Consultar: Servicios Web de AppML.

  • Crear un directorio base:
    • Crear un directorio para la nueva aplicación en WebTic/Appl.
    • Por ejemplo: WebTic/Appl/ArchivoHistorico.
    • En este directorio pondremos los archivos html y xml de la aplicación.

  • Crear otros directorios:
    • Crear otros directorios para depositar los archivos generados
    • Por ejemplo: en c:/Inetpub/wwwroot/WebTIC/Publico...
    • Crear tantos directorios como tablas de la base de datos.
    • Poner como nombre de directorio el mismo nombre que tenga la tabla de la base de datos.

  • Base de datos:
    • Crear la base de datos a utilizar en el directorio base.
    • Por ejemplo: WebTiC/BaseDatos.
    • En la base de datos ponerle a todas las tablas, un campo de clave principal autonumérico (se recomienda que sea el campo ID de la tabla).
    • Por ejemplo: En la tabla 'Categorias' (nombre en plural) poner como campo clave 'IDCategoria' (nombre en singular).

  • Archivo HTML:
    • Hacer una página html con el nombre de la aplicación
    • Explicar en esa página la aplicación.
    • Poner los hiperenlaces a las tablas, informes y formularios a visualizar (copiarla de otra aplicación existente).
    • Para cada tabla hacer una lista, un informe y un formulario.
    • Separar en HTML:
      • tabla principal
      • tabla sin relaciones
      • tablas con relaciones
      • y tablas de consulta.

    • Poner el hiperenlace a la página de aplicación en la página lista de aplicaciones.

  • Archivos XML:
    • Crear una página xml para cada tabla, informe, diálogo a visualizar (copiarla de otra aplicación existente).
      • En title (título) poner el nombre de la tabla. Por ejemplo: Programas.
      • En database (base de datos) poner el nombre de la base de datos sin la extensión. Por ejemplo: inventprog (siendo la base de datos inventprog.mdb).
      • En keyfield, poner la clave de la tabla. Por ejemplo: IDProg.
      • En sql, poner la sentencia sql para obtener los datos de la tabla. Por ejemplo: select * from inventario.

    • No seleccionar el campo de identificación de un registro (su clave principal) para crear una página Lista, ya que de esta se obtienen los formularios de crear, borrar y modificar un registro, y la clave no se puede actualizar ni añadir.
    • Cuando se hace una modificación en un archivo XML (por ejemplo: un filtro) y queremos ver los cambios producidos mediante el navegador, hay que cerrar todas las ventanas de navegador que tengamos abiertas con alguna información de la aplicación. Posteriormente lo abrimos de nuevo y comprobamos los cambios producidos en el archivo XML.

  • Lista de búsquedas:
    • Se realiza haciendo un filtrado en la página de lista editable.
    • Cuando se entra o modifica un registro, y en vez de dar a Actualizar se pulsa Nuevo y se dice que no se salve, ya no se puede dar a Actualizar. Hay que cerrar el formulario de entrada/modificación y abrirlo de nuevo.
    • Para que en un formulario aparezca una lista desplegable asociada a un campo, hay que incluir la sentencia sql correspondiente endonde se defina el campo.
    • Por ejemplo:
      • 
        <field>Uso</field>
        <sql>SELECT DISTINCT uso FROM usos ORDER BY uso</sql>
        

    • Cuando se abre la lista por primera vez, en app_htmllist.asp se ejecuta:
      • get_sessionvariable(appname,'reccounter')=' then findOK=true
      • Recconter' = ' findOK se hace true.
      • Cuando se ha visualizado la lista con Recconter' <> ', si se actualiza el Explorer no pone findOk=true, entonces no se pueden leer los registros nuevos introducidos.

    • Pero como la funcion find_all pone recposition=1, destruye el valor que tuviera y por tanto se han incluido las funciones de salvado y escritura.
    • No se podia haber anulado en find_all reccount = 1 porque habria que inicializarlo en otro sitio.
    • Es decir:
      • 
        call find_all(connection,table,listsql,keyfields,keycounter,where,orderby)
        Se pone:
        regisposi= get_sessionvariable(appname,'recposition')
        ' ignacio para visualizar
        
        nuevo
        registro
        call
        find_all(connection,table,listsql,keyfields,keycounter,where,orderby)
        call set_sessionvariable(appname,'recposition',regisposi)
        ' ignacio para visualizar
        

  • Para visualizar campos en un hoja htmllist, htmlform, htmledit, htmlreport, htmllist, xmllist:
    • Los campos no relacionados (sin ID númerico), tienen que aparecer en el sql correspondiente a la hoja.
    • Los campos relacionados, no se incluyen en el sql, sino su JOIN con la tabla asociada correspondiente y en la hoja respectiva no se hace referencia al campo ID, sino a su asociado. (Por ejemplo: no poner IDCategoria sino Categoria).

  • Hacer hiperenlaces:
    • Poner en la tabla en el campo Dirección la direccion URL (por ejemplo: http://www.w3.org) y en el campo Titulo el nombre del lugar (por ejemplo: w3).
    • En el archivo xsl definir el atributo y el elemento:
      • 
        <td>
        <a>
        <xsl:attribute name='href'>
        <xsl:value-of select='Direccion' />
        </xsl:attribute>
        <xsl:value-of select='Titulo' />
        </a>
        </td>
        

Página generada automáticamente desde la Base de Datos: AppmlDoc/ el 15/6/2008 9:57:56