<?PHP
/*
 * DIREITOS AUTORAIS RESERVADOS (C) 2007 UFRJ
 * 
 * ESTE PROGRAMA É SOFTWARE LIVRE; VOCÊ PODE REDISTRIBUÍ-LO E/OU MODIFICÁ-LO SOB OS
 * TERMOS DA LICENÇA PÚBLICA GERAL GNU CONFORME PUBLICADA PELA FREE SOFTWARE FOUNDATION;
 * TANTO A VERSÃO 2 DA LICENÇA, COMO (A SEU CRITÉRIO) QUALQUER VERSÃO POSTERIOR.

 * ESTE PROGRAMA É DISTRIBUÍDO NA EXPECTATIVA DE QUE SEJA ÚTIL, PORÉM, SEM NENHUMA GARANTIA;
 * NEM MESMO A GARANTIA IMPLÍCITA DE COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA.
 * CONSULTE A LICENÇA PÚBLICA GERAL DO GNU PARA MAIS DETALHES.
 * 
 * VOCÊ DEVE TER RECEBIDO UMA CÓPIA DA LICENÇA PÚBLICA GERAL DO GNU JUNTO COM ESTE PROGRAMA; 
 * SE NÃO, ACESSE <<HTTP://WWW.GNU.ORG/LICENSES/LICENSES.PT-BR.HTML>>
 */

<?php
echo ">> Iniciando importa��o dos dados de alunos";
// define um timeout bem longo
set_time_limit(9999999999);
/*
 Script para migrar so sistema da educacao para o sistema integrado

 O script efetua uma leitura na tabela usuario do aplicativo
 da educacao, guardando todas as informacoes pertinentes a
 base integrada. Para cada um dos usuarios lidos efetua a
 gravacao no esquema de cabecalho comum utilizando uma chave
 sequencial gerada automaticamente.. Ao mesmo tempo efetua a
 gravacao da chave gerada nas tabelas pertinentes do aplicativo
 da cultura. O script, como foi montado, deve rodar sobre uma
 base local.
 */
// funcao para geracao dos campos de aluno

function geraCampo($linha,$campo)
{
	$valor = $linha[$campo];
	if( $valor == null )
	$valor = "null";
	else
	$valor = "'" . trim($valor) . "'";
	return $valor;
}
/*
 1. Conexao base integrada
 */

$dbh = pg_connect("host=localhost port=5432 dbname=pcni user=semge password=semge");
if (!$dbh)
{
	die ("Erro na conexao: " . pg_last_error());
}


///    Reseta valor da sequencia para valor seguinte a educacao

/// 345797 to 346833
//$NEXT_VALUE_PESSOA_ID_SEQ = 346837; // 346836

//$sql4="alter sequence cabcomum.pessoa_id_seq restart with $NEXT_VALUE_PESSOA_ID_SEQ";
//$result4=pg_query($dbh,$sql4);
//if(!$result4)
//	die("erro atribuicao novo valor sequencia");

/*
 $sql5="delete from cabcomum.pessoa where id >= $NEXT_VALUE_PESSOA_ID_SEQ";
 $result5=pg_query($dbh,$sql5);
 if(!$result5)
 die("Erro ao deletar conjunto de dados de pessoa");
 */
///     2. Recupera valores da tabela mat_aluno em educacao
//	Nessa tabela estao os dados de pessoa (aluno) + seus documentos

$sql0 = "SELECT a.*,
		ea.geoiguacu          as logradourogeoiguacuusuario,
	    ea.\"tipoLogradouro\"   as logradourotipousuario,
	    ea.logradouro         as logradouronomeusuario,
	    ea.numero             as logradouronumerousuario,
	    ea.complemento        as logradourocomplementousuario,
	    ea.uf                 as logradouroufusuario,
	    ea.municipio          as logradourocidadeusuario,
	    ea.bairro             as logradourobairrousuario,
	    ea.cep                as logradourocepusuario,
	    ea.justificativa      as logradourojustificativausuario,
	    ea.\"pontoReferencia\"  as logradouropontoreferenciausuario,	

	    eac.geoiguacu           as logradourocorrespgeoiguacuusuario,
	    eac.\"tipoLogradouro\"  as logradourocorresptipousuario,
	    eac.logradouro          as logradourocorrespnomeusuario,
	    eac.numero              as logradourocorrespnumerousuario,
	    eac.complemento         as logradourocorrespcomplementousuario,
	    eac.uf                  as logradourocorrespufusuario,
	    eac.municipio           as logradourocorrespcidadeusuario,
	    eac.bairro              as logradourocorrespbairrousuario,
	    eac.cep                 as logradourocorrespcepusuario,
	    eac.justificativa       as logradourocorrespjustificativausuario,
	    eac.\"pontoReferencia\" as logradourocorresppontoreferenciausuario
FROM educacao.\"mat_alunoEspecificoTmp\" a
LEFT JOIN educacao.mat_endereco ea on (ea.\"tipoIdentificacao\" = 1 AND a.codaluno = ea.identificacao)
LEFT JOIN educacao.mat_endereco eac on (eac.\"tipoIdentificacao\" = 13 AND a.codaluno = eac.identificacao)
WHERE \"dadoCenso\" = true
ORDER BY codaluno";

/*$sql0 = "SELECT a.*
 FROM educacao.mat_aluno a
 LEFT JOIN educacao.mat_endereco e on a.codaluno = e.identificacao
 ORDER BY codaluno";
 */

$result0 = pg_query($dbh,$sql0);


/// 3. efetua a gravacao dos dados recuperados em pessoa

$gravados=0;

// transa��o fora do while
$result3 = pg_query($dbh, "BEGIN WORK");

while ($row0 = pg_fetch_array($result0))
{

	if (($gravados % 1000) == 0)
	{
		echo "\n</br>Gravados: $gravados";
		flush(); // para enviar logo para o firefox	
	}



	$sql2 = "SELECT NEXTVAL ('cabcomum.pessoa_id_seq'::regclass) AS idpessoa";

	$result2 = pg_query($dbh, $sql2);
	$row2 = pg_fetch_array($result2);
	$idpessoa = trim($row2["idpessoa"]);

	/// DADOS PARA TABELA PESSOA
	$nomeusuario                         = trim($row0['nomealuno']);
	$nomemaeusuario                      = trim($row0['nomeMae']);
	$sexousuario                         = trim($row0['sexo']);
	$datanascimentousuario               = trim($row0['dtnascimento']);
	$codigomunicipiousuario              = trim($row0['municipionascimento']);
	$codigopaisusuario                   = trim($row0['paisorigemaluno']);
	$nacionalidadeusuario                = trim($row0['nacionalidadealuno']);
	$corracausuario                      = trim($row0['cor']);

	$escolaridade                        = "NULL"; // mant�m como null

	$emailusuario                        = trim($row0['email']);
	$datacadastrousuario				 = trim($row0['dtdeferido']);
	$dataatualizacaousuario			 	 = trim($row0['dtdeferido']);
	$telefonefixousuario                 = trim($row0['telresidencial']);
	$telefonecelularusuario              = trim($row0['telcelular']);
	$telefonerecadousuario               = trim($row0['telrecado']);
	$telefonetrabalhousuario             = "NULL";
	$codigoufusuario					 = trim($row0['ufnascimento']);

	$idref_sistema						 = 3;  // CODIGO DO SISTEMA DA EDUCACAO.
	$idpessoa_sistema					 = "migracaoCenso";
	$beneficiario_bolsa_familia			 = trim($row0['blbolsafamilia']);

	/// DADOS PARA TABELA PESSOA_ENDERECO
	// ENDERECO RESIDENCIAL

	$logradourotipousuario               = trim($row0['logradourotipousuario']);
	$logradouronomeusuario               = trim($row0["logradouronomeusuario"]);
	$logradouronumerousuario             = trim($row0["logradouronumerousuario"]);
	$logradourocomplementousuario        = trim($row0["logradourocomplementousuario"]);
	$logradourobairrousuario             = trim($row0["logradourobairrousuario"]);
	$logradourocidadeusuario             = trim($row0["logradourocidadeusuario"]);
	$logradourocepusuario                = trim($row0["logradourocepusuario"]);
	$logradouroufusuario                 = trim($row0["logradouroufusuario"]);
	$logradourogeoiguacuusuario          = trim($row0["logradourogeoiguacuusuario"]);
	$logradourojustificativausuario      = trim($row0["logradourojustificativausuario"]);
	$logradouropontoreferenciausuario    = trim($row0["logradouropontoreferenciausuario"]);

	/// ENDERECO CORRESPONDENCIA
	$logradourocorresptipousuario        = trim($row0["logradourocorresptipousuario"]);
	$logradourocorrespnomeusuario        = trim($row0["logradourocorrespnomeusuario"]);
	$logradourocorrespnumerousuario      = trim($row0["logradourocorrespnumerousuario"]);
	$logradourocorrespcomplementousuario = trim($row0["logradourocorrespcomplementousuario"]);
	$logradourocorrespbairrousuario      = trim($row0["logradourocorrespbairrousuario"]);
	$logradourocorrespcidadeusuario      = trim($row0["logradourocorrespcidadeusuario"]);
	$logradourocorrespufusuario          = trim($row0["logradourocorrespufusuario"]);
	$logradourocorrespcepusuario         = trim($row0["logradourocorrespcepusuario"]);

	/// TALVEZ NAO PRECISE NA IMPORTACAO SE NA APLICACAO ESSES DADOS NAO SAO INFORMADOS
	$logradourocorrespgeoiguacuusuario   	  = trim($row0["logradourocorrespgeoiguacuusuario"]);
	$logradourocorrespjustificativausuario    = trim($row0["logradourocorrespjustificativausuario"]);
	$logradourocorresppontoreferenciausuario  = trim($row0["logradourocorresppontoreferenciausuario"]);


	/// DADOS PARA TABELA PESSOA_DOCUMENTO
	// RG
	/*
	$rgusuario                           = trim($row0["rgusuario"]);
	$rgusuarioestado                     = trim($row0["rgusuarioestado"]);
	$rgusuarioorgaoemissor               = trim($row0["rgusuarioorgaoemissor"]);
	$rgusuariodataemissao                = trim($row0["rgusuariodataemissao"]);
	$rgusuarioapresentada                = trim($row0["rgusuarioapresentada"]);

	// CARTEIRA DE TRABALHO
	$carteiratrabusuario                 = trim($row0["carteiratrabusuario"]);
	$carteiratrabusuarioserie            = trim($row0["carteiratrabusuarioserie"]);
	$carteiratrabusuarioestado           = trim($row0["carteiratrabusuarioestado"]);
	$carteiratrabusuarioemissao          = trim($row0["carteiratrabusuarioemissao"]);
	$carteiratrabusuarioapresentada      = trim($row0["carteiratrabusuarioapresentada"]);

	// PIS/PASEP
	$pispasepusuario					 = trim($row0["pispasepusuario"]);
	$pispasepusuarioapresentada          = trim($row0["pispasepusuarioapresentada"]);
	*/

	// NIS
	$nisusuario							 = trim($row0["nis"]);
	$nisusuarioapresentada				 = trim($row0["blniscomprovado"]);

	// CPF
	$cpfusuario                          = trim($row0["cpf"]);
	$cpfapresentada                      = trim($row0["blcpfcomprovado"]);

	// CADSUS
	$nrocadsususuario                    = trim($row0["cadsus"]);
	$nrocadsusapresentada                = 'NULL'; //trim($row0["nrocadsusapresentada"]);
	/*
	// CARTEIRA DE MOTORISTA
	$cartmotoristausuario                = trim($row0["cartmotoristausuario"]);
	$cartmotoristaapresentada            = trim($row0["cartmotoristaapresentada"]);
	*/
	// CERTIDAO
	$certidaotipousuario				 = trim($row0["certidaotipo"]);
	$certidaofolhausuario				 = trim($row0["certidaofolha"]);
	$certidaotermousuario				 = trim($row0["certidaotermo"]);
	$certidaolivrousuario				 = trim($row0["certidaolivro"]);
	$certidaocartoriousuario			 = trim($row0["certidaocartorio"]);
	$certidaocartoriousuarioapresentada	 = trim($row0["blcertidaocomprovada"]);

	/*
	 // TITULO ELEITORAL
	 $titeleitorusuario				 	 = trim($row0["titeleitorusuario"]);
	 $titeleitorusuariozona				 = trim($row0["titeleitorusuariozona"]);
	 $titeleitorusuariosecao				 = trim($row0["titeleitorusuariosecao"]);
	 $titeleitorusuarioapresentada	 	 = trim($row0["titeleitorusuarioapresentada"]);
	 */
	if (strlen($datanascimentousuario) == 0)
	$datanascimentousuario = "NULL";

	if (strlen($codigomunicipiousuario) == 0)
	$codigomunicipiousuario = "NULL";

	if (strlen($codigopaisusuario) == 0)
	$codigopaisusuario = "NULL";
	 
	if (strlen($escolaridade) == 0)
	$escolaridade = "NULL";

	if (strlen($corracausuario) == 0)
	$corracausuario = "NULL";

	if (strlen($telefonefixousuario) == 0)
	$telefonefixousuario = "NULL";

	if (strlen($telefonecelularusuario) == 0)
	$telefonecelularusuario = "NULL";

	if (strlen($telefonerecadousuario) == 0)
	$telefonerecadousuario = "NULL";

	if (strlen($codigoufusuario) == 0)
	$codigoufusuario = "NULL";

	if ( $beneficiario_bolsa_familia == true )
	$beneficiario_bolsa_familia = "true";
	else
	$beneficiario_bolsa_familia = "false";

	if (strlen($datacadastrousuario) == 0)
	$datacadastrousuario = "now()";
	else
	$datacadastrousuario ="'" . $datacadastrousuario . "'";

	if (strlen($dataatualizacaousuario) == 0)
	$dataatualizacaousuario = "now()";
	else
	$dataatualizacaousuario = "'" . $dataatualizacaousuario ."'";

	/// TRATAMENTO DE ENDERECO RESIDENCIAL
	if (strlen($logradourotipousuario) == 0)
	$logradourotipousuario = "NULL";

	// removendo caracters ',
	$symbols = array("'");
	$newlogradouronumerousuario = str_replace($symbols, "", $logradouronumerousuario);
	//echo "<br>$logradouronumerousuario    ---   $newlogradouronumerousuario";

	$geoiguacuvalor = "";
	$geoiguacutab = "";
	if (strlen($logradourogeoiguacuusuario) != 0)
	{
		$geoiguacutab   = "geoiguacu,";
		$geoiguacuvalor =

		"'$logradourogeoiguacuusuario',";
	}

	/// TRATAMENTO DE ENDERECO DE CORRESPONDENCIA
	$symbols = array("'");
	$newlogradourocorrespnumerousuario = str_replace($symbols, "", $logradourocorrespnumerousuario);
	//echo "<br>$logradourocorrespnumerousuario    ---   $logradourocorrespnumerousuario";


	if (strlen($logradourocorresptipousuario) == 0)
	$logradourocorresptipousuario = "NULL";

	$correspgeoiguacuvalor = "";
	$correspgeoiguacutab = "";
	if (strlen($logradourocorrespgeoiguacuusuario) != 0)
	{
		$correspgeoiguacutab   = "geoiguacu,";
		$correspgeoiguacuvalor =

		"'$logradourocorrespgeoiguacuusuario',";
	}

	if (strlen($logradourocorrespufusuario) == 0)
	$logradourocorrespufusuario = "NULL";

	if (strlen($logradourocorrespjustificativausuario) == 0)
	$logradourocorrespjustificativausuario = "NULL";

	if (strlen($logradourocorresppontoreferenciausuario) == 0)
	$logradourocorresppontoreferenciausuario = "NULL";

	/// TRATAMENTO DE DOCUMENTOS
	if (strlen($certidaotipousuario) == 0)
	$certidaotipousuario = "NULL";	 // ASSUMIMOS SEM TIPO DE CERTIDAO

	/// TEMOS UM CASO ONDE ISSO ACONTECE. CODIGO DE ALUNO: 121368323027

	/*
	 certidaotipo	count
	 NULL	17482
	 91	177059
	 ""	1
	 93	8
	 92	3262

	 $rgemissao = "NULL";
	 if (strlen($rgusuariodataemissao) != 0)
		$rgemissao = "'$rgusuariodataemissao'";

		$ctpsemissao = "NULL";
		if (strlen($carteiratrabusuarioemissao) != 0)
		$ctpsemissao = "'$carteiratrabusuarioemissao'";
		*/

	$sql1 = "INSERT INTO cabcomum.pessoa
             (
	              id,
	              nome,
	              nome_mae,
	              idsexo,
	              data_nascimento,
	              idmunicipio_nascimento,
	              idpais_nascimento,	              
	              idnacionalidade,
	              idraca,
	              idescolaridade,
	              email,
	              data_criacao,
	              data_atualizacao,
	              fone_residencial,
	              fone_celular,
	              fone_recado,
	              fone_trabalho,
	              idestado_nascimento,
	              idref_sistema,
	              idpessoa_sistema,
	              beneficiario_bolsa_familia
             )
             VALUES
             (
             $idpessoa,
	             '$nomeusuario',
	             '$nomemaeusuario',
	             '$sexousuario',
	             '$datanascimentousuario',
	             $codigomunicipiousuario,
	             $codigopaisusuario,
	             $nacionalidadeusuario,
	             $corracausuario,
	             $escolaridade,
				 '$emailusuario',
				 $datacadastrousuario,
				 $dataatualizacaousuario,
				'$telefonefixousuario',
				'$telefonecelularusuario',
				'$telefonerecadousuario', 
				$telefonetrabalhousuario,
				$codigoufusuario,
				$idref_sistema,
				 '$idpessoa_sistema',
				 $beneficiario_bolsa_familia
             )";

				 //echo "<br>$sql1<br>"; die();
				 //echo "<br>Inserted: $nomeusuario";

				 $result1 = pg_query ($dbh,$sql1);
				 if(!$result1) {
				 	$result3 = pg_query($dbh, "ROLLBACK WORK");
				 	echo "<br>$sql1<br>";
				 	die("Erro na carga da tabela pessoa");
				 }


				 ///     4. Recupera e grava o endereco residencial em pessoa_endereco

				 if (strlen($row0["logradouronomeusuario"]) != 0)
				 {
				 	$sql1 = "INSERT INTO cabcomum.pessoa_endereco
        		(
              		idpessoa,
	              	idtipo_endereco,
	              	idtipo_logradouro,
	             	logradouro,
	              	numero,
	              	complemento,
	              	bairro,
	              	idmunicipio,
	              	cep,
	              	referencia,
	              	$geoiguacutab
	              	justificativa_sem_geoiguacu,
	              	idestado
              	)
              	VALUES
              	(
              	$idpessoa,
              		1,
              		$logradourotipousuario,
              		'$logradouronomeusuario',
              		'$newlogradouronumerousuario',
              		'$logradourocomplementousuario',
              		'$logradourobairrousuario',
              		$logradourocidadeusuario,
              		'$logradourocepusuario',
              		'$logradouropontoreferenciausuario',
              		$geoiguacuvalor
              		'$logradourojustificativausuario',
              		$logradouroufusuario
              )";

              		$result1 = pg_query($dbh, $sql1);

              		//echo "<br>$sql1<br>";
              		if(!$result1) {
              			$result3 = pg_query($dbh, "ROLLBACK WORK");
              			echo "<br><br>$sql1<br><br>";
              			die("Erro na carga da tabela pessoa_endereco residencial");
              		}
				 }

				 ///     5. Recupera e grava o endereco de correspondencia em pessoa_endereco

				 if (strlen($row0["logradourocorrespnomeusuario"]) != 0)
				 {
				 	$sql1 = "INSERT INTO cabcomum.pessoa_endereco
              	(
              		idpessoa,
	              	idtipo_endereco,
	              	idtipo_logradouro,
	             	logradouro,
	              	numero,
	              	complemento,
	              	bairro,
	              	idmunicipio,
	              	cep,
	              	referencia,
	              	$correspgeoiguacutab
	              	justificativa_sem_geoiguacu,
	              	idestado
              	)
              	VALUES
              	(
             		$idpessoa,
              		2,
              		$logradourocorresptipousuario,
              		'$logradourocorrespnomeusuario',
              		'$newlogradourocorrespnumerousuario',
              		'$logradourocorrespcomplementousuario',
              		'$logradourocorrespbairrousuario',
              		$logradourocorrespcidadeusuario,
              		'$logradourocorrespcepusuario',
              		'$logradourocorresppontoreferenciausuario',
              		$correspgeoiguacuvalor
              		'$logradourocorrespjustificativausuario',
              		$logradourocorrespufusuario
              	)";
              		$result1 = pg_query($dbh,$sql1);
              		 
              		//echo "<br>$sql1<br>";
              		if(!$result1) {
              			$result3 = pg_query($dbh, "ROLLBACK WORK");
              			echo "<br>$sql1<br>";
              			die("Erro na carga da tabela pessoa_endereco_correspondencia");
              		}
				 }

				 /// NAO EXISTEM DADOS NA TABELA DE RESPONSAVEIS. DESSA FORMA, NAO IREMOS
				 /// IMPORTAR ESSES DADOS. SOMENTE SER�O IMPORTADOS OS DADOS CONTIDOS
				 /// NA TABELA MAT_ALUNO.

				 	
				 /// NIS
				 if ($row0["nis"])
				 {
				 	$sql1 = "INSERT INTO cabcomum.pessoa_documento
        		(
              		idpessoa,
              		idtipo_documento,
              		numero,
              		apresentado
              	)
              	VALUES
              	(
              	$idpessoa,
              		4,
              		'$nisusuario',
              		'$nisusuarioapresentada'
              	)";

              	$result1 = pg_query($dbh,$sql1);
              	if(!$result1) {
              		$result3 = pg_query($dbh, "ROLLBACK WORK");
              		echo "<br>$sql1<br>";
              		die("Erro na carga da tabela pessoa_documernto NIS");
              	}
				 }
				  
				  
				 ///     8. Recupera e grava dados de cpf em pessoa_documento
				 if ($row0["cpf"])
				 {
				 	$sql1 = "INSERT INTO cabcomum.pessoa_documento
        		(
              		idpessoa,
              		idtipo_documento,
              		numero,
              		apresentado
              	)
              	VALUES
              	(
              	$idpessoa,
              		5,
              		'$cpfusuario',
              		'$cpfapresentada'
              	)";

              	$result1 = pg_query($dbh,$sql1);
              	if(!$result1) {
              		$result3 = pg_query($dbh, "ROLLBACK WORK");
              		echo "<br>$sql1<br>";
              		die("Erro na carga da tabela pessoa_documernto cpf");
              	}
				 }


				 /// . Recupera e grava dados de cadsus em pessoa_documento
				 if ($row0["cadsus"])
				 {
				 	$sql1 = "INSERT INTO cabcomum.pessoa_documento
	              (
	     	        idpessoa,
	        	    idtipo_documento,
	             	numero,
	              	apresentado
	              )
	              VALUES
	              (
	              $idpessoa,
	              	6,
	              	'$nrocadsususuario',
	              	'$nrocadsusapresentada'
	              )";

	              $result1 = pg_query($dbh,$sql1);

	              if(!$result1) {
	              	$result3 = pg_query($dbh, "ROLLBACK WORK");
	              	echo "<br>$sql1<br>";
	              	die("Erro na carga da tabela pessoa_documernto cadsus");
	              }
				 }

				 /*
				  ///      9. Recupera e grava dados da carteira de habilitacao em pessoa_documento
				  if ($row0["cartmotoristausuario"])
				  {
	   		$sql1 = "INSERT INTO cabcomum.pessoa_documento
	   		(
	   		idpessoa,
	   		idtipo_documento,
	   		numero,
	   		apresentado
	   		)
	   		VALUES
	   		(
	   		$idpessoa,
	   		8,
	   		'$cartmotoristausuario',
	   		'$cartmotoristaapresentada'
	   		)";

	   		$result1=pg_query($dbh,$sql1);
	   		if(!$result1) {
	   		$result3 = pg_query($dbh, "ROLLBACK WORK");
	   		echo "<br>$sql1<br>";
	   		die("erro na carga da tabela pessoa_documernto CNH");
	   		}
	   		}
	   		*/
				  
	    /// CERTIDAO
				 if ($row0["certidaotipo"])
				 {
	   		$sql1 = "INSERT INTO cabcomum.pessoa_documento
	        		(
	             	 	idpessoa,
	              		idtipo_documento,
	              		numero,
	              		idtipo_certidao,
	              		folha,
	              		termo,
	              		livro,
	              		cartorio,
	              		apresentado
	              	)
	              	VALUES
	              	(
	              	$idpessoa,
	              		9,
	              		NULL,
	              		$certidaotipousuario,
	              		'$certidaofolhausuario',
	              		'$certidaotermousuario',
	              		'$certidaolivrousuario',
	              		'$certidaocartoriousuario',
	              		'$certidaocartoriousuarioapresentada'
	              	)";

	              		$result1 = pg_query($dbh,$sql1);
	              		if (!$result1) {
	              			$result3 = pg_query($dbh, "ROLLBACK WORK");
	              			echo "<br>$sql1<br>";
	              			die("Erro na carga da tabela pessoa_documernto CERTIDAO");
	              		}
	    }

	    /*
	     /// TITULO DE ELEITOR
	     if ($row0["titeleitorusuario"])
	     {
	   		$sql1 = "INSERT INTO cabcomum.pessoa_documento
	   		(
	   		idpessoa,
	   		idtipo_documento,
	   		numero,
	   		zona,
	   		secao,
	   		apresentado
	   		)
	   		VALUES
	   		(
	   		$idpessoa,
	   		10,
	   		'$titeleitorusuario',
	   		'$titeleitorusuariozona',
						'$titeleitorusuariosecao',
						'$titeleitorusuarioapresentada'
						)";

						$result1=pg_query($dbh,$sql1);
						if(!$result1) {
						$result3 = pg_query($dbh, "ROLLBACK WORK");
						echo "<br>$sql1<br>";
						die("erro na carga da tabela pessoa_documernto Titulo de Eleitor");
						}
						}
						*/
	    /// coment
	    // agora salva na tabela mat_alunoEspecifico
	    $linha = $row0;
	    $sql = "INSERT INTO educacao.\"mat_alunoEspecifico\"
			(
				\"codaluno\",
				\"blprimeiramatricula\",
				\"dtdeferido\",
				\"pathfotoaluno\",
				\"inep\",		
				\"blnecessidadesespeciais\",
				\"dtingresso\",
				\"blalunotransferencia\",
				\"tpescolaorigem\",
				\"nomeescolaorigem\",
				\"escolaorigemoutros\",
				\"blbolsafamilia\",
				\"responsavelmatricula\",		
				\"blenderecocorrespondencia\",		
				\"nomeescolaanterior\",
				\"codigoescolaanterior\",
				\"bairroescolaanterior\",
				\"tipoescolaanterior\",
				\"ultimaescolaridadealuno\",
				\"blaprovadoultimaescolaridade\",
				\"turmaanterior\",
				\"turnoanterior\",
				\"blcompravoescolaridadeanterior\",
				\"blparticipouhorariointegral\",
				\"turnopreferencia\",
				\"bldesejahorariointegral\",
				\"blalunopasseescolar\",
				\"blresponsavelpasseescolar\",		
				\"blPaiTemDocumentos\",
				\"nomePai\",
				\"blMaeTemDocumentos\",
				\"nomeMae\",
				\"blResponsavelTemDocumentos\",
				\"nomeResponsavel\",
				\"dadoCenso\",		
				\"grauParentescoResponsavel\",
				\"blescolaanteriornomunicipio\",
				\"certidaomatricula\",
				\"escolaanterioruf\",
				\"escolaanteriorcidade\",
				idpessoa			
			) VALUES (	
				" . geraCampo($linha,"codaluno") . ",
				" . geraCampo($linha,"blprimeiramatricula") . ",
				" . geraCampo($linha,"dtdeferido") . ",
				" . geraCampo($linha,"pathfotoaluno") . ",
				" . geraCampo($linha,"inep") . ",
				" . geraCampo($linha,"blnecessidadesespeciais") . ",
				" . geraCampo($linha,"dtingresso") . ",
				" . geraCampo($linha,"blalunotransferencia") . ",
				" . geraCampo($linha,"tpescolaorigem") . ",
				" . geraCampo($linha,"nomeescolaorigem") . ",
				" . geraCampo($linha,"escolaorigemoutros") . ",
				" . geraCampo($linha,"blbolsafamilia") . ",
				" . geraCampo($linha,"responsavelmatricula") . ",
				" . geraCampo($linha,"blenderecocorrespondencia") . ",
				" . geraCampo($linha,"nomeescolaanterior") . ",
				" . geraCampo($linha,"codigoescolaanterior") . ",
				" . geraCampo($linha,"bairroescolaanterior") . ",
				" . geraCampo($linha,"tipoescolaanterior") . ",
				" . geraCampo($linha,"ultimaescolaridadealuno") . ",
				" . geraCampo($linha,"blaprovadoultimaescolaridade") . ",
				" . geraCampo($linha,"turmaanterior") . ",
				" . geraCampo($linha,"turnoanterior") . ",
				" . geraCampo($linha,"blcompravoescolaridadeanterior") . ",
				" . geraCampo($linha,"blparticipouhorariointegral") . ",
				" . geraCampo($linha,"turnopreferencia") . ",
				" . geraCampo($linha,"bldesejahorariointegral") . ",
				" . geraCampo($linha,"blalunopasseescolar") . ",
				" . geraCampo($linha,"blresponsavelpasseescolar") . ",
				" . geraCampo($linha,"blPaiTemDocumentos") . ",
				" . geraCampo($linha,"nomePai") . ",
				" . geraCampo($linha,"blMaeTemDocumentos") . ",
				" . geraCampo($linha,"nomeMae") . ",
				" . geraCampo($linha,"blResponsavelTemDocumentos") . ",
				" . geraCampo($linha,"nomeResponsavel") . ",
				" . geraCampo($linha,"dadoCenso") . ",
				" . geraCampo($linha,"grauParentescoResponsavel") . ",
				" . geraCampo($linha,"blescolaanteriornomunicipio") . ",
				" . geraCampo($linha,"certidaomatricula") . ",
				" . geraCampo($linha,"escolaanterioruf") . ",
				" . geraCampo($linha,"escolaanteriorcidade") . ",
				" . $idpessoa . "
			)";
	    $result1 = pg_query($dbh,$sql);
	    if (!$result1) {
	    	$result3 = pg_query($dbh, "ROLLBACK WORK");
	    	echo "<br>$sql<br>";
	    	die("Erro na carga da tabela mat_alunoEspecifico");
	    }
	     
	    $gravados = $gravados+1;
}
// agora migra tabela alunoEscola
$sql = "
	INSERT INTO educacao.\"mat_alunoEscola\"(
            \"codAluno\", \"codEscola\", \"dataEntrada\", \"escolaAtual\", escolaridadealuno)
  SELECT \"codAluno\", \"codEscola\", \"dataEntrada\", \"escolaAtual\", escolaridadealuno
  FROM educacao.\"mat_alunoEscolaTMP\" t INNER JOIN educacao.mat_aluno a
	ON(t.\"codAluno\" = a.\"codaluno\")
  WHERE \"dadoCenso\" = true
";
$result1 = pg_query($dbh,$sql);
if (!$result1) {
	$result3 = pg_query($dbh, "ROLLBACK WORK");
	echo "<br>$sql1<br>";
	die("Erro na carga da tabela mat_alunoEscola");
}

// e agora migra tabela alunoNecessidadeEspecial
$sql = "
	INSERT INTO educacao.\"mat_alunoNecessidadeEspecial\"(
            cod_aluno, cod_necessidade)
    SELECT cod_aluno, cod_necessidade
  	FROM educacao.\"mat_alunoNecessidadeEspecialTMP\" t INNER JOIN educacao.mat_aluno a
	ON(t.cod_aluno = a.\"codaluno\")
  WHERE \"dadoCenso\" = true
";
$result1 = pg_query($dbh,$sql);
if (!$result1) {
	$result3 = pg_query($dbh, "ROLLBACK WORK");
	echo "<br>$sql1<br>";
	die("Erro na carga da tabela mat_alunoNecessidadeEspecial");
}

$result3 = pg_query($dbh, "COMMIT WORK");
echo "\n</br>Gravados final: $gravados\n";
pg_close ($dbh);


echo "</br>Importa��o finalizada! Agora execute o script sql para redefinir as constraints para a nova tabela de alunos.";
