function gravarProva(Prova $prova){

		if (strlen($prova->getTitulo())==0){
			throw new Exception('Informe o título da prova!');
		}else{
			$prova->Xtitulo = "'".$prova->getTitulo()."'";
		}

		if (!is_object($prova->getDisciplina())){
			throw new Exception('A disciplina é obrigatória');
		}else{
			$prova->Xdisciplina = $prova->getDisciplina()->getId();
		}

		if (!is_object($prova->getProfessor())){
			throw new Exception('Selecione o professor');
		}else{
			$prova->Xprofessor = $prova->getProfessor()->getId();
		}

		if (strlen($prova->getNumeroPerguntas())==0 or $prova->getNumeroPerguntas() == 0){
			#$prova->Xnumero_perguntas = " NULL ";
			throw new Exception('Informe a quantidade de perguntas para a aprova!');
		}else{
			$prova->Xnumero_perguntas = $prova->getNumeroPerguntas();
		}

		if (strlen($prova->getData())==0){
			throw new Exception('Informe a data da prova!');
		}else{
			$prova->Xdata = ConverteData($prova->getData(),"'");
		}

		if (strlen($prova->getDataInicio())==0){
			throw new Exception('Informe a data de início da prova!');
		}else{
			$prova->Xdata_inicio = ConverteData($prova->getDataInicio(),"'");
		}

		if (strlen($prova->getDataTermino())==0){
			throw new Exception('Informe a data de término da prova!');
		}else{
			$prova->Xdata_termino = ConverteData($prova->getDataTermino(),"'");
		}

		if (strlen($prova->getDificuldade())==0){
			$prova->Xdificuldade = " NULL ";
		}else{
			$prova->Xdificuldade = $prova->getDificuldade();
		}

		if (strlen($prova->getLiberada())==0){
			$prova->Xliberada = " NULL ";
		}else{
			$prova->Xliberada = ConverteData($prova->getLiberada(),"'");
		}

		$provaDAO = new ProvaDAO(); 
		$provaDAO->setBancoDados($this->banco); 
		$provaDAO->gravaDadosProva($prova); 
	}