<?php
$MODULE="Activité";
$TITLE="Récupération activité";
$DFTENDSTATUS="OK";
$ARGS="-raz";
/** Laisser les lignes 2 à 5 sans changer la casse et sans espaces et dans cet ordre
 * car le script est lu et analysé quand il est exécuté via .exe ou Jenkins
 * pour gestion des fichiers .pid dans system\batch\logs
 */

require_once("../../../modules/base/php/lib/cti/Batch/iCTI_batch_common.php" );
require_once("../../../modules/base/php/lib/cti/Environnement/Environnement.class.php");
require_once("../../../modules/base/php/lib/cti/Database/Database2Factory.class.php");
require_once("../../../modules/base/php/classSimpleXML.php");
require_once("../../../modules/outils/php/httpService_cacheManager_cleanCache.php");
require_once("../../base/php/classDatabase.php");

global $ENDSTATUS;
global $iCTI_connexion;
global $cti_args;
global $nbE;

// Temps d'exécution ++ pour éviter que les imports sur les gros environnements ne plantent par timeout
set_time_limit(36000);

logStartMsg("RECALCUL_ENCOURS");

// Arguments transmis ?
$cti_args = new CTI_Args_class();

if (iCTI_connect()) {

	// création du répertoire utilisé par la fonction base.cti_copy_table(i_fromdblink text, i_fromtable text, i_totable text)
	if (!is_dir('C:\TEMP')) {
		mkdir('C:\TEMP');
	}

	calcul_encours();
		
}

iCTI_disconnect();


// nettoyage du cache
logInfoMsg("Nettoyage cache");
cleanAllCache("iCTI_activite", TRUE);

logEndMsg("RECALCUL ENCOURS");

// récupération historique
function calcul_encours() {

	global $iCTI_connexion;
	global $cti_args;
	
	// Chargement requetes SQL
	$environmentVars=array();

	$sqlOptions=array();

	$cti_sqlStatements = new CTI_SqlStatements_class("iCTI_calcul_encours.XML",$iCTI_connexion,$environmentVars,$sqlOptions);
	
	$cti_sqlStatements->executeStatementsNode("EXEC");

}

function iCTI_connect() {

global $iCTI_connexion;
global $iCTI_cache;

	// Chargement des paramètres et connexion BD
	$iCTI_connexion = Database2Factory::getInstance(Environnement::PROVIDER_CTI);
	$ret = $iCTI_connexion->connect();
	if (!$ret) {
		logErrorMsg("La connexion PostgreSQL iCTI a échoué");
		return FALSE;
	}
	
	return $ret;
}

function iCTI_disconnect() {

	global $iCTI_connexion;
	$iCTI_connexion->close();
}

?>