Desarrollar con el STE

De Egeasy
Revisión del 09:04 6 abr 2010 de Amendez (Discusión | contribuciones) (Formulario de registro de usuarios)

Saltar a: navegación, buscar

¿Que es un trámite?

Un trámite es la definición del conjunto de tareas, pertenecientes al workflow, que van a interactuar con la aplicación web STE. Los trámites definidos están orientados a ser iniciados por el usuario ,desde la aplicación web, o haciendo uso del servicio web, para que, a continuación, se inicie un proceso de workflow programado en ODL para la plataforma egeasy.

Como se define un trámite en ODL

Para definir un trámite tenemos que indicar el nombre del trámite y declararlo como tipo trámite. La sintaxis de un trámite sería la siguiente.

[Nombre del trámite] es tramite
  -ATRIBUTOS
  incluye TAREA
       .
       .
       .
  incluye TAREA
fin

Atributos de un trámite

Los atributos que podemos declarar para un trámite son los siguientes:

  • etiqueta: Atributo opcional que permite indicar el nombre que se tendrá el trámite de cara al usuario. Si no existe, se toma como nombre el nombre de la definición.
  • descripcion: Proporciona un texto descriptivo sobre el trámite que se muestra en la interfaz web al crear el trámite.
  • grupo: Los trámites se pueden agrupar para que se muestren organizados al usuario. Indicar aquí el grupo al que pertenece el trámite.
  • habitacion: Indica en qué habitación de nuestro sistema de información queremos que esté disponible el trámite para su realización.
  • estado: Indica qué tabla y columna de una exportación va a almacenar el estado de un trámite.
  • asunto: Permite indicar un campo que se usará como asunto del trámite y se usará para mostrarlo en los listados de procedimientos iniciados. Por defecto toma en valor <tipo de tramite> - <fecha>

La clausula incluye

Dentro de la definición del trámite, debemos especificar cuáles son las tareas del workflow que queremos que interactúen con el STE. Para ello, disponemos de la cláusula incluye. Hay que usar una clausula incluye para cada tarea que se desee incluir, seguido a continuación por el nombre de definición de la tarea incluida.

Cuando se incluye una tarea, hay que indicar que tipo de tarea es. En el STE podemos encontrar cuatro tipos de tareas, que son:

  • Tareas de inicio: Solo puede haber una tarea de inicio en cada trámite, y es la tarea que tiene que rellenar el usuario cuando inicia un trámite.
  • Tareas de envío de documentación: Son tareas que puede crear y enviar un interesado en cualquier momento, con el fin de aportar una documentación que considere oportuna.
  • Tareas de notificación: Son tareas que envía la plataforma egeasy al STE con el fin de notificar al interesado cualquier cosa que sea necesaria durante la gestión del procedimiento.
  • Tareas de requerimiento: Son tareas que envía la plataforma egeasy al STE para que el interesado aporte información adicional al trámite.


Atributos de incluye

Los atributos aplicables a las tareas que incluimos en un trámite pueden variar dependiendo del valor del atributo tipo, por ejemplo, los atributos de respuesta sólo son aplicables a las tareas con el valor en el atributo tipo igual a REQUERIMIENTO. Dicho esto, pasamos a listar los distintos atributos aplicables a la clausula incluye:

  • Etiqueta: Atributo que permite establecer el nombre que va a tener la tarea en la aplicación web del STE.
  • Tipo: Atributo que indica qué tipo de comportamiento va a tener la tarea. Los distintos valores que acepta este atributo son: INICIO, REQUERIMIENTO, NOTIFICACION y ENVIO_DOCUMENTACION.
  • respuesta.etiqueta: Atributo que indica qué nombre va a tener la tarea respuesta correspondiente
  • respuesta.descripcion: Atributo para indicar una descripción sobre la tarea respuesta.
  • respuesta.formulario: Atributo para indicar el nombre del formulario, perteneciente al target de la tarea de tipo REQUERIMIENTO, que se va a mostrar en la tarea de respuesta.
  • respuesta.clasificador: Atributo para indicar el nombre del clasificador, perteneciente al target de la tarea de tipo REQUERIMIENTO, donde se van a guardar los documentos que se pueden adjuntar a una tarea respuesta, perteneciente a una tarea de tipo REQUERIMIENTO.

Colecciones

Para el desarrollo correcto de los trámites en la aplicación web STE, debemos crear al menos una colección para almacenar los contenedores que se crean al iniciar un trámite. Al definir un trámite su main target tiene que ser el contenedor que se mostrará en la web para que el usuario introduzca los datos iniciales para comenzar el workflow, y no un expediente como se suele hacer cuando programamos un sistema de información en egeasy, de ahí la necesidad de crearnos una colección. (Véase Colecciones) Posteriormente se moverán esos contenedores creados a su lugar dentro de alguna colección dentro de un expediente.

Estado de un trámite

Los trámites en la aplicación web STE tienen estado. El estado de un trámite acabado de iniciar, pero no enviado, tiene el valor de borrador. Una vez enviado a su primera tarea del trámite, éste pasa a tener el valor de En trámite. Por último, cuando el trámite ha finalizado en la plataforma egeasy, pasa a tener el estado de finalizado. Estos valores comentados para el estado de un trámite definen el comportamiento por defecto de la aplicación web STE. Si queremos cambiar el estado de un trámite debemos hacerlo mediante el atributo estado y su mecanismo para controlarlo, el cual vamos a proceder a explicar a continuación.

Para poder modificar el estado de un trámite durante la vida del workflow asociado al mismo, debemos crearnos un campo en el contenedor que es maintarget del workflow. Una vez creado ese campo, debemos exportarlo a alguna colección de nuestra elección. Si hay alguna duda sobre como crear una exportación, véase Exportaciones. Con la exportación del campo creada, debemos poner en el atributo estado del trámite, una ristra con el nombre de la tabla en la base de datos seguida de un punto y a continuación el nombre de la columna que representa el campo en la exportación. Para que quede mas claro, vamos a ver un ejemplo:

Esto sería un ejemplo de la exportación creada, donde tenemos un campo en ODL llamado [Estado tramite], el cual se exporta a la tabla de nombre TR$SOLICITUD_TRAMITACION y en la columna ESTADO_TRAMITE.

[EP::Solicitudes de tramitación electrónica] es exportacion
  -nombre_tabla = "TR$SOLICITUD_TRAMITACION";
  -universo = [Solicitud de tramitación electrónica para acreditación del profesorado];
  columna [Denominación/Apellidos y nombre]
    -columna_bd.nombre = "DENOMINACION";
    -columna_bd.tipo = texto;
    -origen =[Datos generales].[Denominación/Apellidos y nombre];
  columna [C.I.F./N.I.F.]
    -columna_bd.nombre = "CIF_NIF";
    -columna_bd.tipo = texto;
    -origen = [Datos generales].[C.I.F./N.I.F.];
  columna [Estado tramite]
    -columna_bd.nombre = "ESTADO_TRAMITE";
    -columna_bd.tipo = texto;
    -origen = [Datos generales].[Estado tramite];
fin

A continuación, un ejemplo de como se declararía un trámite utilizando el atributo estado.

[Trámite de Acreditación del profesorado] es tramite
 -descripcion='Procedimiento de tramitación para la aceditación del profesorado para la ACECAU';
 -grupo='Trámites Acecau';
 -Habitacion=[Oficina de evaluación del profesorado];
 -estado="TR$SOLTRAMI_ACRE_PROF.ESTADO_TRAMITE";

Una vez declarado el atributo estado en el trámite, ya podemos proceder a modificarlo mediante código de método del lenguaje ODL. Para ello, sólo debemos acceder, mediante código ODL, al campo que representa el estado y asignarle el valor deseado que queremos que se muestre en la aplicación web del STE.

 metodo ejemplo()
     var Contenedor1 : contenedor;
 inicio
          ...
     Contenedor1.[Estado] = "En trámite";
          ...
 fin

Atributos especiales para los campos de ODL

En la aplicación web STE disponemos, para el lenguaje ODL, de unos atributos especiales aplicables a la definición de componentes para poder definir ciertos aspectos de su comportamiento al interactuar con la aplicación web STE. A continuación, listaremos y definiremos los atributos que ha añadido el STE al lenguage ODL.

tramitacion.visible

Atributo que permite ocultar un campo para que no se visualice en la aplicación web del STE, pero sí en la plataforma egeasy. Este atributo es aplicable a todos los campos de ODL. El valor por defecto para este atributo es verdadero.

tramitacion.requerida

Atributo que permite especificar qué campos son de obligada cumplimentación por parte del usuario. El valor por defecto es falso. Este atributo se puede usar en combinación con las validaciones de ODL para indicar cómo se debe cumplimentar un campo.

tramitacion.valor

Atributo que permite establecer el valor del campo al que se le aplica el atributo. Se pueden indicar campos del formulario de registro, además de los campos obligatorios, que son Nombre de usuario, Nombre completo, Nif, Direccion de correo y Organizacion

tramitacion.editable

Atributo que permite indicar si el campo es editable o no. El valor por defecto es verdadero.

Formulario de registro de usuarios

En la aplicación web STE, podemos crear a nuestra medida un formulario de registro de usuarios, pudiendo definir los campos que queremos que el usuario cumplimente al darse de alta en la aplicación web STE. El fichero donde se definen los campos del registro es un fichero XML, y se indica como un parámetro del fichero de configuración. Por defecto, sin que sea necesario indicarlo, hay una serie de campos obligatorios que se añaden a los descritos en el formulario de registro. Estos campos son:

Nombre de usuario Nombre completo Nif Direccion de correo Organizacion

A continuación mostramos un ejemplo de un fichero de registro.

<?xml version="1.0" encoding="ISO-8859-1"?>
<registration_form>
  <field_value Field_Name="Género" Field_Type="ftString">
    <allowed_values>
      <item>Masculino</item>
      <item>Femenino</item>
    </allowed_values>
  </field_value>
  <field_value Field_Name="Teléfono 1" Field_Type="ftString">
  </field_value>
  <field_value Field_Name="Teléfono 2" Field_Type="ftString">
  </field_value>
  <field_value Field_Name="Dirección" Field_Type="ftString">
  </field_value>
  <field_value Field_Name="Código postal" Field_Type="ftString">
  </field_value>
  <field_value Field_Name="Localidad" Field_Type="ftString">
  </field_value>
  <field_value Field_Name="Provincia" Field_Type="ftString">
  </field_value>
  <field_value Field_Name="Fax" Field_Type="ftString">
  </field_value>
</registration_form>