Proyecto Java EE - Almacén Virtual

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Proyecto Java EE - Almacén Virtual"

Transcripción

1 Proyecto Java EE - Almacén Virtual Jorge de Andrés Palomo 25 de mayo de

2 Índice 1. Introducción 2 2. Punto de Partida Estudio del Cliente Necesidades y objetivos Modelo. Base de datos Vista Interfaz Usuario Interfaz Administrador Controlador Tecnologías utilizadas Retos de programación enfrentados Gestión del perl del Administrador y los Usuarios en una misma aplicación Generar un archivo.pdf con el material retirado por el usuario Subir un archivo de imagen al servidor[4] Crear un ltro de búsqueda para mostrar material con JavaScript y JQuery Conexión con la BD evitando posibles SQL-Injection. Prepared Statements Noticaciones de retraso en la devolución de material Cerrado automático de paginas tras acción en servlet Gestión del Histórico de material con JSON

3 1. Introducción Esta es la memoria del proyecto AlmacenGradienteVertical. Este trabajo se engloba dentro del Curso ocial de programación en Java EE que organiza la escuela profesional de nuevas tecnologías CICE. El objetivo es la creación de un gestor virtual del almacén del grupo de montaña universitario Gradiente Vertical. 2. Punto de Partida Antes de diseñar y empezar a crear el código de nuestra aplicación, es esencial estudiar desde donde partimos, cuales son los requisitos del cliente y que metas queremos conseguir Estudio del Cliente El grupo de montaña Gradiente Vertical es una asociación deportiva universitaria. El objetivo de la agrupación es organizar y fomentar la escalada y el alpinismo entre los alumnos de la facultad de cc. Físicas de la Universidad Complutense. Para eso se organizan actividades y diversos talleres sobre temas relaccionados con la montaña. Para cumplir con este objetivo el club dispone de un almacen de material. Esta equipación va desde elementos de alpinismo hasta revistas y libros. Cuando se creó el club, no contabamos con muchos artículos y el número de usuarios era reducido, por lo que la gestión de los prestamos era muy sencilla. Pero recientemente, y gracias a la nanciación que hemos recibido de la UCM, se ha podido adquirir nuevo material. Esto ha provocado que el método que habíamos estado utilizando (papel y lápiz) quedase totalmente inservible. El club necesita una forma novedosa y eciente de llevar a cabo esa gestion Necesidades y objetivos El objetivo principal de esta aplicación es la de crear un portal web en el que los usuarios puedan seleccionar los diferentes articulos que desean retirar, ver una descripción detallada de ese material y tras nalizar la selección, que puedan imprimir un documento que reeje esos elementos seleccionados. Este documento será imprescindible entregarlo al responsable del almacén antes de retirar el material físicamente. Cuando practicas escalada es vital conocer el desgaste que ha sufrido el material en el que conas tu seguridad. Por eso dentro de la descripción del material tando el usuario como el administrador deben poder escribir comentarios sobre el estado del articulo o incidencias que hayan ocurrido con él. Se crea asi una cha tecnica del articulo en la que queda reejado toda su vida. Evidentemente cuanto más reciente sea el comentario más importancia tendrá por lo que se ordenaran de más a menos nuevo 2

4 Figura 1: Diagrama de nuestra aplicación. Arriba: navegación de usuario. Abajo: 3 navegación del administrador

5 Cuando el cliente consulte la lista de material debe poder ver no solo los disponibles, sino también los no disponibles. De aquellos artículos no disponibles debe reejarse hasta cuando esta reservado. Sin embargo he decidido que los usuarios no puedan ver quien lo tiene, y que sea solo el administrador quien pueda saberlo. En mi opinión esto evitará posibles tensiones entre usuarios y cualquier intento de no recurrir a la aplicación para retirar el material. Un elemento que considero de gran importancia es que el usuario pueda consultar que artículos tiene él en préstamo. Esto sera de gran ayuda a la hora de la devolución de artículos pequeños como mapas o brújulas que pueden quedar olvidados si no le recordamos al usuario que los tiene. Por supuesto se tiene que ofrecer al usuario la oportunidad de modicar sus datos personales vinculados con su cuenta. El sistema de préstamo del club se rige por un conjunto de normas. Esto se traduce en que nuestra aplicación debe ofrecer al administrador la oportunidad de penalizar a los usuarios ante retrasos en la devolución o otras causas. He decidido que la penalización sea siempre manual y que no se produzcan penalizaciones automáticas por parte del sistema. Sin embargo el sistema si que avisará al administrador de los retrasos que se producen en las devoluciones. Cuando un usuario sea penalizado por el administrador, el sistema le impedirá el acceso al portal web. En lo referente al administrador, destacar que tiene que ser capaz de hacer una gestión tanto del material como de los usuarios, pudiendo eliminar, modi- car y en el caso del material, añadir nuevos elementos (los usuarios se unirán a la aplicación ellos solos a través del registro). Ademas el administrador debe disponer de un forma de conocer todos los movimientos de material que se ha producido a lo largo del tiempo. Esto, que denominaré Histórico, debe poder ltrarse por usuario, articulo, fecha salida y fecha en la que fue devuelto el material. Esto permitirá conocer al detalle cualquier tipo de tendencia en los prestamos (si un articulo se repite mucho se puede plantear el comprar más) y también permitirá saber quien tenia que articulo en cada momento (muy útil en caso de quejas o problemas). Podemos ver un organigrama en la Figura 1, de lo que será la navegación en nuestra aplicación para un usuario. 3. Modelo. Base de datos. El modelo de nuestra aplicación es el núcleo de nuestra aplicación. Consta de dos partes, la base de datos y las clases modelo en nuestra aplicación Java. La base de datos la he creado con MySQL, su estructura se puede apreciar en la Figura 2. En lo referente a las clases que representan a los modelos he creado las siguientes clases: Articulo Usuario 4

6 Figura 2: Diseño de nuestra base de datos Categoría Comentario Histórico NoticaciónRetraso Todas las clases tienen el mismo tipo de atributos (vatiables de clase) que la tabla de la BD a la que representan. Y por supuesto respetan todos los principios de la encapsulación (atributos establecidos como privados junto con un constructor, getters y setters). Como se puede observar he creado un tipo de modelo que no existe en la base de datos, la noticación de retraso. Lo he hecho de esta manera debido al carácter excepcional de las noticaciones, a que no es necesario llevar un registro de ellas y a que se construyen con información de otros modelos. 1 package e s. c i c e. modelos ; 5

7 2 public c l a s s N o t i f i c a c i o n R e t r a s o { 3 4 private Usuario u s u a r i o ; 5 private A r t i c u l o a r t i c u l o ; 6 private S t r i n g fechadevolucion ; 7 8 public N o t i f i c a c i o n R e t r a s o ( Usuario usuario, A r t i c u l o a r t i c u l o, S t r i n g fechadevolucion ) { 9 10 t h i s. u s u a r i o = u s u a r i o ; 11 t h i s. a r t i c u l o = a r t i c u l o ; 12 t h i s. fechadevolucion = fechadevolucion ; } // G e t t e r s y S e t t e r s } Listado de código 1: Clase NoticaciónRetraso.java 4. Vista El siguiente punto en el diseño de nuestra aplicación es la vista o la interfaz gráca. He diferenciado a la hora de explicar las interfaces entre la que vería un usuario normal y la que vería el administrador. Aun así hay elementos que son comunes a ambos. Como por ejemplo el encabezado, el pie de pagina (Figura 3) y el login (Figura 4). Figura 3: Encabezado y pie de pagina. 6

8 Figura 4: Login de la aplicación Interfaz Usuario El usuario accederá a la aplicación a través del login. Como se puede apreciar en la parte inferior del mismo se ofrece la opción al cliente de registrarse si todavía no dispone de una cuenta en la aplicación. Haciendo click en el enlace se le redirigirá al formulario de registro (Figura 5). En él tendrá que rellenar todos los campos obligatoriamente, repitiendo la contraseña dos veces para comprobar que la ha introducido correctamente. Cuando nalmente el usuario decide enviar los datos, se crea un nuevo usuario en la base de datos y se produce un login automático permitiendo el acceso a la aplicación. Una vez que entra se encontrará en el Home. En el se puede leer una bienvenida así como ver un vídeo corporativo del club. Además, hay un enlace a las reglas que rigen el préstamo del material perteneciente al club. Para el usuario la parte fundamental de la aplicación es la que gestiona los artículos de material. Es obvio que se encuentre en la sección llamada Material. Si el usuario va a esta sección encontrará una lista de todo el material (Figura 6). En esta lista se marca en azul el que esta disponible y en rojo el que no lo esta. Además para el material que no este disponible aparece la fecha en la que está previsto que se devuelva el material. Esta lista se puede ltrar por las diferentes categorías que engloban a los artículos o por una búsqueda por nombre (Figura 7) Pero es la retirada de artículos del almacén la razón de ser de la aplicación. Esto se consigue gracias a los símbolos de carrito debajo de cada articulo. Cuando el articulo esta disponible, este carrito estará habilitado para hacer click en él. Si se hace click, inmediatamente se añadirá este articulo a la cuenta del usuario y se marcará como no disponible. Cuando el usuario ha terminado de seleccionar todos los artículos que desee deberá imprimir un albarán con la lista de artículos en su cuenta para que el encargado del almacén se los entregue. Esto lo consigue gracias al botón Sacar Material (Figura 7). Un punto importante es dotar al usuario de la capacidad para ver los detalles 7

9 Figura 5: Registro de usuarios. Figura 6: Lista de material. 8

10 Figura 7: Filtros de la lista de material. 9

11 Figura 8: Comentarios sobre un elemento de material. de los diferentes artículos de material. Esto se consigue con las chas técnicas que se despliegan en una pestaña nueva cuando el cliente pincha sobre el nombre del material. Pero como he mencionado anteriormente en la memoria, lo más importante de la cha son los comentarios que los usuarios y el administrador hacen de esos artículos de material (Figura 8). Estos comentarios deben mostrar quien los ha hecho, cuando los ha hecho y el mensaje en si. Por supuesto ordenados de más a menos reciente Interfaz Administrador El administrador de la aplicación accederá a la parte de gestión a través del mismo login desde el que acceden los usuarios. Desde allí se le redirigirá a la sección apropiada. Evidentemente el registro queda totalmente deshabilitado para dar de alta a nuevos administradores (podría ser muy interesante en una nueva versión de la aplicación dar la opción al administrador de crear subadministradores que puedan gestionar pero con menor rango de decisión) Para el administrador la primera diferencia evidente con respecto a la vista del cliente son las noticaciones de retraso en la devolución del material (Figura 9). Estas se muestran en el Home nada mas acceder a la aplicación el administrador y especican el usuario que ha cometido el retraso, que articulo es y cuando debería haberlo devuelto. Haciendo click en el nombre del usuario podremos ir hasta la cha del usuario para penalizarlo por ese retraso. La pe- 10

12 Figura 9: Noticación de retraso en la devolución. nalización del usuario no se produce de forma automática a propósito. No sería complicado hacer que el sistema a la vez que genera la noticación cambiara el campo penalizado del usuario a true. He decidido que esto no sea así debido a la gran diferencia de casos que se pueden presentar. Dejo en manos del administrador la opción de penalizar o no. En el apartado de material la lista es idéntica a la que se muestra a los usuarios. Lo único que cambia es los ltros que se pueden aplicar para mostrar resultados (Figura 10). Al administrador le he sumado la opción de que pueda ltrar entre disponibles y no disponibles. No he habilitado este ltro para los usuarios ya que en mi opinión algunos usuarios podrían sacar material sin de verdad necesitarlo, solo por el hecho de estar disponible. Esto facilitaría el acaparamiento de artículos por algún cliente en concreto impidiendo el normal funcionamiento del almacén. Ademas se ha eliminado el botón de sacar material ya que al administrador no puede retirar material. Lo que si he añadido es la opción de crear nuevos elementos en la lista de material. Haciendo click en el botón nos redirige a una pagina (Figura 11) donde rellenando todos los campos del formulario (entre los que se encuentra la subida de una imagen al servidor) podremos sumar nuevos artículos al almacén. Dentro de la aplicación si pinchamos en el nombre de algún articulo se nos abre, en una nueva pestaña, la cha técnica de ese articulo (Figura 12). Esta cha variará dependiendo si el articulo esta en préstamo o no. Si no lo esta, se mostrará la descripción y la opción de eliminar el articulo estará habilitada. Si algún usuario lo tiene, se mostraran los detalles de ese préstamo y no se podrá eliminar el articulo (solo un articulo que tengo físicamente en el almacén puede ser retirado de la circulación. De otra forma daría lugar a perdidas). En esa cha técnica existe la opción de comentar o de escribir alguna incidencia que haya ocurrido con ese material. Esto se produce de forma análoga a los usuarios. Al igual que al hacer click sobre el nombre del articulo se abre su correspondiente cha técnica, de igual forma cuando hacemos click en el nombre de un usuario se abrirá una cha análoga (Figura 13) con la información de este cliente. Pero a diferencia de las chas de material, solo el administrador podrá consultarlas. En este espacio es donde se producirán las devoluciones de material. Pudiendo hacerlo de uno en uno (pinchando en la echa verde debajo del articulo en cuestión) o devolver todo el material en bloque (pinchando en Devolver todos). La decisión de alojar las devoluciones en los diferentes perles de 11

13 Figura 10: Filtros de material para el administrador Figura 11: Añadir material. 12

14 Figura 12: Ficha del material. Arriba en prestamo y Abajo cuando está disponible. 13

15 Figura 13: Detalle usuario. los usuarios se debe al hecho de que cuando se produce la devolución, se produce físicamente en el almacén. Para el administrador es mucho más sencillo buscar al usuario que esta realizando la devolución y ver ahí el bloque de artículos del que dispone, en vez de tener que buscar articulo por articulo. Por supuesto se da la posibilidad de eliminar el usuario. Pero la opción más importante es la de poder penalizarlo. Esto se puede hacer de dos formas diferentes. Directamente desde la lista de usuarios, gracias a los botones que existen debajo de cada nombre. O desde la cha individual del usuario. Penalizar a un usuario supondrá que ese cliente debido al incumplimiento de las normas no pueda acceder a la aplicación. Esto durará hasta que de igual manera que se penalizó (desde los botones de la lista de usuarios o en la cha) el administrador decida despenalizarlo. Finalmente el administrador tiene la opción de consultar todas las transacciones que se han producido en la aplicación. Esto lo puede hacer en la sección Histórico donde se muestran en formato de tabla todos esos movimientos (Figura 14). Ademas se ofrece al administrador la opción de ltrar todos esos resultados ya que en esta fase de prueba los registros no son mucho pero en pocas semanas pueden ser muy numerosos. Se podrá buscar por cualquier campo de la tabla. 14

16 5. Controlador Figura 14: Historico de transacciones de material Tecnologías utilizadas Para la realización de este proyecto he utilizado las siguientes tecnologías: Html Css JavaScript JSON Java EE MySql La principal decisión a la hora de elegir las tecnologías para el proyecto ha sido la de si utilizar alguno de los frameworks como Struts, Hibernate,... Al nal he decidido no incluirlos para poder tener un control mas fuerte sobre las consultas a la base de datos y los objetos que de ellas se crean. 15

17 5.2. Retos de programación enfrentados Durante el desarrollo de la aplicación me han surgido algunos desafíos, tanto a nivel de programación como de organización del código. A continuación los listo y explico como los he resuelto Gestión del perl del Administrador y los Usuarios en una misma aplicación. En esta aplicación he juntado la parte destinada al usuario junto con la parte destinada al administrador. Para ello en la base de datos reservo el primer registro al administrador (id = 1). Ademas en el Login.java, tras comprobar que el usuario existe y que no esta penalizado (obviamente el administrador cumplirá ambos requisitos), el sistema comprobará si es el usuario con id = 1. De cumplirse la condición, se le redigirá a las paginas creadas para la gestión de la aplicación. Para que la aplicación recuerde al usuario que esta utilizando la aplicación se le da de alta en los atributos de Session. Esto se puede aprovechar para evitar que un usuario no autorizado o un intruso, entre en la parte de la gestión de la aplicación. Creo por lo tanto un archivo.jsp que incluiré en todas las paginas de administrador con el siguiente código: 1 Usuario c u r r e n t U s e r = ( Usuario ) s e s s i o n. g e t A t t r i b u t e (" currentuser " ) ; 2 3 i f ( c u r r e n t U s e r == null! ( c u r r e n t U s e r. g e t I d ( ) ==1)) { 4 5 r e s p o n s e. s e n d R e d i r e c t ( "../ index. html " ) ; 6 7 } Listado de código 2: Seguridad Administrador En las paginas destinadas al usuario tambien incluyo una comprobación de seguridad pero comprobando solo que el usuario no es nulo, para evitar intrusiones Generar un archivo.pdf con el material retirado por el usuario. Cuando el usuario ha terminado de seleccionar todos los artículos que desea retirar debe imprimir un albarán para presentarlo al encargado del almacén y poder así recoger físicamente el material. Para ello nuestra aplicación debe poder generar un chero.pdf que el usuario pueda imprimir o descargar. Todo este proceso lo realiza el servlet ImprimirAlbaran.java. Pero, ¾como es el proceso de crear un pdf?. Para generar un chero pdf debemos utilizar la librería itext[6]. Con ella conseguiremos crear documentos como en el siguiente ejemplo[9, 5]: 16

18 1 public c l a s s HelloWorldExample { 2 3 public s t a t i c void main ( S t r i n g [ ] a r g s ) { 4 5 Document document = new Document ( ) ; 6 7 try { 8 9 PdfWriter. g e t I n s t a n c e ( document, 10 new FileOutputStream ( " HelloWorld. pdf " ) ) ; document. open ( ) ; document. add (new Paragraph ( " A Hello World PDF document. " ) ) ; document. c l o s e ( ) ; } catch ( DocumentException e ) { e. p r i n t S t a c k T r a c e ( ) ; } catch ( FileNotFoundException e ) { e. p r i n t S t a c k T r a c e ( ) ; } } } Listado de código 3: Creacion pdf en Java El proceso es muy similar al I/O estándar de Java. Primero creamos un objeto tipo Document. Lo abrimos con document.open(), y ya podemos añadir contenido a dicho documento. Y para nalizar cerramos el documento con document.close(), siendo en este momento cuando se vuelca el contenido en el documento (no es necesario hacer un.flush() como en I/O). En el ejemplo anterior hemos utilizado un OutputStream del tipo FileOutputStream, lo que nos genera un archivo pdf en la carpeta de la aplicación. Pero podemos especicar cualquier tipo de OutputStream. Para nuestra aplicación web utilizaremos un ServletOutputStream[11], el cual obtendremos del objeto HttpServletResponse. Nos queda así, el servlet: 1 protected void s e r v i c e ( HttpServletRequest req, HttpServletResponse r e s p ) throws S e r v l e t E x c e p t i o n, IOException { 2 3 printpdf ( req, r e s p ) ; 4 5 } Listado de código 4: Servlet creacion pdf 17

19 Y la función que crea el pdf: 1 public void printpdf ( HttpServletRequest req, HttpServletResponse r e s p ) { 2 3 r e s p. setcontenttype ( " application / pdf " ) ; 4 5 try{ 6 7 Document document = new Document ( ) ; 8 9 PdfWriter. g e t I n s t a n c e ( document, r e s p. getoutputstream ( ) ) ; document. open ( ) ; document. add (new Paragraph ( " Hello pdf World!" ) ) ; document. c l o s e ( ) ; } catch ( DocumentException IOException ex ) { e. p r i n t S t a c k T r a c e ( ) ; } 22 } Listado de código 5: printpdf El proceso es muy parecido al primer ejemplo. Simplemente tenemos que especicar el nuevo OutputStream y ademas tenemos que indicar el tipo de contenido que tendrá el response: resp.setcontenttype("application/pdf"). Por supuesto gracias a esta librería se pueden añadir imágenes, establecer diferentes tipografías, crear tablas, Subir un archivo de imagen al servidor[4]. Cuando el Administrador de la aplicación quiere dar de alta un nuevo elemento de material uno de los campos que se le pide es una fotografía de dicho articulo. El objetivo no es otro que permitir a los usuarios ver los detalles y decidir si lo sacan o no. Para poder subir cheros al servidor atraves de una pagina JSP necesitaremos las siguientes librerías: apache-commons-fileupload[1] y apache-commons-io[2]. Descargándolas y añadiéndolas a nuestro proyecto ya podremos crear el código. Lo primero que tendremos que hacer es crear un formulario en una pagina.html o.jsp. En mi caso lo he creado en la pagina addmaterial.jsp dentro de la carpeta ADMIN. En esta pagina deberemos crear un formulario que contenga un input tipo file y que sea del tipo enctype='multipart/form-data', como: <form action=".. / C r e a r A r t i c u l o " data " method="post"> enctype=" multipart /form <label>imagen (300 x 300 px ) :</ label> 18

20 <input type=" f i l e " name="imagen" > </form> Listado de código 6: formulario html para subir archivos Un inconveniente de utilizar estas librerías es que en el lado del servidor la llamada a request,getparameter(); siempre devuelve null. Por lo que no podemos recoger los datos insertados en el formulario de la forma habitual. Para ello tendremos que emplear las funciones de las librerías apache. Así pues, en el servlet llamado CrearArticulo, y dentro de un método sobrescrito Post, escribimos el siguiente código: 1 try { 2 3 F i l e I t e m F a c t o r y f a c t o r y = new DiskFileItemFactory ( ) ; 4 S e r v l e t F i l e U p l o a d upload = new S e r v l e t F i l e U p l o a d ( f a c t o r y ) ; 5 6 L i s t items = upload. parserequest ( req ) ; 7 8 for ( Object item : items ) { 9 10 F i l e I t e m uploaded = ( F i l e I t e m ) item ; i f ( uploaded. isformfield ( ) ) { // Recogemos l o s datos s i e s un campo de f o r m u l a r i o normal // podemos a c c e d e r a l name 17 // S t r i n g key = uploaded. getfieldname ( ) ; // y a l v a l o r i n t r o d u c i d o por e l u s u a r i o 20 // S t r i n g v a l o r = uploaded. g e t S t r i n g ( ) ; } e l s e { t i t u l o I m a g e n = uploaded. getname ( ) ; F i l e f i c h e r o = new F i l e ( getpathimgfolder ( ), t i t u l o I m a g e n ) ; uploaded. w r i t e ( f i c h e r o ) ; } 31 } } catch ( Exception ex ) { ex. p r i n t S t a c k T r a c e ( ) ; } // Ya podemos añadir e l a r t i c u l o a l a base de datos. Listado de código 7: Codigo en servlet para subir archivo 19

21 Del código anterior, destacar el método getpathimgfolder() en la linea 26. Cuando llegamos al campo del formulario que es una imagen debemos guardarla, para ello creamos un objeto tipo File al que debemos pasarle la ruta en la que se guarda la imagen. Con estas librerías, y hasta donde yo he podido ver, el escribir una ruta relativa es complicado. Por eso he creado la función getpathimgfolder(): 1 private S t r i n g getpathimgfolder ( ) { 2 3 // Obtengo l a ruta d e l s e r v i d o r 4 S e r v l e t C o n t e x t s e r v l e t C o n t e x t = g e t S e r v l e t C o n t e x t ( ) ; 5 S t r i n g contextpath = s e r v l e t C o n t e x t. getrealpath ("/" ) ; 6 7 // Trato esa ruta 8 contextpath = contextpath. r e p l a c e ( " \\ ", "/" ) ; 9 contextpath = contextpath. r e p l a c e ( "/ build ", "" ) ; // Le añado l a c a r p e t a de almacenamiento 12 S t r i n g path = contextpath + "/ IMG / material " ; return path ; 15 } Listado de código 8: metodo getpathimgfolder() Java obtiene por mi la ruta absoluta en la que se almacena el servidor, y yo solo la tengo que tratar un poco y añadirle la ruta relativa de la carpeta en la que quiero almacenar las imágenes. Creo así una solución intermedia entre solo introducir la ruta relativa y escribir la ruta absoluta (que seria del todo ineciente) Crear un ltro de búsqueda para mostrar material con JavaScript y JQuery. En la parte en la que se lista el material se ofrece al usuario la posibilidad de que realice una busqueda rapida para ltrar de entre todos los resultados. Primero deberemos crear el codigo Html que muestre los resultados y el campo de búsqueda. <div c l a s s=" columna columna_70"> < a r t i c l e class=" d i s p o n i b l e "> <h2><a href="#" t a r g e t="_blank">nombre d e l A r t i c u l o 1</a></h2> <a href="#" t a r g e t="_blank">s a c a r</a> </ a r t i c l e> < a r t i c l e class=" d i s p o n i b l e "> <h2><a href="#" t a r g e t="_blank">nombre d e l A r t i c u l o 2</a></h2> 20

22 <a href="#" t a r g e t="_blank">s a c a r</a> </ a r t i c l e>... </ div> <div c l a s s=" columna columna_30"> <form> </form> <label>clave de busqueda :</ label> <input class=" busqueda " type=" t e x t " p l a c e h o l d e r=" Introduce l a busqueda "> </ div> Listado de código 9: HTML para listar material Una vez que tenemos nuestro codigo Html con todos los elementos (en la aplicación realmente se consulta a la BD y del resultado se lista) empezamos a crear el codigo para la busqueda. Para ello utilizaremos JavaScript y la libreria jquery[7]. Para comprobar el texto introducido en el input podemos utilizar el evento change(). Este evento se llama cada vez que el input se modica, pero solo cuando sales de ese input. Ademas no funciona de forma que sea un ltro letra por letra. Para todo esto tenemos que usar tambien el evento keyup, el cual se llama despues que el usuario teclee una letra. $ ( ". busqueda " ). change ( f u n c t i o n ( ) {... } ). keyup ( f u n c t i o n ( ) { } ) ; // lanza e l evento change de a r r i b a // con cada l e t r a t e c l e a d a $ ( t h i s ). change ( ) ; Listado de código 10: JQuery busqueda De esta forma cuando recibimos un evento keyup llamamos al evento change. Se convierte asi en un bucle que nos permite hacer la busqueda. Con la libreria jquery podemos hacer la busqueda de elementos coincidentes gracias al selector :contains(): 21

23 $ ( ". busqueda "). change ( f u n c t i o n ( ) { var f i l t e r = $ ( t h i s ). val ( ) ; i f ( f i l t e r === "") { } e l s e { } r eturn f a l s e ; }). keyup ( f u n c t i o n ( ) { }) ; $ ( ". columna_70 "). f i n d (" h2 a "). slidedown ( ). parent ( ). parent ( ). slidedown ( ) ; $ ( ". columna_70 "). f i n d (" h2 a : not ( : Contains (" + f i l t e r + ") ) "). parent ( ). parent ( ). slideup ( ) ; $ ( ". columna_70 "). f i n d (" h2 a : Contains (" + f i l t e r + ") "). parent ( ). parent ( ). slidedown ( ) ; $ ( t h i s ). change ( ) ; Listado de código 11: JQuery busqueda El codigo anterior se puede resumir en: busca en todo el bloque columna_70 aquellos enlaces a que estando dentro de un h2 contengan la clave de busqueda. Una vez encontrados, haz que todo el articulo en cuestion (.parent().parent()) suba. Los que no cumplan esta condicion, que desaparezcan. Ademas el codigo contempla la posibilidad de que la clave este vacia, momento en el que mostrara todas las entradas Conexión con la BD evitando posibles SQL-Injection. Prepared Statements. El SQL injection es una técnica por la cual un usuario podría, gracias a los inputs, insertar comandos SQL en nuestra sentencia SQL ya preparada. Esto podría poner en serio riesgo la seguridad de nuestra aplicación. Un ejemplo[10] de lo que podría pasar si no lo incluimos es el siguiente. Tenemos un campo input en un formulario web, y en la parte del servidor simplemente concatenamos lo introducido por el usuario a nuestra sentencia 22

24 SQL preparada. 1 S t r i n g i d U s u a r i o = r e q u e s t. getparameter (" idusuario " ) ; 2 3 S t r i n g s q l = " SELECT * FROM usuarios WHERE id = " + i d U s u a r i o ; Listado de código 12: Codigo al que se le puede inyectar SQL Parece sencillo. ¾Pero que pasa si el usuario introduce en el input 105; DROP TABLE usuarios? Se crearía una sentencia SQL como la siguiente: SELECT FROM u s u a r i o s WHERE id = 105; DROP TABLE u s u a r i o s ; Listado de código 13: SQL tras injection Para evitar esto se utilizan lo que se llaman prepared statements[3]. En ellas en vez de concatenar el texto introducido por el usuario, se sustituye por un signo de interrogación para indicar que lo que hay va a introducirse no debe interpretarse como código SQL. Un ejemplo: 1 S t r i n g i d U s u a r i o = r e q u e s t. getparameter (" idusuario " ) ; 2 S t r i n g nombreusuario = r e q u e s t. getparameter (" nombreusuario " ) ; 3 4 S t r i n g s q l = " SELECT * FROM usuarios WHERE id =? AND nombre =?" ; 5 6 PreparedStatement ps = c o n n e c t i o n. preparestatement ( preparedsql ) ; 7 8 // Asignamos l o s parametros de l a s e n t e n c i a SQL 9 ps. s e t S t r i n g ( 1, i d U s u a r i o ) ; 10 ps. s e t S t r i n g ( 1, nombreusuario ) ; r s = ps. executequery ( ) ; Listado de código 14: Codigo con prepared statement Todo este bloque de código debe ir encerrado en un try/catch ya que puede devolver una excepción del tipo SQLException[8]. Para simplicar todo este proceso lo que he hecho a sido crear en la clase BDManager un conjunto de métodos que realicen esto de forma automática. Para ello deben aceptar como parámetros la sentencia SQL preparada y la lista de argumentos ordenada. 1 public R e s u l t S e t p r e p a r e d E x e c S e l e c t ( S t r i n g preparedsql, S t r i n g... v a r i a b l e s ) { 2 3 R e s u l t S e t r s = null ; 4 5 try { 6 7 PreparedStatement ps = c o n n e c t i o n. preparestatement ( preparedsql ) ; 8 23

25 9 int i = 1 ; for ( S t r i n g v a r i a b l e : v a r i a b l e s ) { ps. s e t S t r i n g ( i, v a r i a b l e ) ; 14 i ++; } r s = ps. executequery ( ) ; } catch ( SQLException ex ) { System. out. p r i n t l n ( " Error en la sentencia SQL ") ; } return r s ; } } Listado de código 15: preparedexecselect De forma muy similar creamos las funciones preparedexecuteupdate y preparedexecute. Ejemplos de su utilización son, en el servlet Login.java 1 BDManager bdmanager = new BDManager ( ) ; 2 3 S t r i n g preparedsql = " SELECT * FROM usuarios WHERE correo =? AND password =?" ; 4 5 R e s u l t S e t r s = bdmanager. p r e p a r e d E x e c S e l e c t ( preparedsql, correo, password ) ; Listado de código 16: Ejemplo en Login.java o en el servlet RegistroUsuario.java 1 BDManager bdmanager = new BDManager ( ) ; 2 3 S t r i n g s q l = " INSERT INTO usuarios ( nombre, apellidos, correo, password, penalizado ) VALUES (?,?,?,?,?) " ; 4 5 bdmanager. preparedexecute ( s q l, nombre, a p e l l i d o s, correo, password, " false " ) ; Listado de código 17: Ejemplo en RegistroUsuario.java Aplicando estos métodos a todas las interacciones con la base de datos en la que le enviamos texto introducido por el usuario, evitaremos cualquier problema. 24

26 Noticaciones de retraso en la devolución de material. Para el administrador es muy útil saber quien se esta retrasando en la devolución del material. Para ello creo las noticaciones. Atacando la BD, en la clase NotificacionesManager.java, con una consulta SQL del tipo: SELECT FROM u s u a r i o _ t i e n e _ a r t i c u l o AS atc INNER JOIN a r t i c u l o s AS a ON atc. i d _ a r t i c u l o = a. id INNER JOIN u s u a r i o s AS u ON atc. id_usuario = u. id WHERE a. d i s p o n i b i l i d a d = ' f a l s e ' " ; Listado de código 18: SQL noticaciones Obtengo los datos de los artículos que están en préstamo así como el usuario que lo tiene. Con la lista de datos que devuelve la consulta puedo comprobar las fechas estipuladas para la devolución y la fecha actual: 1 while ( r e s u l t s e t. next ( ) ) { 2 3 FechasManager fm = new FechasManager ( ) ; 4 5 S t r i n g fechadevolucion = r s. g e t S t r i n g ( " fechadevolucion " ) ; 6 7 Date dateactual = fm. getdateformat ( fm. c a l c u l a r F e c h a A c t u a l ( ) ) ; 8 Date datedevolucion = fm. getdateformat ( fechadevolucion ) ; 9 10 i f ( dateactual. a f t e r ( datedevolucion ) ) { // codigo que c r e a l a n o t i f i c a c i ó n } 15 } Listado de código 19: Comparación fechas Si se ha pasado la fecha de devolución, obtengo los datos del usuario y el articulo, creo la noticación y la añado a la lista para que pueda verla el administrador. No seria complicado ademas cambiar el usuario a la categoría de penalizado, impidiéndole sacar más cosas. Pero he preferido no hacerlo y que sea el administrador quien lo decida Cerrado automático de paginas tras acción en servlet. Cuando realizamos una acción en un servlet de java al terminarla podemos redirigir la aplicación a una nueva (o a la misma) pagina, simplemente con el comando: 25

27 1 r e s p o n s e. s e n d R e d i r e c t ( " home. html " ) ; Listado de código 20: Redirección en servlet Si lo que queremos, sin embargo es que esa pestaña del navegador se cierre, la solución no es tan directa (aunque es igual de sencilla). Lo que haremos sera redirigir la aplicación a la pagina ADMIN/Close.html (esta en la carpeta ADMIN simplemente por comodidad, ya que el administrador es el único que necesitaba cerrar pestañas) donde habremos escrito el siguiente codigo html: <body onload=" c e r r a r ( ) ; "> <script> f u n c t i o n c e r r a r ( ) { } </ script> </body> window. c l o s e ( ) ; Listado de código 21: Close.html Gestión del Histórico de material con JSON En la pagina que muestra al administrador todos los movimientos de material que se han producido (HistoricoAdmin) es fundamental que se puedan hacer consultas en esa lista. Para simplicar el proceso, no hacer numerosas consultas a la BD y probar otras formas de trabajo he decidido emplear JavaScript Y JSON para mostrar los resultados y hacer los ltros. Lo primero que tenemos que hacer es importar la librería JSON a nuestro proyecto. Después tenemos que crear un servlet al que llamaremos listarhistorico.java en el que crearemos un array asociativo JSON de la forma: {" h i s t o r i c o " : [ { " a r t i c u l o " : " Casco P e t l z ", " fechadevolucion ":" : 3 9 : 3 9 ", " u s u a r i o " : " Usuario Prueba ", " f e c h a S a l i d a ":" : 3 8 : 5 2 " },... ] } Listado de código 22: array JSON Este JSON contiene la información de todas las entradas de la tabla Histórico en la BD. Creamos el.html que mostrara los resultados. Esto lo conseguimos creando una lista: 26

28 <ul class=" l i s t _ h i s t o r i c o "> < l i class=" l i s t _ h e a d e r ">A r t i c u l o</ l i> < l i class=" l i s t _ h e a d e r ">Usuario</ l i> < l i class=" l i s t _ h e a d e r ">Fecha s a l i d a</ l i> < l i class=" l i s t _ h e a d e r ">Fecha Devolucion</ l i> </ ul> < l i class=" l i s t _ d a t a ">...</ l i> < l i class=" l i s t _ d a t a ">...</ l i> < l i class=" l i s t _ d a t a ">...</ l i> < l i class=" l i s t _ d a t a ">...</ l i>... Listado de código 23: HTML historico Una vez que tenemos creada el HTML podemos centrarnos en listar los elementos. Para ello en el código JavaScript asociado creamos la siguiente función que sera llamada nada mas cargarse la pagina: f u n c t i o n l o a d H i s t o r i c o ( ) { } $ ( ". l i s t _ h i s t o r i c o " ). html ( " " ) ; addlistheader ( ) ; $. getjson ( u r l L i s t a r H i s t o r i c o, f u n c t i o n ( j s o n ) { } ) ; var datos = JSON. s t r i n g i f y ( j s o n ) ; l o c a l S t o r a g e. setitem (" datos ", datos ) ; $. each ( j s o n. h i s t o r i c o, f u n c t i o n ( i, item ) { } ) ; addlistdata ( item ) ; Listado de código 24: loadhistorico JavaScript 27

29 En este método primero eliminamos cualquier elemento existente en esa lista. Cargamos el encabezado de la lista. Y después vamos cargando los diferentes elementos del JSON. Esto se consigue gracias a los métodos addlistheader() y addlistdata(item respectivamente, en los que gracias al método.append() vamos añadiendo nuevos elementos al.html. Es muy importante destacar el punto en el que añadimos el json al local storage. Para eso hemos tenido que convertirlo a un String con la función JSON.stringify(). Esto es lo que nos permitirá ahorrar consultas a la BD cuando ltremos la información ya que podremos hacer la consulta directamente al json ya almacenado en local storage. Para ello tendremos que convertir el string almacenado de nuevo al formato JSON. Esto lo conseguimos de la forma: var datoslocal = JSON. parse ( l o c a l S t o r a g e. getitem (" datos " ) ) Para llevar a cabo las consultas creo un formulario en html de la forma: <form> <label>palabra c l a v e :</ label> <input type=" t e x t " name=" c l a v e " id=" clavebusqueda "> <label>campo de busqueda :</ label> <select id="campobusqueda"> <option>a r t i c u l o</ option> <option>usuario</ option> <option>fecha S a l i d a</ option> <option>fecha Devolucion</ option> </ select> </form> <div id=" search ">Buscar</ div> Listado de código 25: formulario busqueda historico Seguidamente en JavaScript creo el siguiente evento al hacer click en Buscar: $("# search "). on (" c l i c k ", f u n c t i o n ( ) { // Recogemos o p c i o n e s s e l e c c i o n a d a s por u s u a r i o var campobusqueda = $('#campobusqueda ' ). f i n d ( " : s e l e c t e d "). t e x t ( ) ; var clavebusqueda = $("#clavebusqueda "). val ( ) ; // Vaciamos l a t a b l a de h i s t o r i c o $ ( ". l i s t _ h i s t o r i c o "). html ( "") ; 28

30 // Creamos l o s header addlistheader ( ) ; // Recuperamos e l JSON var datoslocal = JSON. parse ( l o c a l S t o r a g e. getitem (" datos ") ) ; // Lo recorremos $. each ( datoslocal. h i s t o r i c o, f u n c t i o n ( i, item ) { i f ( campobusqueda==="a r t i c u l o ") { var a r t i c u l o = item. a r t i c u l o ; i f ( a r t i c u l o. indexof ( clavebusqueda ) >= 0) { addlistdata ( item ) ; } }... } }) ; Listado de código 26: Busqueda historico JavaScript En este código solo añadiremos el item a la lista si contiene el substring introducido por el usuario (articulo.indexof(clavebusqueda) >= 0). De igual manera procederemos cuando campobusqueda sea Usuario, Fecha Salida o Fecha Devolución. SOlo que en estos casos lo introducido por el usuario lo compararemos con item.usuario, item.fechasalida o item.fechadevolución respectivamente Referencias [1] Apache-Commons. apache-commons-leupload api. [2] Apache-Commons. apache-commons-io api. [3] Enrique Blasco Blanquer. Apuntes programación en Java. CICE, [4] ChuWiki.org. File upload con jsp. [5] erifetim. Java and pdf - tutorials [e]. Youtube videos. 29

31 [6] itext Software Corp. itext api. [7] jquery Foundation. jquery api. [8] Herbert Schildt. Java 8: A beginner's guide. Oracle Press - Anaya Multimedia, [9] tutorials.jenkov.com (Jakob Jenkov). Java pdf generation with itext. [10] w3schools.com. Sql injection. (SQL Tutorial). [11] what-when how.com. Creating a pdf from a servlet (itext 5). 30

MANUAL DEL PROGRAMA DE ASESORAMIENTO (Asesores) Navegador y limpiar caché/cookies...2 Acceso al programa de Asesoramiento... 7

MANUAL DEL PROGRAMA DE ASESORAMIENTO (Asesores) Navegador y limpiar caché/cookies...2 Acceso al programa de Asesoramiento... 7 MANUAL DEL PROGRAMA DE ASESORAMIENTO (Asesores) Índice Pasos previos a la visualización del programa: Navegador y limpiar caché/cookies...2 Acceso al programa de Asesoramiento... 7 Conceptos e información

Más detalles

Región de Murcia Consejería de Educación, Ciencia e Investigación. Manual Usuario FCT

Región de Murcia Consejería de Educación, Ciencia e Investigación. Manual Usuario FCT . Manual Usuario FCT Murcia, 9 de Julio de 2007 Manual de Usuario FCT v1.0 pág. 2 de 73 ÍNDICE Manual Usuario FCT...1 1. Tipos de usuarios... 4 2. Modelo de navegación... 5 3. Servicios... 6 3.1. Convenios...

Más detalles

GENERAR DOCUMENTOS HTML USANDO LENGUAJE PHP. EJERCICIO RESUELTO EJEMPLO SENCILLO. (CU00733B)

GENERAR DOCUMENTOS HTML USANDO LENGUAJE PHP. EJERCICIO RESUELTO EJEMPLO SENCILLO. (CU00733B) APRENDERAPROGRAMAR.COM GENERAR DOCUMENTOS HTML USANDO LENGUAJE PHP. EJERCICIO RESUELTO EJEMPLO SENCILLO. (CU00733B) Sección: Cursos Categoría: Tutorial básico del programador web: HTML desde cero Fecha

Más detalles

CASO PRÁCTICO DISTRIBUCIÓN DE COSTES

CASO PRÁCTICO DISTRIBUCIÓN DE COSTES CASO PRÁCTICO DISTRIBUCIÓN DE COSTES Nuestra empresa tiene centros de distribución en tres ciudades europeas: Zaragoza, Milán y Burdeos. Hemos solicitado a los responsables de cada uno de los centros que

Más detalles

UTILIZACIÓN DE UNA CUENTA DE CORREO ELECTRÓNICO (NUEVO) Acceso al correo electrónico

UTILIZACIÓN DE UNA CUENTA DE CORREO ELECTRÓNICO (NUEVO) Acceso al correo electrónico Acceso al correo electrónico Pasamos ahora a lo que sería usar la cuenta de correo que nos hicimos en la clase anterior. Lo primero que hacemos es entrar en la página web de Yahoo y localizar el icono

Más detalles

MANUAL DE AYUDA HERRAMIENTA DE APROVISIONAMIENTO

MANUAL DE AYUDA HERRAMIENTA DE APROVISIONAMIENTO MANUAL DE AYUDA HERRAMIENTA DE APROVISIONAMIENTO Fecha última revisión: Marzo 2016 INDICE DE CONTENIDOS HERRAMIENTA DE APROVISIONAMIENTO... 2 1. QUÉ ES LA HERRAMIENTA DE APROVISIONAMIENTO... 2 HERRAMIENTA

Más detalles

Proyectos de Innovación Docente

Proyectos de Innovación Docente Proyectos de Innovación Docente Manual de Usuario Vicerrectorado de Docencia y Profesorado Contenido INTRODUCCIÓN... 3 DATOS PERSONALES... 6 Modificar email... 6 Modificar contraseña... 7 GESTIÓN PROYECTOS...

Más detalles

Manual de ayuda para crear y gestionar Tareas, como actividad evaluable

Manual de ayuda para crear y gestionar Tareas, como actividad evaluable Manual de ayuda para crear y gestionar Tareas, como actividad evaluable Contenido TAREAS.... 3 CONFIGURACIÓN.... 3 GESTIÓN Y CALIFICACIÓN DE TAREAS.... 8 TAREAS. Mediante esta herramienta podemos establecer

Más detalles

MANUAL DE USUARIO ARCHIVO

MANUAL DE USUARIO ARCHIVO MANUAL DE USUARIO ARCHIVO ÍNDICE Páginas 1. INTRODUCCIÓN... 1 2. MENÚ PRINCIPAL... 2 2.1 TABLAS... 2 2.1.1. Localización... 4 2.1.2. Tipos de Documentos... 4 2.1.3. Tipos Auxiliares... 6 2.2. DOCUMENTOS...

Más detalles

MANUAL DE AYUDA MÓDULO GOTELGEST.NET PREVENTA/AUTOVENTA

MANUAL DE AYUDA MÓDULO GOTELGEST.NET PREVENTA/AUTOVENTA MANUAL DE AYUDA MÓDULO GOTELGEST.NET PREVENTA/AUTOVENTA Fecha última revisión: Septiembre 2014 MANUAL DE AYUDA MÓDULO GOTELGEST.NET PREVENTA/AUTOVENTA MÓDULO GOTELGEST.NET MÓVIL... 3 1. INTRODUCCIÓN A

Más detalles

Manual de ayuda para la utilización del Correo Interno en el Campus Virtual

Manual de ayuda para la utilización del Correo Interno en el Campus Virtual Manual de ayuda para la utilización del Correo Interno en el Campus Virtual Página 1 de 12 Contenido 1. INTRODUCCIÓN... 3 2. CONFIGURACIÓN DEL BLOQUE DE CORREO INTERNO... 3 3. GESTIÓN DEL CORREO... 4 4.

Más detalles

ÍNDICE...1. Pág. 1/21

ÍNDICE...1. Pág. 1/21 UNIVERSIDAD POLITÉCNICA DE VALENCIA BIBLIOTECA GENERAL CORAL 2 CIRCULACIÓN MANUAL DE USUARIO - WEB MANUAL DE USUARIO Julio 2002 ÍNDICE ÍNDICE...1 WEB...2 CONSULTA USUARIO... 3 Descripción...3 Funcionamiento...3

Más detalles

MANUAL DE USO http://www.arsliber.com/ Octubre 2011. CLIENTE: Liber Ediciones AUTOR: 2.0 DISEÑO _

MANUAL DE USO http://www.arsliber.com/ Octubre 2011. CLIENTE: Liber Ediciones AUTOR: 2.0 DISEÑO _ MANUAL DE USO http://www.arsliber.com/ Octubre 2011 PROYECTO: MANUAL DE USO - Página Web PAG: 1 INDICE 1. INICIO DE SESIÓN:... 3 2. AÑADIR Y MODIFICAR LAS PÁGINAS:... 5 2.1. Añadir un nuevo libro a bibliofilia...

Más detalles

MANUAL DE USUARIO DE LA HERAMIENTA CONFIGURACION DE PRESUPUESTOS PARA DISTRIBUIDORES

MANUAL DE USUARIO DE LA HERAMIENTA CONFIGURACION DE PRESUPUESTOS PARA DISTRIBUIDORES MANUAL DE USUARIO DE LA HERAMIENTA CONFIGURACION DE PRESUPUESTOS PARA DISTRIBUIDORES Joma ha creado una herramienta con la cual, usted, como distribuidor, podrá generar presupuestos de las agrupaciones

Más detalles

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL OBJETIVO Mejorar el nivel de comprensión y el manejo de las destrezas del estudiante para utilizar formulas en Microsoft Excel 2010. 1) DEFINICIÓN Una fórmula de Excel es un código especial que introducimos

Más detalles

Curso Internet Básico - Aularagon

Curso Internet Básico - Aularagon Antes de empezar es necesario que tengas claro algunas cosas: para configurar esta cuenta de correo, debes saber que el POP y el SMTP en este caso son mail.aragon.es; esta cuenta de correo hay que solicitarla

Más detalles

2011-2012 RESOLUCIÓN DE ERRORES EN MOODLE CAMPUS VIRTUAL-BIRTUALA UPV-EHU

2011-2012 RESOLUCIÓN DE ERRORES EN MOODLE CAMPUS VIRTUAL-BIRTUALA UPV-EHU 2011-2012 RESOLUCIÓN DE ERRORES EN MOODLE CAMPUS VIRTUAL-BIRTUALA UPV-EHU Antecedentes:... 2 1. Introducción... 3 2. Imágenes que no se visualizan... 3 3. URLs de recursos o actividades que no son autocontenido...

Más detalles

Programa diseñado y creado por 2014 - Art-Tronic Promotora Audiovisual, S.L.

Programa diseñado y creado por 2014 - Art-Tronic Promotora Audiovisual, S.L. Manual de Usuario Programa diseñado y creado por Contenido 1. Acceso al programa... 3 2. Opciones del programa... 3 3. Inicio... 4 4. Empresa... 4 4.2. Impuestos... 5 4.3. Series de facturación... 5 4.4.

Más detalles

MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD

MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD Fecha última revisión: Diciembre 2010 Tareas Programadas TAREAS PROGRAMADAS... 3 LAS TAREAS PROGRAMADAS EN GOTELGEST.NET... 4 A) DAR DE ALTA UN USUARIO...

Más detalles

XAJAX: una librería de AJAX para PHP (parte 1)

XAJAX: una librería de AJAX para PHP (parte 1) XAJAX: una librería de AJAX para PHP (parte 1) AJAX es el acrónimo de Asynchronous Javascript And XML o Javascript y XML asíncronos dicho en nuestro idioma. Se trata de una combinación de tecnologías que

Más detalles

Manual de usuario. Tramitación de inspecciones periódicas de ascensores: La visión de las empresas conservadoras

Manual de usuario. Tramitación de inspecciones periódicas de ascensores: La visión de las empresas conservadoras Tramitación de inspecciones periódicas de ascensores: La visión de las empresas conservadoras 7 de Enero de 2008 Índice 1. INTRODUCCIÓN 3 2. SECUENCIAS PRINCIPALES A REALIZAR 4 2.1. FLUJO BASICO DE SECUENCIAS

Más detalles

Base de datos en la Enseñanza. Open Office

Base de datos en la Enseñanza. Open Office 1 Ministerio de Educación Base de datos en la Enseñanza. Open Office Módulo 1: Introducción Instituto de Tecnologías Educativas 2011 Introducción Pero qué es una base de datos? Simplificando mucho, podemos

Más detalles

Operación de Microsoft Excel. Guía del Usuario Página 79. Centro de Capacitación en Informática

Operación de Microsoft Excel. Guía del Usuario Página 79. Centro de Capacitación en Informática Manejo básico de base de datos Unas de las capacidades de Excel es la de trabajar con listas o tablas de información: nombres, direcciones, teléfonos, etc. Excel puede trabajar con tablas de información

Más detalles

Manual de Uso Web profesional

Manual de Uso Web profesional Manual de Uso Web profesional Versión 5 Junio 2015 ÍNDICE 0 Introducción... 3 1 Página principal de Mi área de trabajo... 4 2 Solicitudes... 5 3 Aportaciones... 13 4 Trabajos... 17 5 Los documentos a firmar...

Más detalles

GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD

GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD Manual de usuario 1 - ÍNDICE 1 - ÍNDICE... 2 2 - INTRODUCCIÓN... 3 3 - SELECCIÓN CARPETA TRABAJO... 4 3.1 CÓMO CAMBIAR DE EMPRESA O DE CARPETA DE TRABAJO?...

Más detalles

GUIA BÁSICA DE ABSYSNET PARA PRINCIPIANTES

GUIA BÁSICA DE ABSYSNET PARA PRINCIPIANTES GUIA BÁSICA DE ABSYSNET PARA PRINCIPIANTES 1. INTRODUCCIÓN...1 2. ESCRITORIO...2 3. CATÁLOGO....4 4. LECTORES...11 5. CIRCULACIÓN...12 Préstamos....12 Renovaciones....13 Devoluciones...14 Reservas...14

Más detalles

Usuarios y Permisos. Capítulo 12

Usuarios y Permisos. Capítulo 12 Capítulo 12 Usuarios y Permisos La gente simplemente intenta utilizar el sitio web Joomla! que has creado - ya sea de forma activa o pasiva. Cuanto mejor sea la experiencia que tenga al hacerlo, mejor

Más detalles

GIROS Bancarios en NOTIN

GIROS Bancarios en NOTIN GIROS Bancarios en NOTIN El proceso general consiste en generar desde la factura deseada un "GIRO", desde "GIROS" (acceso desde "facturas", botón inferior/derecha) seleccionar aquellos que deseamos incluir

Más detalles

Esta extensión está obsoleta a partir de PHP 5.5.0, y será eliminada en el futuro

Esta extensión está obsoleta a partir de PHP 5.5.0, y será eliminada en el futuro USAR MYSQL EN PHP PHP tiene una librería de funciones nativas para conectarse a las base de datos MySQL. Por un lado reconoce la librería mysql y por otro mysqli. Se recomienda el uso de mysqli dado que

Más detalles

Cómo gestionar menús en Drupal 7

Cómo gestionar menús en Drupal 7 Cómo gestionar menús en Drupal 7 Los menús en Drupal son unas herramientas muy poderosas porqué proporcionan maneras para que los visitantes de nuestro sitio puedan llegar a páginas específicas. Estos

Más detalles

MANUAL DE USUARIO SECTOR PRIVADO (RESUMEN)

MANUAL DE USUARIO SECTOR PRIVADO (RESUMEN) MANUAL USUARIO - SIDREP DESARROLLO DE UN SISTEMA DE DECLARACIÓN Y SEGUIMIENTO DE RESIDUOS PELIGROSOS MANUAL DE USUARIO SECTOR PRIVADO (RESUMEN) PREPARADO PARA COMISIÓN NACIONAL DEL MEDIO AMBIENTE, CONAMA

Más detalles

IDENTIFICACIÓN DE LA ACTIVIDAD PEDAGÓGICA

IDENTIFICACIÓN DE LA ACTIVIDAD PEDAGÓGICA PROGRAMA DE FORMACIÓN UNIDAD DE APRENDIZAJE ACTIVIDAD OBJETIVOS IDENTIFICACIÓN DE LA ACTIVIDAD PEDAGÓGICA OFIMATICA Y AUXILIAR DE SISTEMAS II-A GESTORES DE CONTENIDO INSTALACIÓN DE JOOMLA Y CREACIÓN DE

Más detalles

Manual Usuario Manual Usuario

Manual Usuario Manual Usuario Manual Usuario Con la colaboración de : TABLA DE CONTENIDOS 1 Introducción... 7 2 Consideraciones generales... 8 2.1 Perfiles de acceso... 8 2.1.1 Administrador Intress... 8 2.1.2 Administrador entidad...

Más detalles

La ventana de Microsoft Excel

La ventana de Microsoft Excel Actividad N 1 Conceptos básicos de Planilla de Cálculo La ventana del Microsoft Excel y sus partes. Movimiento del cursor. Tipos de datos. Metodología de trabajo con planillas. La ventana de Microsoft

Más detalles

MANUAL PARA GESTIÓN DE INCIDENCIAS INFORMÁTICAS

MANUAL PARA GESTIÓN DE INCIDENCIAS INFORMÁTICAS MANUAL PARA GESTIÓN DE INCIDENCIAS INFORMÁTICAS En este manual aprenderemos a introducir un Ticket de Soporte (Incidencia Informática) y ver todo el proceso hasta que se resuelve. Para poder escribir Tickets

Más detalles

Tutorial para hacer una base de datos sencilla con openoffice Base

Tutorial para hacer una base de datos sencilla con openoffice Base Tutorial para hacer una base de datos sencilla con openoffice Base (Perdonad los errores, está hecho con prisa, ya lo revisaré. Lo importante es que os valga para hacer el trabajo sin contratiempos. Podéis

Más detalles

GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES

GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES Tema: Cartas de Servicios Primera versión: 2008 Datos de contacto: Evaluación y Calidad. Gobierno de Navarra. evaluacionycalidad@navarra.es

Más detalles

Práctica 2: Simón dice

Práctica 2: Simón dice Práctica 2: Simón dice Fecha de entrega: 31 de enero de 2016 0.- Descripción del juego (Wikipedia.org) Simon dice es un juego electrónico, creado por Ralph Baer, que consiste en reproducir una secuencia

Más detalles

MANUAL PLATAFORMA SMSWORLD

MANUAL PLATAFORMA SMSWORLD 1 MANUAL PLATAFORMA SMSWORLD - ENTRAMOS en www.smsworld.es - Ahora pinchamos sobre el enlace Plataforma de Envíos y nos llevara a la página principal de la plataforma. - En la página principal de la plataforma

Más detalles

Tienda Virtual Synergy (Parte 2)

Tienda Virtual Synergy (Parte 2) Tienda Virtual Synergy (Parte 2) El catálogo electrónico de productos es la base de toda la aplicación por lo que siempre será necesario instalarlo. Los siguientes dos módulos (tienda virtual y módulo

Más detalles

http://www.hikashop.com/en/component/updateme/doc/page-...

http://www.hikashop.com/en/component/updateme/doc/page-... español Contenido de visualización en el extremo delantero Descripción Página del producto con un menú Listado de productos con un menú Listado de categorías con un menú Los productos con un módulo Categorías

Más detalles

MACROS Y FORMULARIOS

MACROS Y FORMULARIOS MACROS Y FORMULARIOS Para poder realizar formularios en Excel es necesario ubicar el menú programador Qué hacer si no aparece el menú programador? En algunos equipos no aparece este menú, por lo que es

Más detalles

**NOTA** las partes tachadas todavía no están escritas, se ira actualizando poco a poco el documento

**NOTA** las partes tachadas todavía no están escritas, se ira actualizando poco a poco el documento Simple tutorial we riseup Pequeña introducción a We Riseup #Qué es we.riseup o Crabgrass? #Como esta estructurado We.riseup? Lo Esencial Unirse a un grupo Metodo 1 Metodo 2 Crear contenido #1 ) Crear la

Más detalles

En este tutorial vamos a calificar una tarea por el método "Calificación simple directa"que es el que utiliza por defecto moodle.

En este tutorial vamos a calificar una tarea por el método Calificación simple directaque es el que utiliza por defecto moodle. 1 de 9 Calificar Tarea En este tutorial vamos a calificar una tarea por el método "Calificación simple directa"que es el que utiliza por defecto moodle. La evaluación por guías de calificación y las rúbricas

Más detalles

Gestión de usuarios en la web educativa del centro con JOOMLA!

Gestión de usuarios en la web educativa del centro con JOOMLA! Gestión de usuarios en la web educativa del centro con JOOMLA! Tomás Clemente Carrilero. Profesor de enseñanza secundaria. Introducción Joomla! no permite asignar privilegios ni imponer restricciones a

Más detalles

Manual del alumno Aula Virtual Puertos de Tenerife. http://apt-rhformacion.puertosdetenerife.org/

Manual del alumno Aula Virtual Puertos de Tenerife. http://apt-rhformacion.puertosdetenerife.org/ Manual del alumno Aula Virtual Puertos de Tenerife http://apt-rhformacion.puertosdetenerife.org/ 1 Índice 1. Introducción.... 3 2. Acceso al Campus virtual.... 3 3. Estructura General de un curso... 4

Más detalles

INDEX GUÍA INSTRUCTIVA PARA PASOS INICIALES DEL SITE BUILDER

INDEX GUÍA INSTRUCTIVA PARA PASOS INICIALES DEL SITE BUILDER GUÍA INSTRUCTIVA PARA PASOS INICIALES DEL SITE BUILDER INDEX Introducción...2 Paso 1. Diseños. La plantilla de diseños...2 1.a Diseños:...2 1.b Colores:...3 1.c Estilos:...5 Paso 2. Información...6 Paso

Más detalles

Manual Usuario Wordpress. Índice

Manual Usuario Wordpress. Índice 2 Índice 1. Manual usuario...2 1.1 Zona de mensajes...2 1.2 Zona de usuarios...5 1.2.1 Identificarse...5 1.2.2 Registrarse...6 1.3 Categorías...6 1.4 Subscribirse...6 1.5 Archivos...7 1.6 Calendario...7

Más detalles

Instalación del programa PSPP y obtención de una distribución de frecuencias.

Instalación del programa PSPP y obtención de una distribución de frecuencias. Práctica 2. Instalación del programa PSPP y obtención de una distribución de frecuencias. Con esta práctica instalaremos el programa PSPP. El programa es un software específico para el análisis estadístico

Más detalles

MANUAL DE PRACTICUM12 PARA CENTROS EDUCATIVOS ÁMBITO MÁSTER

MANUAL DE PRACTICUM12 PARA CENTROS EDUCATIVOS ÁMBITO MÁSTER MANUAL DE PRACTICUM12 PARA CENTROS EDUCATIVOS ÁMBITO MÁSTER Centros educativos de la Comunidad de Madrid que deseen ser centros de prácticas de los alumnos del Máster en Profesorado de ESO y Bachillerato,

Más detalles

Documentación del Terminal

Documentación del Terminal Documentación del Terminal 1. Descripción El Programa de Preventa-Autoventa FacturaPlus está diseñado para su utilización en PDAs incluyendo en este paquete además una aplicación para PC con la que gestionar

Más detalles

CÓMO CREAR NUESTRO CATÁLOGO

CÓMO CREAR NUESTRO CATÁLOGO CÓMO CREAR NUESTRO CATÁLOGO Mediante la aplicación (http://www.prensasoft.com/programas/conline) podemos crear nuestros propios catálogos. Para crear un catálogo necesitamos: - Varios productos que mostrar,

Más detalles

SMS PUSH SMS ENCUESTAS INTERNET FAX

SMS PUSH SMS ENCUESTAS INTERNET FAX MANUAL USUARIO SMS PUSH SMS ENCUESTAS INTERNET FAX PLATAFORMA WEB SMS 1. PAGINA DE INICIO... 3 2. ENVIAR SMS... 5 3. ENVIAR SMS ENCUESTA...5 4. ENVIAR FAX... 9 5. FAX RECIBIDOS... 10 6. MI AGENDA... 11

Más detalles

Componente com_weblinks para listados de enlaces web a modo de directorio en Joomla. (CU00442A)

Componente com_weblinks para listados de enlaces web a modo de directorio en Joomla. (CU00442A) aprenderaprogramar.com Componente com_weblinks para listados de enlaces web a modo de directorio en Joomla. (CU00442A) Sección: Cursos Categoría: Curso creación y administración web: Joomla desde cero

Más detalles

SOY DEMANDANTE DE EMPLEO. CÓMO INTRODUZCO MIS DATOS EN EL PORTAL?

SOY DEMANDANTE DE EMPLEO. CÓMO INTRODUZCO MIS DATOS EN EL PORTAL? SOY DEMANDANTE DE EMPLEO. CÓMO INTRODUZCO MIS DATOS EN EL PORTAL? Si buscas trabajo, date de alta como demandante, haciendo clic en el icono Date de alta que aparece en la barra superior. Una vez aquí,

Más detalles

Dell Premier. Guía para comprar y efectuar pedidos de. Registro en la página Premier. Administrar su perfil personal

Dell Premier. Guía para comprar y efectuar pedidos de. Registro en la página Premier. Administrar su perfil personal Guía para comprar y efectuar pedidos de Dell Premier Dell Premier es su una solución Online personalizada y segura en el que puede llevar a cabo un proceso de compras fácil, económico y eficaz. Revise

Más detalles

5.8. REGISTRO DE FACTURAS.

5.8. REGISTRO DE FACTURAS. 5.8. REGISTRO DE FACTURAS. Una factura es un documento probatorio de la realización de una operación económica que especifica cantidades, concepto, precio y demás condiciones de la operación. Este módulo

Más detalles

Cálculo Simbólico también es posible con GeoGebra

Cálculo Simbólico también es posible con GeoGebra www.fisem.org/web/union ISSN: 1815-0640 Número 34. Junio de 2013 páginas 151-167 Coordinado por Agustín Carrillo de Albornoz Cálculo Simbólico también es posible con GeoGebra Antes de exponer las posibilidades

Más detalles

Instructivo Asesoría Básica Comunidad Virtual SharePoint 2010

Instructivo Asesoría Básica Comunidad Virtual SharePoint 2010 Instructivo Asesoría Básica Comunidad Virtual SharePoint 2010 CONTENIDO 1. Qué es? 2. Cómo crear y acceder a la Comunidad Virtual en Microsoft SharePoint 2010? Ejemplo. 3. Qué tengo en la página de inicio

Más detalles

Manual de usuario para Android de la aplicación PORTAFIRMAS MÓVIL

Manual de usuario para Android de la aplicación PORTAFIRMAS MÓVIL Manual de usuario para Android de la aplicación PORTAFIRMAS MÓVIL Índice 1 Introducción... 5 1.1 Perfil de la aplicación... 5 1.2 Requisitos técnicos... 5 2 Manual de usuario... 7 2.1 Instalación del certificado...

Más detalles

1.1.- Introducción a la Web Vemos una introducción al medio donde se encajan los lenguajes que vamos a tratar: la web.

1.1.- Introducción a la Web Vemos una introducción al medio donde se encajan los lenguajes que vamos a tratar: la web. Sesión 01: Introducción a los lenguajes web COMPUTACION E INFORMATICA WEB DEVELOPPER III Competencias a Conseguir: - Introducción general a la programación web. - Conocer y diferenciar el concepto de páginas

Más detalles

Gestión de contratos de adhesión a Oferta Pública en la Oficina Virtual

Gestión de contratos de adhesión a Oferta Pública en la Oficina Virtual Gestión de contratos de adhesión a Oferta Pública en la Oficina Virtual Objetivo Gas Natural Distribución pone a disposición de toda empresa instaladora o de Task Force que quiera convertirse en colaboradora

Más detalles

Diseño de páginas web

Diseño de páginas web Diseño de páginas web Formularios Ricardo Esteban Alonso Insertar Formularios (1) Permiten que el visitante envíe información al servidor web, que la procesa y la almacena o bien se nos envía a través

Más detalles

Acceso a la aplicación de solicitud de subvenciones (Planes de Formación 2014)

Acceso a la aplicación de solicitud de subvenciones (Planes de Formación 2014) Acceso a la aplicación de solicitud de subvenciones (Planes de Formación 2014) Pantalla general de acceso Desde ella se accede a las diferentes convocatorias para poder completar y enviar las solicitudes.

Más detalles

Tutorial de Introducción a la Informática Tema 0 Windows. Windows. 1. Objetivos

Tutorial de Introducción a la Informática Tema 0 Windows. Windows. 1. Objetivos 1. Objetivos Este tema de introducción es el primero que debe seguir un alumno para asegurar que conoce los principios básicos de informática, como el manejo elemental del ratón y el teclado para gestionar

Más detalles

TECNOLOXÍAS E ANÁLISE DOS DATOS

TECNOLOXÍAS E ANÁLISE DOS DATOS TECNOLOXÍAS E ANÁLISE DOS DATOS LINGÜÍSTICOS M.J. Ginzo 3 de diciembre de 2012 Esquema presentación 1 Introducción 2 Accediendo al administrador 3 Elementos de Joomla 1 Artículos 2 Categorías 3 Usuarios

Más detalles

MINI MANUAL PARA CREAR FORMULARIOS CON PHP Marzo 2007

MINI MANUAL PARA CREAR FORMULARIOS CON PHP Marzo 2007 MINI MANUAL PARA CREAR FORMULARIOS CON PHP Marzo 2007 Servicio de Informática y Comunicaciones Para poder diseñar un formulario y que éste nos envíe los resultados a nuestro correo electrónico, necesitamos

Más detalles

UAM MANUAL DE EMPRESA. Universidad Autónoma de Madrid

UAM MANUAL DE EMPRESA. Universidad Autónoma de Madrid MANUAL DE EMPRESA Modo de entrar en ÍCARO Para comenzar a subir una oferta de empleo, el acceso es a través del siguiente enlace: http://icaro.uam.es A continuación, aparecerá la página de inicio de la

Más detalles

Google Drive. Registro y gestión de archivos. Manual de uso

Google Drive. Registro y gestión de archivos. Manual de uso Google Drive. Registro y gestión de archivos. Manual de uso Contenidos I. Crea tu cuenta en Google Drive... 2 1. Crea una cuenta de usuario... 2 1.1. Crear una cuenta Google... 2 1.2. Si ya dispones de

Más detalles

EXTRACTO Descripción del uso y manejo de SIRAIS 1.2

EXTRACTO Descripción del uso y manejo de SIRAIS 1.2 Manual de usuario EXTRACTO Descripción del uso y manejo de ELABORADO POR Dr. Javier Rodríguez Suárez Director General de Difusión e Investigación Ing. José Joel Lucero Morales Jefe de Enseñanza de la Dirección

Más detalles

INSTALACIÓN DE ORACLE 8i (8.1.7) SOBRE NT

INSTALACIÓN DE ORACLE 8i (8.1.7) SOBRE NT INSTALACIÓN DE ORACLE 8i (8.1.7) SOBRE NT Versión 1. Mayo de 2001 Luis Vinuesa Martínez. Departamento de Informática Universidad de Oviedo vinuesa@correo.uniovi.es www.di.uniovi.es/~vinuesa ÍNDICE. Introducción...

Más detalles

Manual de Usuario: Página Web.

Manual de Usuario: Página Web. Manual de Usuario: Página Web. 1- Introducción: La compañía Ecuaratingcorp Cia Ltda, bajo el nombre comercial de MabuyaSoft, ha creado el portal Pamtours, pamtour.com cuyo principal objetivo es la venta

Más detalles

Cómo creo las bandejas del Registro de Entrada /Salida y de Gestión de Expedientes?

Cómo creo las bandejas del Registro de Entrada /Salida y de Gestión de Expedientes? Preguntas frecuentes Cómo creo las bandejas del Registro de Entrada /Salida y de Gestión de Expedientes? Atención! Esta opción es de configuración y solamente la prodrá realizar el administrador de la

Más detalles

CORREO ELECTRÓNICO GMAIL. 1 Enviar correo electrónico... 2. 1.2 Acceder a una cuenta de correo electrónico... 2

CORREO ELECTRÓNICO GMAIL. 1 Enviar correo electrónico... 2. 1.2 Acceder a una cuenta de correo electrónico... 2 CORREO ELECTRÓNICO GMAIL 1 Enviar correo electrónico... 2 1.2 Acceder a una cuenta de correo electrónico.... 2 1.3 Destacar el propósito principal de las carpetas de correo electrónico: Recibidos, Bandeja

Más detalles

- Dirigido a Centros Docentes- Versión 01-23/03/2010

- Dirigido a Centros Docentes- Versión 01-23/03/2010 K Manual de usuario "Inventario TIC - Dirigido a Centros Docentes- Versión 01-23/03/2010 ÍNDICE ÍNDICE...1 1. INTRODUCCIÓN...2 Terminología utilizada... 2 2. DESCRIPCIÓN DEL SISTEMA...2 3. CONSIDERACIONES

Más detalles

Manual del Profesor Campus Virtual UNIVO

Manual del Profesor Campus Virtual UNIVO Manual del Profesor Campus Virtual UNIVO Versión 2.0 Universidad de Oriente UNIVO Dirección de Educación a Distancia INDICE 1. Campus Virtual. 03 1.1 Accesos al Curso 04 1.2 Interfaz del Curso...06 1.3

Más detalles

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

En cualquier caso, tampoco es demasiado importante el significado de la B, si es que lo tiene, lo interesante realmente es el algoritmo. Arboles-B Características Los árboles-b son árboles de búsqueda. La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa

Más detalles

GUÍA RED SOCIAL FACEBOOK

GUÍA RED SOCIAL FACEBOOK GUÍA RED SOCIAL FACEBOOK Qué es una Red Social? Una Red Sociales un sitio en internet donde compartir información, mensajes, ideas, fotos, etc., con amigos, conocidos y desconocidos. Para acceder a una

Más detalles

LA INTRANET -Manual general-

LA INTRANET -Manual general- LA INTRANET -Manual general- 0/ Localizar la intranet en los tablet del alumno. Como la Intranet está instalada en algunos ordenadores, debemos localizarla primeramente para poder trabajar con ella. 1º/

Más detalles

Índice general de materias LECCIÓN 7 74

Índice general de materias LECCIÓN 7 74 Índice general de materias LECCIÓN 7 74 BUSCAR 74 BUSCAR CON FORMATO 77 REEMPLAZAR 78 REEMPLAZAR CON FORMATO 79 NOTAS AL PIE DE PÁGINA 79 CONFIGURAR LAS NOTAS 81 INSERTAR NOTAS AL PIE 83 MODIFICAR NOTAS

Más detalles

Descarga Automática. Manual de Usuario. Operador del Mercado Ibérico de Energía - Polo Español Alfonso XI, 6 28014 Madrid

Descarga Automática. Manual de Usuario. Operador del Mercado Ibérico de Energía - Polo Español Alfonso XI, 6 28014 Madrid Descarga Automática Manual de Usuario Operador del Mercado Ibérico de Energía - Polo Español Alfonso XI, 6 28014 Madrid Versión 5.2 Fecha: 2008-10-15 Ref : MU_DescargaAutomática.doc ÍNDICE 1 INTRODUCCIÓN...

Más detalles

MANUAL DE AYUDA HERRAMIENTA DE APROVISIONAMIENTO

MANUAL DE AYUDA HERRAMIENTA DE APROVISIONAMIENTO MANUAL DE AYUDA HERRAMIENTA DE APROVISIONAMIENTO Fecha última revisión: Junio 2011 INDICE DE CONTENIDOS HERRAMIENTA DE APROVISIONAMIENTO... 3 1. QUÉ ES LA HERRAMIENTA DE APROVISIONAMIENTO... 3 HERRAMIENTA

Más detalles

NOTIFICACIÓN DE MOVIMIENTOS DE ESTUPEFACIENTES POR PARTE DE LOS LABORATORIOS FARMACÉUTICOS Y ALMACENES MAYORISTAS DE DISTRIBUCIÓN

NOTIFICACIÓN DE MOVIMIENTOS DE ESTUPEFACIENTES POR PARTE DE LOS LABORATORIOS FARMACÉUTICOS Y ALMACENES MAYORISTAS DE DISTRIBUCIÓN NOTIFICACIÓN DE MOVIMIENTOS DE ESTUPEFACIENTES POR PARTE DE LOS LABORATORIOS FARMACÉUTICOS Y ALMACENES MAYORISTAS DE DISTRIBUCIÓN GUÍA PARA LA PRESENTACIÓN DE NOTIFICACIONES Versión: 27/06/2012-1 ÍNDICE:

Más detalles

Manual de Manejo Intranet - Foro Ceramhome

Manual de Manejo Intranet - Foro Ceramhome Manual de Manejo Intranet - Foro Ceramhome Índice 1. Objetivo del manual... 3 1.1 Ventajas de usar la Intranet/foro... 3 2. Cómo se accede a la Intranet?... 4 3. Partes de la Intranet... 5 4. Cómo se accede

Más detalles

ADMINISTRACIÓN DE BITÁCORAS EN MURCIAEDUCA

ADMINISTRACIÓN DE BITÁCORAS EN MURCIAEDUCA ADMINISTRACIÓN DE BITÁCORAS EN MURCIAEDUCA 0.- INTRODUCCIÓN 3 1.- TAREAS PREVIAS 3 1.1.- Creación de cuentas de Administrador de bitácora. 3 1.2.- Creación de una nueva bitácora. 4 1.3.- Asignar los usuarios

Más detalles

MANUAL DE USUARIO PARA LA GESTIÓN DE LISTAS EN LA APLICACIÓN INFORMÁTICA ORDENACIÓN-CENTROS

MANUAL DE USUARIO PARA LA GESTIÓN DE LISTAS EN LA APLICACIÓN INFORMÁTICA ORDENACIÓN-CENTROS MANUAL DE USUARIO PARA LA GESTIÓN DE LISTAS EN LA APLICACIÓN INFORMÁTICA ORDENACIÓN-CENTROS actual. Hay que acceder a la aplicación ordenación-centros y seleccionar el curso A continuación, hay que seleccionar

Más detalles

e-conocimiento Manual de uso

e-conocimiento Manual de uso 2 Índice 1. Qué es e-conocimiento?... 3 Web del I+CS... 3 Web de los profesionales... 4 2. Cómo puedo acceder a la Web de los profesionales?... 6 3. Qué puedo encontrar en la Web de los profesionales?...

Más detalles

CONFIGURACION AVANZADA DE MOZILLA THUNDERBIRD

CONFIGURACION AVANZADA DE MOZILLA THUNDERBIRD CONFIGURACION AVANZADA DE MOZILLA THUNDERBIRD Carpetas sin Conexión... 2 Gestión de mensajes enviados... 3 Gestión de mensajes eliminados... 6 Firma Digital... 8 Envío de mensajes firmados digitalmente...

Más detalles

IVOOX. 1º.-Subir y gestionar archivos.

IVOOX. 1º.-Subir y gestionar archivos. IVOOX 1º.-Subir y gestionar archivos. Ivoox es un podcast que nos permite almacenar y compartir nuestros archivos de audio. Su dirección: http://www.ivoox.com/. Para utilizar Ivoox es necesario registrarse

Más detalles

MANUAL DE REFERENCIA (VERSIÓN 1.1)

MANUAL DE REFERENCIA (VERSIÓN 1.1) MANUAL DE REFERENCIA (VERSIÓN 1.1) Índice 1.Presentación...4 2.Acceso al programa...5 3.Clientes...5 4. Citas...7 5. Proveedores...8 6. Presupuestos...9 6.1 Crear presupuestos... 9 6.2 Buscar presupuestos...

Más detalles

Consulta del catálogo de la biblioteca del Instituto Cervantes de Moscú vía web

Consulta del catálogo de la biblioteca del Instituto Cervantes de Moscú vía web Consulta del catálogo de la biblioteca del Instituto Cervantes de Moscú vía web Para consultar nuestros fondos, renovar los préstamos y realizar peticiones ahora puedes acceder a nuestra nueva página de

Más detalles

MANUAL TRAMITACIÓN PROCEDIMIENTO

MANUAL TRAMITACIÓN PROCEDIMIENTO MANUAL TRAMITACIÓN PROCEDIMIENTO GESTIÓN ACADÉMICA: EXPEDICIÓN DE CERTIFICACIONES ACADÉMICAS Índice 1.- Introducción...3 2.- Esquema de tramitación...4 3.- Tramitación...5 Paso 1. Acceder al Escritorio

Más detalles

GUÍA RÁPIDA DE TRABAJOS CON ARCHIVOS.

GUÍA RÁPIDA DE TRABAJOS CON ARCHIVOS. GUÍA RÁPIDA DE TRABAJOS CON ARCHIVOS. 1 Direcciones o Ubicaciones, Carpetas y Archivos Botones de navegación. El botón Atrás permite volver a carpetas que hemos examinado anteriormente. El botón Arriba

Más detalles

Manual de adminitración web www.accioncosteira.es

Manual de adminitración web www.accioncosteira.es Manual de adminitración web www.accioncosteira.es Manual de administración Accioncosteira.es Contenidos 1. Presentación de la página...3 2. Tipos de contenido...5 2.1. Tipos de contenido...5 2.2. Categorías...5

Más detalles

15 CORREO WEB CORREO WEB

15 CORREO WEB CORREO WEB CORREO WEB Anteriormente Hemos visto cómo funciona el correo electrónico, y cómo necesitábamos tener un programa cliente (Outlook Express) para gestionar los mensajes de correo electrónico. Sin embargo,

Más detalles

TEMA 3: EN QUÉ CONSISTE?

TEMA 3: EN QUÉ CONSISTE? Módulo 7 Sesión 3 5/16 TEMA 3: EN QUÉ CONSISTE? La metodología seguida para aplicar correctamente la técnica de RGT se basa en cuatro fases (Figura 1). En la primera de ellas, se seleccionan los elementos

Más detalles

Manual. Sistema De. Plataforma Virtual. Docente. Estudiante MANUAL MANUAL DE MANUAL. del Usuario. Coordinador. MICROSOFT PowerPoint 2007. v2.

Manual. Sistema De. Plataforma Virtual. Docente. Estudiante MANUAL MANUAL DE MANUAL. del Usuario. Coordinador. MICROSOFT PowerPoint 2007. v2. Plataforma Virtual Learning Management System MANUAL DE Sistema De Trámites Versión 2.0 Manual MANUAL DE MANUAL DE del Usuario MICROSOFT MICROSOFT WORD EXCEL 2007 2007 PowerPoint 2007 Estudiante Coordinador

Más detalles

INSTRUCCIONES USO PORTAL DE FORMACIÓN. Índice. 1 Inicio...2. 2 Usuarios asociados a Cebek...3. 3 Usuarios NO asociados a Cebek...9

INSTRUCCIONES USO PORTAL DE FORMACIÓN. Índice. 1 Inicio...2. 2 Usuarios asociados a Cebek...3. 3 Usuarios NO asociados a Cebek...9 INSTRUCCIONES USO PORTAL DE FORMACIÓN Índice 1 Inicio...2 1.1 Identifique su situación... 2 2 Usuarios asociados a Cebek...3 3 Usuarios NO asociados a Cebek...9 4 Uso del Portal de Formación... 13 4.1

Más detalles

HERRAMIENTA DE CONTROL DE PLAGIOS MANUAL DE AYUDA

HERRAMIENTA DE CONTROL DE PLAGIOS MANUAL DE AYUDA HERRAMIENTA DE CONTROL DE PLAGIOS MANUAL DE AYUDA Índice Introducción... 1 Sobre la herramienta Turnitin... 2 Uso de la herramienta Tareas en poliformat... 3 Crear una Tarea para usar con Turnitin....

Más detalles

Tutorial Servicios Web

Tutorial Servicios Web Tutorial Servicios Web 1. Servicios Web con REST Como ya hemos usado SOAP para WebService, podemos afirmar que es bien fácil de diseñar, pero algo complicado de consumir: se necesita toda una API para

Más detalles