dossiers PMSI non expédiés permet de compléter la base de données issue des fichiers RSS/RSF envoyés à ePMSI avec les dossiers groupés de la base de production qui ne sont pas présents dans ces fichiers RSS/RSF envoyés à ePMSI."
encours_pmsi_description_GUI.htmlText = encours_pmsi_description_GUI.htmlText + "
ATTENTION"
encours_pmsi_description_GUI.htmlText = encours_pmsi_description_GUI.htmlText + "
Ce traitement peut s'exécuter automatiquement toutes les nuits"
encours_pmsi_description_GUI.htmlText = encours_pmsi_description_GUI.htmlText + "
Si vous souhaitez néanmoins le lancer, il s'exécutera en batch et durera quelques minutes."
//encours_pmsi_description_GUI.htmlText = encours_pmsi_description_GUI.htmlText + "
Durant le temps de synchronisation, les dossiers non expédiés précédemment importés ne seront pas disponibles dans les tableaux."
encours_pmsi_last_import_GUI.text = encours_node.@last_encours_active.toString()
if (encours_pmsi_last_import_GUI.text == "")
{
encours_pmsi_last_import_GUI.text = encours_node.@last_encours_endded.toString()
}
}
setTimeout(setBuildComplete, 1000);
}
}
private function setBuildComplete():void
{
buildComplete = true;
}
private function resize():void
{
}
private function selectImportLine():void
{
download_menu_items.refresh()
download_menu_GUI.selectedIndex = 0
download_menu_current_data_type = "";
download_popup_GUI.label = "Télécharger fichier";
this.validateNow();
}
public function download_menu_items_filterFunction(item:Object):Boolean
{
if (imports_list_GUI.selectedItem == null)
{
return false;
}
if (imports_list_GUI.selectedItem.zin_data_size == 0 && item.data == "ZIN")
{
return false;
}
if (imports_list_GUI.selectedItem.zou_data_size == 0 && item.data == "ZOU")
{
return false;
}
if (imports_list_GUI.selectedItem.zif_data_size == 0 && item.data == "ZIF")
{
return false;
}
if (imports_list_GUI.selectedItem.rss_data_size == 0 && item.data == "RSS")
{
return false;
}
if (imports_list_GUI.selectedItem.rsf_data_size == 0 && item.data == "RSF")
{
return false;
}
if (imports_list_GUI.selectedItem.fcp_data_size == 0 && item.data == "FCP")
{
return false;
}
if (imports_list_GUI.selectedItem.med_data_size == 0 && item.data == "MED")
{
return false;
}
if (imports_list_GUI.selectedItem.rssmed_data_size == 0 && item.data == "RSSMED")
{
return false;
}
if (imports_list_GUI.selectedItem.rssnom_data_size == 0 && item.data == "RSSNOM")
{
return false;
}
if (imports_list_GUI.selectedItem.actmed_data_size == 0 && item.data == "ACTMED")
{
return false;
}
if (imports_list_GUI.selectedItem.vsj_data_size == 0 && item.data == "VSJ")
{
return false;
}
if (imports_list_GUI.selectedItem.vse_data_size == 0 && item.data == "VSE")
{
return false;
}
if (imports_list_GUI.selectedItem.tsp_data_size == 0 && item.data == "TSP")
{
return false;
}
return true;
}
private function on_tabNavigator_change():void
{
if (tabNavigator_GUI.selectedIndex == 1 && new_import_version == true)
{
new_import_getFiles()
}
}
private function askImportFiles():void
{
CTI_Utilitaires.question_yesNo("Import RSS RSF", "Confirmez vous le traitement des fichiers choisis ?", responseFunction)
function responseFunction(event:CloseEvent):void
{
if (event.detail != Alert.YES)
{
return;
}
new_import_filesValidation()
}
}
public function displayRapport():void
{
if (imports_list_GUI.selectedItem != null)
{
var urlRequest:URLRequest = new URLRequest();
urlRequest.url = "modules/pmsi/php/PMSI_getImportRapport.php"
var urlVariables:URLVariables = new URLVariables()
urlVariables.import_id = imports_list_GUI.selectedItem.oid
urlRequest.data = urlVariables
urlRequest.method = "POST";
navigateToURL(urlRequest, "importRapport")
return;
}
Alert.show("Aucun import à afficher")
}
public function controlImport():void
{
var urlVariables:URLVariables = new URLVariables()
urlVariables.option = "C";
if (imports_list_GUI.selectedItem != null)
{
urlVariables.import_id = imports_list_GUI.selectedItem.oid
CTI_Utilitaires.startRequestHTTP("modules/pmsi/php/PMSI_execImport.php", urlVariables, exec, true, this.parentApplication)
return;
}
Alert.show("Aucun import sélectionné")
function exec(resultatService:XML):void
{
displayRapport();
getData();
}
}
/**
* Si l'utilisateur qui lance la génération est 'cti', on affiche une fenêtre d'options dans laquelle
* on pourra choisir de lancer ou non les contrôles expert et la génération des essentiels
*/
public function generateImport():void
{
if (application.sessionProperties.properties.CONNECTEDUSER != 'cti') {
CTI_Utilitaires.question_yesNo("Import RSS RSF", "Confirmez vous la génération dans la base de données ?", responseFunction)
}
else {
var ti:TitleWindow = new TitleWindow();
ti.title = "Génération des données";
ti.setStyle("horizontalAlign", "center");
// Case à cocher pour l'exécution des contrôles expert
var cbExpert:CheckBox = new CheckBox();
cbExpert.selected = true;
cbExpert.name = "CBEXPERT";
cbExpert.label = "Lancer les contrôles expert";
cbExpert.labelPlacement = ButtonLabelPlacement.RIGHT;
// Case à cocher pour le lancement du calcul des essentiels
var cbEssentiels:CheckBox = new CheckBox();
cbEssentiels.selected = true;
cbEssentiels.name = "CBESSENTIELS";
cbEssentiels.label = "Calculer les essentiels";
cbEssentiels.labelPlacement = ButtonLabelPlacement.RIGHT;
// Case à cocher pour le traitement des informations complémentaires
var cbComplements:CheckBox = new CheckBox();
cbComplements.selected = true;
cbComplements.name = "CBCOMPLEMENTS";
cbComplements.label = "Données complémentaires";
cbComplements.labelPlacement = ButtonLabelPlacement.RIGHT;
var form:Form = new Form();
var formHeading:FormHeading = new FormHeading();
formHeading.label = "Options de génération";
form.addChild(formHeading);
var formItem:FormItem;
formItem = new FormItem();
formItem.addChild(cbExpert);
form.addChild(formItem);
formItem = new FormItem();
formItem.addChild(cbEssentiels);
form.addChild(formItem);
formItem = new FormItem();
formItem.addChild(cbComplements);
form.addChild(formItem);
var okButton:Button = new Button();
okButton.label = "Générer";
okButton.name = "OK";
var cancelButton:Button = new Button();
cancelButton.label = "Annuler";
cancelButton.name = "CANCEL";
var hbox:HBox = new HBox();
hbox.addChild(okButton);
hbox.addChild(cancelButton);
ti.addChild(form);
ti.addChild(hbox);
ti.addEventListener(MouseEvent.CLICK, ctiGenerate);
PopUpManager.addPopUp(ti, this, true);
PopUpManager.centerPopUp(ti);
}
function responseFunction(event:CloseEvent):void
{
if (event.detail != Alert.YES)
{
return;
}
var urlVariables:URLVariables = new URLVariables()
urlVariables.option = "G";
if (imports_list_GUI.selectedItem != null)
{
urlVariables.import_id = imports_list_GUI.selectedItem.oid
CTI_Utilitaires.startRequestHTTP("modules/pmsi/php/PMSI_execImport.php", urlVariables, handleGenerate, true, this.parentApplication)
return;
}
else {
Alert.show("Aucun import sélectionné");
}
}
}
private function ctiGenerate(event:Event):void {
if ((event.target is Button) && !(event.target is CheckBox)) {
PopUpManager.removePopUp(event.currentTarget as IFlexDisplayObject);
event.currentTarget.removeEventListener(MouseEvent.CLICK, ctiGenerate);
if (event.target.name == "OK") {
var cbEss:CheckBox = findChild(event.currentTarget as DisplayObjectContainer, "CBESSENTIELS") as CheckBox;
var cbExp:CheckBox = findChild(event.currentTarget as DisplayObjectContainer, "CBEXPERT") as CheckBox;
var cbCmp:CheckBox = findChild(event.currentTarget as DisplayObjectContainer, "CBCOMPLEMENTS") as CheckBox;
var urlVariables:URLVariables = new URLVariables();
urlVariables.option = "G";
urlVariables.option_essentiels = cbEss.selected.toString();
urlVariables.option_expert = cbExp.selected.toString();
urlVariables.option_complements = cbCmp.selected.toString();
if (imports_list_GUI.selectedItem != null) {
urlVariables.import_id = imports_list_GUI.selectedItem.oid
CTI_Utilitaires.startRequestHTTP("modules/pmsi/php/PMSI_execImport.php", urlVariables, handleGenerate, true, this.parentApplication)
return;
}
else {
Alert.show("Aucun import sélectionné");
}
}
}
}
/**
* Méthode qui s'exécute dès que la fonction PHP de lancement de l'import des données renvoie quelque chose
* @param resultatService XML de retour de la fonction PHP
*/
private function handleGenerate(resultatService:XML):void {
if (resultatService.@returnCode.toString() == "KO")
{
CTI_Utilitaires.alert_error("Import RSS RSF", resultatService.@returnTexte.toString());
}
else
{
CTI_Utilitaires.alert_info("Import RSS RSF", "Génération démarrée en batch sur le serveur");
getData();
}
}
/**
* Fonction qui cherche un displayObject par son nom dans toute l'arboresence d'un
* container. Cette fonction supplante la fonction getChildByName dans le sens où elle
* ne se cantonne pas au premier niveau de l'arboresence mais inspecte tous les niveaux
*
* @param container Container dans lequel chercher l'enfant
* @param childname Nom de l'enfant à chercher
* @return L'élement trouvé dans l'arborescence
*/
private function findChild(container:DisplayObjectContainer, childname:String ):DisplayObject {
if (container == null) {
container = this;
}
for (var j:int = 0; j < container.numChildren; ++j) {
var obj:DisplayObject = container.getChildAt(j) as DisplayObject;
if (obj.name == childname) {
return obj;
}
if (obj is DisplayObjectContainer) {
var doc:DisplayObjectContainer = obj as DisplayObjectContainer;
if (doc.numChildren > 0) {
var ret:DisplayObject = findChild( doc, childname );
if (ret != null) {
return ret;
}
}
}
}
return null;
}
private function deleteImport():void
{
CTI_Utilitaires.question_yesNo("Import RSS RSF", "Confirmez vous la suppression de l'import ?", responseFunction)
function responseFunction(event:CloseEvent):void
{
if (event.detail != Alert.YES)
{
return;
}
var urlVariables:URLVariables = new URLVariables()
urlVariables.option = "D";
if (imports_list_GUI.selectedItem != null)
{
urlVariables.import_id = imports_list_GUI.selectedItem.oid
CTI_Utilitaires.startRequestHTTP("modules/pmsi/php/PMSI_execImport.php", urlVariables, exec, true, this.parentApplication)
return;
}
Alert.show("Aucun import sélectionné")
function exec(resultatService:XML):void
{
getData();
}
}
}
public function downloadFile():void
{
if (imports_list_GUI.selectedItem != null)
{
if (download_menu_current_data_type != "")
{
var urlRequest:URLRequest = new URLRequest();
urlRequest.url = "modules/pmsi/php/PMSI_getFile.php"
var urlVariables:URLVariables = new URLVariables()
urlVariables.import_id = imports_list_GUI.selectedItem.oid
urlVariables.data_type = download_menu_current_data_type
urlRequest.data = urlVariables
urlRequest.method = "POST";
navigateToURL(urlRequest, "getFile")
}
else
{
Alert.show("Choisir d'abord un fichier à télécharger")
}
return;
}
Alert.show("Aucun import sélectionné")
}
private function importEncours():void
{
CTI_Utilitaires.question_yesNo("Import RSS RSF", "Confirmez vous la récupération des dossiers PMSI non expédiés ?", responseFunction)
function responseFunction(event:CloseEvent):void
{
if (event.detail != Alert.YES)
{
return;
}
var urlVariables:URLVariables = new URLVariables()
urlVariables.option = "encours";
CTI_Utilitaires.startRequestHTTP("modules/pmsi/php/PMSI_execImport.php", urlVariables, exec, true, this.parentApplication)
function exec(resultatService:XML):void
{
if (resultatService.@returnCode.toString() == "KO")
{
CTI_Utilitaires.alert_error("Import RSS RSF", resultatService.@returnTexte.toString());
}
else
{
CTI_Utilitaires.alert_info("Import RSS RSF", "Récupération démarrée en batch sur le serveur");
getData();
}
}
}
}
private function displayLog():void
{
var job:Object;
if (historique_UI.selectedIndex < 0)
{
return
}
job = historique_UI.selectedItem;
if (job.logFile.toString() == "")
{
return;
}
var urlVariables:URLVariables = new URLVariables();
urlVariables.longfile = job.logFile.toString();
CTI_Utilitaires.openURL("modules/outils/php/getLogFile.php", urlVariables, "iCTI_logFile")
}
public function vitalia_prepar():void
{
CTI_Utilitaires.openWebURL("modules/vitalia/iCTI_VITALIA_E" + application.environmentProperties.properties.FINESS + "E_prepa4cirque.exe")
}
private function vedici_synchronize():void
{
var urlVariables:URLVariables = new URLVariables();
CTI_Utilitaires.startRequestHTTP("modules/vedici/php/VEDICI_PMSI_send2central.php", urlVariables, exec, true, this.parentApplication)
function exec(resultatService:XML):void
{
if (resultatService.@returnCode.toString() == "OK")
{
CTI_Utilitaires.alert_info("Synchronisation VEDICI", "Synchronisation terminée : " + resultatService.@returnTexte.toString())
}
else
{
CTI_Utilitaires.alert_error("Synchronisation VEDICI", "Synchronisation non effectué : " + resultatService.@returnTexte.toString())
}
}
}
private function checkFiles():void {
importEnabled = true;
if (importTexte_GUI.text == "")
{
importTexte_GUI.setStyle("backgroundColor", "#ffd393")
importTexte_GUI.setStyle("color", "#0B333C")
importEnabled = false
}
else
{
importTexte_GUI.setStyle("backgroundColor", "#FFFFFF")
importTexte_GUI.setStyle("color", "#0B333C")
}
if (new_imports_files_statusCode != "OK" && new_imports_files_statusCode != "ATT") {
importEnabled = false
}
}
public function new_import_upload():void
{
new_import_fileToUpload.addEventListener(Event.SELECT, new_import_fileToUpload_onSelect);
new_import_fileToUpload.browse();
}
private function new_import_fileToUpload_onSelect(event:Event):void
{
try
{
new_import_fileUpload()
}
catch (err:Error)
{
}
}
public function new_import_removeFile(file:String="*ALL"):void
{
if (file == "*ALL") {
CTI_Utilitaires.question_yesNo("Import RSS RSF", "Confirmez vous la suppression de tous les fichiers ?", responseFunction)
}
else {
responseFunction()
}
function responseFunction(event:CloseEvent = null):void
{
if (event != null && event.detail != Alert.YES)
{
return;
}
var urlVariables:URLVariables = new URLVariables();
urlVariables.file = file
CTI_Utilitaires.startRequestHTTP("modules/pmsi/php/httpservice_PMSI_rssUpload_removeFile.php", urlVariables, exec, true, this.parentApplication)
function exec(resultatService:XML):void
{
if (resultatService.@returnCode.toString() == "OK")
{
new_import_getFiles()
}
}
}
}
private function new_import_getFiles():void
{
var urlVariables:URLVariables = new URLVariables();
new_imports_files_statusCode = ""
new_imports_files_statusText = ""
new_imports_files_statusText_GUI.setStyle("backgroundColor", 0xFFFFFF)
CTI_Utilitaires.startRequestHTTP("modules/pmsi/php/httpservice_PMSI_rssUpload_getFiles.php", urlVariables, exec, true, this.parentApplication)
function exec(resultatService:XML):void
{
if (resultatService.@returnCode.toString() == "OK")
{
new_imports_files_provider = resultatService.FILE
new_imports_files_statusCode = resultatService.STATUS[0].@statusCode
new_imports_files_statusText = resultatService.STATUS[0].@statusText
if (new_imports_files_statusCode != "OK") {
new_imports_files_statusText_GUI.setStyle("backgroundColor", 0xffd393)
}
checkFiles()
}
}
}
private function new_import_fileUpload():void
{
var urlVariables:URLVariables = new URLVariables();
urlVariables.importFile = new_import_fileToUpload.name;
urlVariables.importFileDate = new_import_fileToUpload.modificationDate.getTime().toString().substr(0,10)
CTI_Utilitaires.startUploadHTTP(new_import_fileToUpload, "modules/pmsi/php/httpservice_PMSI_rssUpload_upload.php", urlVariables, exec, true, this.parentApplication)
function exec(resultatService:XML):void
{
if (resultatService.@returnCode.toString() == "OK")
{
}
else
{
CTI_Utilitaires.alert_error("Envoi fichiers RSS/RSF au serveur", resultatService.@returnTexte.toString())
}
new_import_getFiles()
}
}
private function new_import_filesValidation():void
{
importStarted = true;
sendFilesStatus = "Terminé"
validationStatus = "En cours";
status_bar_GUI.label = "Validation de l'import sur le serveur";
status_bar_GUI.setProgress(0, 2)
var urlVariables:URLVariables = new URLVariables();
urlVariables.import_texte = importTexte_GUI.text;
CTI_Utilitaires.startRequestHTTP("modules/pmsi/php/httpservice_PMSI_rssUpload_valideFiles.php", urlVariables, exec, true, this.parentApplication)
function exec(resultatService:XML):void
{
if (resultatService.@returnCode.toString() == "OK")
{
import_id = Number(resultatService.@import_id.toString());
validationStatus = "Validation par le serveur terminée : n° " + import_id + " attribué."
status_bar_GUI.setProgress(1, 2)
new_import_fileControle()
}
else
{
importResult = "QUIT";
validationStatus = "ERREUR. Validation par le serveur non effectuée : " + resultatService.@returnTexte.toString();
controleStatus = "";
status_bar_GUI.setProgress(2, 2)
importStarted = false;
CTI_Utilitaires.alert_error("Import PMSI", "Validation par le serveur non effectuée : " + resultatService.@returnTexte.toString())
}
}
}
private function new_import_fileControle():void
{
importStarted = true;
controleStatus = "En cours";
status_bar_GUI.label = "Contrôle sur le serveur";
var urlVariables:URLVariables = new URLVariables();
urlVariables.import_id = import_id;
CTI_Utilitaires.startRequestHTTP("modules/pmsi/php/httpservice_PMSI_rssUpload_controlImport.php", urlVariables, exec, true, this.parentApplication)
function exec(resultatService:XML):void
{
var urlRequest:URLRequest = new URLRequest();
urlRequest.url = "modules/pmsi/php/PMSI_getImportRapport.php"
var urlVariables:URLVariables = new URLVariables()
urlVariables.import_id = import_id
urlRequest.data = urlVariables
urlRequest.method = "POST";
navigateToURL(urlRequest, "importRapport")
status_bar_GUI.setProgress(2, 2)
importStarted = false;
if (resultatService.@returnCode.toString() == "OK" || resultatService.@returnCode.toString() == "ATT")
{
controleStatus = "Contrôle par le serveur terminé : " + resultatService.@returnTexte.toString();
CTI_Utilitaires.alert_info("Import PMSI", "Traitement par le serveur terminé : " + resultatService.@returnTexte.toString(),demandeGeneration)
}
else
{
controleStatus = "ERREUR. Contrôle par le serveur en erreur : " + resultatService.@returnTexte.toString();
CTI_Utilitaires.alert_error("Import PMSI", "Le contrôle a détecté une erreur grave : " + resultatService.@returnTexte.toString(),demandeGeneration)
}
function demandeGeneration(event:CloseEvent):void {
CTI_Utilitaires.question_yesNo("Import PMSI", "Controle terminé : " + resultatService.@returnTexte.toString() + ". Désirez vous générer la base de données ?", responseFunction)
function responseFunction(event:CloseEvent):void {
if (event.detail != Alert.YES) {
return;
}
var urlVariables:URLVariables = new URLVariables()
urlVariables.option = "G";
urlVariables.import_id = import_id
CTI_Utilitaires.startRequestHTTP("modules/pmsi/php/PMSI_execImport.php",urlVariables,exec,true)
function exec(resultatService:XML):void {
if (resultatService.@returnCode.toString() == "KO") {
CTI_Utilitaires.alert_error("Import RSS RSF", resultatService.@returnTexte.toString());
}
else {
CTI_Utilitaires.alert_info("Import RSS RSF", "Génération démarrée en batch sur le serveur");
}
}
}
}
getData();
}
}
private function exec_config_http():void {
CTI_Utilitaires.question_yesNo("Import PMSI", "Confirmez vous la configuration du serveur HTTP ?", responseFunction)
function responseFunction(event:CloseEvent):void {
if (event.detail != Alert.YES) {
return;
}
var urlVariables:URLVariables = new URLVariables()
CTI_Utilitaires.startRequestHTTP("modules/outils/php/httpService_wampManager_configure.php",urlVariables,exec,true,this.parentApplication)
function exec(resultatService:XML):void {
var returnCode:String = resultatService.RETURN[0].@code.toString()
var returnMessage:String = resultatService.RETURN[0].@message.toString()
if (returnCode == "OK") {
config_http_button.label = config_http_button.label + " (FAIT. Patientez 20 secondes)"
config_http_button.enabled = false
setTimeout(getData, 20000);
}
else {
Alert.show(returnMessage)
}
}
}
}
]]>