Você está na página 1de 6

SGE UT4

Curso 2 DAM

Prctica 2_1 OpenERP


Introduccin a la BBDD de OpenERP
Introduccin

Antes de llevar a cabo los ejercicios:


1. Instalar la herramienta DBVisualizer
2. Familiarizarse con la consola textual de Postgres (psql) para llevar
a cabo una administracin simple del servidor.
3. Leer la documentacin Introduccin a la BBDD de OpenERP. En
especial, la parte de asignacin de privilegios de acceso a usuarios
y objetos. Crea el usuario pgotera y configura el acceso tal y como
se indica en el ejemplo descrito al final de la documentacin.
Herramienta DBVisualizer: para conocer las relaciones entre las tablas de la
BBDD de OpenERP
Para disear consultas e informes que acceden a una base de datos es muy
recomendable disponer de los diagramas de relaciones entre las tablas. Esto lo
conseguimos a travs de la herramienta DbVisualizer Free.
Su instalacin no presenta dificultad. Slo necesitamos saber qu instalacin ejecutar,
dependiendo de si tenemos en nuestra mquina un runtime de Java.
El proceso de instalacin nos pregunta si queremos incorporar en el proceso de
instalacin los conectores JDBC para acceder a distintos SGDB. En nuestro caso,
como queremos conectar con PostgreSQL nos puede interesar incorporar el paquete
de conectores JDBC. (disponibles en http://jdbc.postgresql.org/) aunque los podis
encontrar en el servidor de clase.
La instalacin la podemos hacer en la misma mquina donde tenemos instalado el
servidor de postgres (tambin en mquinas remotas, pero de momento, haremos la
instalacin en la mquina virtual).
A la hora de registrar la conexin slo hay que indicar la direccin IP de la mquina
donde reside el servidor de PostgreSQL y el puerto por el que est escuchando el
servidor, as como la BBDD con la que se quiere establecer la conexin y la pareja
usuario-contrasea correspondiente.
De esta herramienta nos interesa poder obtener diagramas relacionales parciales de la
BBDD de OpenERP.
Si clicamos sobre la pestaa Databases en la parte izquierda de la pantalla, vemos
como la pestaa Object View ( a la derecha de la pantalla) contiene dos pestaas:
Tables y References. Tables contiene el listado de todas las tablas de la BBDD.
References muestra las relaciones en las que interviene el conjunto de tablas
seleccionada en el nodo TABLE de la pestaa Databases (si no hemos seleccionado
ninguna, aparecern las relaciones de todas las tablas, lo cual puede ser eterno y
carecer de sentido en un entorno real, con cientos de tablas, as que, mejor limitar a
unas cuantas tablas la visualizacin de las relaciones).
Ejemplo:
Supongamos que queremos ver las relaciones en las que interviene la tabla
res_partner. Para ello, seleccionamos esta tabla en el nodo TABLE de la pestaa
Databases y navegaremos hasta la subpestaa references de la pestaa Object View.
As obtendremos este diagrama.

SGE UT4

Curso 2 DAM

Para tener acceso a las relaciones en las que la tabla res_partner interviene como
tabla referenciada, hemos de ir a las pestaa Exported Keys de la misma pantalla,
donde obtendremos la siguiente figura:

SGE UT4

Curso 2 DAM

Consola textual para gestionar un servidor PostgreSQL


PostgreSQL facilita una consola textual (psql) que permite efectuar un gran nmero de
operaciones sobre el servidor. El servidor que instala OpenERP no instala esta
consola, pero cualquier instalacin de la herramienta pgAdmin (como la que
efectuamos nosotros en la mquina anfitrin hace un tiempo, s que la instala).
Comprobaremos que funciona de la siguiente manera:
1. Abre una consola de sistema.
2. Sitate en la carpeta donde instalaste la herramienta pgAdmin. Comprueba que
existe el programa psql.exe
3. Intenta ejecutarlo sin parmetros.
4. Obtendrs algo como esto

La herramienta psql intenta buscar un servidor de Postgres en la propia mquina


escuchando por el puerto 5432 y al no encontrarlo, muestra el error anterior.

Para repasar los parmetros psql podemos ejecutar:


psql h

o
psql -help

Para conecta/rnos a un servidor PostgreSQL:


-h,
-p,
-U,

para indicar el servidor PostgreSQL al que nos queremos conectar.


para indicar el puerto (5432 si no se indica).
para indicar un usuario del servidor PostgreSQL (si no se indica,
coge el usuario que tiene abierta la sesin en el SO.
-d, para indicar el nombre de la base de datos a la cual nos vamos a
conectar ( si no se indica, intenta conectar con una BBDD de nombre
igual al usuario indicado con el parmetro -U).
Ejemplo:
Para conectarnos a un servidor residente en la mquina de IP 10.200.180.207, con el
usuario ioc a la base de datos postgres, escribiremos:

Y se nos pedir una contrasea.

SGE UT4

Curso 2 DAM

Una vez conectados:


\h muestra ayuda sobre los comandos SQL
\? Muestra ayuda sobre los parmetros psql
\q Sale de la conexin actual
Otros comandos de inters:
\dt muestra todas las tablas de la BBDD
\d seguida de un nombre de tabla, permite obtener la descripcin
detallada de la estructura de una tabla
\dp muestra los provilegios existentes para una tabla dada

NOTA: las sentencias SQL ejecutadas desde la consola psql deben acabar en ;

SGE UT4

Curso 2 DAM

Informacin a entregar en el guin de prcticas.


Importante: En las capturas de pantalla, siempre deber verse el nombre de la
empresa Empresa_InicialesAlumno
El trabajo a entregar consiste en un fichero (en formato pdf y que tendr como nombre
P2_1Apellidos_Nombre) que contendr los siguientes apartados

1. Indica el objeto de OpenERP, el campo y el tipo de campo para los conceptos


indicados a continuacin. Indica el objeto referenciado para los campos
relacionales.
Nacionalidad de un empleado
Tipo de una reunin con terceros.
Proveedores de un producto
Empleado que tiene asignada una determinada tarea (proyectos)
2. Crea el usuario inicial_apellido en el SGDB (ejemplo: eserrano) con la misma
contrasea. Usa la herramienta pgadmin y haz que el usuario sea superusuario
con permisos para crear roles y objetos, pero que no herede los permisos de
los roles padres.
3. Asigna al usuario anterior los privilegios de acceso necesarios para que pueda
conectarse a la BBDD empresa_inicialesalumno y acceder a la informacin de
todas sus tablas. Indica los comandos utilizados y la captura de pantalla de los
usuarios.
http://www.postgresql.org/docs/8.4/static/sql-grant.html
4. Crea el usuario prueba_inicialesalumno y haz que slo pueda obtener
informacin de la tabla res_partner. Indica los comandos utilizados y la captura
de los usuarios.
5. Escribe la instruccin o secuencia de instrucciones SQL para conseguir crear el
usuario chuck, con contrasea chuck que tenga acceso de lectura en todas las
tablas de la base de datos Empresa_iniciales alumno (no debe tener ningn
otro acceso.)
6. Crea la instruccin SQL necesaria para obtener la lista de descripciones de los
tipos de reuniones con clientes. Para saber qu tablas y qu campos de las
mismas contienen la informacin, acostmbrate a trabajar en la vista formulario
en el cliente web del ERP.
7. Suponiendo que el mdulo de gestin de compras est instalado, disear una
consulta SQL que muestre el identificador y nombre de los proveedores a los
que hemos hecho pedidos (recibidos o no). Tambin se debe mostrar la
referencia y fecha de los pedidos. Investiga las tablas y campos que
almacenan esa informacin.

8. Suponiendo que el mdulo base_contact est instalado, disea una consulta


que facilite los contactos (nombre, apellidos, mvil y e-mail) y su socio de
negocio asociado.

SGE UT4

Curso 2 DAM

9. Crea la instruccin SQL necesaria para obtener el nombre de todos los


empleados de la organizacin acompaado de su puesto de trabajo.
10. Crea la instruccin SQL necesaria para obtener el nombre de todos los
empleados de la organizacin acompaado de su nacionalidad. Por qu no se
obtienen datos para el campo nacionalidad?
11. Crea la instruccin SQL necesaria para obtener el listado de todos los
productos susceptibles de ser comprados acompaados de los nombres de
proveedores que los suministran.

Você também pode gostar