[Alba-desarrollo] SVN Alba r5448 - in prosistem/alba/trunk/alba: data/sql lib/model web/instalar

commits en pressenter.com.ar commits en pressenter.com.ar
Jue Feb 7 02:20:36 CET 2008


Author: josx
Date: 2008-02-06 23:20:36 -0200 (Wed, 06 Feb 2008)
New Revision: 5448

Added:
   prosistem/alba/trunk/alba/data/sql/lib.model.schema.mysql.sql
   prosistem/alba/trunk/alba/data/sql/lib.model.schema.pgsql.sql
Removed:
   prosistem/alba/trunk/alba/data/sql/lib.model.schema.sql
   prosistem/alba/trunk/alba/lib/model/map/
   prosistem/alba/trunk/alba/lib/model/om/
Modified:
   prosistem/alba/trunk/alba/data/sql/create-db.sql
   prosistem/alba/trunk/alba/web/instalar/funciones.php
   prosistem/alba/trunk/alba/web/instalar/instalar.php
   prosistem/alba/trunk/alba/web/instalar/paso1.php
   prosistem/alba/trunk/alba/web/instalar/paso3.php
   prosistem/alba/trunk/alba/web/instalar/paso4.php
   prosistem/alba/trunk/alba/web/instalar/paso5.php
   prosistem/alba/trunk/alba/web/instalar/paso6.php
Log:
Grandes cambios para soportar pgsql en el instalador (actualmente crea el modelo directamente en la instalacion)

Modified: prosistem/alba/trunk/alba/data/sql/create-db.sql
===================================================================
--- prosistem/alba/trunk/alba/data/sql/create-db.sql	2008-02-07 01:17:13 UTC (rev 5447)
+++ prosistem/alba/trunk/alba/data/sql/create-db.sql	2008-02-07 01:20:36 UTC (rev 5448)
@@ -1,2 +1,2 @@
 drop database if exists alba;
-create database alba DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
\ No newline at end of file
+create database alba;
\ No newline at end of file

Copied: prosistem/alba/trunk/alba/data/sql/lib.model.schema.mysql.sql (from rev 5438, prosistem/alba/trunk/alba/data/sql/lib.model.schema.sql)
===================================================================
--- prosistem/alba/trunk/alba/data/sql/lib.model.schema.mysql.sql	                        (rev 0)
+++ prosistem/alba/trunk/alba/data/sql/lib.model.schema.mysql.sql	2008-02-07 01:20:36 UTC (rev 5448)
@@ -0,0 +1,1485 @@
+
+# This is a fix for InnoDB in MySQL >= 4.1.x
+# It "suspends judgement" for fkey relationships until are tables are set.
+SET FOREIGN_KEY_CHECKS = 0;
+
+#-----------------------------------------------------------------------------
+#-- conceptobaja
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `conceptobaja`;
+
+
+CREATE TABLE `conceptobaja`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- tipodocumento
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `tipodocumento`;
+
+
+CREATE TABLE `tipodocumento`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	`orden` INTEGER default 0,
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- tipoiva
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `tipoiva`;
+
+
+CREATE TABLE `tipoiva`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	`orden` INTEGER default 0,
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- pais
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `pais`;
+
+
+CREATE TABLE `pais`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre_largo` VARCHAR(128)  NOT NULL,
+	`nombre_corto` VARCHAR(32)  NOT NULL,
+	`orden` INTEGER default 0,
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- tipoespacio
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `tipoespacio`;
+
+
+CREATE TABLE `tipoespacio`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- provincia
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `provincia`;
+
+
+CREATE TABLE `provincia`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre_corto` VARCHAR(32)  NOT NULL,
+	`nombre_largo` VARCHAR(128)  NOT NULL,
+	`fk_pais_id` INTEGER default 0 NOT NULL,
+	`orden` INTEGER default 0,
+	PRIMARY KEY (`id`),
+	INDEX `provincia_FI_1` (`fk_pais_id`),
+	CONSTRAINT `provincia_FK_1`
+		FOREIGN KEY (`fk_pais_id`)
+		REFERENCES `pais` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- tipolocacion
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `tipolocacion`;
+
+
+CREATE TABLE `tipolocacion`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- locacion
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `locacion`;
+
+
+CREATE TABLE `locacion`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	`direccion` VARCHAR(128)  NOT NULL,
+	`ciudad` VARCHAR(128)  NOT NULL,
+	`codigo_postal` VARCHAR(20),
+	`fk_provincia_id` INTEGER default 0 NOT NULL,
+	`fk_tipolocacion_id` INTEGER default 0 NOT NULL,
+	`telefono` VARCHAR(20),
+	`fax` VARCHAR(20),
+	`encargado` VARCHAR(128),
+	`encargado_telefono` VARCHAR(20),
+	`principal` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `locacion_FI_1` (`fk_provincia_id`),
+	CONSTRAINT `locacion_FK_1`
+		FOREIGN KEY (`fk_provincia_id`)
+		REFERENCES `provincia` (`id`),
+	INDEX `locacion_FI_2` (`fk_tipolocacion_id`),
+	CONSTRAINT `locacion_FK_2`
+		FOREIGN KEY (`fk_tipolocacion_id`)
+		REFERENCES `tipolocacion` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- modulo
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `modulo`;
+
+
+CREATE TABLE `modulo`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`titulo` VARCHAR(128),
+	`descripcion` VARCHAR(255),
+	`activo` INTEGER default 1 NOT NULL,
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- espacio
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `espacio`;
+
+
+CREATE TABLE `espacio`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`m2` FLOAT,
+	`capacidad` VARCHAR(255),
+	`descripcion` VARCHAR(255),
+	`estado` VARCHAR(255),
+	`fk_tipoespacio_id` INTEGER,
+	`fk_locacion_id` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `espacio_FI_1` (`fk_tipoespacio_id`),
+	CONSTRAINT `espacio_FK_1`
+		FOREIGN KEY (`fk_tipoespacio_id`)
+		REFERENCES `tipoespacio` (`id`),
+	INDEX `espacio_FI_2` (`fk_locacion_id`),
+	CONSTRAINT `espacio_FK_2`
+		FOREIGN KEY (`fk_locacion_id`)
+		REFERENCES `locacion` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- distritoescolar
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `distritoescolar`;
+
+
+CREATE TABLE `distritoescolar`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`direccion` VARCHAR(128),
+	`telefono` VARCHAR(20),
+	`ciudad` VARCHAR(128),
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- niveltipo
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `niveltipo`;
+
+
+CREATE TABLE `niveltipo`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- organizacion
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `organizacion`;
+
+
+CREATE TABLE `organizacion`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	`razon_social` VARCHAR(128)  NOT NULL,
+	`cuit` VARCHAR(20)  NOT NULL,
+	`direccion` VARCHAR(128)  NOT NULL,
+	`ciudad` VARCHAR(128)  NOT NULL,
+	`codigo_postal` VARCHAR(20)  NOT NULL,
+	`telefono` VARCHAR(20),
+	`fk_provincia_id` INTEGER default 0 NOT NULL,
+	`fk_tipoiva_id` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `organizacion_FI_1` (`fk_provincia_id`),
+	CONSTRAINT `organizacion_FK_1`
+		FOREIGN KEY (`fk_provincia_id`)
+		REFERENCES `provincia` (`id`),
+	INDEX `organizacion_FI_2` (`fk_tipoiva_id`),
+	CONSTRAINT `organizacion_FK_2`
+		FOREIGN KEY (`fk_tipoiva_id`)
+		REFERENCES `tipoiva` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- establecimiento
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `establecimiento`;
+
+
+CREATE TABLE `establecimiento`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	`fk_distritoescolar_id` INTEGER default 0 NOT NULL,
+	`fk_organizacion_id` INTEGER default 0 NOT NULL,
+	`fk_niveltipo_id` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `establecimiento_FI_1` (`fk_distritoescolar_id`),
+	CONSTRAINT `establecimiento_FK_1`
+		FOREIGN KEY (`fk_distritoescolar_id`)
+		REFERENCES `distritoescolar` (`id`),
+	INDEX `establecimiento_FI_2` (`fk_organizacion_id`),
+	CONSTRAINT `establecimiento_FK_2`
+		FOREIGN KEY (`fk_organizacion_id`)
+		REFERENCES `organizacion` (`id`),
+	INDEX `establecimiento_FI_3` (`fk_niveltipo_id`),
+	CONSTRAINT `establecimiento_FK_3`
+		FOREIGN KEY (`fk_niveltipo_id`)
+		REFERENCES `niveltipo` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- permiso
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `permiso`;
+
+
+CREATE TABLE `permiso`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	`fk_modulo_id` INTEGER default 0 NOT NULL,
+	`credencial` VARCHAR(32),
+	PRIMARY KEY (`id`),
+	INDEX `permiso_FI_1` (`fk_modulo_id`),
+	CONSTRAINT `permiso_FK_1`
+		FOREIGN KEY (`fk_modulo_id`)
+		REFERENCES `modulo` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- preferencia
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `preferencia`;
+
+
+CREATE TABLE `preferencia`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`valor_por_defecto` VARCHAR(128),
+	`activo` INTEGER default 1 NOT NULL,
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- rol
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `rol`;
+
+
+CREATE TABLE `rol`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	`activo` INTEGER default 1 NOT NULL,
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- usuario
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `usuario`;
+
+
+CREATE TABLE `usuario`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`usuario` VARCHAR(32)  NOT NULL,
+	`clave` VARCHAR(48)  NOT NULL,
+	`correo_publico` INTEGER default 1,
+	`activo` INTEGER default 1 NOT NULL,
+	`fecha_creado` DATETIME  NOT NULL,
+	`fecha_actualizado` DATETIME  NOT NULL,
+	`seguridad_pregunta` VARCHAR(128),
+	`seguridad_respuesta` VARCHAR(128),
+	`email` VARCHAR(128),
+	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
+	`borrado` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `usuario_FI_1` (`fk_establecimiento_id`),
+	CONSTRAINT `usuario_FK_1`
+		FOREIGN KEY (`fk_establecimiento_id`)
+		REFERENCES `establecimiento` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- rel_establecimiento_locacion
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `rel_establecimiento_locacion`;
+
+
+CREATE TABLE `rel_establecimiento_locacion`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
+	`fk_locacion_id` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `rel_establecimiento_locacion_FI_1` (`fk_establecimiento_id`),
+	CONSTRAINT `rel_establecimiento_locacion_FK_1`
+		FOREIGN KEY (`fk_establecimiento_id`)
+		REFERENCES `establecimiento` (`id`),
+	INDEX `rel_establecimiento_locacion_FI_2` (`fk_locacion_id`),
+	CONSTRAINT `rel_establecimiento_locacion_FK_2`
+		FOREIGN KEY (`fk_locacion_id`)
+		REFERENCES `locacion` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- rel_rol_permiso
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `rel_rol_permiso`;
+
+
+CREATE TABLE `rel_rol_permiso`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_rol_id` INTEGER default 0 NOT NULL,
+	`fk_permiso_id` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `rel_rol_permiso_FI_1` (`fk_rol_id`),
+	CONSTRAINT `rel_rol_permiso_FK_1`
+		FOREIGN KEY (`fk_rol_id`)
+		REFERENCES `rol` (`id`),
+	INDEX `rel_rol_permiso_FI_2` (`fk_permiso_id`),
+	CONSTRAINT `rel_rol_permiso_FK_2`
+		FOREIGN KEY (`fk_permiso_id`)
+		REFERENCES `permiso` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- rel_usuario_permiso
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `rel_usuario_permiso`;
+
+
+CREATE TABLE `rel_usuario_permiso`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_usuario_id` INTEGER default 0 NOT NULL,
+	`fk_permiso_id` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `rel_usuario_permiso_FI_1` (`fk_usuario_id`),
+	CONSTRAINT `rel_usuario_permiso_FK_1`
+		FOREIGN KEY (`fk_usuario_id`)
+		REFERENCES `usuario` (`id`),
+	INDEX `rel_usuario_permiso_FI_2` (`fk_permiso_id`),
+	CONSTRAINT `rel_usuario_permiso_FK_2`
+		FOREIGN KEY (`fk_permiso_id`)
+		REFERENCES `permiso` (`id`)
+		ON DELETE CASCADE
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- rel_usuario_preferencia
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `rel_usuario_preferencia`;
+
+
+CREATE TABLE `rel_usuario_preferencia`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_usuario_id` INTEGER default 0 NOT NULL,
+	`fk_preferencia_id` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- orientacion
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `orientacion`;
+
+
+CREATE TABLE `orientacion`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- cuenta
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `cuenta`;
+
+
+CREATE TABLE `cuenta`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`razon_social` VARCHAR(128)  NOT NULL,
+	`cuit` VARCHAR(20)  NOT NULL,
+	`direccion` VARCHAR(128)  NOT NULL,
+	`ciudad` VARCHAR(128)  NOT NULL,
+	`codigo_postal` VARCHAR(20)  NOT NULL,
+	`telefono` VARCHAR(20),
+	`fk_provincia_id` INTEGER,
+	`fk_tipoiva_id` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `cuenta_FI_1` (`fk_provincia_id`),
+	CONSTRAINT `cuenta_FK_1`
+		FOREIGN KEY (`fk_provincia_id`)
+		REFERENCES `provincia` (`id`),
+	INDEX `cuenta_FI_2` (`fk_tipoiva_id`),
+	CONSTRAINT `cuenta_FK_2`
+		FOREIGN KEY (`fk_tipoiva_id`)
+		REFERENCES `tipoiva` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- alumno
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `alumno`;
+
+
+CREATE TABLE `alumno`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`apellido` VARCHAR(128)  NOT NULL,
+	`fecha_nacimiento` DATETIME  NOT NULL,
+	`direccion` VARCHAR(128)  NOT NULL,
+	`ciudad` VARCHAR(128)  NOT NULL,
+	`codigo_postal` VARCHAR(20)  NOT NULL,
+	`fk_provincia_id` INTEGER default 0 NOT NULL,
+	`telefono` VARCHAR(20),
+	`lugar_nacimiento` VARCHAR(128),
+	`fk_tipodocumento_id` INTEGER default 0 NOT NULL,
+	`nro_documento` VARCHAR(16)  NOT NULL,
+	`sexo` CHAR(1)  NOT NULL,
+	`email` VARCHAR(128)  NOT NULL,
+	`distancia_escuela` INTEGER default 0,
+	`hermanos_escuela` INTEGER default 0 NOT NULL,
+	`hijo_maestro_escuela` INTEGER default 0 NOT NULL,
+	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
+	`fk_cuenta_id` INTEGER default 0 NOT NULL,
+	`certificado_medico` INTEGER default 0 NOT NULL,
+	`activo` INTEGER default 1 NOT NULL,
+	`fk_conceptobaja_id` INTEGER,
+	`fk_pais_id` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `alumno_FI_1` (`fk_provincia_id`),
+	CONSTRAINT `alumno_FK_1`
+		FOREIGN KEY (`fk_provincia_id`)
+		REFERENCES `provincia` (`id`),
+	INDEX `alumno_FI_2` (`fk_tipodocumento_id`),
+	CONSTRAINT `alumno_FK_2`
+		FOREIGN KEY (`fk_tipodocumento_id`)
+		REFERENCES `tipodocumento` (`id`),
+	INDEX `alumno_FI_3` (`fk_establecimiento_id`),
+	CONSTRAINT `alumno_FK_3`
+		FOREIGN KEY (`fk_establecimiento_id`)
+		REFERENCES `establecimiento` (`id`),
+	INDEX `alumno_FI_4` (`fk_cuenta_id`),
+	CONSTRAINT `alumno_FK_4`
+		FOREIGN KEY (`fk_cuenta_id`)
+		REFERENCES `cuenta` (`id`),
+	INDEX `alumno_FI_5` (`fk_conceptobaja_id`),
+	CONSTRAINT `alumno_FK_5`
+		FOREIGN KEY (`fk_conceptobaja_id`)
+		REFERENCES `conceptobaja` (`id`),
+	INDEX `alumno_FI_6` (`fk_pais_id`),
+	CONSTRAINT `alumno_FK_6`
+		FOREIGN KEY (`fk_pais_id`)
+		REFERENCES `pais` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- rol_responsable
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `rol_responsable`;
+
+
+CREATE TABLE `rol_responsable`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	`activo` INTEGER default 1 NOT NULL,
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- responsable
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `responsable`;
+
+
+CREATE TABLE `responsable`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`apellido` VARCHAR(128)  NOT NULL,
+	`direccion` VARCHAR(128),
+	`ciudad` VARCHAR(128),
+	`codigo_postal` VARCHAR(20),
+	`fk_provincia_id` INTEGER default 0 NOT NULL,
+	`telefono` VARCHAR(20),
+	`telefono_movil` VARCHAR(20),
+	`nro_documento` VARCHAR(20)  NOT NULL,
+	`fk_tipodocumento_id` INTEGER default 0 NOT NULL,
+	`sexo` CHAR(1)  NOT NULL,
+	`email` VARCHAR(128),
+	`observacion` VARCHAR(255),
+	`autorizacion_retiro` INTEGER default 0 NOT NULL,
+	`fk_cuenta_id` INTEGER default 0 NOT NULL,
+	`fk_rolresponsable_id` INTEGER default 1 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `responsable_FI_1` (`fk_provincia_id`),
+	CONSTRAINT `responsable_FK_1`
+		FOREIGN KEY (`fk_provincia_id`)
+		REFERENCES `provincia` (`id`),
+	INDEX `responsable_FI_2` (`fk_tipodocumento_id`),
+	CONSTRAINT `responsable_FK_2`
+		FOREIGN KEY (`fk_tipodocumento_id`)
+		REFERENCES `tipodocumento` (`id`),
+	INDEX `responsable_FI_3` (`fk_cuenta_id`),
+	CONSTRAINT `responsable_FK_3`
+		FOREIGN KEY (`fk_cuenta_id`)
+		REFERENCES `cuenta` (`id`),
+	INDEX `responsable_FI_4` (`fk_rolresponsable_id`),
+	CONSTRAINT `responsable_FK_4`
+		FOREIGN KEY (`fk_rolresponsable_id`)
+		REFERENCES `rol_responsable` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- ciclolectivo
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `ciclolectivo`;
+
+
+CREATE TABLE `ciclolectivo`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_establecimiento_id` INTEGER  NOT NULL,
+	`fecha_inicio` DATETIME  NOT NULL,
+	`fecha_fin` DATETIME  NOT NULL,
+	`descripcion` VARCHAR(255)  NOT NULL,
+	`actual` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `ciclolectivo_FI_1` (`fk_establecimiento_id`),
+	CONSTRAINT `ciclolectivo_FK_1`
+		FOREIGN KEY (`fk_establecimiento_id`)
+		REFERENCES `establecimiento` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- turno
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `turno`;
+
+
+CREATE TABLE `turno`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_ciclolectivo_id` INTEGER  NOT NULL,
+	`hora_inicio` TIME  NOT NULL,
+	`hora_fin` TIME  NOT NULL,
+	`descripcion` VARCHAR(255)  NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `turno_FI_1` (`fk_ciclolectivo_id`),
+	CONSTRAINT `turno_FK_1`
+		FOREIGN KEY (`fk_ciclolectivo_id`)
+		REFERENCES `ciclolectivo` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- periodo
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `periodo`;
+
+
+CREATE TABLE `periodo`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_ciclolectivo_id` INTEGER  NOT NULL,
+	`fecha_inicio` DATETIME  NOT NULL,
+	`fecha_fin` DATETIME  NOT NULL,
+	`descripcion` VARCHAR(255)  NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `periodo_FI_1` (`fk_ciclolectivo_id`),
+	CONSTRAINT `periodo_FK_1`
+		FOREIGN KEY (`fk_ciclolectivo_id`)
+		REFERENCES `ciclolectivo` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- tipodocente
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `tipodocente`;
+
+
+CREATE TABLE `tipodocente`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- cargobaja
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `cargobaja`;
+
+
+CREATE TABLE `cargobaja`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- calendariovacunacion
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `calendariovacunacion`;
+
+
+CREATE TABLE `calendariovacunacion`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	`periodo` VARCHAR(128),
+	`observacion` VARCHAR(255),
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- rel_calendariovacunacion_alumno
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `rel_calendariovacunacion_alumno`;
+
+
+CREATE TABLE `rel_calendariovacunacion_alumno`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_alumno_id` INTEGER  NOT NULL,
+	`fk_calendariovacunacion_id` INTEGER  NOT NULL,
+	`observacion` VARCHAR(255),
+	`comprobante` INTEGER default 0 NOT NULL,
+	`fecha` DATETIME,
+	PRIMARY KEY (`id`),
+	INDEX `rel_calendariovacunacion_alumno_FI_1` (`fk_alumno_id`),
+	CONSTRAINT `rel_calendariovacunacion_alumno_FK_1`
+		FOREIGN KEY (`fk_alumno_id`)
+		REFERENCES `alumno` (`id`),
+	INDEX `rel_calendariovacunacion_alumno_FI_2` (`fk_calendariovacunacion_id`),
+	CONSTRAINT `rel_calendariovacunacion_alumno_FK_2`
+		FOREIGN KEY (`fk_calendariovacunacion_id`)
+		REFERENCES `calendariovacunacion` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- legajocategoria
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `legajocategoria`;
+
+
+CREATE TABLE `legajocategoria`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`descripcion` VARCHAR(255)  NOT NULL,
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- legajopedagogico
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `legajopedagogico`;
+
+
+CREATE TABLE `legajopedagogico`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_alumno_id` INTEGER  NOT NULL,
+	`titulo` VARCHAR(255)  NOT NULL,
+	`resumen` LONGBLOB  NOT NULL,
+	`texto` LONGBLOB  NOT NULL,
+	`fecha` DATETIME  NOT NULL,
+	`fk_usuario_id` INTEGER  NOT NULL,
+	`fk_legajocategoria_id` INTEGER  NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `legajopedagogico_FI_1` (`fk_alumno_id`),
+	CONSTRAINT `legajopedagogico_FK_1`
+		FOREIGN KEY (`fk_alumno_id`)
+		REFERENCES `alumno` (`id`),
+	INDEX `legajopedagogico_FI_2` (`fk_usuario_id`),
+	CONSTRAINT `legajopedagogico_FK_2`
+		FOREIGN KEY (`fk_usuario_id`)
+		REFERENCES `usuario` (`id`),
+	INDEX `legajopedagogico_FI_3` (`fk_legajocategoria_id`),
+	CONSTRAINT `legajopedagogico_FK_3`
+		FOREIGN KEY (`fk_legajocategoria_id`)
+		REFERENCES `legajocategoria` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- adjunto
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `adjunto`;
+
+
+CREATE TABLE `adjunto`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`descripcion` VARCHAR(255),
+	`titulo` VARCHAR(255),
+	`nombre_archivo` VARCHAR(255)  NOT NULL,
+	`tipo_archivo` VARCHAR(64)  NOT NULL,
+	`ruta` VARCHAR(255)  NOT NULL,
+	`fecha` DATETIME  NOT NULL,
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- legajoadjunto
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `legajoadjunto`;
+
+
+CREATE TABLE `legajoadjunto`
+(
+	`fk_legajopedagogico_id` INTEGER  NOT NULL,
+	`fk_adjunto_id` INTEGER  NOT NULL,
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	PRIMARY KEY (`id`),
+	INDEX `legajoadjunto_FI_1` (`fk_legajopedagogico_id`),
+	CONSTRAINT `legajoadjunto_FK_1`
+		FOREIGN KEY (`fk_legajopedagogico_id`)
+		REFERENCES `legajopedagogico` (`id`),
+	INDEX `legajoadjunto_FI_2` (`fk_adjunto_id`),
+	CONSTRAINT `legajoadjunto_FK_2`
+		FOREIGN KEY (`fk_adjunto_id`)
+		REFERENCES `adjunto` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- tipoasistencia
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `tipoasistencia`;
+
+
+CREATE TABLE `tipoasistencia`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(10)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	`valor` DECIMAL(4,2) default 1 NOT NULL,
+	`grupo` VARCHAR(30),
+	`defecto` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- asistencia
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `asistencia`;
+
+
+CREATE TABLE `asistencia`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_alumno_id` INTEGER  NOT NULL,
+	`fk_tipoasistencia_id` INTEGER  NOT NULL,
+	`fecha` DATETIME  NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `asistencia_FI_1` (`fk_alumno_id`),
+	CONSTRAINT `asistencia_FK_1`
+		FOREIGN KEY (`fk_alumno_id`)
+		REFERENCES `alumno` (`id`),
+	INDEX `asistencia_FI_2` (`fk_tipoasistencia_id`),
+	CONSTRAINT `asistencia_FK_2`
+		FOREIGN KEY (`fk_tipoasistencia_id`)
+		REFERENCES `tipoasistencia` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- concepto
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `concepto`;
+
+
+CREATE TABLE `concepto`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	PRIMARY KEY (`id`),
+	INDEX `concepto_FI_1` (`fk_establecimiento_id`),
+	CONSTRAINT `concepto_FK_1`
+		FOREIGN KEY (`fk_establecimiento_id`)
+		REFERENCES `establecimiento` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- escalanota
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `escalanota`;
+
+
+CREATE TABLE `escalanota`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	`orden` INTEGER  NOT NULL,
+	`aprobado` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `escalanota_FI_1` (`fk_establecimiento_id`),
+	CONSTRAINT `escalanota_FK_1`
+		FOREIGN KEY (`fk_establecimiento_id`)
+		REFERENCES `establecimiento` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- boletin_conceptual
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `boletin_conceptual`;
+
+
+CREATE TABLE `boletin_conceptual`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_escalanota_id` INTEGER,
+	`fk_alumno_id` INTEGER default 0 NOT NULL,
+	`fk_concepto_id` INTEGER default 0 NOT NULL,
+	`fk_periodo_id` INTEGER default 0 NOT NULL,
+	`observacion` LONGBLOB  NOT NULL,
+	`fecha` DATETIME  NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `boletin_conceptual_FI_1` (`fk_escalanota_id`),
+	CONSTRAINT `boletin_conceptual_FK_1`
+		FOREIGN KEY (`fk_escalanota_id`)
+		REFERENCES `escalanota` (`id`),
+	INDEX `boletin_conceptual_FI_2` (`fk_alumno_id`),
+	CONSTRAINT `boletin_conceptual_FK_2`
+		FOREIGN KEY (`fk_alumno_id`)
+		REFERENCES `alumno` (`id`),
+	INDEX `boletin_conceptual_FI_3` (`fk_concepto_id`),
+	CONSTRAINT `boletin_conceptual_FK_3`
+		FOREIGN KEY (`fk_concepto_id`)
+		REFERENCES `concepto` (`id`),
+	INDEX `boletin_conceptual_FI_4` (`fk_periodo_id`),
+	CONSTRAINT `boletin_conceptual_FK_4`
+		FOREIGN KEY (`fk_periodo_id`)
+		REFERENCES `periodo` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- actividad
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `actividad`;
+
+
+CREATE TABLE `actividad`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	PRIMARY KEY (`id`),
+	INDEX `actividad_FI_1` (`fk_establecimiento_id`),
+	CONSTRAINT `actividad_FK_1`
+		FOREIGN KEY (`fk_establecimiento_id`)
+		REFERENCES `establecimiento` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- boletin_actividades
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `boletin_actividades`;
+
+
+CREATE TABLE `boletin_actividades`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_escalanota_id` INTEGER,
+	`fk_alumno_id` INTEGER default 0 NOT NULL,
+	`fk_actividad_id` INTEGER default 0 NOT NULL,
+	`fk_periodo_id` INTEGER default 0 NOT NULL,
+	`observacion` LONGBLOB  NOT NULL,
+	`fecha` DATETIME  NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `boletin_actividades_FI_1` (`fk_escalanota_id`),
+	CONSTRAINT `boletin_actividades_FK_1`
+		FOREIGN KEY (`fk_escalanota_id`)
+		REFERENCES `escalanota` (`id`),
+	INDEX `boletin_actividades_FI_2` (`fk_alumno_id`),
+	CONSTRAINT `boletin_actividades_FK_2`
+		FOREIGN KEY (`fk_alumno_id`)
+		REFERENCES `alumno` (`id`),
+	INDEX `boletin_actividades_FI_3` (`fk_actividad_id`),
+	CONSTRAINT `boletin_actividades_FK_3`
+		FOREIGN KEY (`fk_actividad_id`)
+		REFERENCES `actividad` (`id`),
+	INDEX `boletin_actividades_FI_4` (`fk_periodo_id`),
+	CONSTRAINT `boletin_actividades_FK_4`
+		FOREIGN KEY (`fk_periodo_id`)
+		REFERENCES `periodo` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- examen
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `examen`;
+
+
+CREATE TABLE `examen`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_escalanota_id` INTEGER default 0 NOT NULL,
+	`fk_alumno_id` INTEGER default 0 NOT NULL,
+	`fk_actividad_id` INTEGER default 0 NOT NULL,
+	`fk_periodo_id` INTEGER default 0 NOT NULL,
+	`nombre` VARCHAR(255)  NOT NULL,
+	`observacion` LONGBLOB  NOT NULL,
+	`fecha` DATETIME  NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `examen_FI_1` (`fk_escalanota_id`),
+	CONSTRAINT `examen_FK_1`
+		FOREIGN KEY (`fk_escalanota_id`)
+		REFERENCES `escalanota` (`id`),
+	INDEX `examen_FI_2` (`fk_alumno_id`),
+	CONSTRAINT `examen_FK_2`
+		FOREIGN KEY (`fk_alumno_id`)
+		REFERENCES `alumno` (`id`),
+	INDEX `examen_FI_3` (`fk_actividad_id`),
+	CONSTRAINT `examen_FK_3`
+		FOREIGN KEY (`fk_actividad_id`)
+		REFERENCES `actividad` (`id`),
+	INDEX `examen_FI_4` (`fk_periodo_id`),
+	CONSTRAINT `examen_FK_4`
+		FOREIGN KEY (`fk_periodo_id`)
+		REFERENCES `periodo` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- anio
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `anio`;
+
+
+CREATE TABLE `anio`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
+	`descripcion` VARCHAR(255)  NOT NULL,
+	`orden` INTEGER default 0,
+	PRIMARY KEY (`id`),
+	INDEX `anio_FI_1` (`fk_establecimiento_id`),
+	CONSTRAINT `anio_FK_1`
+		FOREIGN KEY (`fk_establecimiento_id`)
+		REFERENCES `establecimiento` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- division
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `division`;
+
+
+CREATE TABLE `division`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_anio_id` INTEGER default 0 NOT NULL,
+	`descripcion` VARCHAR(255)  NOT NULL,
+	`fk_turno_id` INTEGER default 0 NOT NULL,
+	`fk_orientacion_id` INTEGER,
+	`orden` INTEGER default 0,
+	PRIMARY KEY (`id`),
+	INDEX `division_FI_1` (`fk_anio_id`),
+	CONSTRAINT `division_FK_1`
+		FOREIGN KEY (`fk_anio_id`)
+		REFERENCES `anio` (`id`),
+	INDEX `division_FI_2` (`fk_turno_id`),
+	CONSTRAINT `division_FK_2`
+		FOREIGN KEY (`fk_turno_id`)
+		REFERENCES `turno` (`id`),
+	INDEX `division_FI_3` (`fk_orientacion_id`),
+	CONSTRAINT `division_FK_3`
+		FOREIGN KEY (`fk_orientacion_id`)
+		REFERENCES `orientacion` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- repeticion
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `repeticion`;
+
+
+CREATE TABLE `repeticion`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`descripcion` VARCHAR(255)  NOT NULL,
+	`orden` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- rel_anio_actividad
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `rel_anio_actividad`;
+
+
+CREATE TABLE `rel_anio_actividad`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_anio_id` INTEGER default 0 NOT NULL,
+	`fk_actividad_id` INTEGER default 0 NOT NULL,
+	`fk_orientacion_id` INTEGER,
+	`horas` DECIMAL(10,2) default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `rel_anio_actividad_FI_1` (`fk_anio_id`),
+	CONSTRAINT `rel_anio_actividad_FK_1`
+		FOREIGN KEY (`fk_anio_id`)
+		REFERENCES `anio` (`id`),
+	INDEX `rel_anio_actividad_FI_2` (`fk_actividad_id`),
+	CONSTRAINT `rel_anio_actividad_FK_2`
+		FOREIGN KEY (`fk_actividad_id`)
+		REFERENCES `actividad` (`id`),
+	INDEX `rel_anio_actividad_FI_3` (`fk_orientacion_id`),
+	CONSTRAINT `rel_anio_actividad_FK_3`
+		FOREIGN KEY (`fk_orientacion_id`)
+		REFERENCES `orientacion` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- rel_alumno_division
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `rel_alumno_division`;
+
+
+CREATE TABLE `rel_alumno_division`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_division_id` INTEGER default 0 NOT NULL,
+	`fk_alumno_id` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `rel_alumno_division_FI_1` (`fk_division_id`),
+	CONSTRAINT `rel_alumno_division_FK_1`
+		FOREIGN KEY (`fk_division_id`)
+		REFERENCES `division` (`id`),
+	INDEX `rel_alumno_division_FI_2` (`fk_alumno_id`),
+	CONSTRAINT `rel_alumno_division_FK_2`
+		FOREIGN KEY (`fk_alumno_id`)
+		REFERENCES `alumno` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- docente
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `docente`;
+
+
+CREATE TABLE `docente`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`apellido` VARCHAR(128)  NOT NULL,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`sexo` CHAR(1)  NOT NULL,
+	`fecha_nacimiento` DATETIME  NOT NULL,
+	`fk_tipodocumento_id` INTEGER default 0 NOT NULL,
+	`nro_documento` VARCHAR(16)  NOT NULL,
+	`lugar_nacimiento` VARCHAR(128),
+	`direccion` VARCHAR(128),
+	`ciudad` VARCHAR(128),
+	`codigo_postal` VARCHAR(20),
+	`email` VARCHAR(255),
+	`telefono` VARCHAR(20),
+	`telefono_movil` VARCHAR(20),
+	`titulo` VARCHAR(128)  NOT NULL,
+	`libreta_sanitaria` INTEGER default 0,
+	`psicofisico` INTEGER default 0,
+	`activo` INTEGER default 1,
+	`fk_provincia_id` INTEGER default 0 NOT NULL,
+	`fk_pais_id` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `docente_FI_1` (`fk_tipodocumento_id`),
+	CONSTRAINT `docente_FK_1`
+		FOREIGN KEY (`fk_tipodocumento_id`)
+		REFERENCES `tipodocumento` (`id`),
+	INDEX `docente_FI_2` (`fk_provincia_id`),
+	CONSTRAINT `docente_FK_2`
+		FOREIGN KEY (`fk_provincia_id`)
+		REFERENCES `provincia` (`id`),
+	INDEX `docente_FI_3` (`fk_pais_id`),
+	CONSTRAINT `docente_FK_3`
+		FOREIGN KEY (`fk_pais_id`)
+		REFERENCES `pais` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- horarioescolartipo
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `horarioescolartipo`;
+
+
+CREATE TABLE `horarioescolartipo`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- evento
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `evento`;
+
+
+CREATE TABLE `evento`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`titulo` VARCHAR(128)  NOT NULL,
+	`fecha_inicio` DATETIME  NOT NULL,
+	`fecha_fin` DATETIME  NOT NULL,
+	`tipo` INTEGER default 0 NOT NULL,
+	`frecuencia` INTEGER default 0 NOT NULL,
+	`frecuencia_intervalo` INTEGER default 0 NOT NULL,
+	`recurrencia_fin` VARCHAR(16),
+	`recurrencia_dias` INTEGER default 0 NOT NULL,
+	`estado` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- rel_division_actividad_docente
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `rel_division_actividad_docente`;
+
+
+CREATE TABLE `rel_division_actividad_docente`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_division_id` INTEGER default 0,
+	`fk_actividad_id` INTEGER default 0 NOT NULL,
+	`fk_docente_id` INTEGER default 0,
+	`fk_evento_id` INTEGER default 0,
+	PRIMARY KEY (`id`),
+	INDEX `rel_division_actividad_docente_FI_1` (`fk_division_id`),
+	CONSTRAINT `rel_division_actividad_docente_FK_1`
+		FOREIGN KEY (`fk_division_id`)
+		REFERENCES `division` (`id`),
+	INDEX `rel_division_actividad_docente_FI_2` (`fk_actividad_id`),
+	CONSTRAINT `rel_division_actividad_docente_FK_2`
+		FOREIGN KEY (`fk_actividad_id`)
+		REFERENCES `actividad` (`id`),
+	INDEX `rel_division_actividad_docente_FI_3` (`fk_docente_id`),
+	CONSTRAINT `rel_division_actividad_docente_FK_3`
+		FOREIGN KEY (`fk_docente_id`)
+		REFERENCES `docente` (`id`),
+	INDEX `rel_division_actividad_docente_FI_4` (`fk_evento_id`),
+	CONSTRAINT `rel_division_actividad_docente_FK_4`
+		FOREIGN KEY (`fk_evento_id`)
+		REFERENCES `evento` (`id`)
+		ON DELETE CASCADE
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- rel_docente_establecimiento
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `rel_docente_establecimiento`;
+
+
+CREATE TABLE `rel_docente_establecimiento`
+(
+	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
+	`fk_docente_id` INTEGER default 0 NOT NULL,
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	PRIMARY KEY (`id`),
+	INDEX `rel_docente_establecimiento_FI_1` (`fk_establecimiento_id`),
+	CONSTRAINT `rel_docente_establecimiento_FK_1`
+		FOREIGN KEY (`fk_establecimiento_id`)
+		REFERENCES `establecimiento` (`id`),
+	INDEX `rel_docente_establecimiento_FI_2` (`fk_docente_id`),
+	CONSTRAINT `rel_docente_establecimiento_FK_2`
+		FOREIGN KEY (`fk_docente_id`)
+		REFERENCES `docente` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- docente_horario
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `docente_horario`;
+
+
+CREATE TABLE `docente_horario`
+(
+	`fk_docente_id` INTEGER  NOT NULL,
+	`fk_evento_id` INTEGER  NOT NULL,
+	PRIMARY KEY (`fk_docente_id`,`fk_evento_id`),
+	CONSTRAINT `docente_horario_FK_1`
+		FOREIGN KEY (`fk_docente_id`)
+		REFERENCES `docente` (`id`),
+	INDEX `docente_horario_FI_2` (`fk_evento_id`),
+	CONSTRAINT `docente_horario_FK_2`
+		FOREIGN KEY (`fk_evento_id`)
+		REFERENCES `evento` (`id`)
+		ON DELETE CASCADE
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- feriado
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `feriado`;
+
+
+CREATE TABLE `feriado`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`fecha` DATETIME  NOT NULL,
+	`repeticion_anual` INTEGER default 0,
+	`inamovible` INTEGER default 0,
+	`fk_ciclolectivo_id` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `feriado_FI_1` (`fk_ciclolectivo_id`),
+	CONSTRAINT `feriado_FK_1`
+		FOREIGN KEY (`fk_ciclolectivo_id`)
+		REFERENCES `ciclolectivo` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- horarioescolar
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `horarioescolar`;
+
+
+CREATE TABLE `horarioescolar`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	`fk_evento_id` INTEGER,
+	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
+	`fk_turno_id` INTEGER default 0 NOT NULL,
+	`fk_horarioescolartipo_id` INTEGER default 0 NOT NULL,
+	PRIMARY KEY (`id`),
+	INDEX `horarioescolar_FI_1` (`fk_evento_id`),
+	CONSTRAINT `horarioescolar_FK_1`
+		FOREIGN KEY (`fk_evento_id`)
+		REFERENCES `evento` (`id`)
+		ON DELETE CASCADE,
+	INDEX `horarioescolar_FI_2` (`fk_establecimiento_id`),
+	CONSTRAINT `horarioescolar_FK_2`
+		FOREIGN KEY (`fk_establecimiento_id`)
+		REFERENCES `establecimiento` (`id`),
+	INDEX `horarioescolar_FI_3` (`fk_turno_id`),
+	CONSTRAINT `horarioescolar_FK_3`
+		FOREIGN KEY (`fk_turno_id`)
+		REFERENCES `turno` (`id`),
+	INDEX `horarioescolar_FI_4` (`fk_horarioescolartipo_id`),
+	CONSTRAINT `horarioescolar_FK_4`
+		FOREIGN KEY (`fk_horarioescolartipo_id`)
+		REFERENCES `horarioescolartipo` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- rel_rolresponsable_responsable
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `rel_rolresponsable_responsable`;
+
+
+CREATE TABLE `rel_rolresponsable_responsable`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`fk_rolresponsable_id` INTEGER default 0 NOT NULL,
+	`fk_responsable_id` INTEGER default 0 NOT NULL,
+	`fk_alumno_id` INTEGER default 0 NOT NULL,
+	`descripcion` VARCHAR(255),
+	PRIMARY KEY (`id`),
+	INDEX `rel_rolresponsable_responsable_FI_1` (`fk_rolresponsable_id`),
+	CONSTRAINT `rel_rolresponsable_responsable_FK_1`
+		FOREIGN KEY (`fk_rolresponsable_id`)
+		REFERENCES `rol_responsable` (`id`),
+	INDEX `rel_rolresponsable_responsable_FI_2` (`fk_responsable_id`),
+	CONSTRAINT `rel_rolresponsable_responsable_FK_2`
+		FOREIGN KEY (`fk_responsable_id`)
+		REFERENCES `responsable` (`id`),
+	INDEX `rel_rolresponsable_responsable_FI_3` (`fk_alumno_id`),
+	CONSTRAINT `rel_rolresponsable_responsable_FK_3`
+		FOREIGN KEY (`fk_alumno_id`)
+		REFERENCES `alumno` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- rel_anio_actividad_docente
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `rel_anio_actividad_docente`;
+
+
+CREATE TABLE `rel_anio_actividad_docente`
+(
+	`fk_anio_actividad_id` INTEGER  NOT NULL,
+	`fk_docente_id` INTEGER  NOT NULL,
+	PRIMARY KEY (`fk_anio_actividad_id`,`fk_docente_id`),
+	CONSTRAINT `rel_anio_actividad_docente_FK_1`
+		FOREIGN KEY (`fk_anio_actividad_id`)
+		REFERENCES `rel_anio_actividad` (`id`),
+	INDEX `rel_anio_actividad_docente_FI_2` (`fk_docente_id`),
+	CONSTRAINT `rel_anio_actividad_docente_FK_2`
+		FOREIGN KEY (`fk_docente_id`)
+		REFERENCES `docente` (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- tipoinforme
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `tipoinforme`;
+
+
+CREATE TABLE `tipoinforme`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	PRIMARY KEY (`id`)
+)Type=InnoDB;
+
+#-----------------------------------------------------------------------------
+#-- informe
+#-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS `informe`;
+
+
+CREATE TABLE `informe`
+(
+	`id` INTEGER  NOT NULL AUTO_INCREMENT,
+	`nombre` VARCHAR(128)  NOT NULL,
+	`descripcion` VARCHAR(255),
+	`fk_adjunto_id` INTEGER  NOT NULL,
+	`fk_tipoinforme_id` INTEGER  NOT NULL,
+	`listado` INTEGER default 0 NOT NULL,
+	`variables` VARCHAR(128),
+	PRIMARY KEY (`id`),
+	INDEX `informe_FI_1` (`fk_adjunto_id`),
+	CONSTRAINT `informe_FK_1`
+		FOREIGN KEY (`fk_adjunto_id`)
+		REFERENCES `adjunto` (`id`),
+	INDEX `informe_FI_2` (`fk_tipoinforme_id`),
+	CONSTRAINT `informe_FK_2`
+		FOREIGN KEY (`fk_tipoinforme_id`)
+		REFERENCES `tipoinforme` (`id`)
+)Type=InnoDB;
+
+# This restores the fkey checks, after having unset them earlier
+SET FOREIGN_KEY_CHECKS = 1;

Added: prosistem/alba/trunk/alba/data/sql/lib.model.schema.pgsql.sql
===================================================================
--- prosistem/alba/trunk/alba/data/sql/lib.model.schema.pgsql.sql	                        (rev 0)
+++ prosistem/alba/trunk/alba/data/sql/lib.model.schema.pgsql.sql	2008-02-07 01:20:36 UTC (rev 5448)
@@ -0,0 +1,1794 @@
+
+-----------------------------------------------------------------------------
+-- conceptobaja
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "conceptobaja" CASCADE;
+
+DROP SEQUENCE IF EXISTS "conceptobaja_seq";
+
+CREATE SEQUENCE "conceptobaja_seq";
+
+
+CREATE TABLE "conceptobaja"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "conceptobaja" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- tipodocumento
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "tipodocumento" CASCADE;
+
+DROP SEQUENCE IF EXISTS "tipodocumento_seq";
+
+CREATE SEQUENCE "tipodocumento_seq";
+
+
+CREATE TABLE "tipodocumento"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	"orden" INTEGER default 0,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "tipodocumento" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- tipoiva
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "tipoiva" CASCADE;
+
+DROP SEQUENCE IF EXISTS "tipoiva_seq";
+
+CREATE SEQUENCE "tipoiva_seq";
+
+
+CREATE TABLE "tipoiva"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	"orden" INTEGER default 0,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "tipoiva" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- pais
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "pais" CASCADE;
+
+DROP SEQUENCE IF EXISTS "pais_seq";
+
+CREATE SEQUENCE "pais_seq";
+
+
+CREATE TABLE "pais"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre_largo" VARCHAR(128)  NOT NULL,
+	"nombre_corto" VARCHAR(32)  NOT NULL,
+	"orden" INTEGER default 0,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "pais" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- tipoespacio
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "tipoespacio" CASCADE;
+
+DROP SEQUENCE IF EXISTS "tipoespacio_seq";
+
+CREATE SEQUENCE "tipoespacio_seq";
+
+
+CREATE TABLE "tipoespacio"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "tipoespacio" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- provincia
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "provincia" CASCADE;
+
+DROP SEQUENCE IF EXISTS "provincia_seq";
+
+CREATE SEQUENCE "provincia_seq";
+
+
+CREATE TABLE "provincia"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre_corto" VARCHAR(32)  NOT NULL,
+	"nombre_largo" VARCHAR(128)  NOT NULL,
+	"fk_pais_id" INTEGER default 0 NOT NULL,
+	"orden" INTEGER default 0,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "provincia" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "provincia" ADD CONSTRAINT "provincia_FK_1" FOREIGN KEY ("fk_pais_id") REFERENCES "pais" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- tipolocacion
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "tipolocacion" CASCADE;
+
+DROP SEQUENCE IF EXISTS "tipolocacion_seq";
+
+CREATE SEQUENCE "tipolocacion_seq";
+
+
+CREATE TABLE "tipolocacion"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "tipolocacion" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- locacion
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "locacion" CASCADE;
+
+DROP SEQUENCE IF EXISTS "locacion_seq";
+
+CREATE SEQUENCE "locacion_seq";
+
+
+CREATE TABLE "locacion"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	"direccion" VARCHAR(128)  NOT NULL,
+	"ciudad" VARCHAR(128)  NOT NULL,
+	"codigo_postal" VARCHAR(20),
+	"fk_provincia_id" INTEGER default 0 NOT NULL,
+	"fk_tipolocacion_id" INTEGER default 0 NOT NULL,
+	"telefono" VARCHAR(20),
+	"fax" VARCHAR(20),
+	"encargado" VARCHAR(128),
+	"encargado_telefono" VARCHAR(20),
+	"principal" BOOLEAN default 'f' NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "locacion" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "locacion" ADD CONSTRAINT "locacion_FK_1" FOREIGN KEY ("fk_provincia_id") REFERENCES "provincia" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "locacion" ADD CONSTRAINT "locacion_FK_2" FOREIGN KEY ("fk_tipolocacion_id") REFERENCES "tipolocacion" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- modulo
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "modulo" CASCADE;
+
+DROP SEQUENCE IF EXISTS "modulo_seq";
+
+CREATE SEQUENCE "modulo_seq";
+
+
+CREATE TABLE "modulo"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"titulo" VARCHAR(128),
+	"descripcion" VARCHAR(255),
+	"activo" BOOLEAN default 't' NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "modulo" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- espacio
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "espacio" CASCADE;
+
+DROP SEQUENCE IF EXISTS "espacio_seq";
+
+CREATE SEQUENCE "espacio_seq";
+
+
+CREATE TABLE "espacio"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"m2" FLOAT,
+	"capacidad" VARCHAR(255),
+	"descripcion" VARCHAR(255),
+	"estado" VARCHAR(255),
+	"fk_tipoespacio_id" INTEGER,
+	"fk_locacion_id" INTEGER default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "espacio" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "espacio" ADD CONSTRAINT "espacio_FK_1" FOREIGN KEY ("fk_tipoespacio_id") REFERENCES "tipoespacio" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "espacio" ADD CONSTRAINT "espacio_FK_2" FOREIGN KEY ("fk_locacion_id") REFERENCES "locacion" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- distritoescolar
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "distritoescolar" CASCADE;
+
+DROP SEQUENCE IF EXISTS "distritoescolar_seq";
+
+CREATE SEQUENCE "distritoescolar_seq";
+
+
+CREATE TABLE "distritoescolar"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"direccion" VARCHAR(128),
+	"telefono" VARCHAR(20),
+	"ciudad" VARCHAR(128),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "distritoescolar" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- niveltipo
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "niveltipo" CASCADE;
+
+DROP SEQUENCE IF EXISTS "niveltipo_seq";
+
+CREATE SEQUENCE "niveltipo_seq";
+
+
+CREATE TABLE "niveltipo"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "niveltipo" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- organizacion
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "organizacion" CASCADE;
+
+DROP SEQUENCE IF EXISTS "organizacion_seq";
+
+CREATE SEQUENCE "organizacion_seq";
+
+
+CREATE TABLE "organizacion"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	"razon_social" VARCHAR(128)  NOT NULL,
+	"cuit" VARCHAR(20)  NOT NULL,
+	"direccion" VARCHAR(128)  NOT NULL,
+	"ciudad" VARCHAR(128)  NOT NULL,
+	"codigo_postal" VARCHAR(20)  NOT NULL,
+	"telefono" VARCHAR(20),
+	"fk_provincia_id" INTEGER default 0 NOT NULL,
+	"fk_tipoiva_id" INTEGER default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "organizacion" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "organizacion" ADD CONSTRAINT "organizacion_FK_1" FOREIGN KEY ("fk_provincia_id") REFERENCES "provincia" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "organizacion" ADD CONSTRAINT "organizacion_FK_2" FOREIGN KEY ("fk_tipoiva_id") REFERENCES "tipoiva" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- establecimiento
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "establecimiento" CASCADE;
+
+DROP SEQUENCE IF EXISTS "establecimiento_seq";
+
+CREATE SEQUENCE "establecimiento_seq";
+
+
+CREATE TABLE "establecimiento"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	"fk_distritoescolar_id" INTEGER default 0 NOT NULL,
+	"fk_organizacion_id" INTEGER default 0 NOT NULL,
+	"fk_niveltipo_id" INTEGER default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "establecimiento" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "establecimiento" ADD CONSTRAINT "establecimiento_FK_1" FOREIGN KEY ("fk_distritoescolar_id") REFERENCES "distritoescolar" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "establecimiento" ADD CONSTRAINT "establecimiento_FK_2" FOREIGN KEY ("fk_organizacion_id") REFERENCES "organizacion" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "establecimiento" ADD CONSTRAINT "establecimiento_FK_3" FOREIGN KEY ("fk_niveltipo_id") REFERENCES "niveltipo" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- permiso
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "permiso" CASCADE;
+
+DROP SEQUENCE IF EXISTS "permiso_seq";
+
+CREATE SEQUENCE "permiso_seq";
+
+
+CREATE TABLE "permiso"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	"fk_modulo_id" INTEGER default 0 NOT NULL,
+	"credencial" VARCHAR(32),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "permiso" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "permiso" ADD CONSTRAINT "permiso_FK_1" FOREIGN KEY ("fk_modulo_id") REFERENCES "modulo" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- preferencia
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "preferencia" CASCADE;
+
+DROP SEQUENCE IF EXISTS "preferencia_seq";
+
+CREATE SEQUENCE "preferencia_seq";
+
+
+CREATE TABLE "preferencia"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"valor_por_defecto" VARCHAR(128),
+	"activo" BOOLEAN default 't' NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "preferencia" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- rol
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "rol" CASCADE;
+
+DROP SEQUENCE IF EXISTS "rol_seq";
+
+CREATE SEQUENCE "rol_seq";
+
+
+CREATE TABLE "rol"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	"activo" BOOLEAN default 't' NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "rol" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- usuario
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "usuario" CASCADE;
+
+DROP SEQUENCE IF EXISTS "usuario_seq";
+
+CREATE SEQUENCE "usuario_seq";
+
+
+CREATE TABLE "usuario"
+(
+	"id" INTEGER  NOT NULL,
+	"usuario" VARCHAR(32)  NOT NULL,
+	"clave" VARCHAR(48)  NOT NULL,
+	"correo_publico" BOOLEAN default 't',
+	"activo" BOOLEAN default 't' NOT NULL,
+	"fecha_creado" TIMESTAMP  NOT NULL,
+	"fecha_actualizado" TIMESTAMP  NOT NULL,
+	"seguridad_pregunta" VARCHAR(128),
+	"seguridad_respuesta" VARCHAR(128),
+	"email" VARCHAR(128),
+	"fk_establecimiento_id" INTEGER default 0 NOT NULL,
+	"borrado" BOOLEAN default 'f' NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "usuario" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "usuario" ADD CONSTRAINT "usuario_FK_1" FOREIGN KEY ("fk_establecimiento_id") REFERENCES "establecimiento" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- rel_establecimiento_locacion
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "rel_establecimiento_locacion" CASCADE;
+
+DROP SEQUENCE IF EXISTS "rel_establecimiento_locacion_seq";
+
+CREATE SEQUENCE "rel_establecimiento_locacion_seq";
+
+
+CREATE TABLE "rel_establecimiento_locacion"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_establecimiento_id" INTEGER default 0 NOT NULL,
+	"fk_locacion_id" INTEGER default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "rel_establecimiento_locacion" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "rel_establecimiento_locacion" ADD CONSTRAINT "rel_establecimiento_locacio_FK_1" FOREIGN KEY ("fk_establecimiento_id") REFERENCES "establecimiento" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "rel_establecimiento_locacion" ADD CONSTRAINT "rel_establecimiento_locacio_FK_2" FOREIGN KEY ("fk_locacion_id") REFERENCES "locacion" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- rel_rol_permiso
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "rel_rol_permiso" CASCADE;
+
+DROP SEQUENCE IF EXISTS "rel_rol_permiso_seq";
+
+CREATE SEQUENCE "rel_rol_permiso_seq";
+
+
+CREATE TABLE "rel_rol_permiso"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_rol_id" INTEGER default 0 NOT NULL,
+	"fk_permiso_id" INTEGER default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "rel_rol_permiso" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "rel_rol_permiso" ADD CONSTRAINT "rel_rol_permiso_FK_1" FOREIGN KEY ("fk_rol_id") REFERENCES "rol" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "rel_rol_permiso" ADD CONSTRAINT "rel_rol_permiso_FK_2" FOREIGN KEY ("fk_permiso_id") REFERENCES "permiso" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- rel_usuario_permiso
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "rel_usuario_permiso" CASCADE;
+
+DROP SEQUENCE IF EXISTS "rel_usuario_permiso_seq";
+
+CREATE SEQUENCE "rel_usuario_permiso_seq";
+
+
+CREATE TABLE "rel_usuario_permiso"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_usuario_id" INTEGER default 0 NOT NULL,
+	"fk_permiso_id" INTEGER default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "rel_usuario_permiso" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "rel_usuario_permiso" ADD CONSTRAINT "rel_usuario_permiso_FK_1" FOREIGN KEY ("fk_usuario_id") REFERENCES "usuario" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "rel_usuario_permiso" ADD CONSTRAINT "rel_usuario_permiso_FK_2" FOREIGN KEY ("fk_permiso_id") REFERENCES "permiso" ("id") ON DELETE CASCADE INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- rel_usuario_preferencia
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "rel_usuario_preferencia" CASCADE;
+
+DROP SEQUENCE IF EXISTS "rel_usuario_preferencia_seq";
+
+CREATE SEQUENCE "rel_usuario_preferencia_seq";
+
+
+CREATE TABLE "rel_usuario_preferencia"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_usuario_id" INTEGER default 0 NOT NULL,
+	"fk_preferencia_id" INTEGER default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "rel_usuario_preferencia" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- orientacion
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "orientacion" CASCADE;
+
+DROP SEQUENCE IF EXISTS "orientacion_seq";
+
+CREATE SEQUENCE "orientacion_seq";
+
+
+CREATE TABLE "orientacion"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "orientacion" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- cuenta
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "cuenta" CASCADE;
+
+DROP SEQUENCE IF EXISTS "cuenta_seq";
+
+CREATE SEQUENCE "cuenta_seq";
+
+
+CREATE TABLE "cuenta"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"razon_social" VARCHAR(128)  NOT NULL,
+	"cuit" VARCHAR(20)  NOT NULL,
+	"direccion" VARCHAR(128)  NOT NULL,
+	"ciudad" VARCHAR(128)  NOT NULL,
+	"codigo_postal" VARCHAR(20)  NOT NULL,
+	"telefono" VARCHAR(20),
+	"fk_provincia_id" INTEGER,
+	"fk_tipoiva_id" INTEGER default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "cuenta" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "cuenta" ADD CONSTRAINT "cuenta_FK_1" FOREIGN KEY ("fk_provincia_id") REFERENCES "provincia" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "cuenta" ADD CONSTRAINT "cuenta_FK_2" FOREIGN KEY ("fk_tipoiva_id") REFERENCES "tipoiva" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- alumno
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "alumno" CASCADE;
+
+DROP SEQUENCE IF EXISTS "alumno_seq";
+
+CREATE SEQUENCE "alumno_seq";
+
+
+CREATE TABLE "alumno"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"apellido" VARCHAR(128)  NOT NULL,
+	"fecha_nacimiento" TIMESTAMP  NOT NULL,
+	"direccion" VARCHAR(128)  NOT NULL,
+	"ciudad" VARCHAR(128)  NOT NULL,
+	"codigo_postal" VARCHAR(20)  NOT NULL,
+	"fk_provincia_id" INTEGER default 0 NOT NULL,
+	"telefono" VARCHAR(20),
+	"lugar_nacimiento" VARCHAR(128),
+	"fk_tipodocumento_id" INTEGER default 0 NOT NULL,
+	"nro_documento" VARCHAR(16)  NOT NULL,
+	"sexo" CHAR(1)  NOT NULL,
+	"email" VARCHAR(128)  NOT NULL,
+	"distancia_escuela" INTEGER default 0,
+	"hermanos_escuela" BOOLEAN default 'f' NOT NULL,
+	"hijo_maestro_escuela" BOOLEAN default 'f' NOT NULL,
+	"fk_establecimiento_id" INTEGER default 0 NOT NULL,
+	"fk_cuenta_id" INTEGER default 0 NOT NULL,
+	"certificado_medico" BOOLEAN default 'f' NOT NULL,
+	"activo" BOOLEAN default 't' NOT NULL,
+	"fk_conceptobaja_id" INTEGER,
+	"fk_pais_id" INTEGER default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "alumno" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "alumno" ADD CONSTRAINT "alumno_FK_1" FOREIGN KEY ("fk_provincia_id") REFERENCES "provincia" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "alumno" ADD CONSTRAINT "alumno_FK_2" FOREIGN KEY ("fk_tipodocumento_id") REFERENCES "tipodocumento" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "alumno" ADD CONSTRAINT "alumno_FK_3" FOREIGN KEY ("fk_establecimiento_id") REFERENCES "establecimiento" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "alumno" ADD CONSTRAINT "alumno_FK_4" FOREIGN KEY ("fk_cuenta_id") REFERENCES "cuenta" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "alumno" ADD CONSTRAINT "alumno_FK_5" FOREIGN KEY ("fk_conceptobaja_id") REFERENCES "conceptobaja" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "alumno" ADD CONSTRAINT "alumno_FK_6" FOREIGN KEY ("fk_pais_id") REFERENCES "pais" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- rol_responsable
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "rol_responsable" CASCADE;
+
+DROP SEQUENCE IF EXISTS "rol_responsable_seq";
+
+CREATE SEQUENCE "rol_responsable_seq";
+
+
+CREATE TABLE "rol_responsable"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	"activo" BOOLEAN default 't' NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "rol_responsable" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- responsable
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "responsable" CASCADE;
+
+DROP SEQUENCE IF EXISTS "responsable_seq";
+
+CREATE SEQUENCE "responsable_seq";
+
+
+CREATE TABLE "responsable"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"apellido" VARCHAR(128)  NOT NULL,
+	"direccion" VARCHAR(128),
+	"ciudad" VARCHAR(128),
+	"codigo_postal" VARCHAR(20),
+	"fk_provincia_id" INTEGER default 0 NOT NULL,
+	"telefono" VARCHAR(20),
+	"telefono_movil" VARCHAR(20),
+	"nro_documento" VARCHAR(20)  NOT NULL,
+	"fk_tipodocumento_id" INTEGER default 0 NOT NULL,
+	"sexo" CHAR(1)  NOT NULL,
+	"email" VARCHAR(128),
+	"observacion" VARCHAR(255),
+	"autorizacion_retiro" BOOLEAN default 'f' NOT NULL,
+	"fk_cuenta_id" INTEGER default 0 NOT NULL,
+	"fk_rolresponsable_id" INTEGER default 1 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "responsable" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "responsable" ADD CONSTRAINT "responsable_FK_1" FOREIGN KEY ("fk_provincia_id") REFERENCES "provincia" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "responsable" ADD CONSTRAINT "responsable_FK_2" FOREIGN KEY ("fk_tipodocumento_id") REFERENCES "tipodocumento" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "responsable" ADD CONSTRAINT "responsable_FK_3" FOREIGN KEY ("fk_cuenta_id") REFERENCES "cuenta" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "responsable" ADD CONSTRAINT "responsable_FK_4" FOREIGN KEY ("fk_rolresponsable_id") REFERENCES "rol_responsable" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- ciclolectivo
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "ciclolectivo" CASCADE;
+
+DROP SEQUENCE IF EXISTS "ciclolectivo_seq";
+
+CREATE SEQUENCE "ciclolectivo_seq";
+
+
+CREATE TABLE "ciclolectivo"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_establecimiento_id" INTEGER  NOT NULL,
+	"fecha_inicio" TIMESTAMP  NOT NULL,
+	"fecha_fin" TIMESTAMP  NOT NULL,
+	"descripcion" VARCHAR(255)  NOT NULL,
+	"actual" BOOLEAN default 'f' NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "ciclolectivo" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "ciclolectivo" ADD CONSTRAINT "ciclolectivo_FK_1" FOREIGN KEY ("fk_establecimiento_id") REFERENCES "establecimiento" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- turno
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "turno" CASCADE;
+
+DROP SEQUENCE IF EXISTS "turno_seq";
+
+CREATE SEQUENCE "turno_seq";
+
+
+CREATE TABLE "turno"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_ciclolectivo_id" INTEGER  NOT NULL,
+	"hora_inicio" TIME  NOT NULL,
+	"hora_fin" TIME  NOT NULL,
+	"descripcion" VARCHAR(255)  NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "turno" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "turno" ADD CONSTRAINT "turno_FK_1" FOREIGN KEY ("fk_ciclolectivo_id") REFERENCES "ciclolectivo" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- periodo
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "periodo" CASCADE;
+
+DROP SEQUENCE IF EXISTS "periodo_seq";
+
+CREATE SEQUENCE "periodo_seq";
+
+
+CREATE TABLE "periodo"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_ciclolectivo_id" INTEGER  NOT NULL,
+	"fecha_inicio" TIMESTAMP  NOT NULL,
+	"fecha_fin" TIMESTAMP  NOT NULL,
+	"descripcion" VARCHAR(255)  NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "periodo" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "periodo" ADD CONSTRAINT "periodo_FK_1" FOREIGN KEY ("fk_ciclolectivo_id") REFERENCES "ciclolectivo" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- tipodocente
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "tipodocente" CASCADE;
+
+DROP SEQUENCE IF EXISTS "tipodocente_seq";
+
+CREATE SEQUENCE "tipodocente_seq";
+
+
+CREATE TABLE "tipodocente"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "tipodocente" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- cargobaja
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "cargobaja" CASCADE;
+
+DROP SEQUENCE IF EXISTS "cargobaja_seq";
+
+CREATE SEQUENCE "cargobaja_seq";
+
+
+CREATE TABLE "cargobaja"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "cargobaja" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- calendariovacunacion
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "calendariovacunacion" CASCADE;
+
+DROP SEQUENCE IF EXISTS "calendariovacunacion_seq";
+
+CREATE SEQUENCE "calendariovacunacion_seq";
+
+
+CREATE TABLE "calendariovacunacion"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	"periodo" VARCHAR(128),
+	"observacion" VARCHAR(255),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "calendariovacunacion" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- rel_calendariovacunacion_alumno
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "rel_calendariovacunacion_alumno" CASCADE;
+
+DROP SEQUENCE IF EXISTS "rel_calendariovacunacion_a_seq_1";
+
+CREATE SEQUENCE "rel_calendariovacunacion_a_seq_1";
+
+
+CREATE TABLE "rel_calendariovacunacion_alumno"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_alumno_id" INTEGER  NOT NULL,
+	"fk_calendariovacunacion_id" INTEGER  NOT NULL,
+	"observacion" VARCHAR(255),
+	"comprobante" BOOLEAN default 'f' NOT NULL,
+	"fecha" TIMESTAMP,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "rel_calendariovacunacion_alumno" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "rel_calendariovacunacion_alumno" ADD CONSTRAINT "rel_calendariovacunacion_al_FK_1" FOREIGN KEY ("fk_alumno_id") REFERENCES "alumno" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "rel_calendariovacunacion_alumno" ADD CONSTRAINT "rel_calendariovacunacion_al_FK_2" FOREIGN KEY ("fk_calendariovacunacion_id") REFERENCES "calendariovacunacion" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- legajocategoria
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "legajocategoria" CASCADE;
+
+DROP SEQUENCE IF EXISTS "legajocategoria_seq";
+
+CREATE SEQUENCE "legajocategoria_seq";
+
+
+CREATE TABLE "legajocategoria"
+(
+	"id" INTEGER  NOT NULL,
+	"descripcion" VARCHAR(255)  NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "legajocategoria" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- legajopedagogico
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "legajopedagogico" CASCADE;
+
+DROP SEQUENCE IF EXISTS "legajopedagogico_seq";
+
+CREATE SEQUENCE "legajopedagogico_seq";
+
+
+CREATE TABLE "legajopedagogico"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_alumno_id" INTEGER  NOT NULL,
+	"titulo" VARCHAR(255)  NOT NULL,
+	"resumen" BYTEA  NOT NULL,
+	"texto" BYTEA  NOT NULL,
+	"fecha" TIMESTAMP  NOT NULL,
+	"fk_usuario_id" INTEGER  NOT NULL,
+	"fk_legajocategoria_id" INTEGER  NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "legajopedagogico" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "legajopedagogico" ADD CONSTRAINT "legajopedagogico_FK_1" FOREIGN KEY ("fk_alumno_id") REFERENCES "alumno" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "legajopedagogico" ADD CONSTRAINT "legajopedagogico_FK_2" FOREIGN KEY ("fk_usuario_id") REFERENCES "usuario" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "legajopedagogico" ADD CONSTRAINT "legajopedagogico_FK_3" FOREIGN KEY ("fk_legajocategoria_id") REFERENCES "legajocategoria" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- adjunto
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "adjunto" CASCADE;
+
+DROP SEQUENCE IF EXISTS "adjunto_seq";
+
+CREATE SEQUENCE "adjunto_seq";
+
+
+CREATE TABLE "adjunto"
+(
+	"id" INTEGER  NOT NULL,
+	"descripcion" VARCHAR(255),
+	"titulo" VARCHAR(255),
+	"nombre_archivo" VARCHAR(255)  NOT NULL,
+	"tipo_archivo" VARCHAR(64)  NOT NULL,
+	"ruta" VARCHAR(255)  NOT NULL,
+	"fecha" TIMESTAMP  NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "adjunto" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- legajoadjunto
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "legajoadjunto" CASCADE;
+
+DROP SEQUENCE IF EXISTS "legajoadjunto_seq";
+
+CREATE SEQUENCE "legajoadjunto_seq";
+
+
+CREATE TABLE "legajoadjunto"
+(
+	"fk_legajopedagogico_id" INTEGER  NOT NULL,
+	"fk_adjunto_id" INTEGER  NOT NULL,
+	"id" INTEGER  NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "legajoadjunto" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "legajoadjunto" ADD CONSTRAINT "legajoadjunto_FK_1" FOREIGN KEY ("fk_legajopedagogico_id") REFERENCES "legajopedagogico" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "legajoadjunto" ADD CONSTRAINT "legajoadjunto_FK_2" FOREIGN KEY ("fk_adjunto_id") REFERENCES "adjunto" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- tipoasistencia
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "tipoasistencia" CASCADE;
+
+DROP SEQUENCE IF EXISTS "tipoasistencia_seq";
+
+CREATE SEQUENCE "tipoasistencia_seq";
+
+
+CREATE TABLE "tipoasistencia"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(10)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	"valor" DECIMAL(4,2) default 1 NOT NULL,
+	"grupo" VARCHAR(30),
+	"defecto" BOOLEAN default 'f' NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "tipoasistencia" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- asistencia
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "asistencia" CASCADE;
+
+DROP SEQUENCE IF EXISTS "asistencia_seq";
+
+CREATE SEQUENCE "asistencia_seq";
+
+
+CREATE TABLE "asistencia"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_alumno_id" INTEGER  NOT NULL,
+	"fk_tipoasistencia_id" INTEGER  NOT NULL,
+	"fecha" TIMESTAMP  NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "asistencia" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "asistencia" ADD CONSTRAINT "asistencia_FK_1" FOREIGN KEY ("fk_alumno_id") REFERENCES "alumno" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "asistencia" ADD CONSTRAINT "asistencia_FK_2" FOREIGN KEY ("fk_tipoasistencia_id") REFERENCES "tipoasistencia" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- concepto
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "concepto" CASCADE;
+
+DROP SEQUENCE IF EXISTS "concepto_seq";
+
+CREATE SEQUENCE "concepto_seq";
+
+
+CREATE TABLE "concepto"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_establecimiento_id" INTEGER default 0 NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "concepto" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "concepto" ADD CONSTRAINT "concepto_FK_1" FOREIGN KEY ("fk_establecimiento_id") REFERENCES "establecimiento" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- escalanota
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "escalanota" CASCADE;
+
+DROP SEQUENCE IF EXISTS "escalanota_seq";
+
+CREATE SEQUENCE "escalanota_seq";
+
+
+CREATE TABLE "escalanota"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_establecimiento_id" INTEGER default 0 NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	"orden" INTEGER  NOT NULL,
+	"aprobado" BOOLEAN default 'f' NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "escalanota" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "escalanota" ADD CONSTRAINT "escalanota_FK_1" FOREIGN KEY ("fk_establecimiento_id") REFERENCES "establecimiento" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- boletin_conceptual
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "boletin_conceptual" CASCADE;
+
+DROP SEQUENCE IF EXISTS "boletin_conceptual_seq";
+
+CREATE SEQUENCE "boletin_conceptual_seq";
+
+
+CREATE TABLE "boletin_conceptual"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_escalanota_id" INTEGER,
+	"fk_alumno_id" INTEGER default 0 NOT NULL,
+	"fk_concepto_id" INTEGER default 0 NOT NULL,
+	"fk_periodo_id" INTEGER default 0 NOT NULL,
+	"observacion" BYTEA  NOT NULL,
+	"fecha" TIMESTAMP  NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "boletin_conceptual" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "boletin_conceptual" ADD CONSTRAINT "boletin_conceptual_FK_1" FOREIGN KEY ("fk_escalanota_id") REFERENCES "escalanota" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "boletin_conceptual" ADD CONSTRAINT "boletin_conceptual_FK_2" FOREIGN KEY ("fk_alumno_id") REFERENCES "alumno" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "boletin_conceptual" ADD CONSTRAINT "boletin_conceptual_FK_3" FOREIGN KEY ("fk_concepto_id") REFERENCES "concepto" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "boletin_conceptual" ADD CONSTRAINT "boletin_conceptual_FK_4" FOREIGN KEY ("fk_periodo_id") REFERENCES "periodo" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- actividad
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "actividad" CASCADE;
+
+DROP SEQUENCE IF EXISTS "actividad_seq";
+
+CREATE SEQUENCE "actividad_seq";
+
+
+CREATE TABLE "actividad"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_establecimiento_id" INTEGER default 0 NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "actividad" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "actividad" ADD CONSTRAINT "actividad_FK_1" FOREIGN KEY ("fk_establecimiento_id") REFERENCES "establecimiento" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- boletin_actividades
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "boletin_actividades" CASCADE;
+
+DROP SEQUENCE IF EXISTS "boletin_actividades_seq";
+
+CREATE SEQUENCE "boletin_actividades_seq";
+
+
+CREATE TABLE "boletin_actividades"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_escalanota_id" INTEGER,
+	"fk_alumno_id" INTEGER default 0 NOT NULL,
+	"fk_actividad_id" INTEGER default 0 NOT NULL,
+	"fk_periodo_id" INTEGER default 0 NOT NULL,
+	"observacion" BYTEA  NOT NULL,
+	"fecha" TIMESTAMP  NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "boletin_actividades" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "boletin_actividades" ADD CONSTRAINT "boletin_actividades_FK_1" FOREIGN KEY ("fk_escalanota_id") REFERENCES "escalanota" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "boletin_actividades" ADD CONSTRAINT "boletin_actividades_FK_2" FOREIGN KEY ("fk_alumno_id") REFERENCES "alumno" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "boletin_actividades" ADD CONSTRAINT "boletin_actividades_FK_3" FOREIGN KEY ("fk_actividad_id") REFERENCES "actividad" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "boletin_actividades" ADD CONSTRAINT "boletin_actividades_FK_4" FOREIGN KEY ("fk_periodo_id") REFERENCES "periodo" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- examen
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "examen" CASCADE;
+
+DROP SEQUENCE IF EXISTS "examen_seq";
+
+CREATE SEQUENCE "examen_seq";
+
+
+CREATE TABLE "examen"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_escalanota_id" INTEGER default 0 NOT NULL,
+	"fk_alumno_id" INTEGER default 0 NOT NULL,
+	"fk_actividad_id" INTEGER default 0 NOT NULL,
+	"fk_periodo_id" INTEGER default 0 NOT NULL,
+	"nombre" VARCHAR(255)  NOT NULL,
+	"observacion" BYTEA  NOT NULL,
+	"fecha" TIMESTAMP  NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "examen" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "examen" ADD CONSTRAINT "examen_FK_1" FOREIGN KEY ("fk_escalanota_id") REFERENCES "escalanota" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "examen" ADD CONSTRAINT "examen_FK_2" FOREIGN KEY ("fk_alumno_id") REFERENCES "alumno" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "examen" ADD CONSTRAINT "examen_FK_3" FOREIGN KEY ("fk_actividad_id") REFERENCES "actividad" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "examen" ADD CONSTRAINT "examen_FK_4" FOREIGN KEY ("fk_periodo_id") REFERENCES "periodo" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- anio
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "anio" CASCADE;
+
+DROP SEQUENCE IF EXISTS "anio_seq";
+
+CREATE SEQUENCE "anio_seq";
+
+
+CREATE TABLE "anio"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_establecimiento_id" INTEGER default 0 NOT NULL,
+	"descripcion" VARCHAR(255)  NOT NULL,
+	"orden" INTEGER default 0,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "anio" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "anio" ADD CONSTRAINT "anio_FK_1" FOREIGN KEY ("fk_establecimiento_id") REFERENCES "establecimiento" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- division
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "division" CASCADE;
+
+DROP SEQUENCE IF EXISTS "division_seq";
+
+CREATE SEQUENCE "division_seq";
+
+
+CREATE TABLE "division"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_anio_id" INTEGER default 0 NOT NULL,
+	"descripcion" VARCHAR(255)  NOT NULL,
+	"fk_turno_id" INTEGER default 0 NOT NULL,
+	"fk_orientacion_id" INTEGER,
+	"orden" INTEGER default 0,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "division" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "division" ADD CONSTRAINT "division_FK_1" FOREIGN KEY ("fk_anio_id") REFERENCES "anio" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "division" ADD CONSTRAINT "division_FK_2" FOREIGN KEY ("fk_turno_id") REFERENCES "turno" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "division" ADD CONSTRAINT "division_FK_3" FOREIGN KEY ("fk_orientacion_id") REFERENCES "orientacion" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- repeticion
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "repeticion" CASCADE;
+
+DROP SEQUENCE IF EXISTS "repeticion_seq";
+
+CREATE SEQUENCE "repeticion_seq";
+
+
+CREATE TABLE "repeticion"
+(
+	"id" INTEGER  NOT NULL,
+	"descripcion" VARCHAR(255)  NOT NULL,
+	"orden" INTEGER default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "repeticion" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- rel_anio_actividad
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "rel_anio_actividad" CASCADE;
+
+DROP SEQUENCE IF EXISTS "rel_anio_actividad_seq";
+
+CREATE SEQUENCE "rel_anio_actividad_seq";
+
+
+CREATE TABLE "rel_anio_actividad"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_anio_id" INTEGER default 0 NOT NULL,
+	"fk_actividad_id" INTEGER default 0 NOT NULL,
+	"fk_orientacion_id" INTEGER,
+	"horas" DECIMAL(10,2) default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "rel_anio_actividad" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "rel_anio_actividad" ADD CONSTRAINT "rel_anio_actividad_FK_1" FOREIGN KEY ("fk_anio_id") REFERENCES "anio" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "rel_anio_actividad" ADD CONSTRAINT "rel_anio_actividad_FK_2" FOREIGN KEY ("fk_actividad_id") REFERENCES "actividad" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "rel_anio_actividad" ADD CONSTRAINT "rel_anio_actividad_FK_3" FOREIGN KEY ("fk_orientacion_id") REFERENCES "orientacion" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- rel_alumno_division
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "rel_alumno_division" CASCADE;
+
+DROP SEQUENCE IF EXISTS "rel_alumno_division_seq";
+
+CREATE SEQUENCE "rel_alumno_division_seq";
+
+
+CREATE TABLE "rel_alumno_division"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_division_id" INTEGER default 0 NOT NULL,
+	"fk_alumno_id" INTEGER default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "rel_alumno_division" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "rel_alumno_division" ADD CONSTRAINT "rel_alumno_division_FK_1" FOREIGN KEY ("fk_division_id") REFERENCES "division" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "rel_alumno_division" ADD CONSTRAINT "rel_alumno_division_FK_2" FOREIGN KEY ("fk_alumno_id") REFERENCES "alumno" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- docente
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "docente" CASCADE;
+
+DROP SEQUENCE IF EXISTS "docente_seq";
+
+CREATE SEQUENCE "docente_seq";
+
+
+CREATE TABLE "docente"
+(
+	"id" INTEGER  NOT NULL,
+	"apellido" VARCHAR(128)  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"sexo" CHAR(1)  NOT NULL,
+	"fecha_nacimiento" TIMESTAMP  NOT NULL,
+	"fk_tipodocumento_id" INTEGER default 0 NOT NULL,
+	"nro_documento" VARCHAR(16)  NOT NULL,
+	"lugar_nacimiento" VARCHAR(128),
+	"direccion" VARCHAR(128),
+	"ciudad" VARCHAR(128),
+	"codigo_postal" VARCHAR(20),
+	"email" VARCHAR(255),
+	"telefono" VARCHAR(20),
+	"telefono_movil" VARCHAR(20),
+	"titulo" VARCHAR(128)  NOT NULL,
+	"libreta_sanitaria" BOOLEAN default 'f',
+	"psicofisico" BOOLEAN default 'f',
+	"activo" BOOLEAN default 't',
+	"fk_provincia_id" INTEGER default 0 NOT NULL,
+	"fk_pais_id" INTEGER default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "docente" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "docente" ADD CONSTRAINT "docente_FK_1" FOREIGN KEY ("fk_tipodocumento_id") REFERENCES "tipodocumento" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "docente" ADD CONSTRAINT "docente_FK_2" FOREIGN KEY ("fk_provincia_id") REFERENCES "provincia" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "docente" ADD CONSTRAINT "docente_FK_3" FOREIGN KEY ("fk_pais_id") REFERENCES "pais" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- horarioescolartipo
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "horarioescolartipo" CASCADE;
+
+DROP SEQUENCE IF EXISTS "horarioescolartipo_seq";
+
+CREATE SEQUENCE "horarioescolartipo_seq";
+
+
+CREATE TABLE "horarioescolartipo"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "horarioescolartipo" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- evento
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "evento" CASCADE;
+
+DROP SEQUENCE IF EXISTS "evento_seq";
+
+CREATE SEQUENCE "evento_seq";
+
+
+CREATE TABLE "evento"
+(
+	"id" INTEGER  NOT NULL,
+	"titulo" VARCHAR(128)  NOT NULL,
+	"fecha_inicio" TIMESTAMP  NOT NULL,
+	"fecha_fin" TIMESTAMP  NOT NULL,
+	"tipo" INTEGER default 0 NOT NULL,
+	"frecuencia" INTEGER default 0 NOT NULL,
+	"frecuencia_intervalo" INTEGER default 0 NOT NULL,
+	"recurrencia_fin" VARCHAR(16),
+	"recurrencia_dias" INTEGER default 0 NOT NULL,
+	"estado" INTEGER default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "evento" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- rel_division_actividad_docente
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "rel_division_actividad_docente" CASCADE;
+
+DROP SEQUENCE IF EXISTS "rel_division_actividad_doc_seq_2";
+
+CREATE SEQUENCE "rel_division_actividad_doc_seq_2";
+
+
+CREATE TABLE "rel_division_actividad_docente"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_division_id" INTEGER default 0,
+	"fk_actividad_id" INTEGER default 0 NOT NULL,
+	"fk_docente_id" INTEGER default 0,
+	"fk_evento_id" INTEGER default 0,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "rel_division_actividad_docente" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "rel_division_actividad_docente" ADD CONSTRAINT "rel_division_actividad_doce_FK_1" FOREIGN KEY ("fk_division_id") REFERENCES "division" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "rel_division_actividad_docente" ADD CONSTRAINT "rel_division_actividad_doce_FK_2" FOREIGN KEY ("fk_actividad_id") REFERENCES "actividad" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "rel_division_actividad_docente" ADD CONSTRAINT "rel_division_actividad_doce_FK_3" FOREIGN KEY ("fk_docente_id") REFERENCES "docente" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "rel_division_actividad_docente" ADD CONSTRAINT "rel_division_actividad_doce_FK_4" FOREIGN KEY ("fk_evento_id") REFERENCES "evento" ("id") ON DELETE CASCADE INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- rel_docente_establecimiento
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "rel_docente_establecimiento" CASCADE;
+
+DROP SEQUENCE IF EXISTS "rel_docente_establecimiento_seq";
+
+CREATE SEQUENCE "rel_docente_establecimiento_seq";
+
+
+CREATE TABLE "rel_docente_establecimiento"
+(
+	"fk_establecimiento_id" INTEGER default 0 NOT NULL,
+	"fk_docente_id" INTEGER default 0 NOT NULL,
+	"id" INTEGER  NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "rel_docente_establecimiento" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "rel_docente_establecimiento" ADD CONSTRAINT "rel_docente_establecimiento_FK_1" FOREIGN KEY ("fk_establecimiento_id") REFERENCES "establecimiento" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "rel_docente_establecimiento" ADD CONSTRAINT "rel_docente_establecimiento_FK_2" FOREIGN KEY ("fk_docente_id") REFERENCES "docente" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- docente_horario
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "docente_horario" CASCADE;
+
+
+CREATE TABLE "docente_horario"
+(
+	"fk_docente_id" INTEGER  NOT NULL,
+	"fk_evento_id" INTEGER  NOT NULL,
+	PRIMARY KEY ("fk_docente_id","fk_evento_id")
+);
+
+COMMENT ON TABLE "docente_horario" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "docente_horario" ADD CONSTRAINT "docente_horario_FK_1" FOREIGN KEY ("fk_docente_id") REFERENCES "docente" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "docente_horario" ADD CONSTRAINT "docente_horario_FK_2" FOREIGN KEY ("fk_evento_id") REFERENCES "evento" ("id") ON DELETE CASCADE INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- feriado
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "feriado" CASCADE;
+
+DROP SEQUENCE IF EXISTS "feriado_seq";
+
+CREATE SEQUENCE "feriado_seq";
+
+
+CREATE TABLE "feriado"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"fecha" TIMESTAMP  NOT NULL,
+	"repeticion_anual" BOOLEAN default 'f',
+	"inamovible" BOOLEAN default 'f',
+	"fk_ciclolectivo_id" INTEGER default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "feriado" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "feriado" ADD CONSTRAINT "feriado_FK_1" FOREIGN KEY ("fk_ciclolectivo_id") REFERENCES "ciclolectivo" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- horarioescolar
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "horarioescolar" CASCADE;
+
+DROP SEQUENCE IF EXISTS "horarioescolar_seq";
+
+CREATE SEQUENCE "horarioescolar_seq";
+
+
+CREATE TABLE "horarioescolar"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	"fk_evento_id" INTEGER,
+	"fk_establecimiento_id" INTEGER default 0 NOT NULL,
+	"fk_turno_id" INTEGER default 0 NOT NULL,
+	"fk_horarioescolartipo_id" INTEGER default 0 NOT NULL,
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "horarioescolar" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "horarioescolar" ADD CONSTRAINT "horarioescolar_FK_1" FOREIGN KEY ("fk_evento_id") REFERENCES "evento" ("id") ON DELETE CASCADE INITIALLY DEFERRED ;
+
+ALTER TABLE "horarioescolar" ADD CONSTRAINT "horarioescolar_FK_2" FOREIGN KEY ("fk_establecimiento_id") REFERENCES "establecimiento" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "horarioescolar" ADD CONSTRAINT "horarioescolar_FK_3" FOREIGN KEY ("fk_turno_id") REFERENCES "turno" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "horarioescolar" ADD CONSTRAINT "horarioescolar_FK_4" FOREIGN KEY ("fk_horarioescolartipo_id") REFERENCES "horarioescolartipo" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- rel_rolresponsable_responsable
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "rel_rolresponsable_responsable" CASCADE;
+
+DROP SEQUENCE IF EXISTS "rel_rolresponsable_respons_seq_3";
+
+CREATE SEQUENCE "rel_rolresponsable_respons_seq_3";
+
+
+CREATE TABLE "rel_rolresponsable_responsable"
+(
+	"id" INTEGER  NOT NULL,
+	"fk_rolresponsable_id" INTEGER default 0 NOT NULL,
+	"fk_responsable_id" INTEGER default 0 NOT NULL,
+	"fk_alumno_id" INTEGER default 0 NOT NULL,
+	"descripcion" VARCHAR(255),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "rel_rolresponsable_responsable" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "rel_rolresponsable_responsable" ADD CONSTRAINT "rel_rolresponsable_responsa_FK_1" FOREIGN KEY ("fk_rolresponsable_id") REFERENCES "rol_responsable" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "rel_rolresponsable_responsable" ADD CONSTRAINT "rel_rolresponsable_responsa_FK_2" FOREIGN KEY ("fk_responsable_id") REFERENCES "responsable" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "rel_rolresponsable_responsable" ADD CONSTRAINT "rel_rolresponsable_responsa_FK_3" FOREIGN KEY ("fk_alumno_id") REFERENCES "alumno" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- rel_anio_actividad_docente
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "rel_anio_actividad_docente" CASCADE;
+
+
+CREATE TABLE "rel_anio_actividad_docente"
+(
+	"fk_anio_actividad_id" INTEGER  NOT NULL,
+	"fk_docente_id" INTEGER  NOT NULL,
+	PRIMARY KEY ("fk_anio_actividad_id","fk_docente_id")
+);
+
+COMMENT ON TABLE "rel_anio_actividad_docente" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "rel_anio_actividad_docente" ADD CONSTRAINT "rel_anio_actividad_docente_FK_1" FOREIGN KEY ("fk_anio_actividad_id") REFERENCES "rel_anio_actividad" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "rel_anio_actividad_docente" ADD CONSTRAINT "rel_anio_actividad_docente_FK_2" FOREIGN KEY ("fk_docente_id") REFERENCES "docente" ("id") INITIALLY DEFERRED ;
+
+-----------------------------------------------------------------------------
+-- tipoinforme
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "tipoinforme" CASCADE;
+
+DROP SEQUENCE IF EXISTS "tipoinforme_seq";
+
+CREATE SEQUENCE "tipoinforme_seq";
+
+
+CREATE TABLE "tipoinforme"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "tipoinforme" IS '';
+
+
+SET search_path TO public;
+-----------------------------------------------------------------------------
+-- informe
+-----------------------------------------------------------------------------
+
+DROP TABLE IF EXISTS "informe" CASCADE;
+
+DROP SEQUENCE IF EXISTS "informe_seq";
+
+CREATE SEQUENCE "informe_seq";
+
+
+CREATE TABLE "informe"
+(
+	"id" INTEGER  NOT NULL,
+	"nombre" VARCHAR(128)  NOT NULL,
+	"descripcion" VARCHAR(255),
+	"fk_adjunto_id" INTEGER  NOT NULL,
+	"fk_tipoinforme_id" INTEGER  NOT NULL,
+	"listado" BOOLEAN default 'f' NOT NULL,
+	"variables" VARCHAR(128),
+	PRIMARY KEY ("id")
+);
+
+COMMENT ON TABLE "informe" IS '';
+
+
+SET search_path TO public;
+ALTER TABLE "informe" ADD CONSTRAINT "informe_FK_1" FOREIGN KEY ("fk_adjunto_id") REFERENCES "adjunto" ("id") INITIALLY DEFERRED ;
+
+ALTER TABLE "informe" ADD CONSTRAINT "informe_FK_2" FOREIGN KEY ("fk_tipoinforme_id") REFERENCES "tipoinforme" ("id") INITIALLY DEFERRED ;

Deleted: prosistem/alba/trunk/alba/data/sql/lib.model.schema.sql
===================================================================
--- prosistem/alba/trunk/alba/data/sql/lib.model.schema.sql	2008-02-07 01:17:13 UTC (rev 5447)
+++ prosistem/alba/trunk/alba/data/sql/lib.model.schema.sql	2008-02-07 01:20:36 UTC (rev 5448)
@@ -1,1485 +0,0 @@
-
-# This is a fix for InnoDB in MySQL >= 4.1.x
-# It "suspends judgement" for fkey relationships until are tables are set.
-SET FOREIGN_KEY_CHECKS = 0;
-
-#-----------------------------------------------------------------------------
-#-- conceptobaja
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `conceptobaja`;
-
-
-CREATE TABLE `conceptobaja`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- tipodocumento
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `tipodocumento`;
-
-
-CREATE TABLE `tipodocumento`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	`orden` INTEGER default 0,
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- tipoiva
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `tipoiva`;
-
-
-CREATE TABLE `tipoiva`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	`orden` INTEGER default 0,
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- pais
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `pais`;
-
-
-CREATE TABLE `pais`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre_largo` VARCHAR(128)  NOT NULL,
-	`nombre_corto` VARCHAR(32)  NOT NULL,
-	`orden` INTEGER default 0,
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- tipoespacio
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `tipoespacio`;
-
-
-CREATE TABLE `tipoespacio`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- provincia
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `provincia`;
-
-
-CREATE TABLE `provincia`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre_corto` VARCHAR(32)  NOT NULL,
-	`nombre_largo` VARCHAR(128)  NOT NULL,
-	`fk_pais_id` INTEGER default 0 NOT NULL,
-	`orden` INTEGER default 0,
-	PRIMARY KEY (`id`),
-	INDEX `provincia_FI_1` (`fk_pais_id`),
-	CONSTRAINT `provincia_FK_1`
-		FOREIGN KEY (`fk_pais_id`)
-		REFERENCES `pais` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- tipolocacion
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `tipolocacion`;
-
-
-CREATE TABLE `tipolocacion`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- locacion
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `locacion`;
-
-
-CREATE TABLE `locacion`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	`direccion` VARCHAR(128)  NOT NULL,
-	`ciudad` VARCHAR(128)  NOT NULL,
-	`codigo_postal` VARCHAR(20),
-	`fk_provincia_id` INTEGER default 0 NOT NULL,
-	`fk_tipolocacion_id` INTEGER default 0 NOT NULL,
-	`telefono` VARCHAR(20),
-	`fax` VARCHAR(20),
-	`encargado` VARCHAR(128),
-	`encargado_telefono` VARCHAR(20),
-	`principal` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `locacion_FI_1` (`fk_provincia_id`),
-	CONSTRAINT `locacion_FK_1`
-		FOREIGN KEY (`fk_provincia_id`)
-		REFERENCES `provincia` (`id`),
-	INDEX `locacion_FI_2` (`fk_tipolocacion_id`),
-	CONSTRAINT `locacion_FK_2`
-		FOREIGN KEY (`fk_tipolocacion_id`)
-		REFERENCES `tipolocacion` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- modulo
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `modulo`;
-
-
-CREATE TABLE `modulo`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`titulo` VARCHAR(128),
-	`descripcion` VARCHAR(255),
-	`activo` INTEGER default 1 NOT NULL,
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- espacio
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `espacio`;
-
-
-CREATE TABLE `espacio`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`m2` FLOAT,
-	`capacidad` VARCHAR(255),
-	`descripcion` VARCHAR(255),
-	`estado` VARCHAR(255),
-	`fk_tipoespacio_id` INTEGER,
-	`fk_locacion_id` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `espacio_FI_1` (`fk_tipoespacio_id`),
-	CONSTRAINT `espacio_FK_1`
-		FOREIGN KEY (`fk_tipoespacio_id`)
-		REFERENCES `tipoespacio` (`id`),
-	INDEX `espacio_FI_2` (`fk_locacion_id`),
-	CONSTRAINT `espacio_FK_2`
-		FOREIGN KEY (`fk_locacion_id`)
-		REFERENCES `locacion` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- distritoescolar
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `distritoescolar`;
-
-
-CREATE TABLE `distritoescolar`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`direccion` VARCHAR(128),
-	`telefono` VARCHAR(20),
-	`ciudad` VARCHAR(128),
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- niveltipo
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `niveltipo`;
-
-
-CREATE TABLE `niveltipo`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- organizacion
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `organizacion`;
-
-
-CREATE TABLE `organizacion`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	`razon_social` VARCHAR(128)  NOT NULL,
-	`cuit` VARCHAR(20)  NOT NULL,
-	`direccion` VARCHAR(128)  NOT NULL,
-	`ciudad` VARCHAR(128)  NOT NULL,
-	`codigo_postal` VARCHAR(20)  NOT NULL,
-	`telefono` VARCHAR(20),
-	`fk_provincia_id` INTEGER default 0 NOT NULL,
-	`fk_tipoiva_id` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `organizacion_FI_1` (`fk_provincia_id`),
-	CONSTRAINT `organizacion_FK_1`
-		FOREIGN KEY (`fk_provincia_id`)
-		REFERENCES `provincia` (`id`),
-	INDEX `organizacion_FI_2` (`fk_tipoiva_id`),
-	CONSTRAINT `organizacion_FK_2`
-		FOREIGN KEY (`fk_tipoiva_id`)
-		REFERENCES `tipoiva` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- establecimiento
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `establecimiento`;
-
-
-CREATE TABLE `establecimiento`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	`fk_distritoescolar_id` INTEGER default 0 NOT NULL,
-	`fk_organizacion_id` INTEGER default 0 NOT NULL,
-	`fk_niveltipo_id` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `establecimiento_FI_1` (`fk_distritoescolar_id`),
-	CONSTRAINT `establecimiento_FK_1`
-		FOREIGN KEY (`fk_distritoescolar_id`)
-		REFERENCES `distritoescolar` (`id`),
-	INDEX `establecimiento_FI_2` (`fk_organizacion_id`),
-	CONSTRAINT `establecimiento_FK_2`
-		FOREIGN KEY (`fk_organizacion_id`)
-		REFERENCES `organizacion` (`id`),
-	INDEX `establecimiento_FI_3` (`fk_niveltipo_id`),
-	CONSTRAINT `establecimiento_FK_3`
-		FOREIGN KEY (`fk_niveltipo_id`)
-		REFERENCES `niveltipo` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- permiso
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `permiso`;
-
-
-CREATE TABLE `permiso`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	`fk_modulo_id` INTEGER default 0 NOT NULL,
-	`credencial` VARCHAR(32),
-	PRIMARY KEY (`id`),
-	INDEX `permiso_FI_1` (`fk_modulo_id`),
-	CONSTRAINT `permiso_FK_1`
-		FOREIGN KEY (`fk_modulo_id`)
-		REFERENCES `modulo` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- preferencia
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `preferencia`;
-
-
-CREATE TABLE `preferencia`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`valor_por_defecto` VARCHAR(128),
-	`activo` INTEGER default 1 NOT NULL,
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- rol
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `rol`;
-
-
-CREATE TABLE `rol`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	`activo` INTEGER default 1 NOT NULL,
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- usuario
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `usuario`;
-
-
-CREATE TABLE `usuario`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`usuario` VARCHAR(32)  NOT NULL,
-	`clave` VARCHAR(48)  NOT NULL,
-	`correo_publico` INTEGER default 1,
-	`activo` INTEGER default 1 NOT NULL,
-	`fecha_creado` DATETIME  NOT NULL,
-	`fecha_actualizado` DATETIME  NOT NULL,
-	`seguridad_pregunta` VARCHAR(128),
-	`seguridad_respuesta` VARCHAR(128),
-	`email` VARCHAR(128),
-	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
-	`borrado` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `usuario_FI_1` (`fk_establecimiento_id`),
-	CONSTRAINT `usuario_FK_1`
-		FOREIGN KEY (`fk_establecimiento_id`)
-		REFERENCES `establecimiento` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- rel_establecimiento_locacion
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `rel_establecimiento_locacion`;
-
-
-CREATE TABLE `rel_establecimiento_locacion`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
-	`fk_locacion_id` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `rel_establecimiento_locacion_FI_1` (`fk_establecimiento_id`),
-	CONSTRAINT `rel_establecimiento_locacion_FK_1`
-		FOREIGN KEY (`fk_establecimiento_id`)
-		REFERENCES `establecimiento` (`id`),
-	INDEX `rel_establecimiento_locacion_FI_2` (`fk_locacion_id`),
-	CONSTRAINT `rel_establecimiento_locacion_FK_2`
-		FOREIGN KEY (`fk_locacion_id`)
-		REFERENCES `locacion` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- rel_rol_permiso
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `rel_rol_permiso`;
-
-
-CREATE TABLE `rel_rol_permiso`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_rol_id` INTEGER default 0 NOT NULL,
-	`fk_permiso_id` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `rel_rol_permiso_FI_1` (`fk_rol_id`),
-	CONSTRAINT `rel_rol_permiso_FK_1`
-		FOREIGN KEY (`fk_rol_id`)
-		REFERENCES `rol` (`id`),
-	INDEX `rel_rol_permiso_FI_2` (`fk_permiso_id`),
-	CONSTRAINT `rel_rol_permiso_FK_2`
-		FOREIGN KEY (`fk_permiso_id`)
-		REFERENCES `permiso` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- rel_usuario_permiso
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `rel_usuario_permiso`;
-
-
-CREATE TABLE `rel_usuario_permiso`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_usuario_id` INTEGER default 0 NOT NULL,
-	`fk_permiso_id` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `rel_usuario_permiso_FI_1` (`fk_usuario_id`),
-	CONSTRAINT `rel_usuario_permiso_FK_1`
-		FOREIGN KEY (`fk_usuario_id`)
-		REFERENCES `usuario` (`id`),
-	INDEX `rel_usuario_permiso_FI_2` (`fk_permiso_id`),
-	CONSTRAINT `rel_usuario_permiso_FK_2`
-		FOREIGN KEY (`fk_permiso_id`)
-		REFERENCES `permiso` (`id`)
-		ON DELETE CASCADE
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- rel_usuario_preferencia
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `rel_usuario_preferencia`;
-
-
-CREATE TABLE `rel_usuario_preferencia`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_usuario_id` INTEGER default 0 NOT NULL,
-	`fk_preferencia_id` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- orientacion
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `orientacion`;
-
-
-CREATE TABLE `orientacion`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- cuenta
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `cuenta`;
-
-
-CREATE TABLE `cuenta`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`razon_social` VARCHAR(128)  NOT NULL,
-	`cuit` VARCHAR(20)  NOT NULL,
-	`direccion` VARCHAR(128)  NOT NULL,
-	`ciudad` VARCHAR(128)  NOT NULL,
-	`codigo_postal` VARCHAR(20)  NOT NULL,
-	`telefono` VARCHAR(20),
-	`fk_provincia_id` INTEGER,
-	`fk_tipoiva_id` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `cuenta_FI_1` (`fk_provincia_id`),
-	CONSTRAINT `cuenta_FK_1`
-		FOREIGN KEY (`fk_provincia_id`)
-		REFERENCES `provincia` (`id`),
-	INDEX `cuenta_FI_2` (`fk_tipoiva_id`),
-	CONSTRAINT `cuenta_FK_2`
-		FOREIGN KEY (`fk_tipoiva_id`)
-		REFERENCES `tipoiva` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- alumno
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `alumno`;
-
-
-CREATE TABLE `alumno`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`apellido` VARCHAR(128)  NOT NULL,
-	`fecha_nacimiento` DATETIME  NOT NULL,
-	`direccion` VARCHAR(128)  NOT NULL,
-	`ciudad` VARCHAR(128)  NOT NULL,
-	`codigo_postal` VARCHAR(20)  NOT NULL,
-	`fk_provincia_id` INTEGER default 0 NOT NULL,
-	`telefono` VARCHAR(20),
-	`lugar_nacimiento` VARCHAR(128),
-	`fk_tipodocumento_id` INTEGER default 0 NOT NULL,
-	`nro_documento` VARCHAR(16)  NOT NULL,
-	`sexo` CHAR(1)  NOT NULL,
-	`email` VARCHAR(128)  NOT NULL,
-	`distancia_escuela` INTEGER default 0,
-	`hermanos_escuela` INTEGER default 0 NOT NULL,
-	`hijo_maestro_escuela` INTEGER default 0 NOT NULL,
-	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
-	`fk_cuenta_id` INTEGER default 0 NOT NULL,
-	`certificado_medico` INTEGER default 0 NOT NULL,
-	`activo` INTEGER default 1 NOT NULL,
-	`fk_conceptobaja_id` INTEGER,
-	`fk_pais_id` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `alumno_FI_1` (`fk_provincia_id`),
-	CONSTRAINT `alumno_FK_1`
-		FOREIGN KEY (`fk_provincia_id`)
-		REFERENCES `provincia` (`id`),
-	INDEX `alumno_FI_2` (`fk_tipodocumento_id`),
-	CONSTRAINT `alumno_FK_2`
-		FOREIGN KEY (`fk_tipodocumento_id`)
-		REFERENCES `tipodocumento` (`id`),
-	INDEX `alumno_FI_3` (`fk_establecimiento_id`),
-	CONSTRAINT `alumno_FK_3`
-		FOREIGN KEY (`fk_establecimiento_id`)
-		REFERENCES `establecimiento` (`id`),
-	INDEX `alumno_FI_4` (`fk_cuenta_id`),
-	CONSTRAINT `alumno_FK_4`
-		FOREIGN KEY (`fk_cuenta_id`)
-		REFERENCES `cuenta` (`id`),
-	INDEX `alumno_FI_5` (`fk_conceptobaja_id`),
-	CONSTRAINT `alumno_FK_5`
-		FOREIGN KEY (`fk_conceptobaja_id`)
-		REFERENCES `conceptobaja` (`id`),
-	INDEX `alumno_FI_6` (`fk_pais_id`),
-	CONSTRAINT `alumno_FK_6`
-		FOREIGN KEY (`fk_pais_id`)
-		REFERENCES `pais` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- rol_responsable
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `rol_responsable`;
-
-
-CREATE TABLE `rol_responsable`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	`activo` INTEGER default 1 NOT NULL,
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- responsable
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `responsable`;
-
-
-CREATE TABLE `responsable`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`apellido` VARCHAR(128)  NOT NULL,
-	`direccion` VARCHAR(128),
-	`ciudad` VARCHAR(128),
-	`codigo_postal` VARCHAR(20),
-	`fk_provincia_id` INTEGER default 0 NOT NULL,
-	`telefono` VARCHAR(20),
-	`telefono_movil` VARCHAR(20),
-	`nro_documento` VARCHAR(20)  NOT NULL,
-	`fk_tipodocumento_id` INTEGER default 0 NOT NULL,
-	`sexo` CHAR(1)  NOT NULL,
-	`email` VARCHAR(128),
-	`observacion` VARCHAR(255),
-	`autorizacion_retiro` INTEGER default 0 NOT NULL,
-	`fk_cuenta_id` INTEGER default 0 NOT NULL,
-	`fk_rolresponsable_id` INTEGER default 1 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `responsable_FI_1` (`fk_provincia_id`),
-	CONSTRAINT `responsable_FK_1`
-		FOREIGN KEY (`fk_provincia_id`)
-		REFERENCES `provincia` (`id`),
-	INDEX `responsable_FI_2` (`fk_tipodocumento_id`),
-	CONSTRAINT `responsable_FK_2`
-		FOREIGN KEY (`fk_tipodocumento_id`)
-		REFERENCES `tipodocumento` (`id`),
-	INDEX `responsable_FI_3` (`fk_cuenta_id`),
-	CONSTRAINT `responsable_FK_3`
-		FOREIGN KEY (`fk_cuenta_id`)
-		REFERENCES `cuenta` (`id`),
-	INDEX `responsable_FI_4` (`fk_rolresponsable_id`),
-	CONSTRAINT `responsable_FK_4`
-		FOREIGN KEY (`fk_rolresponsable_id`)
-		REFERENCES `rol_responsable` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- ciclolectivo
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `ciclolectivo`;
-
-
-CREATE TABLE `ciclolectivo`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_establecimiento_id` INTEGER  NOT NULL,
-	`fecha_inicio` DATETIME  NOT NULL,
-	`fecha_fin` DATETIME  NOT NULL,
-	`descripcion` VARCHAR(255)  NOT NULL,
-	`actual` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `ciclolectivo_FI_1` (`fk_establecimiento_id`),
-	CONSTRAINT `ciclolectivo_FK_1`
-		FOREIGN KEY (`fk_establecimiento_id`)
-		REFERENCES `establecimiento` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- turno
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `turno`;
-
-
-CREATE TABLE `turno`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_ciclolectivo_id` INTEGER  NOT NULL,
-	`hora_inicio` TIME  NOT NULL,
-	`hora_fin` TIME  NOT NULL,
-	`descripcion` VARCHAR(255)  NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `turno_FI_1` (`fk_ciclolectivo_id`),
-	CONSTRAINT `turno_FK_1`
-		FOREIGN KEY (`fk_ciclolectivo_id`)
-		REFERENCES `ciclolectivo` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- periodo
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `periodo`;
-
-
-CREATE TABLE `periodo`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_ciclolectivo_id` INTEGER  NOT NULL,
-	`fecha_inicio` DATETIME  NOT NULL,
-	`fecha_fin` DATETIME  NOT NULL,
-	`descripcion` VARCHAR(255)  NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `periodo_FI_1` (`fk_ciclolectivo_id`),
-	CONSTRAINT `periodo_FK_1`
-		FOREIGN KEY (`fk_ciclolectivo_id`)
-		REFERENCES `ciclolectivo` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- tipodocente
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `tipodocente`;
-
-
-CREATE TABLE `tipodocente`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- cargobaja
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `cargobaja`;
-
-
-CREATE TABLE `cargobaja`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- calendariovacunacion
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `calendariovacunacion`;
-
-
-CREATE TABLE `calendariovacunacion`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	`periodo` VARCHAR(128),
-	`observacion` VARCHAR(255),
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- rel_calendariovacunacion_alumno
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `rel_calendariovacunacion_alumno`;
-
-
-CREATE TABLE `rel_calendariovacunacion_alumno`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_alumno_id` INTEGER  NOT NULL,
-	`fk_calendariovacunacion_id` INTEGER  NOT NULL,
-	`observacion` VARCHAR(255),
-	`comprobante` INTEGER default 0 NOT NULL,
-	`fecha` DATETIME,
-	PRIMARY KEY (`id`),
-	INDEX `rel_calendariovacunacion_alumno_FI_1` (`fk_alumno_id`),
-	CONSTRAINT `rel_calendariovacunacion_alumno_FK_1`
-		FOREIGN KEY (`fk_alumno_id`)
-		REFERENCES `alumno` (`id`),
-	INDEX `rel_calendariovacunacion_alumno_FI_2` (`fk_calendariovacunacion_id`),
-	CONSTRAINT `rel_calendariovacunacion_alumno_FK_2`
-		FOREIGN KEY (`fk_calendariovacunacion_id`)
-		REFERENCES `calendariovacunacion` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- legajocategoria
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `legajocategoria`;
-
-
-CREATE TABLE `legajocategoria`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`descripcion` VARCHAR(255)  NOT NULL,
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- legajopedagogico
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `legajopedagogico`;
-
-
-CREATE TABLE `legajopedagogico`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_alumno_id` INTEGER  NOT NULL,
-	`titulo` VARCHAR(255)  NOT NULL,
-	`resumen` LONGBLOB  NOT NULL,
-	`texto` LONGBLOB  NOT NULL,
-	`fecha` DATETIME  NOT NULL,
-	`fk_usuario_id` INTEGER  NOT NULL,
-	`fk_legajocategoria_id` INTEGER  NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `legajopedagogico_FI_1` (`fk_alumno_id`),
-	CONSTRAINT `legajopedagogico_FK_1`
-		FOREIGN KEY (`fk_alumno_id`)
-		REFERENCES `alumno` (`id`),
-	INDEX `legajopedagogico_FI_2` (`fk_usuario_id`),
-	CONSTRAINT `legajopedagogico_FK_2`
-		FOREIGN KEY (`fk_usuario_id`)
-		REFERENCES `usuario` (`id`),
-	INDEX `legajopedagogico_FI_3` (`fk_legajocategoria_id`),
-	CONSTRAINT `legajopedagogico_FK_3`
-		FOREIGN KEY (`fk_legajocategoria_id`)
-		REFERENCES `legajocategoria` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- adjunto
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `adjunto`;
-
-
-CREATE TABLE `adjunto`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`descripcion` VARCHAR(255),
-	`titulo` VARCHAR(255),
-	`nombre_archivo` VARCHAR(255)  NOT NULL,
-	`tipo_archivo` VARCHAR(64)  NOT NULL,
-	`ruta` VARCHAR(255)  NOT NULL,
-	`fecha` DATETIME  NOT NULL,
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- legajoadjunto
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `legajoadjunto`;
-
-
-CREATE TABLE `legajoadjunto`
-(
-	`fk_legajopedagogico_id` INTEGER  NOT NULL,
-	`fk_adjunto_id` INTEGER  NOT NULL,
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	PRIMARY KEY (`id`),
-	INDEX `legajoadjunto_FI_1` (`fk_legajopedagogico_id`),
-	CONSTRAINT `legajoadjunto_FK_1`
-		FOREIGN KEY (`fk_legajopedagogico_id`)
-		REFERENCES `legajopedagogico` (`id`),
-	INDEX `legajoadjunto_FI_2` (`fk_adjunto_id`),
-	CONSTRAINT `legajoadjunto_FK_2`
-		FOREIGN KEY (`fk_adjunto_id`)
-		REFERENCES `adjunto` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- tipoasistencia
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `tipoasistencia`;
-
-
-CREATE TABLE `tipoasistencia`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(10)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	`valor` DECIMAL(4,2) default 1 NOT NULL,
-	`grupo` VARCHAR(30),
-	`defecto` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- asistencia
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `asistencia`;
-
-
-CREATE TABLE `asistencia`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_alumno_id` INTEGER  NOT NULL,
-	`fk_tipoasistencia_id` INTEGER  NOT NULL,
-	`fecha` DATETIME  NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `asistencia_FI_1` (`fk_alumno_id`),
-	CONSTRAINT `asistencia_FK_1`
-		FOREIGN KEY (`fk_alumno_id`)
-		REFERENCES `alumno` (`id`),
-	INDEX `asistencia_FI_2` (`fk_tipoasistencia_id`),
-	CONSTRAINT `asistencia_FK_2`
-		FOREIGN KEY (`fk_tipoasistencia_id`)
-		REFERENCES `tipoasistencia` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- concepto
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `concepto`;
-
-
-CREATE TABLE `concepto`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	PRIMARY KEY (`id`),
-	INDEX `concepto_FI_1` (`fk_establecimiento_id`),
-	CONSTRAINT `concepto_FK_1`
-		FOREIGN KEY (`fk_establecimiento_id`)
-		REFERENCES `establecimiento` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- escalanota
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `escalanota`;
-
-
-CREATE TABLE `escalanota`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	`orden` INTEGER  NOT NULL,
-	`aprobado` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `escalanota_FI_1` (`fk_establecimiento_id`),
-	CONSTRAINT `escalanota_FK_1`
-		FOREIGN KEY (`fk_establecimiento_id`)
-		REFERENCES `establecimiento` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- boletin_conceptual
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `boletin_conceptual`;
-
-
-CREATE TABLE `boletin_conceptual`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_escalanota_id` INTEGER,
-	`fk_alumno_id` INTEGER default 0 NOT NULL,
-	`fk_concepto_id` INTEGER default 0 NOT NULL,
-	`fk_periodo_id` INTEGER default 0 NOT NULL,
-	`observacion` LONGBLOB  NOT NULL,
-	`fecha` DATETIME  NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `boletin_conceptual_FI_1` (`fk_escalanota_id`),
-	CONSTRAINT `boletin_conceptual_FK_1`
-		FOREIGN KEY (`fk_escalanota_id`)
-		REFERENCES `escalanota` (`id`),
-	INDEX `boletin_conceptual_FI_2` (`fk_alumno_id`),
-	CONSTRAINT `boletin_conceptual_FK_2`
-		FOREIGN KEY (`fk_alumno_id`)
-		REFERENCES `alumno` (`id`),
-	INDEX `boletin_conceptual_FI_3` (`fk_concepto_id`),
-	CONSTRAINT `boletin_conceptual_FK_3`
-		FOREIGN KEY (`fk_concepto_id`)
-		REFERENCES `concepto` (`id`),
-	INDEX `boletin_conceptual_FI_4` (`fk_periodo_id`),
-	CONSTRAINT `boletin_conceptual_FK_4`
-		FOREIGN KEY (`fk_periodo_id`)
-		REFERENCES `periodo` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- actividad
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `actividad`;
-
-
-CREATE TABLE `actividad`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	PRIMARY KEY (`id`),
-	INDEX `actividad_FI_1` (`fk_establecimiento_id`),
-	CONSTRAINT `actividad_FK_1`
-		FOREIGN KEY (`fk_establecimiento_id`)
-		REFERENCES `establecimiento` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- boletin_actividades
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `boletin_actividades`;
-
-
-CREATE TABLE `boletin_actividades`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_escalanota_id` INTEGER,
-	`fk_alumno_id` INTEGER default 0 NOT NULL,
-	`fk_actividad_id` INTEGER default 0 NOT NULL,
-	`fk_periodo_id` INTEGER default 0 NOT NULL,
-	`observacion` LONGBLOB  NOT NULL,
-	`fecha` DATETIME  NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `boletin_actividades_FI_1` (`fk_escalanota_id`),
-	CONSTRAINT `boletin_actividades_FK_1`
-		FOREIGN KEY (`fk_escalanota_id`)
-		REFERENCES `escalanota` (`id`),
-	INDEX `boletin_actividades_FI_2` (`fk_alumno_id`),
-	CONSTRAINT `boletin_actividades_FK_2`
-		FOREIGN KEY (`fk_alumno_id`)
-		REFERENCES `alumno` (`id`),
-	INDEX `boletin_actividades_FI_3` (`fk_actividad_id`),
-	CONSTRAINT `boletin_actividades_FK_3`
-		FOREIGN KEY (`fk_actividad_id`)
-		REFERENCES `actividad` (`id`),
-	INDEX `boletin_actividades_FI_4` (`fk_periodo_id`),
-	CONSTRAINT `boletin_actividades_FK_4`
-		FOREIGN KEY (`fk_periodo_id`)
-		REFERENCES `periodo` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- examen
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `examen`;
-
-
-CREATE TABLE `examen`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_escalanota_id` INTEGER default 0 NOT NULL,
-	`fk_alumno_id` INTEGER default 0 NOT NULL,
-	`fk_actividad_id` INTEGER default 0 NOT NULL,
-	`fk_periodo_id` INTEGER default 0 NOT NULL,
-	`nombre` VARCHAR(255)  NOT NULL,
-	`observacion` LONGBLOB  NOT NULL,
-	`fecha` DATETIME  NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `examen_FI_1` (`fk_escalanota_id`),
-	CONSTRAINT `examen_FK_1`
-		FOREIGN KEY (`fk_escalanota_id`)
-		REFERENCES `escalanota` (`id`),
-	INDEX `examen_FI_2` (`fk_alumno_id`),
-	CONSTRAINT `examen_FK_2`
-		FOREIGN KEY (`fk_alumno_id`)
-		REFERENCES `alumno` (`id`),
-	INDEX `examen_FI_3` (`fk_actividad_id`),
-	CONSTRAINT `examen_FK_3`
-		FOREIGN KEY (`fk_actividad_id`)
-		REFERENCES `actividad` (`id`),
-	INDEX `examen_FI_4` (`fk_periodo_id`),
-	CONSTRAINT `examen_FK_4`
-		FOREIGN KEY (`fk_periodo_id`)
-		REFERENCES `periodo` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- anio
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `anio`;
-
-
-CREATE TABLE `anio`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
-	`descripcion` VARCHAR(255)  NOT NULL,
-	`orden` INTEGER default 0,
-	PRIMARY KEY (`id`),
-	INDEX `anio_FI_1` (`fk_establecimiento_id`),
-	CONSTRAINT `anio_FK_1`
-		FOREIGN KEY (`fk_establecimiento_id`)
-		REFERENCES `establecimiento` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- division
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `division`;
-
-
-CREATE TABLE `division`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_anio_id` INTEGER default 0 NOT NULL,
-	`descripcion` VARCHAR(255)  NOT NULL,
-	`fk_turno_id` INTEGER default 0 NOT NULL,
-	`fk_orientacion_id` INTEGER,
-	`orden` INTEGER default 0,
-	PRIMARY KEY (`id`),
-	INDEX `division_FI_1` (`fk_anio_id`),
-	CONSTRAINT `division_FK_1`
-		FOREIGN KEY (`fk_anio_id`)
-		REFERENCES `anio` (`id`),
-	INDEX `division_FI_2` (`fk_turno_id`),
-	CONSTRAINT `division_FK_2`
-		FOREIGN KEY (`fk_turno_id`)
-		REFERENCES `turno` (`id`),
-	INDEX `division_FI_3` (`fk_orientacion_id`),
-	CONSTRAINT `division_FK_3`
-		FOREIGN KEY (`fk_orientacion_id`)
-		REFERENCES `orientacion` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- repeticion
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `repeticion`;
-
-
-CREATE TABLE `repeticion`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`descripcion` VARCHAR(255)  NOT NULL,
-	`orden` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- rel_anio_actividad
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `rel_anio_actividad`;
-
-
-CREATE TABLE `rel_anio_actividad`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_anio_id` INTEGER default 0 NOT NULL,
-	`fk_actividad_id` INTEGER default 0 NOT NULL,
-	`fk_orientacion_id` INTEGER,
-	`horas` DECIMAL(10,2) default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `rel_anio_actividad_FI_1` (`fk_anio_id`),
-	CONSTRAINT `rel_anio_actividad_FK_1`
-		FOREIGN KEY (`fk_anio_id`)
-		REFERENCES `anio` (`id`),
-	INDEX `rel_anio_actividad_FI_2` (`fk_actividad_id`),
-	CONSTRAINT `rel_anio_actividad_FK_2`
-		FOREIGN KEY (`fk_actividad_id`)
-		REFERENCES `actividad` (`id`),
-	INDEX `rel_anio_actividad_FI_3` (`fk_orientacion_id`),
-	CONSTRAINT `rel_anio_actividad_FK_3`
-		FOREIGN KEY (`fk_orientacion_id`)
-		REFERENCES `orientacion` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- rel_alumno_division
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `rel_alumno_division`;
-
-
-CREATE TABLE `rel_alumno_division`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_division_id` INTEGER default 0 NOT NULL,
-	`fk_alumno_id` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `rel_alumno_division_FI_1` (`fk_division_id`),
-	CONSTRAINT `rel_alumno_division_FK_1`
-		FOREIGN KEY (`fk_division_id`)
-		REFERENCES `division` (`id`),
-	INDEX `rel_alumno_division_FI_2` (`fk_alumno_id`),
-	CONSTRAINT `rel_alumno_division_FK_2`
-		FOREIGN KEY (`fk_alumno_id`)
-		REFERENCES `alumno` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- docente
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `docente`;
-
-
-CREATE TABLE `docente`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`apellido` VARCHAR(128)  NOT NULL,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`sexo` CHAR(1)  NOT NULL,
-	`fecha_nacimiento` DATETIME  NOT NULL,
-	`fk_tipodocumento_id` INTEGER default 0 NOT NULL,
-	`nro_documento` VARCHAR(16)  NOT NULL,
-	`lugar_nacimiento` VARCHAR(128),
-	`direccion` VARCHAR(128),
-	`ciudad` VARCHAR(128),
-	`codigo_postal` VARCHAR(20),
-	`email` VARCHAR(255),
-	`telefono` VARCHAR(20),
-	`telefono_movil` VARCHAR(20),
-	`titulo` VARCHAR(128)  NOT NULL,
-	`libreta_sanitaria` INTEGER default 0,
-	`psicofisico` INTEGER default 0,
-	`activo` INTEGER default 1,
-	`fk_provincia_id` INTEGER default 0 NOT NULL,
-	`fk_pais_id` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `docente_FI_1` (`fk_tipodocumento_id`),
-	CONSTRAINT `docente_FK_1`
-		FOREIGN KEY (`fk_tipodocumento_id`)
-		REFERENCES `tipodocumento` (`id`),
-	INDEX `docente_FI_2` (`fk_provincia_id`),
-	CONSTRAINT `docente_FK_2`
-		FOREIGN KEY (`fk_provincia_id`)
-		REFERENCES `provincia` (`id`),
-	INDEX `docente_FI_3` (`fk_pais_id`),
-	CONSTRAINT `docente_FK_3`
-		FOREIGN KEY (`fk_pais_id`)
-		REFERENCES `pais` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- horarioescolartipo
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `horarioescolartipo`;
-
-
-CREATE TABLE `horarioescolartipo`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- evento
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `evento`;
-
-
-CREATE TABLE `evento`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`titulo` VARCHAR(128)  NOT NULL,
-	`fecha_inicio` DATETIME  NOT NULL,
-	`fecha_fin` DATETIME  NOT NULL,
-	`tipo` INTEGER default 0 NOT NULL,
-	`frecuencia` INTEGER default 0 NOT NULL,
-	`frecuencia_intervalo` INTEGER default 0 NOT NULL,
-	`recurrencia_fin` VARCHAR(16),
-	`recurrencia_dias` INTEGER default 0 NOT NULL,
-	`estado` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- rel_division_actividad_docente
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `rel_division_actividad_docente`;
-
-
-CREATE TABLE `rel_division_actividad_docente`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_division_id` INTEGER default 0,
-	`fk_actividad_id` INTEGER default 0 NOT NULL,
-	`fk_docente_id` INTEGER default 0,
-	`fk_evento_id` INTEGER default 0,
-	PRIMARY KEY (`id`),
-	INDEX `rel_division_actividad_docente_FI_1` (`fk_division_id`),
-	CONSTRAINT `rel_division_actividad_docente_FK_1`
-		FOREIGN KEY (`fk_division_id`)
-		REFERENCES `division` (`id`),
-	INDEX `rel_division_actividad_docente_FI_2` (`fk_actividad_id`),
-	CONSTRAINT `rel_division_actividad_docente_FK_2`
-		FOREIGN KEY (`fk_actividad_id`)
-		REFERENCES `actividad` (`id`),
-	INDEX `rel_division_actividad_docente_FI_3` (`fk_docente_id`),
-	CONSTRAINT `rel_division_actividad_docente_FK_3`
-		FOREIGN KEY (`fk_docente_id`)
-		REFERENCES `docente` (`id`),
-	INDEX `rel_division_actividad_docente_FI_4` (`fk_evento_id`),
-	CONSTRAINT `rel_division_actividad_docente_FK_4`
-		FOREIGN KEY (`fk_evento_id`)
-		REFERENCES `evento` (`id`)
-		ON DELETE CASCADE
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- rel_docente_establecimiento
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `rel_docente_establecimiento`;
-
-
-CREATE TABLE `rel_docente_establecimiento`
-(
-	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
-	`fk_docente_id` INTEGER default 0 NOT NULL,
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	PRIMARY KEY (`id`),
-	INDEX `rel_docente_establecimiento_FI_1` (`fk_establecimiento_id`),
-	CONSTRAINT `rel_docente_establecimiento_FK_1`
-		FOREIGN KEY (`fk_establecimiento_id`)
-		REFERENCES `establecimiento` (`id`),
-	INDEX `rel_docente_establecimiento_FI_2` (`fk_docente_id`),
-	CONSTRAINT `rel_docente_establecimiento_FK_2`
-		FOREIGN KEY (`fk_docente_id`)
-		REFERENCES `docente` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- docente_horario
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `docente_horario`;
-
-
-CREATE TABLE `docente_horario`
-(
-	`fk_docente_id` INTEGER  NOT NULL,
-	`fk_evento_id` INTEGER  NOT NULL,
-	PRIMARY KEY (`fk_docente_id`,`fk_evento_id`),
-	CONSTRAINT `docente_horario_FK_1`
-		FOREIGN KEY (`fk_docente_id`)
-		REFERENCES `docente` (`id`),
-	INDEX `docente_horario_FI_2` (`fk_evento_id`),
-	CONSTRAINT `docente_horario_FK_2`
-		FOREIGN KEY (`fk_evento_id`)
-		REFERENCES `evento` (`id`)
-		ON DELETE CASCADE
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- feriado
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `feriado`;
-
-
-CREATE TABLE `feriado`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`fecha` DATETIME  NOT NULL,
-	`repeticion_anual` INTEGER default 0,
-	`inamovible` INTEGER default 0,
-	`fk_ciclolectivo_id` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `feriado_FI_1` (`fk_ciclolectivo_id`),
-	CONSTRAINT `feriado_FK_1`
-		FOREIGN KEY (`fk_ciclolectivo_id`)
-		REFERENCES `ciclolectivo` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- horarioescolar
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `horarioescolar`;
-
-
-CREATE TABLE `horarioescolar`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	`fk_evento_id` INTEGER,
-	`fk_establecimiento_id` INTEGER default 0 NOT NULL,
-	`fk_turno_id` INTEGER default 0 NOT NULL,
-	`fk_horarioescolartipo_id` INTEGER default 0 NOT NULL,
-	PRIMARY KEY (`id`),
-	INDEX `horarioescolar_FI_1` (`fk_evento_id`),
-	CONSTRAINT `horarioescolar_FK_1`
-		FOREIGN KEY (`fk_evento_id`)
-		REFERENCES `evento` (`id`)
-		ON DELETE CASCADE,
-	INDEX `horarioescolar_FI_2` (`fk_establecimiento_id`),
-	CONSTRAINT `horarioescolar_FK_2`
-		FOREIGN KEY (`fk_establecimiento_id`)
-		REFERENCES `establecimiento` (`id`),
-	INDEX `horarioescolar_FI_3` (`fk_turno_id`),
-	CONSTRAINT `horarioescolar_FK_3`
-		FOREIGN KEY (`fk_turno_id`)
-		REFERENCES `turno` (`id`),
-	INDEX `horarioescolar_FI_4` (`fk_horarioescolartipo_id`),
-	CONSTRAINT `horarioescolar_FK_4`
-		FOREIGN KEY (`fk_horarioescolartipo_id`)
-		REFERENCES `horarioescolartipo` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- rel_rolresponsable_responsable
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `rel_rolresponsable_responsable`;
-
-
-CREATE TABLE `rel_rolresponsable_responsable`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`fk_rolresponsable_id` INTEGER default 0 NOT NULL,
-	`fk_responsable_id` INTEGER default 0 NOT NULL,
-	`fk_alumno_id` INTEGER default 0 NOT NULL,
-	`descripcion` VARCHAR(255),
-	PRIMARY KEY (`id`),
-	INDEX `rel_rolresponsable_responsable_FI_1` (`fk_rolresponsable_id`),
-	CONSTRAINT `rel_rolresponsable_responsable_FK_1`
-		FOREIGN KEY (`fk_rolresponsable_id`)
-		REFERENCES `rol_responsable` (`id`),
-	INDEX `rel_rolresponsable_responsable_FI_2` (`fk_responsable_id`),
-	CONSTRAINT `rel_rolresponsable_responsable_FK_2`
-		FOREIGN KEY (`fk_responsable_id`)
-		REFERENCES `responsable` (`id`),
-	INDEX `rel_rolresponsable_responsable_FI_3` (`fk_alumno_id`),
-	CONSTRAINT `rel_rolresponsable_responsable_FK_3`
-		FOREIGN KEY (`fk_alumno_id`)
-		REFERENCES `alumno` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- rel_anio_actividad_docente
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `rel_anio_actividad_docente`;
-
-
-CREATE TABLE `rel_anio_actividad_docente`
-(
-	`fk_anio_actividad_id` INTEGER  NOT NULL,
-	`fk_docente_id` INTEGER  NOT NULL,
-	PRIMARY KEY (`fk_anio_actividad_id`,`fk_docente_id`),
-	CONSTRAINT `rel_anio_actividad_docente_FK_1`
-		FOREIGN KEY (`fk_anio_actividad_id`)
-		REFERENCES `rel_anio_actividad` (`id`),
-	INDEX `rel_anio_actividad_docente_FI_2` (`fk_docente_id`),
-	CONSTRAINT `rel_anio_actividad_docente_FK_2`
-		FOREIGN KEY (`fk_docente_id`)
-		REFERENCES `docente` (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- tipoinforme
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `tipoinforme`;
-
-
-CREATE TABLE `tipoinforme`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	PRIMARY KEY (`id`)
-)Type=InnoDB;
-
-#-----------------------------------------------------------------------------
-#-- informe
-#-----------------------------------------------------------------------------
-
-DROP TABLE IF EXISTS `informe`;
-
-
-CREATE TABLE `informe`
-(
-	`id` INTEGER  NOT NULL AUTO_INCREMENT,
-	`nombre` VARCHAR(128)  NOT NULL,
-	`descripcion` VARCHAR(255),
-	`fk_adjunto_id` INTEGER  NOT NULL,
-	`fk_tipoinforme_id` INTEGER  NOT NULL,
-	`listado` INTEGER default 0 NOT NULL,
-	`variables` VARCHAR(128),
-	PRIMARY KEY (`id`),
-	INDEX `informe_FI_1` (`fk_adjunto_id`),
-	CONSTRAINT `informe_FK_1`
-		FOREIGN KEY (`fk_adjunto_id`)
-		REFERENCES `adjunto` (`id`),
-	INDEX `informe_FI_2` (`fk_tipoinforme_id`),
-	CONSTRAINT `informe_FK_2`
-		FOREIGN KEY (`fk_tipoinforme_id`)
-		REFERENCES `tipoinforme` (`id`)
-)Type=InnoDB;
-
-# This restores the fkey checks, after having unset them earlier
-SET FOREIGN_KEY_CHECKS = 1;

Modified: prosistem/alba/trunk/alba/web/instalar/funciones.php
===================================================================
--- prosistem/alba/trunk/alba/web/instalar/funciones.php	2008-02-07 01:17:13 UTC (rev 5447)
+++ prosistem/alba/trunk/alba/web/instalar/funciones.php	2008-02-07 01:20:36 UTC (rev 5448)
@@ -1,4 +1,4 @@
-<?php
+<?php
 /**
  *    This file is part of Alba.
  * 
@@ -32,8 +32,14 @@
     return realpath(dirname(__FILE__) .DIRECTORY_SEPARATOR. ".." . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR);
 }
 
+
+function logFile() {
+    return AlbaPath() . DIRECTORY_SEPARATOR . "log" . DIRECTORY_SEPARATOR . "install.log";
+}
+
+
 function DebugLog($str,$modo = 'I') {
-    $log = AlbaPath() . DIRECTORY_SEPARATOR . "log" . DIRECTORY_SEPARATOR . "install.log";
+    $log = logFile();
     $fp = @fopen($log,"a+");
     if ($fp) {
         fwrite($fp,date('d/m/Y H:i:s') . " $modo: $str\n");
@@ -65,44 +71,82 @@
     return $aSql;
 }
 
-function executeDump($file, $host, $user, $pass, $db) {
+function executeDump($file, $protocol, $host, $user, $pass, $db) {
     DebugLog("executeDump(): file: $file");
     DebugLog("executeDump(): user: $user");
     DebugLog("executeDump(): db: $db");
     $aSql = dump2Array($file);
     $error = false;    
     if(count($aSql) > 0 && file_exists($file)) {
-        if (mysql_connect($host,$user,$pass)) {
-            if(mysql_select_db($db)) {
-                DebugLog("executeDump(): ejecutando BEGIN" );    
-                mysql_query("BEGIN");
+
+        // otro pedazo de codigo para cambiarlo por PDO
+
+
+        if($protocol == 'mysql') {
+            if (mysql_connect($host,$user,$pass)) {
+                if(mysql_select_db($db)) {
+                    DebugLog("executeDump(): ejecutando BEGIN" );    
+                    mysql_query("BEGIN");
+                    foreach($aSql as $sql_line) {
+                        $res = mysql_query(trim($sql_line));
+                        if(!$res) {
+                            DebugLog("executeDump(): Fallo SQL: $sql_line");
+                            DebugLog("executeDump(): error:". mysql_error());
+                            $error = true;
+                        }
+                    }
+                    if($error == true) {
+                        DebugLog("executeDump(): Se encontraron errores ejecutando ROLLBACK y saliendo");    
+                        mysql_query("ROLLBACK");
+                        return false;
+                    } else {
+                        DebugLog("executeDump(): Sin errores ejecutando COMMIT y saliendo");    
+                        mysql_query("COMMIT");
+                        return true;
+                    }
+                }
+                else {
+                    DebugLog("executeDump(): Error al seleccionar la base: $db");    
+                    return false;
+                }
+            }
+            else {
+                DebugLog("excuteDump(): No se puede conectar ala base de datos. " . mysql_error());
+            }
+        }
+
+
+        if($protocol == 'pgsql') {
+            $conn = @pg_connect("host=$host user=$user password=$pass dbname=$db");
+            if ($conn) {
+                DebugLog("executeDump(): ejecutando BEGIN" );
+                pg_query("BEGIN");
+                DebugLog("executeDump(): ejecutando SET CONSTRAINTS ALL DEFERRED" );
+                pg_query("SET CONSTRAINTS ALL DEFERRED");
                 foreach($aSql as $sql_line) {
-                    $res = mysql_query(trim($sql_line));
+                    $res = pg_query(trim($sql_line));
                     if(!$res) {
                         DebugLog("executeDump(): Fallo SQL: $sql_line");
-                        DebugLog("executeDump(): error:". mysql_error());
+                        DebugLog("executeDump(): error:". pg_last_error($conn));
                         $error = true;
                     }
                 }
                 if($error == true) {
                     DebugLog("executeDump(): Se encontraron errores ejecutando ROLLBACK y saliendo");    
-                    mysql_query("ROLLBACK");
+                    pg_query("ROLLBACK");
                     return false;
                 } else {
                     DebugLog("executeDump(): Sin errores ejecutando COMMIT y saliendo");    
-                    mysql_query("COMMIT");
+                    pg_query("COMMIT");
                     return true;
                 }
             }
             else {
-                DebugLog("executeDump(): Error al seleccionar la base: $db");    
-                return false;
-            }    
+                DebugLog("excuteDump(): No se puede conectar ala base de datos. " . mysql_error());
+            }
+        }
 
-        }
-        else {
-            DebugLog("excuteDump(): No se puede conectar ala base de datos. " . mysql_error());
-        }
+
     } else {
         DebugLog("executeDump(): No hay instrucciones SQL en el archivo");    
         return false;
@@ -112,7 +156,7 @@
 /**
 * genera el archivo de conexion a la base de datos
 */
-function generate_databases_yml($host,$user,$pass,$db) {
+function generate_databases_yml($protocol,$host,$user,$pass,$db) {
     $yml = AlbaPath() . DIRECTORY_SEPARATOR . "config" . DIRECTORY_SEPARATOR . "databases.yml";
     DebugLog ("generate_databases_yml(): generando archivo de conexion $yml");
     if ($fp = @fopen ($yml,'w')) {
@@ -121,10 +165,11 @@
         fwrite ($fp,"  propel:\n");
         fwrite ($fp,"    class: sfPropelDatabase\n");
         fwrite ($fp,"    param:\n");
-        if ($pass != "")
-            fwrite ($fp,"      dsn: mysql://$user:$pass@$host/$db\n");
-        else
-            fwrite ($fp,"      dsn: mysql://$user@$host/$db\n");
+        if ($pass != "") {
+            fwrite ($fp,"      dsn: $protocol://$user:$pass@$host/$db\n");
+        } else {
+            fwrite ($fp,"      dsn: $protocol://$user@$host/$db\n");
+        }
         fwrite ($fp,"      datasource: alba\n");
         fwrite ($fp,"      encoding: utf8\n");
         fwrite ($fp, "\n");
@@ -135,28 +180,111 @@
         DebugLog("generate_databases_yml(): no se puede abrir el archivo. ");
         return false;
     }
-    
 }
 
+
 /**
+* genera el archivo autoload.yml para que no se autocarguen todos los modelos de DB
+*/
+function generate_autoload_yml($protocol) {
+    $yml = AlbaPath() . DIRECTORY_SEPARATOR . "config" . DIRECTORY_SEPARATOR . "autoload.yml";
+    DebugLog ("generate_autoload_yml(): generando archivo de autoload $yml");
+    if ($fp = @fopen ($yml,'w')) {
+        fwrite ($fp,"# Archivo generado por el instalador de Alba " . date('m/d/Y H:i:s') . "\n");
+        fwrite ($fp,"autoload:\n");
+        fwrite ($fp,"  project_model:\n");
+        fwrite ($fp,"    name: project model\n");
+        fwrite ($fp,"    path: %SF_MODEL_LIB_DIR%/$protocol\n");
+        fwrite ($fp,"    recursive: on\n");
+        fwrite ($fp, "\n");
+        DebugLog("generate_autoload_yml(): archivo yml generado");
+        return true;
+    } else {
+        DebugLog("generate_autoload_yml(): no se puede abrir el archivo. ");
+        return false;
+    }
+}
+
+
+/**
+* genera el archivo propel.ini para configurar el acceso a la base de datos para tareas
+*/
+function generate_propel_ini($protocol,$host,$user,$pass,$db) {
+    $ini = AlbaPath() . DIRECTORY_SEPARATOR . "config" . DIRECTORY_SEPARATOR . "propel.ini";
+    DebugLog ("generate_propel_ini(): generando archivo de propel $ini");
+    if ($fp = @fopen ($ini,'w')) {
+        fwrite ($fp,"# Archivo generado por el instalador de Alba " . date('m/d/Y H:i:s') . "\n\n");
+        fwrite ($fp,"propel.targetPackage       = alba\n");
+        fwrite ($fp,"propel.project             = alba\n");
+        fwrite ($fp,"propel.database            = $protocol\n");
+        fwrite ($fp,"propel.database.createUrl  = $protocol://$user:$pass@$host/\n");
+        fwrite ($fp,"propel.database.url        = $protocol://$user:$pass@$host/$db\n");
+        fwrite ($fp,"propel.addGenericAccessors = true\n");
+        fwrite ($fp,"propel.addGenericMutators  = true\n");
+        fwrite ($fp,"propel.addTimeStamp        = false\n");
+        fwrite ($fp,"propel.schema.validate     = false\n\n");
+        fwrite ($fp,"; directories\n");
+        fwrite ($fp,"propel.home                    = .\n");
+        fwrite ($fp,'propel.output.dir              = ${propel.home}'."\n");
+        fwrite ($fp,'propel.schema.dir              = ${propel.output.dir}/config'."\n");
+        fwrite ($fp,'propel.conf.dir                = ${propel.output.dir}/config'."\n");
+        fwrite ($fp,'propel.phpconf.dir             = ${propel.output.dir}/config'."\n");
+        fwrite ($fp,'propel.sql.dir                 = ${propel.output.dir}/data/sql'."\n");
+        fwrite ($fp,"propel.runtime.conf.file       = runtime-conf.xml\n");
+        fwrite ($fp,'propel.php.dir                 = ${propel.output.dir}'."\n");
+        fwrite ($fp,"propel.default.schema.basename = schema\n");
+        fwrite ($fp,"propel.datadump.mapper.from    = *schema.xml\n");
+        fwrite ($fp,"propel.datadump.mapper.to      = *data.xml\n\n");
+        fwrite ($fp,"; builder settings\n");
+        fwrite ($fp,"propel.builder.peer.class              = addon.propel.builder.SfPeerBuilder\n");
+        fwrite ($fp,"propel.builder.object.class            = addon.propel.builder.SfObjectBuilder\n");
+        fwrite ($fp,"propel.builder.objectstub.class        = addon.propel.builder.SfExtensionObjectBuilder\n");
+        fwrite ($fp,"propel.builder.peerstub.class          = addon.propel.builder.SfExtensionPeerBuilder\n");
+        fwrite ($fp,"propel.builder.objectmultiextend.class = addon.propel.builder.SfMultiExtendObjectBuilder\n");
+        fwrite ($fp,"propel.builder.mapbuilder.class        = addon.propel.builder.SfMapBuilderBuilder\n");
+        fwrite ($fp,"propel.builder.interface.class         = propel.engine.builder.om.php5.PHP5InterfaceBuilder\n");
+        fwrite ($fp,"propel.builder.node.class              = propel.engine.builder.om.php5.PHP5NodeBuilder\n");
+        fwrite ($fp,"propel.builder.nodepeer.class          = propel.engine.builder.om.php5.PHP5NodePeerBuilder\n");
+        fwrite ($fp,"propel.builder.nodestub.class          = propel.engine.builder.om.php5.PHP5ExtensionNodeBuilder\n");
+        fwrite ($fp,"propel.builder.nodepeerstub.class      = propel.engine.builder.om.php5.PHP5ExtensionNodePeerBuilder\n\n");
+        fwrite ($fp,"propel.mysql.tableType = InnoDB\n");
+        fwrite ($fp,"propel.mysql.encoding = utf8\n");
+        fwrite ($fp,"propel.packageObjectModel = true\n\n");
+        fwrite ($fp,"propel.builder.addIncludes  = false\n");
+        fwrite ($fp,"propel.builder.addComments  = false\n");
+        fwrite ($fp,"propel.builder.addBehaviors = false\n");
+
+        DebugLog("generate_propel_ini(): archivo ini generado");
+        return true;
+    } else {
+        DebugLog("generate_propel_ini(): no se puede abrir el archivo. ");
+        return false;
+    }
+}
+
+
+
+
+/**
 * carga el schema a l abase de datos
 */
-function crear_schema ($filesql, $host, $user, $pass, $db) {
+function crear_schema ($filesql, $protocol, $host, $user, $pass, $db) {
     DebugLog ("crear_schema(): Agregando $filesql");
-    return executeDump(AlbaPath() . DIRECTORY_SEPARATOR . 'data' . DIRECTORY_SEPARATOR . 'sql'  . DIRECTORY_SEPARATOR .$filesql, $host, $user, $pass, $db);
-
+    if ($filesql == "")
+        return false;
+    else
+        return executeDump(AlbaPath() . DIRECTORY_SEPARATOR . 'data' . DIRECTORY_SEPARATOR . 'sql'  . DIRECTORY_SEPARATOR .$filesql, $protocol, $host, $user, $pass, $db);
 }
 
 /**
 * caga los datos ejemplo/minima
 */
-function crear_base_modelo($filesql, $host, $user, $pass, $db) {
+function crear_base_modelo($filesql, $protocol, $host, $user, $pass, $db) {
     DebugLog("crear_base_modelo(): Creado base de datos modelo: $filesql");
     if ($filesql == "")
         return false;
     else
-        return executeDump(AlbaPath() . DIRECTORY_SEPARATOR . 'data' . DIRECTORY_SEPARATOR . 'sql'  . DIRECTORY_SEPARATOR .$filesql, $host, $user, $pass, $db);
-    
+        return executeDump(AlbaPath() . DIRECTORY_SEPARATOR . 'data' . DIRECTORY_SEPARATOR . 'sql'  . DIRECTORY_SEPARATOR .$filesql, $protocol, $host, $user, $pass, $db);
 }
 
 /**
@@ -212,4 +340,54 @@
         return false;
 }
 
+
+function build_model() {
+    chdir('../../');
+    define('SF_ROOT_DIR',    realpath(dirname(__FILE__).'/../..'));
+    define('SF_APP',         'principal');
+    define('SF_ENVIRONMENT', 'dev');
+    define('SF_DEBUG',       true);
+    define('STDOUT','');
+    define('STDERR','');
+
+    require_once(SF_ROOT_DIR.DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.SF_APP.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARATOR.'config.php');
+
+    require_once($sf_symfony_lib_dir.'/vendor/pake/pakeFunction.php');
+    require_once($sf_symfony_lib_dir.'/vendor/pake/pakeGetopt.class.php');
+
+
+    $dirs = array(
+    sfConfig::get('sf_data_dir').DIRECTORY_SEPARATOR.'tasks'         => 'myPake*.php', // project tasks
+    sfConfig::get('sf_symfony_data_dir').DIRECTORY_SEPARATOR.'tasks' => 'sfPake*.php', // symfony tasks
+    sfConfig::get('sf_root_dir').'/plugins/*/data/tasks'             => '*.php',       // plugin tasks
+    );
+
+    foreach ($dirs as $globDir => $name)
+    {
+        if ($dirs = glob($globDir))
+        {
+            $tasks = pakeFinder::type('file')->name($name)->in($dirs);
+            foreach ($tasks as $task)
+            {
+                include_once($task);
+            }
+        }
+    }
+    $pake = pakeApp::get_instance();
+
+    try
+    {
+//        $ret = $pake->run(sfConfig::get('sf_root_dir').'/plugins/albaTasks/data/tasks/albaTasks.php', 'alba-build-model', true);
+        $ret = $pake->run(sfConfig::get('sf_symfony_data_dir').DIRECTORY_SEPARATOR.'tasks'.DIRECTORY_SEPARATOR.'sfPakePropel.php', array('propel-build-model','--quiet') , true);
+    }
+    catch (pakeException $e)
+    {
+        print "<strong>ERROR</strong>: ".$e->getMessage();
+    }
+
+}
+
+
+
+
 ?>
\ No newline at end of file

Modified: prosistem/alba/trunk/alba/web/instalar/instalar.php
===================================================================
--- prosistem/alba/trunk/alba/web/instalar/instalar.php	2008-02-07 01:17:13 UTC (rev 5447)
+++ prosistem/alba/trunk/alba/web/instalar/instalar.php	2008-02-07 01:20:36 UTC (rev 5448)
@@ -68,13 +68,13 @@
         <h1>Instalaci&oacute;n de ALBA</h1>
         </div>
         <div id="contenido">
-            <?php if (file_exists(AlbaPath() . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR .'databases.yml')): ?>
+            <?php if (file_exists(AlbaPath() . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR .'databases.yml') OR  file_exists(AlbaPath() . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR .'propel.ini')): ?>
                 <?php $error_flag = true;?>
                 <?php DebugLog("Ya existe un archivo de configuracion - Instalacion Abortada.")?>
                 <p>El sistema se encuentra instalado.</p>
                 <p>Si desea volver a iniciar la instalaci&oacute;n, por favor elimine el archivo
-                 de configuracion <b>databases.yml</b> que<br/>
-                se encuentra en el directorio de <b>config</b> de la aplicaci&oacute;n.
+                 de configuracion <b>databases.yml</b> y <b>propel.ini</b> que<br/>
+                se encuentran en el directorio de <b>config</b> de la aplicaci&oacute;n.
                 </p>
                     
             <?php else: ?>

Modified: prosistem/alba/trunk/alba/web/instalar/paso1.php
===================================================================
--- prosistem/alba/trunk/alba/web/instalar/paso1.php	2008-02-07 01:17:13 UTC (rev 5447)
+++ prosistem/alba/trunk/alba/web/instalar/paso1.php	2008-02-07 01:20:36 UTC (rev 5448)
@@ -33,6 +33,7 @@
 if (!defined('ALBA_INSTALLER')) die();
  
 $dirs = array(
+    'lib'. DIRECTORY_SEPARATOR .'model',
     'config', 
     'cache', 
     'log', 

Modified: prosistem/alba/trunk/alba/web/instalar/paso3.php
===================================================================
--- prosistem/alba/trunk/alba/web/instalar/paso3.php	2008-02-07 01:17:13 UTC (rev 5447)
+++ prosistem/alba/trunk/alba/web/instalar/paso3.php	2008-02-07 01:20:36 UTC (rev 5448)
@@ -36,6 +36,7 @@
 $cnx_error_msg = ""; //errores de base de datos
 $error_flag = false; // error en el paso del instalador
 
+$tipo_motor_base = "";
 $host = "";
 $user = "";
 $pass = "";
@@ -44,52 +45,109 @@
 
 if (isset($_POST['test_conn']) && $_POST['test_conn']==1) {
     //obtenidno datos del form
+
+    $tipo_motor_base = $_POST['tipo_motor_base'];
     $host = $_POST['host'];
     $user = $_POST['user'];
     $pass = $_POST['pass'];
     $db = $_POST['db'];    
     $creardb = (isset($_POST['creardb']) && $_POST['creardb'] == 1);
-    
+
     //probado conexion
     DebugLog('Probando conexión'); 
-    $conn = @mysql_connect($host,$user,$pass);
-    if (!$conn) {
+
+    //Todo este codigo podria ser mejorado integrando PDO (a partir de PHP 5.1)
+    //ya que no habria que repetir codigo
+
+    //comprueba si completo opcion de motor de base de datos
+    if($tipo_motor_base != 'mysql' AND $tipo_motor_base != 'pgsql') {
         $error_flag = true;
         $cnx_error_flag = true;
-        $cnx_error_msg = "No se puede conectar a la base de datos: <br>" . mysql_error();
+        $cnx_error_msg = "No se sabe cual es el motor de bases de datos <br>";
         DebugLog('Error al conectar con la base de datos','E');
-    }
-    else {
-        //crear base si es necesario
-        if ($creardb) {
-            DebugLog('Probando crear base de datos...');
-            $ret = @mysql_query('CREATE DATABASE ' . $db , $conn);
-            if (!$ret) {
+    } else {
+        if($tipo_motor_base == 'mysql') {
+            $conn = @mysql_connect($host,$user,$pass);
+            if (!$conn) {
                 $error_flag = true;
                 $cnx_error_flag = true;
-                $cnx_error_msg = "No se puede crear la base de datos: <br>" . mysql_error();
-                DebugLog('No se puede crear la base de datos: ' . mysql_error() ,'E');
+                $cnx_error_msg = "No se puede conectar a la base de datos: <br>" . mysql_error();
+                DebugLog('Error al conectar con la base de datos','E');
+            } else {
+                //crear base si es necesario
+                if ($creardb) {
+                    DebugLog('Probando crear base de datos...');
+                    $ret = @mysql_query('CREATE DATABASE ' . $db , $conn);
+                    if (!$ret) {
+                        $error_flag = true;
+                        $cnx_error_flag = true;
+                        $cnx_error_msg = "No se puede crear la base de datos: <br>" . mysql_error();
+                        DebugLog('No se puede crear la base de datos: ' . mysql_error() ,'E');
+                    } else {
+                        DebugLog("Base de datos $db creada correctamente");
+                    }
+                } else {
+                    DebugLog("No se creara una base de datos");
+                } 
+        
+                //conectado a la base
+                $ret = @mysql_select_db($db);
+                if (!$ret) {
+                    $error_flag = true;
+                    $cnx_error_flag = true;
+                    $cnx_error_msg = "No es posible utilizar la base $db: " . mysql_error();
+                    DebugLog("No es posible conectar a la base de datos $db: " . mysql_error(), 'E');
+                }
+                mysql_close($conn);
             }
-            else {
-                DebugLog("Base de datos $db creada correctamente");
+            
+        }
+
+
+        // Si es Postgresql
+        if($tipo_motor_base == 'pgsql') {
+            $conn = @pg_connect("host=$host user=$user password=$pass port=5432");
+            if (!$conn) {
+                $error_flag = true;
+                $cnx_error_flag = true;
+                $cnx_error_msg = "No se puede conectar a la base de datos: <br>";
+                DebugLog('Error al conectar con la base de datos','E');
+            } else {
+                //crear base si es necesario
+                if ($creardb) {
+                    DebugLog('Probando crear base de datos...');
+                    $ret = @pg_query($conn, 'CREATE DATABASE ' . $db);
+                    if (!$ret) {
+                        $error_flag = true;
+                        $cnx_error_flag = true;
+                        $cnx_error_msg = "No se puede crear la base de datos: <br>" . pg_last_error($conn);
+                        DebugLog('No se puede crear la base de datos: ' . pg_last_error($conn) ,'E');
+                    } else {
+                        DebugLog("Base de datos $db creada correctamente");
+                    }
+                } else {
+                    DebugLog("No se creara una base de datos");
+                } 
+
+                pg_close($conn);
+
+                $conn = pg_connect("host=$host user=$user password=$pass port=5432 dbname=$db");
+                //conectado a la base
+                if (!$conn) {
+                    $error_flag = true;
+                    $cnx_error_flag = true;
+                    $cnx_error_msg = "No es posible utilizar la base $db: ";
+                    DebugLog("No es posible conectar a la base de datos $db", 'E');
+                }
+                pg_close($conn);
+
             }
         }
-        else {
-            DebugLog("No se creara una base de datos");
-        } 
-        
-        //conectado a la base
-        $ret = @mysql_select_db($db);
-        if (!$ret) {
-            $error_flag = true;
-            $cnx_error_flag = true;
-            $cnx_error_msg = "No es posible utilizar la base $db: " . mysql_error();
-            DebugLog("No es posible conectar a la base de datos $db: " . mysql_error(), 'E');
-        }
-           
+
+        $_SESSION['albainstall']['tipo_motor_base'] = $tipo_motor_base;
         $_SESSION['albainstall']['host'] = $host;
-        $_SESSION['albainstall']['user'] = $user;        
-        $_SESSION['albainstall']['pass'] = $pass;   
+        $_SESSION['albainstall']['user'] = $user;
+        $_SESSION['albainstall']['pass'] = $pass;
         $_SESSION['albainstall']['db'] = $db;
         $_SESSION['albainstall']['creardb'] = $creardb;
     }
@@ -109,7 +167,13 @@
 <form name="test_conn" method="post">              
 <input type="hidden" name="test_conn" value="1">
 <table>
+
     <tr>
+        <td>Motor de bases de datos:&nbsp;&nbsp;&nbsp;</td>
+        <td>Mysql<input type="radio" name="tipo_motor_base" value="mysql" <?php echo isset($tipo_motor_base) && $tipo_motor_base == 'mysql' ? 'checked' : ''?> >
+        Postgresql<input type="radio" name="tipo_motor_base" value="pgsql" <?php echo isset($tipo_motor_base) && $tipo_motor_base == 'pgsql' ? 'checked' : ''?> ></td>
+    </tr>
+    <tr>
         <td>Servidor:</td>
         <td><input type="text" name="host" value="<?php echo $host?>" class="texto"></td>
     </tr>

Modified: prosistem/alba/trunk/alba/web/instalar/paso4.php
===================================================================
--- prosistem/alba/trunk/alba/web/instalar/paso4.php	2008-02-07 01:17:13 UTC (rev 5447)
+++ prosistem/alba/trunk/alba/web/instalar/paso4.php	2008-02-07 01:20:36 UTC (rev 5448)
@@ -32,6 +32,7 @@
 
 if (!defined('ALBA_INSTALLER')) die();
 
+    $tipo_motor_base = $_SESSION['albainstall']['tipo_motor_base'];
     $host = $_SESSION['albainstall']['host'];
     $user = $_SESSION['albainstall']['user'];
     $pass = $_SESSION['albainstall']['pass'];
@@ -74,11 +75,13 @@
             <td>Datos m&iacute;nimos:</td>
             <td><input type="radio" name="tipo_base" value="minima" <?php echo isset($_POST['tipo_base']) && $_POST['tipo_base'] == 'minima' ? 'checked' : ''?> ></td>
         </tr>
+<?php if($tipo_motor_base != 'pgsql'): //Provisoria mientras no funcione los datos de ejemplo desde el YML ?>
         <tr>
             <td>Datos ejemplo:</td>
             <td><input type="radio" name="tipo_base" value="ejemplo1" <?php echo isset($_POST['tipo_base']) && $_POST['tipo_base'] == 'ejemplo1' ? 'checked' : ''?>></td>
         </tr>
-        
+<?php endif; ?>
+
     </table>
     <br/>
     <input type="submit" name="btEnviar" value="Seleccionar base de datos" class="boton">

Modified: prosistem/alba/trunk/alba/web/instalar/paso5.php
===================================================================
--- prosistem/alba/trunk/alba/web/instalar/paso5.php	2008-02-07 01:17:13 UTC (rev 5447)
+++ prosistem/alba/trunk/alba/web/instalar/paso5.php	2008-02-07 01:20:36 UTC (rev 5448)
@@ -56,6 +56,10 @@
 
 <table>
     <tr>
+        <td>Motor de base de datos:</td>
+        <td><?php echo $_SESSION['albainstall']['tipo_motor_base']?></td>
+    </tr>
+    <tr>
         <td>Servidor:</td>
         <td><?php echo $_SESSION['albainstall']['host']?></td>
     </tr>

Modified: prosistem/alba/trunk/alba/web/instalar/paso6.php
===================================================================
--- prosistem/alba/trunk/alba/web/instalar/paso6.php	2008-02-07 01:17:13 UTC (rev 5447)
+++ prosistem/alba/trunk/alba/web/instalar/paso6.php	2008-02-07 01:20:36 UTC (rev 5448)
@@ -32,6 +32,7 @@
 
 if (!defined('ALBA_INSTALLER')) die();
 
+$tipo_motor_base = $_SESSION['albainstall']['tipo_motor_base'];
 $host = $_SESSION['albainstall']['host'];
 $user = $_SESSION['albainstall']['user'];
 $pass = $_SESSION['albainstall']['pass'];
@@ -45,10 +46,10 @@
 
 <table>
     <tr>
-        <td>Generando archivo de configuraci&oacute;n:</td>
+        <td>Generando archivo de configuraci&oacute;n de acceso a base de datos:</td>
         <td>
             <?php 
-                $ret = generate_databases_yml($host,$user,$pass,$db);
+                $ret = generate_databases_yml($tipo_motor_base,$host,$user,$pass,$db);
                 echo $ret ? IMG_OK : IMG_ERROR;
                 if (!$ret) {
                     $error_flag = true;
@@ -57,11 +58,51 @@
             ?>
         </td>
     </tr>
+
+
     <tr>
+        <td>Generando archivo de configuraci&oacute;n para las tareas:</td>
+        <td>
+            <?php 
+                $ret = generate_propel_ini($tipo_motor_base,$host,$user,$pass,$db);
+                echo $ret ? IMG_OK : IMG_ERROR;
+                if (!$ret) {
+                    $error_flag = true;
+                    DebugLog("Error al generar archivo propel.ini","E");
+                }
+            ?>
+        </td>
+    </tr>
+
+
+
+    <tr>
+        <td>Generando modelo de la base de datos:</td>
+        <td>
+<!--
+            <div style="visibility: hidden;">
+            <?php 
+                $ret = build_model();
+            ?>
+            </div>
+-->
+            <?php echo IMG_OK; ?>
+        </td>
+    </tr>
+
+
+
+    <tr>
         <td>Creando esquema de base de datos:</td>
         <td>
             <?php 
-                $ret = crear_schema('lib.model.schema.sql', $host, $user, $pass, $db);
+
+                if($tipo_motor_base == 'mysql') {
+                    $ret = crear_schema('lib.model.schema.mysql.sql', $tipo_motor_base, $host, $user, $pass, $db);
+                } else {
+                    $ret = crear_schema('lib.model.schema.pgsql.sql', $tipo_motor_base, $host, $user, $pass, $db);
+                }
+
                 echo $ret ? IMG_OK : IMG_ERROR;
                 if (!$ret) {
                     $error_flag = true;
@@ -74,15 +115,25 @@
         <td>Cargando modelo de base de datos <?php echo $_SESSION['albainstall']['tipo_base']?>:</td>
         <td>
             <?php 
-                if ($_SESSION['albainstall']['tipo_base'] =='minima')
-                    $archivo = "datos_desde_cero.sql";
-                elseif ($_SESSION['albainstall']['tipo_base'] =='ejemplo1')
-                    $archivo = "datos_ejemplo.sql";
+                if ($_SESSION['albainstall']['tipo_base'] == 'minima')
+                    if($_SESSION['albainstall']['tipo_motor_base'] == 'mysql')
+                        $archivo = "datos_desde_cero.sql";
+                    elseif  ($_SESSION['albainstall']['tipo_motor_base'] == 'pgsql')
+                        $archivo = "datos_desde_cero.sql";
+                    else
+                        $archivo = "";
+                elseif ($_SESSION['albainstall']['tipo_base'] == 'ejemplo1')
+                    if($_SESSION['albainstall']['tipo_motor_base'] == 'mysql')
+                        $archivo = "datos_ejemplo.sql";
+                    elseif ($_SESSION['albainstall']['tipo_motor_base'] == 'pgsql')
+                        $archivo = "datos_ejemplo.pgsql.sql";
+                    else
+                        $archivo = "";
                 else
                     $archivo = "";
             ?>
             <?php 
-                $ret = crear_base_modelo($archivo,$host,$user,$pass,$db);
+                $ret = crear_base_modelo($archivo, $tipo_motor_base, $host, $user, $pass, $db);
                 echo $ret ? IMG_OK : IMG_ERROR;
                 if (!$ret) {
                     $error_flag = true;




Más información sobre la lista de distribución Alba-desarrollo