exec("SELECT oid FROM pmsi.p_imports WHERE oid = $import_id "); if ($result != false) { $record = $database->nextRecordInto(); if ($record != FALSE) { $OK = TRUE; } } if ($OK == TRUE) { // Controle en interactif if ($option == "C") { $sqlcmd = ""; $sqlcmd = "UPDATE pmsi.p_imports SET traitement_a_faire = 'C' WHERE oid = $import_id "; $result = $database->exec($sqlcmd); $submitCmd = "..\import_rss_rsf\iCTI_import_rss_rsf.exe"; $return = exec($submitCmd); $result = $database->exec("SELECT nb_erreurs, nb_avertissements FROM pmsi.p_imports WHERE oid = $import_id "); if ($result != false) { $record = $database->nextRecordInto(); if ($record != FALSE) { $nb_erreurs = $record[0] + 0; $nb_avertissements = $record[1] + 0; if ($nb_erreurs > 0) { $returnCode = "KO"; $returnTexte = "$nb_erreurs erreur(s) grave(s)"; if ($nb_avertissements > 0) { $returnTexte = $returnTexte . ", $nb_avertissements avertissement(s)"; } } else { if ($nb_avertissements > 0) { $returnCode = "ATT"; $returnTexte = "$nb_avertissements avertissement(s)"; } } } } } // Génération en batch if ($option == "G") { // Sauf si erreurs blocantes $nb_erreurs_blocantes = 0; $traitement_en_cours = 0; $sqlcmd = "SELECT SUM(CASE WHEN import_id = $import_id AND gravite >= 9 THEN 1 ELSE 0 END) as count_gravite9, count(DISTINCT CASE WHEN etat_en_cours = 'G' THEN import_id ELSE NULL END) as count_generationencours FROM pmsi.p_imports LEFT JOIN pmsi.p_imports_controles ON import_id = p_imports.oid"; $result = $database->exec($sqlcmd); if ($result != false) { $record = $database->nextRecordInto(); if ($record != FALSE) { $OK = TRUE; $nb_erreurs_blocantes = (int)$record[0]; $traitement_en_cours = (int)$record[1]; } else { } } else { $returnCode = "KO"; $returnTexte = "Accès à la base iCTI en erreur"; } if ($returnCode != "KO") { if ($nb_erreurs_blocantes > 0 || $traitement_en_cours > 0) { $returnCode = "KO"; if ($nb_erreurs_blocantes > 0) { if ($nb_erreurs_blocantes == 1) { $returnTexte = "1 erreur blocante empêche la génération"; } else { $returnTexte = "$nb_erreurs_blocantes erreurs blocantes empêchent la génération"; } } else { $returnTexte = "Au moins un traitement de génération est actif actuellement"; } } else { $sqlcmd = ""; $sqlcmd = "UPDATE pmsi.p_imports SET traitement_a_faire = 'G' WHERE oid = $import_id "; $result = $database->exec($sqlcmd); $exe = rootDir() . "\modules\pmsi\import_rss_rsf\iCTI_import_rss_rsf.exe"; $args = ""; if ($option_expert == "false") {$args .= " -xx";} if ($option_essentiels == "false") {$args .= " -xe";} if ($option_complements == "false") {$args .= " -xc";} if (strlen($args) > 0) { $args = " \"" . $args . "\"";} $submitCmd = "..\..\outils\exe\iCTI_submitJob.exe \"$exe\"$args"; $return = exec($submitCmd); } } } // suppression if ($option == "D") { $sqlcmd = ""; $sqlcmd = "DELETE FROM pmsi.p_imports WHERE oid = $import_id; "; $sqlcmd = $sqlcmd . "DELETE FROM pmsi.p_imports_data WHERE import_id = $import_id; "; $sqlcmd = $sqlcmd . "DELETE FROM pmsi.p_imports_controles WHERE import_id = $import_id; "; $result = $database->exec($sqlcmd); } } else { $returnCode = "KO"; $returnTexte = "Import n° $import_id non trouvé"; } } else { $exe = rootDir() . "\modules\pmsi\import_rss_rsf\iCTI_import_rss_rsf_en_cours.exe"; $submitCmd = "..\..\outils\exe\iCTI_submitJob.exe \"$exe\""; $return = exec($submitCmd); } $httpString = ""; $httpString = $httpString . ""; $httpString = $httpString . "\n"; $httpString = $httpString . "\n"; $httpString = compress64($httpString); echo "$httpString"; ?>