示例#1
0
def buscar_actual(unidad_organica_id = None):
    db = current.db
    # para evitar la recursividad con definir_tabla
    if not hasattr( db,'ano_academico' ): definir_tabla()
    if not unidad_organica_id:
        unidad_organica_id = (escuela.obtener_sede_central()).id
    actual_nombre = ano_actual()
    query = ((db.ano_academico.nombre == actual_nombre) &
             (db.ano_academico.unidad_organica_id == unidad_organica_id))
    return db(query).select().first()
示例#2
0
def seleccionar(context):
    """
    Retorna un grid por medio del cual se puede seleccionar una unidad organica
    el valor del ID seleccionado quedará en:

        request.vars.unidad_organica_id

    el grid para la selección se puede obtener por medio de:

        context.manejo
    """
    assert isinstance(context, Storage)
    request = current.request
    response = current.response
    T = current.T
    db = current.db
    if db(conjunto()).count() > 1:
        # Si hay más de una UO
        context.asunto = T('Seleccione una Unidad Orgánica')
        context.manejo = tools.selector(conjunto(),
                                            [db.unidad_organica.codigo,
                                            db.unidad_organica.nombre],
                                            'unidad_organica_id',
                                            )
        response.title = escuela.obtener_escuela().nombre
        response.subtitle = T('Unidades Orgánicas')
        return context
    else:
        # seleccionar la primera y redirecionar a la vista que nos llamo
        if request.vars.keywords:
            request.vars.keywords = ''
        if request.vars.order:
            request.vars.order = ''
        parametros = request.vars
        parametros.unidad_organica_id = (escuela.obtener_sede_central()).id
        redirect(URL(c=request.controller, f=request.function,
                     vars=parametros))