def abrirLineaBase(self, **kw):

        print 'abrir linea base'


        lineaBase = kw['idlineaBase']   

        estadoD = DBSession.query(Estado).filter(Estado.nom_estado == 'En Desarrollo').one()
        Globals.current_phase.id_estado = estadoD.id_estado

        estadoA = DBSession.query(Estado).filter(Estado.nom_estado == 'Abierta').one()
        usuario = DBSession.query(Usuario).filter(Usuario.login_name == request.identity['repoze.who.userid']).one()
        nroLineaBase = DBSession.query(NroLineaBase).filter(NroLineaBase.id_nro_lb == lineaBase).one()
        
        
            
        aNroLineaBase = NroLineaBase()
        aNroLineaBase.id_linea_base = nroLineaBase.id_linea_base
        aNroLineaBase.nro_linea_base = nroLineaBase.nro_linea_base + 1 
        aNroLineaBase.id_estado = estadoA.id_estado   
        aNroLineaBase.id_usuario_aprobo = usuario.id_usuario  
        
        items = nroLineaBase.item  

        estadoC = DBSession.query(Estado).filter(Estado.nom_estado == 'Confirmado').one()
        for itemGuardar in items:       
            itemGuardar.estado = estadoC
            aNroLineaBase.item.append(itemGuardar)

        
        print 'ABRIR/NUEVA VERSION ID ' 
        print  aNroLineaBase.id_linea_base
        print 'ABRIR/NUEVA nro_linea_base '
        print aNroLineaBase.nro_linea_base
        print 'ABRIR/NUEVA id_estado '
        print aNroLineaBase.id_estado

        DBSession.add(aNroLineaBase)
        DBSession.flush() 
        
        flash(_("LA LINEA BASE HA SIDO ABIERTA"))
        redirect("/lineaBase/index?id_fase="+str(Globals.current_phase.id_fase))
    def guardarLineaBase(self, **kw):
        """
        Funcion que se encarga de guardar los datos introducidos en el formulario
        para la nueva linea base.
        """
        aLineaBase = LineaBase()
         
        fase = DBSession.query(Fase).filter(Fase.id_fase == self.fase_id).one()   
        usuario = DBSession.query(Usuario).filter(Usuario.login_name == request.identity['repoze.who.userid']).one()
        estado =DBSession.query(Estado).filter(Estado.nom_estado == 'Aprobado').one()


        aLineaBase.id_fase = fase.id_fase
        aLineaBase.nom_linea_base = kw['nombreLineaBase']
        aLineaBase.descripcion = kw['descripcionLineaBase']
        aItemsSelecionados = kw['listaItem']
    
        DBSession.add(aLineaBase) 
        DBSession.flush()    
        print aLineaBase.id_linea_base
        
        aNroLineaBase = NroLineaBase()
        aNroLineaBase.id_linea_base = aLineaBase.id_linea_base
        aNroLineaBase.nro_linea_base = 1
        aNroLineaBase.id_estado = estado.id_estado   
        aNroLineaBase.id_usuario_aprobo = usuario.id_usuario  
        
        for items1 in aItemsSelecionados:
              
            itemSelect = DBSession.query(VersionItem).filter(VersionItem.id_version_item ==items1).one()
            print itemSelect.observaciones
            itemSelect.id_estado = estado.id_estado
            aNroLineaBase.item.append(itemSelect)
              
        
        DBSession.add(aNroLineaBase)
        DBSession.flush() 
        flash(_("Se ha creado una nueva Linea Base: %s") %kw['nombreLineaBase'],'info')
        redirect("index?id_fase="+str(self.fase_id))