def definir_tabla(db, T): # TODO: fixme escuela.definir_tabla() descripcion_carrera.definir_tabla() if not hasattr(db, 'carrera_escuela'): tbl = db.define_table('carrera_escuela', Field('descripcion_id', 'reference descripcion_carrera'), Field('codigo', 'string', length=2), format=carrera_escuela_format) tbl.descripcion_id.label = T("Descripción de la carrera") tbl.codigo.label = T("Código IES") tbl.codigo.requires = [IS_NOT_EMPTY(), IS_MATCH('^\d{2,2}$')] tbl.codigo.requires.append(IS_NOT_IN_DB(db, 'carrera_escuela.codigo')) tbl.codigo.comment = T("Código de dos digitos, debe ser unico dentro del IES")
from agiscore.db import pais from agiscore.db import carrera_escuela from agiscore.db import funsionario from agiscore.db import especialidad from agiscore.db import turma from agiscore.db import matricula # # TODO: Depués de migrar todas las tablas a este formato comentar # esto y en cada vista solo llamar las tablas necesarias. # ano_academico.definir_tabla() region_academica.definir_tabla() provincia.definir_tabla() municipio.definir_tabla() comuna.definir_tabla() escuela.definir_tabla() unidad_organica.definir_tabla() descripcion_carrera.definir_tabla() regimen.definir_tabla() tipos_ensennanza.definir_tabla() escuela_media.definir_tabla() tipo_documento_identidad.definir_tabla() discapacidad.definir_tabla() regimen_uo.definir_tabla() carrera_uo.definir_tabla() persona.definir_tabla() estudiante.definir_tabla() candidatura.definir_tabla() candidatura_carrera.definir_tabla() campus.definir_tabla() edificio.definir_tabla()
def definir_tabla(): db = current.db T = current.T escuela.definir_tabla() provincia.definir_tabla() if not hasattr(db, 'unidad_organica'): db.define_table('unidad_organica', Field('codigo',compute=calcular_codigo,notnull=True,label=T('Código'),), Field('nombre','string',required=True,notnull=True,length=100,label=T('Nombre'),), Field('abreviatura', 'string', length=8, required=False, notnull=False, default=''), Field('direccion','text',required=False,notnull=False,label=T('Dirección'),), Field('nivel_agregacion','string',required=True,length=1, label=T('Nivel de agregación'),), Field('clasificacion','string',length=2,required=True, label=T('Clasificación'),), Field('codigo_registro','string',length=3,required=True, label=T('Código de registro'), comment=T("Código de registro en el Ministerio de Educación"),), Field('codigo_escuela', 'string',length=2,required=True,notnull=True, label=T('Código en la Escuela'), comment=T("Código de registro asignado por la Escuela"),), # referencias Field('escuela_id', 'reference escuela',required=True, label=T('Escuela'),), Field('provincia_id', 'reference provincia',label=T('Provincia')), # ----------- format=uo_format, singular=T('Unidad Organica'), plural=T('Unidades Organicas'), ) db.unidad_organica.abreviatura.label = T('Abreviatura') db.unidad_organica.abreviatura.requires = [IS_UPPER()] db.unidad_organica.abreviatura.represent = abreviatura_represent db.unidad_organica.nivel_agregacion.requires = IS_IN_SET(NIVELES,zero=None) db.unidad_organica.nivel_agregacion.represent = nivel_agregacion_represent db.unidad_organica.clasificacion.requires = IS_IN_SET(CLASIFICACIONES,zero=None) db.unidad_organica.clasificacion.represent = clasificacion_represent db.unidad_organica.codigo_registro.requires = [ IS_NOT_EMPTY(error_message=T('Se require el código de registro')), IS_MATCH('^\d{3,3}$', error_message=T('No es un código valido')), IS_NOT_IN_DB(db,'unidad_organica.codigo_registro'), ] db.unidad_organica.codigo_escuela.requires = [ IS_NOT_EMPTY(error_message=T('Se requiere el código asignado por la escuela')), IS_MATCH('^\d{2,2}$', error_message=T('No es un código valido')), IS_NOT_IN_DB(db,'unidad_organica.codigo_escuela', error_message=T('Ya existe una UO con ese código'), ), ] db.unidad_organica.nombre.requires = [IS_UPPER(), IS_NOT_EMPTY()] db.unidad_organica.provincia_id.requires = IS_IN_DB(db, 'provincia.id', '%(nombre)s', zero=T('Escoger provincia'), ) db.unidad_organica.escuela_id.requires = IS_IN_DB(db, 'escuela.id', '%(nombre)s', zero=T('Escoger una escuela'), ) # callbacks db.unidad_organica._after_insert.append(despues_de_insertar)