Nombre del método: BuscarActividad
Filtro de Actividad
Tipo de dato | Nombre | Uso |
Integer | id | Consultar actividad por identificador |
String | accion | Consultar actividad por accion de la actividad |
Date | rangoDeFechas | Consultar actividades realizadas en un rango de fechas |
Integer | duracion | Consultar actividades realizadas por un usuario cuyo nombre de usuario es usuario |
Integer | modulo | Consultar actividades realizadas al módulo cuyo nombre es modulo |
Schema XML
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="filtroDeActividad">
<xs:complexType>
<xs:element name="id" type="xs:integer"/>
<xs:element name="accion" type="xs:string"/>
<xs:element name="rangoDeFechas" type="xs:date"/>
<xs:element name="modulo" type="xs:string"/>
<xs:element name="duracion" type="xs:positiveInteger"/>
</xs:complexType>
</xs:element>
</xs:schema>
Ejemplo
<filtroDeActividad>
<id>1</id>
<accion>Ver</accion>
<rangoDeFechas>11/11/2011 23:11 a 12/11/2011 23:40<rangoDeFechas>
<modulo>Perfil</modulo>
<duracion>1000</duracion>
</filtroDeActividad>
Array<Actividades> consultarActividad(string usuarioActual, FiltroActividad filtroActividad) {
autorizado = Politicas.tienePermisos?(usuarioActual, actividad)
if (!autorizado) {
raise ConsultaActividadNoAutorizadaException
}
try {
resultado = BaseDeDatos.buscarConAttributos(filtroActividad)
} catch {
raise ErrorEnBaseDeDatosException
}
return resultado
}
El método 'BuscarActividad' retona un arreglo de las actividades que se ajustan al filtro de actividad. Este arreglo se retornarna en formato XML para que pueda ser procesado y visualizado en el HTML.
Schema XML
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="actividades">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="actividad">
<xs:complexType>
<xs:element name="id" type="xs:integer"/>
<xs:element name="accion" type="xs:string"/>
<xs:element name="moduloEncargado" type="xs:string"/>
<xs:element name="fechaRealizacion" type="xs:date"/>
<xs:element name="duracion" type="xs:positiveInteger"/>
<xs:element name="parametrosModulo" type="xs:string"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:element>
</xs:schema>
Ejemplo
<response>
<actividades>
<actividad>
<id>34</id>
<accion>Ver</accion>
<moduloEncargado>Perfil</moduloEncargado>
<fechaRealizacion>31/11/2011 23:11</fechaRealizacion>
<duracion>1500</duracion>
<parametrosModulo>
<![CDATA[
<perfil>
<id>jaimito</id>
</perfil>
]]>
</parametrosModulo>
</actividad>
<actividad>
<id>35</id>
<accion>Crear</accion>
<moduloEncargado>Contenido</moduloEncargado>
<fechaRealizacion>31/11/2011 23:58</fechaRealizacion>
<duracion>1000</duracion>
<parametrosModulo>
<![CDATA[
<contenido>
<titulo>2 minutes to midnight</titulo>
<texto>The killer's breed or the demon's seed,
The glamour, the fortune, the pain,
Go to war again, blood is freedom's stain,
But don't you pray for my soul anymore. Sing along!
</texto>
</contenido>
]]>
</parametrosModulo>
</actividad>
</actividades>
<response>
<tr>
<td>ConsultaActividadNoAutorizadaException</td>
<td>Cuando el módulo de Políticas indica que el usuario actual no está autorizado para realizar consulta de actividades existentes</td>
<td>Nada</td>
</tr>
<tr>
<td>Actividad</td>
<td>Cuando el módulo encargado de ejecutar la actividad lanza una excepción (es decir, cuando ocurre una excepción fuera del módulo de Actividades).</td>
<td>Información extra que haya sido pasada por el módulo encargado sobre el error</td>
</tr>
<tr>
<td>ErrorEnBaseDeDatosException</td>
<td>Cuando se produce un error al almacenar la actividad en la base de datos.</td>
<td>Causa de la excepción (por ejemplo, falta de espacio en disco o servidor de base de datos caído)</td>
</tr>
Nombre de la excepción | Cuándo se produce | Información que maneja |
---|