Realiza los siguientes ejercicios. Antes de comenzar lee con detalle el enunciado de la tarea íntegramente y consulta con tu tutor o tutora las dudas que te puedan surgir.
Los ejercicios se basan en un Sistema de Información de una empresa de ventas que gestiona los comerciales y las zonas que tienen asignadas. Una zona puede estar asignada a varios comerciales. Cada zona tiene un único jefe que es el responsable de zona, pudiéndo encargarse de varias zonas.
- Crea el tipo de objetos "
Personal " con los siguientes atributos:
codigo INTEGER,
dni VARCHAR2(10),
nombre VARCHAR2(30),
apellidos VARCHAR2(30),
sexo VARCHAR2(1),
fecha_nac DATE
Crea, como tipo heredado de "Personal ", el tipo de objeto "Responsable " con los siguientes atributos:
tipo CHAR ,
antiguedad INTEGER
Crea el tipo de objeto "Zonas " con los siguientes atributos:
codigo INTEGER,
nombre VARCHAR2(20),
refRespon REF Responsable,
codigoPostal CHAR(5),
Crea, como tipo heredado de "Personal ", el tipo de objeto "Comercial " con los siguientes atributos:
- Crea un método constructor para el tipo de objetos "
Responsable ", en el que se indiquen como parámetros el código, nombre, primer apellido, segundo apellido y tipo . Este método debe asignar al atributo apellidos los datos de primer apellido y segundo apellido que se han pasado como parámetros, uniéndolos con un espacio entre ellos.
- Crea un método
getNombreCompleto para el tipo de objetos Responsable que permita obtener su nombre completo con el formato apellidos nombre
- Crea un tabla
TablaResponsables de objetos Responsable . Inserta en dicha tabla dos objetos Responsable .
codigo: 5
nombre: ELENA
apellidos: POSTA LLANOS
sexo: F
fecha_nac: 31/03/1975
tipo: N
antiguedad: 4
El segundo objeto "Responsable " debes crearlo usando el método constructor que has realizado anteriormente. Debes usar los siguientes datos:
codigo: 6
nombre: JAVIER
apellidos: JARAMILLO HERNANDEZ
tipo: C
- Crea una colección
VARRAY llamada ListaZonas en la que se puedan almacenar hasta 10 objetos Zonas. . Guarda en una instancia listaZonas1 de dicha lista, dos Zonas
codigo: 1
nombre: zona 1
refResponsable: Referencia al responsable cuyo codigo es 5
codigo postal: 06834
codigo: 2
nombre: zona 2
refResponsable: Referencia al responsable cuyo DNI es 51083099F.
codigo postal: 28003
- Crea una tabla
TablaComerciales de objetos Comercial. Inserta en dicha tabla las siguientes filas:
codigo: 100
dni: 23401092Z
nombre: MARCOS
apellidos: SUAREZ LOPEZ
sexo: M
fecha_nac: 30/3/1990
zonacomercial: objeto creado anteriormente para la zona 1
codigo: 102
dni: 6932288V
nombre: ANASTASIA
apellidos: GOMES PEREZ
sexo: F
fecha_nac: 28/11/1984
zonacomercial: objeto que se encuentre en la segunda posición de "listaZonas1"
(debe tomarse de la lista)
- Obtener, de la tabla
TablaComerciales , el Comercial que tiene el código 100, asignándoselo a una variable unComercial
- Modifica el código del Comercial guardado en esa variable
unComercial asignando el valor 101, y su zona debe ser la segunda que se había creado anteriormente. Inserta ese Comercial en la tabla TablaComerciales
- Crea un método
MAP ordenarZonas para el tipo Zonas . Este método debe retornar el nombre completo del Responsable al que hace referencia cada zona. Para obtener el nombre debes utilizar el método getNombreCompleto que se ha creado anteriormente
-
Realiza una consulta de la tabla TablaComerciales ordenada por zonaComercial para comprobar el funcionamiento del método MAP.
|
Criterios de puntuación
Ejercicio | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Total |
Puntos |
1,0 |
1,0 |
1,0 |
1,0 |
1,5 |
1,5 |
1,5 |
1,5 |
10 |
|
Debes entregar tu solución en un archivo con formato de archivo de texto ejecutable desde Oracle Database, que contenga todo el código que hayas escrito para el ejercicio, el cual realice conjuntamente todos los apartados de la tarea.
Una vez realizada la tarea elaborarás un único documento donde figuren las respuestas correspondientes. El envío se realizará a través de la plataforma de la forma establecida para ello, y el archivo se nombrará siguiendo las siguientes pautas:
apellido1_apellido2_nombre_SIGxx_Tarea
Asegúrate que el nombre no contenga la letra ñ, tildes ni caracteres especiales extraños. Así por ejemplo la alumna Begoña Sánchez Mañas para la septima unidad del MP de BD, debería nombrar esta tarea como...
sanchez_manas_begona_BD07_Tarea
|