<!doctype html>
<html lang=fr>

<head>
	<title>MAJ 42</title>
	<meta charset=utf-8> 
	<meta name=viewport content="width=device-width, initial-scale=1">
	
</head>
	<?php
	echo"<B><br/>===================================";
	echo"<br/>= Mise à jour Version 42 PASSPRO  =";
	echo"<br/>===================================<br/></B>";
	echo "<br/><br/>";
	echo"<br/>===================================";
	echo"<br/>= Sauvegarde de la BDD            =";
	echo"<br/>===================================<br/>";
	include('z_svgdebdd.php');
	echo $log;
	echo '<br/><br/>Sauvegarde effectuée<br/>';
	echo 'La sauvegarde se trouve dans \svgde sous le nom "BKP-date jour-nombdd.sql.gz"';

	// MAJ vers version 41
	echo"<B><br/>===================================";
	echo"<br/>= Prise en compte lycée origine   =";
	echo"<br/>===================================<br/></B>";
	require ('connect/mysqli_connect.php');
	
	// verif presence champ codeetab

	$q="SELECT codeEtablissement FROM acteur";
	$result=mysqli_query($dbcon,$q);     //or die('erreur SQL '.mysqli_error($dbcon)//)
	if ($result==TRUE)
	{
		echo '<br/><B>Cette mise à jour a dèjà été effectuée</B>';	
	}
	else
	{
		echo "RAJOUT du champ Lycée dans Auteur<br/>";
		$q= "	ALTER TABLE acteur 
						ADD 	codeEtablissement	varchar(10)
						NOT NULL DEFAULT 'BTSCG'; ";
						
		$result=mysqli_query($dbcon,$q);  //or die('erreur SQL '.mysqli_error($dbcon))
		if ($result==TRUE)
		{
			echo 'Le champ codeEtablissement a été rajouté à la table acteur avec comme valeur BTSCG<br/>';
		}
		else
		{
			echo 'Le champ codeEtablissement a déjà été rajouté à la table acteur avec comme valeur BTSCG<br/>';
			echo "<br/><br/><br/><br/>";
		}

		// CREATION TABLE Etablissemenet
		echo "<br/><br/>CREATION TABLE Etablissement <br/>";
		$requete="CREATE TABLE IF NOT EXISTS `etablissement` (
		`codeEtab` varchar(10)  NOT NULL,
		`nomEtab` text  NOT NULL,
		`nomcontactEtab` text,
		`mailContactetab` text,
		`adresseEtab` text,
		`cpEtab` text,
		`VilleEtab` text ,
		`DateEnr` date ,
		PRIMARY KEY (`codeEtab`)
			)
		 ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;";
		
		$req=mysqli_query($dbcon,$requete)or die('erreur SQL '.mysqli_error($dbcon));
		if ($req==TRUE)
		{
			echo "<br/> La table etablissement existe ";
		}
		else
		{
			echo"<br/>La ERERUEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEUUUUUURRRRRRRRRRRRRR";
		}
		echo "<br/><br/><br/><br/>";
		//Contenu de la table `etablissement`
		echo"Rajout d'un établissement par défaut<br/><br/>";
		$requete="INSERT INTO `etablissement` (`codeEtab`, `nomEtab`, `nomcontactEtab`, `mailContactetab`, `adresseEtab`, `cpEtab`, `VilleEtab`, `DateEnr`) VALUES
		('BTSCG', 'AC TOULOUSE', 'Defaut', 'defaut', '', '', '', '2015-05-06');";
		$req=mysqli_query($dbcon,$requete); // or die('erreur SQL '.mysqli_error($dbcon))
		if ($req==TRUE)
		{
			echo "Un établissement par défaut (BTSCG) a été ajouté ";
		}
		else
		{
			echo '<br/>L\'établissement par défaut (BTSCG) est déjà existant';
		}
	}
	
	echo"<B><br/>===================================";
	echo"<br/>= maj de la table CORRESPONDRE    =";
	echo"<br/>= prise en compte des activités   =";
	echo"<br/>===================================<br/></B>";
	
	$sql    = 'RENAME TABLE `correspondre` TO `correspondre_old`';
	$result = mysqli_query($dbcon, $sql);

	if(!$result)     // la requete a déjà été faite et correspondre_old existe déjà
	{
		echo '<B>Cette mise à jour a dèjà été effectuée</B><br/><br/><br/>';	
	}	
	else
	{
		echo'<br/> Création table correspondre_old (svgde table correspondre)<br/>';
		$sql = "SHOW TABLES";
		$result = mysqli_query($dbcon,$sql)or die('erreur SQL2'.mysqli_error($dbcon));
		if(!$result)
		{
			echo "Erreur DB, impossible de lister les tables\n";
			echo 'Erreur MySQL : ' . mysqli_error();
			exit;
		}
		echo'Vérification table correspondre_old < br/><br/>';
		while($row = mysqli_fetch_array($result, MYSQLI_BOTH))
		{
			
			if($row[0] == 'correspondre_old')
			{
				echo'la Table correspondre a été sauvegardée sous le nom correpondre_old<br/>';
			}
		}
		mysqli_free_result($result);
		$sql    = 'CREATE TABLE IF NOT EXISTS correspondre (numSP INT NOT NULL , numActivite INT NOT NULL , PRIMARY KEY (numSP,numActivite));';
		$result = mysqli_query($dbcon,$sql)or die('erreur SQL3 '.mysqli_error($dbcon));
		if($result === TRUE)
		{
			echo 'Création de la nouvelle table correspondre(numSP,numActivite)<br/><br/>';
		}
		//test nbre ligne correspondre
		$q = "SELECT * FROM correspondre_old ORDER BY numSP;";
		$result = mysqli_query ($dbcon, $q) or die('erreur SQL4 '.mysqli_error($dbcon));
		$tab_comp = [];
		$i = 0;
		while($row = mysqli_fetch_array($result, MYSQLI_BOTH))
		{
			$i++;
			$tab_comp[$i] = $row;
			// echo $i.'    '.$tab_old[$i][0].' '.$tab_old[$i][1].'<br/>';
		}
		$maxi = $i;
		$i = 0;
		$activite = 0; // on va tester les activités
		$SP=0; // et les SP
		$tab_act=[];  // nvelle table avec seulement les activités
		$j=1;
		$tab_act[$j][0]=0;
		$tab_act[$j][1]=0;
		$ligne="";
		while($i < $maxi)
		{
			$i++;
			$SP=$tab_comp[$i][0];
			$activite = substr($tab_comp[$i][1],0,2);
			//echo $i.'   '.$SP.'-'.$activite.'<br/>';
			
			  // changement numéro SP
			if (($tab_act[$j][1]!=$activite) or ($tab_act[$j][0]!=$SP)) // nvelle activité 
			{
				$j++;		//nouvelle ligne $j
				$tab_act[$j][0]=$SP ;
				$tab_act[$j][1]=$activite;	
				//echo 'nvlle ligne'.$tab_act[$j][0].'-'.$tab_act[$j][1].'<br/>';
				$ligne= $ligne.'('.$SP.','.$activite.'),';
			}
		}
		$ligne=substr($ligne,0,-1) ; //enlève la dernière virgule
		$q='INSERT INTO correspondre (numSP,numActivite) VALUES'.$ligne;
		$result = mysqli_query ($dbcon, $q) or die('erreur SQL5 '.mysqli_error($dbcon));
	}
	echo"<br/>===================================";
	echo"<br/>= Contenu de la table CORRESPONDRE=";
	echo"<br/>===================================<br/>";
	$q='SELECT numSP,numActivite FROM correspondre';
	if($result = mysqli_query ($dbcon, $q) or die('erreur SQL6 '.mysqli_error($dbcon)))
	{
		$nblignes = mysqli_num_rows($result);
		echo '<br/><br/>'.$nblignes.' lignes sont présentes dans la table correspondre : <br/>';
		echo '<br/>Voici les 10 premières lignes<br/>';
		$compte=0;
		while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)and $compte <10)
		{
			$compte++;
			echo '<br/>'.$row['numSP'].'-'.$row['numActivite'];
		}
	}
	
	echo '<br/>';
	echo '<br/>====================================================
			<br/>= MAJ TABLE ACTIVITE 									     =
			<br/>= (modification des : ou des - superflus)          =
			<br/>= Permet d\'harmonier l\'impression du passeport   =
			<br/>====================================================';
	echo '<br/><br/> TRUNCATE activite';
	$q='TRUNCATE activite';
	$result = mysqli_query ($dbcon, $q) or die('erreur SQL7 '.mysqli_error($dbcon));
	
	echo '<br/><br/> Insertion des champs <br/>';
	$q='	INSERT INTO `activite` (`Numact`, `Numproc`, `LibelleAct`) VALUES
			(11, 1, \'Activité 1.1 Analyse du système d\'\'information comptable (SIC\'),
			(12, 1, \'Activité 1.2 Contrôle des documents commerciaux\'),
			(13, 1, \'Activité 1.3 Enregistrement et suivi des opérations comptables relatives aux clients\'),
			(14, 1, \'Activité 1.4 Production de l\'\'information relative au risque client\'),
			(15, 1, \'Activité 1.5 Enregistrement et suivi des opérations relatives aux fournisseurs\'),
			(16, 1, \'Activité 1.6 Réalisation des rapprochements bancaires (comptabilité de trésorerie)\'),
			(17, 1, \'Activité 1.7 Contribution à la performance du processus "Contrôle et traitement comptable des opérations commerciales " et la recherche de la sécurisation des opérations\'),
			(21, 2, \'Activité 2.1 Conduite d\'\'une veille réglementaire nécessaire à l\'\'établissement des comptes\'),
			(22, 2, \'Activité 2.2 Réalisation des travaux comptables relatifs à la constitution de l\'\'entreprise et évolution du capital\'),
			(23, 2, \'Activité 2.3 Réalisation des opérations d\'\'inventaire\'),
			(24, 2, \'Activité 2.4 Production des comptes annuels et des situations intermédiaires\'),
			(25, 2, \'Activité 2.5 Suivi comptable des travaux relatifs à l\'\'affectation des résultats\'),
			(26, 2, \'Activité 2.6 Sauvegarde et archivage des documents comptables\'),
			(27, 2, \'Activité 2.7 Contribution à la production d\'\'informations nécessaires à la consolidation\'),
			(28, 2, \'Activité 2.8 Contribution à la performance du processus " Contrôle et production de l\'\'information financière " et la recherche de la sécurisation des opérations\'),
			(31, 3, \'Activité 3.1 Conduite de la veille fiscale\'),
			(32, 3, \'Activité 3.2 Traitement des opérations relatives à la TVA\'),
			(33, 3, \'Activité 3.3 Traitement des opérations relatives aux impôts directs\'),
			(34, 3, \'Activité 3.4 Traitement des cas particuliers et autres impôts\'),
			(41, 4, \'Activité 4.1 Conduite de la veille sociale\'),
			(42, 4, \'Activité 4.2 Préparation des formalités administratives de gestion du personnel et information des salariés\'),
			(43, 4, \'Activité 4.3 Gestion comptable de la paie et information des salariés\'),
			(44, 4, \'Activité 4.4 Contribution à la performance du processus " Gestion des relations sociales " et la recherche de la sécurisation des opérations\'),
			(51, 5, \'Activité 5.1 Identification de la structure des coûts\'),
			(52, 5, \'Activité 5.2 Calcul, contrôle et analyse des coûts de revient des activités, produits et services de l\'\'organisation\'),
			(53, 5, \'Activité 5.3 Prévision et suivi de l\'\'activité\'),
			(54, 5, \'Activité 5.4 Mise en place d\'\'une gestion budgétaire\'),
			(55, 5, \'Activité 5.5 Elaboration des tableaux de bord opérationnels\'),
			(61, 6, \'Activité 6.1 Analyse de la performance de l\'\'organisation\'),
			(62, 6, \'Activité 6.2 Analyse de la rentabilité de l\'\'investissement\'),
			(63, 6, \'Activité 6.3 Analyse de l\'\'équilibre financier de l\'\'organisation\'),
			(64, 6, \'Activité 6.4 Analyse de la trésorerie et de la solvabilité de l\'\'organisation\'),
			(65, 6, \'Activité 6.5 Analyse des modalités de financement\'),
			(66, 6, \'Activité 6.6 Analyse dynamique des flux financiers\'),
			(71, 7, \'Activité 7.1 Recherche d\'\'information\'),
			(72, 7, \'Activité 7.2 Gérer les informations de l\'\'organisation\'),
			(73, 7, \'Activité 7.3 Contribuer à la qualité du système d\'\'information\');';
	
	if($result = mysqli_query ($dbcon, $q) or die('erreur SQL6 '.mysqli_error($dbcon)))
	{
		echo '<br/><br/> Mise à jour terminée';
	}

?>
</html>