Exemplo n.º 1
0
 function hxmlCreate($res, $i)
 {
     global $options;
     global $stopAffichage;
     //$stopAffichage = 1 ;
     $tabActe = array();
     $tabActe = explode('|', $res['CONTENU'][$i]);
     $type = $res['TYPE'][$i];
     $idpass = $tabActe[0];
     $idu = $tabActe[1];
     $nomu = XhamTools::sansAccent($tabActe[2]);
     $pren = XhamTools::sansAccent($tabActe[3]);
     $sexe = $tabActe[4];
     $dtnai = $tabActe[5];
     $dtdem = $tabActe[6];
     $hhdem = $tabActe[7];
     $ufd = $tabActe[8];
     $action = $tabActe[9];
     $idact = $tabActe[10];
     $cdccam = $tabActe[11];
     $cddiags = $tabActe[12];
     $cdacti = $tabActe[13];
     $cdphase = $tabActe[14];
     $dtr = $tabActe[15];
     $hhr = $tabActe[16];
     $nomumed = XhamTools::sansAccent($tabActe[17]);
     $prenmed = XhamTools::sansAccent($tabActe[18]);
     $adeli = $tabActe[19];
     $ufr = $tabActe[20];
     $modif = $tabActe[21];
     $ngapl = $tabActe[22];
     $ngapc = $tabActe[23];
     $factu = $tabActe[24];
     $cdasso = $tabActe[25];
     $nuitjf = $tabActe[26];
     // eko ( $tabActe ) ;
     if ($action == 'creation') {
         $action = utf8_encode('création');
     }
     if ($nuitjf == 'F') {
         $isFerie = "oui";
     } else {
         $isFerie = "non";
     }
     if ($nuitjf == 'N') {
         $isNuit = '1t';
     } elseif ($nuitjf == 'NM') {
         $isNuit = '2t';
     } else {
         $isNuit = 'non';
     }
     //eko ( $tabActe ) ;
     $date = new clDate();
     $nomFic = 'ficTV2_' . $res['ID'][$i] . '';
     $num = $res['ID'][$i];
     if ($type != 'DIAG') {
         $dom = new DOMDocument('1.0', 'ISO-8859-1');
         $evtsSA = $dom->createElement('evenementsServeurActes', '');
         $enteteM = $dom->createElement('enteteMessage', '');
         $idMe = $dom->createElement('identifiantMessage', $res['ID'][$i]);
         if ($options->getOption('HprimXML_DateT')) {
             $dHProd = $dom->createElement('dateHeureProduction', $date->getDate("Y-m-d\\TH:i:s"));
         } else {
             $dHProd = $dom->createElement('dateHeureProduction', $date->getDatetime());
         }
         $emett = $dom->createElement('emetteur', '');
         $agentse = $dom->createElement('agents', '');
         $agente = $dom->createElement('agent', '');
         $agente->setAttribute('categorie', 'application');
         $codee = $dom->createElement('code', $options->getOption('HprimXML_Emet') ? $options->getOption('HprimXML_Emet') : $res['DISCR'][$i]);
         $desti = $dom->createElement('destinataire', '');
         $agentsd = $dom->createElement('agents', '');
         $agentd = $dom->createElement('agent', '');
         $agentd->setAttribute('categorie', 'application');
         $coded = $dom->createElement('code', $options->getOption('HprimXML_Dest'));
         $evtSA = $dom->createElement('evenementServeurActe', '');
         $patient = $dom->createElement('patient', '');
         $identp = $dom->createElement('identifiant', '');
         $emettp = $dom->createElement('emetteur', '');
         $valpe = $dom->createElement('valeur', $idu);
         $recepp = $dom->createElement('recepteur', '');
         $valpp = $dom->createElement('valeur', $idu);
         $persP = $dom->createElement('personnePhysique', '');
         $persP->setAttribute('sexe', $sexe);
         $nomUs = $dom->createElement('nomUsuel', $nomu);
         $prenoms = $dom->createElement('prenoms', '');
         $prenom = $dom->createElement('prenom', $pren);
         $dateNa = $dom->createElement('dateNaissance', '');
         $dateN = $dom->createElement('date', $dtnai);
         $venue = $dom->createElement('venue', '');
         $identv = $dom->createElement('identifiant', '');
         $emettv = $dom->createElement('emetteur', '');
         $valve = $dom->createElement('valeur', $idpass);
         $recepv = $dom->createElement('recepteur', '');
         $valvp = $dom->createElement('valeur', $idpass);
         $interv = $dom->createElement('intervention', '');
         $identi = $dom->createElement('identifiant', '');
         if ($options->getOption('HprimXML_EmetInterv') == 'ID') {
             $emetti = $dom->createElement('emetteur', $res['ID'][$i]);
         } elseif ($options->getOption('HprimXML_EmetInterv')) {
             $emetti = $dom->createElement('emetteur', $options->getOption('HprimXML_EmetInterv'));
         } else {
             $emetti = $dom->createElement('emetteur', $res['DISCR'][$i]);
         }
         //$emetti   = $dom->createElement ( 'emetteur',  ) ;
         $demande = $dom->createElement('demande', '');
         $datePr = $dom->createElement('datePrescription', '');
         $dateP = $dom->createElement('date', $dtdem);
         $heureP = $dom->createElement('heure', $hhdem);
         $uniteF = $dom->createElement('uniteFonctionnelle', '');
         $code = $dom->createElement('code', $ufd);
         $debut = $dom->createElement('debut', '');
         $dateID = $dom->createElement('date', $dtdem);
         $heureID = $dom->createElement('heure', $hhdem);
         switch ($type) {
             case 'CCAM':
                 $actesCCAM = $dom->createElement('actesCCAM', '');
                 $acteCCAM = $dom->createElement('acteCCAM', '');
                 $acteCCAM->setAttribute('action', $action);
                 $identa = $dom->createElement('identifiant', '');
                 $emettia = $dom->createElement('emetteur', $idact);
                 $recepia = $dom->createElement('recepteur', '');
                 $codeActe = $dom->createElement('codeActe', $cdccam);
                 $codeActi = $dom->createElement('codeActivite', $cdacti);
                 $codePhas = $dom->createElement('codePhase', $cdphase);
                 $execute = $dom->createElement('execute', '');
                 $datee = $dom->createElement('date', $dtdem);
                 $heuree = $dom->createElement('heure', $hhdem);
                 $executant = $dom->createElement('executant', '');
                 $medecins = $dom->createElement('medecins', '');
                 $medExec = $dom->createElement('medecinExecutant', '');
                 if ($options->getOption("HprimXML_ExecPrinc")) {
                     $medExec->setAttribute('principal', "oui");
                 }
                 $medE = $dom->createElement('medecin', '');
                 $numADELI = $dom->createElement('numeroAdeli', $adeli);
                 $identm = $dom->createElement('identification', '');
                 if ($options->getOption("HprimXML_CodeMedecin") == 'ADELI') {
                     $codeade = $adeli;
                 } else {
                     $codeade = 'x';
                 }
                 $codeia = $dom->createElement('code', $codeade);
                 $persom = $dom->createElement('personne', '');
                 $nomUm = $dom->createElement('nomUsuel', $nomumed);
                 $prenomsm = $dom->createElement('prenoms', '');
                 $prenomm = $dom->createElement('prenom', $prenmed);
                 $uniteFo = $dom->createElement('uniteFonctionnelle', '');
                 $codeuf = $dom->createElement('code', $ufr);
                 $modifs = $dom->createElement('modificateurs', '');
                 $tabd = explode('~', $modif);
                 for ($i = 0; isset($tabd[$i]); $i++) {
                     if ($tabd[$i]) {
                         eval('$modifc' . $i . '  = $dom->createElement ( "modificateur", "' . $tabd[$i] . '" ) ;');
                         if ($options->getOption('HprimXML_StatutFT')) {
                             eval('$modifc' . $i . '  -> setAttribute ( "statut", "ft" ) ;');
                         }
                     }
                 }
                 //$modifs    = $dom->createElement ( 'modificateurs', '' ) ;
                 //  $modifc    = $dom->createElement ( 'modificateur', $modif ) ;
                 $codeANP = $dom->createElement('codeAssociationNonPrevue', $cdasso);
                 $identa->appendChild($emettia);
                 $identa->appendChild($recepia);
                 $acteCCAM->appendChild($identa);
                 $acteCCAM->appendChild($codeActe);
                 $acteCCAM->appendChild($codeActi);
                 $acteCCAM->appendChild($codePhas);
                 $execute->appendChild($datee);
                 $execute->appendChild($heuree);
                 $acteCCAM->appendChild($execute);
                 $medE->appendChild($numADELI);
                 $identm->appendChild($codeia);
                 $medE->appendChild($identm);
                 $persom->appendChild($nomUm);
                 $prenomsm->appendChild($prenomm);
                 $persom->appendChild($prenomsm);
                 $medE->appendChild($persom);
                 $medExec->appendChild($medE);
                 $medecins->appendChild($medExec);
                 $executant->appendChild($medecins);
                 $uniteFo->appendChild($codeuf);
                 $executant->appendChild($uniteFo);
                 $acteCCAM->appendChild($executant);
                 for ($i = 0; isset($tabd[$i]); $i++) {
                     if ($tabd[$i]) {
                         eval('$modifs  -> appendChild ( $modifc' . $i . ' ) ;');
                     }
                 }
                 $acteCCAM->appendChild($modifs);
                 $acteCCAM->appendChild($codeANP);
                 $actesCCAM->appendChild($acteCCAM);
                 $raes = $actesCCAM;
                 break;
             case 'NGAP':
                 $actesNGAP = $dom->createElement('actesNGAP', '');
                 $acteNGAP = $dom->createElement('acteNGAP', '');
                 $acteNGAP->setAttribute('action', $action);
                 $acteNGAP->setAttribute('facturable', $factu);
                 $acteNGAP->setAttribute('executionNuit', $isNuit);
                 $acteNGAP->setAttribute('executionDimancheJourFerie', $isFerie);
                 $identn = $dom->createElement('identifiant', '');
                 $emettn = $dom->createElement('emetteur', $idact);
                 $lettreC = $dom->createElement('lettreCle', $ngapl);
                 $coeff = $dom->createElement('coefficient', $ngapc);
                 $exec = $dom->createElement('execute', '');
                 $dateen = $dom->createElement('date', $dtdem);
                 $heureen = $dom->createElement('heure', $hhdem);
                 $presta = $dom->createElement('prestataire', '');
                 $medecins = $dom->createElement('medecins', '');
                 $medE = $dom->createElement('medecin', '');
                 $numADELI = $dom->createElement('numeroAdeli', $adeli);
                 $identm = $dom->createElement('identification', '');
                 if ($options->getOption("HprimXML_CodeMedecin") == 'ADELI') {
                     $codeade = $adeli;
                 } else {
                     $codeade = 'x';
                 }
                 $codeia = $dom->createElement('code', $codeade);
                 $persom = $dom->createElement('personne', '');
                 $nomUm = $dom->createElement('nomUsuel', $nomumed);
                 $prenomsm = $dom->createElement('prenoms', '');
                 $prenomm = $dom->createElement('prenom', $prenmed);
                 $uniteFo = $dom->createElement('uniteFonctionnelle', '');
                 $codeuf = $dom->createElement('code', $ufr);
                 $identn->appendChild($emettn);
                 $acteNGAP->appendChild($identn);
                 $acteNGAP->appendChild($lettreC);
                 $acteNGAP->appendChild($coeff);
                 $exec->appendChild($dateen);
                 $exec->appendChild($heureen);
                 $acteNGAP->appendChild($exec);
                 $medE->appendChild($numADELI);
                 $identm->appendChild($codeia);
                 $medE->appendChild($identm);
                 $persom->appendChild($nomUm);
                 $prenomsm->appendChild($prenomm);
                 $persom->appendChild($prenomsm);
                 $medE->appendChild($persom);
                 $medecins->appendChild($medE);
                 $presta->appendChild($medecins);
                 $uniteFo->appendChild($codeuf);
                 $presta->appendChild($uniteFo);
                 $acteNGAP->appendChild($presta);
                 $actesNGAP->appendChild($acteNGAP);
                 $raes = $actesNGAP;
                 break;
         }
         $enteteM->appendChild($idMe);
         $enteteM->appendChild($dHProd);
         $agente->appendChild($codee);
         $agentse->appendChild($agente);
         $emett->appendChild($agentse);
         $enteteM->appendChild($emett);
         $agentd->appendChild($coded);
         $agentsd->appendChild($agentd);
         $desti->appendChild($agentsd);
         $enteteM->appendChild($desti);
         $evtsSA->appendChild($enteteM);
         $emettp->appendChild($valpe);
         $identp->appendChild($emettp);
         $recepp->appendChild($valpp);
         $identp->appendChild($recepp);
         $patient->appendChild($identp);
         $persP->appendChild($nomUs);
         $prenoms->appendChild($prenom);
         $persP->appendChild($prenoms);
         $dateNa->appendChild($dateN);
         $persP->appendChild($dateNa);
         $patient->appendChild($persP);
         $evtSA->appendChild($patient);
         $emettv->appendChild($valve);
         $identv->appendChild($emettv);
         $recepv->appendChild($valvp);
         $identv->appendChild($recepv);
         $venue->appendChild($identv);
         $evtSA->appendChild($venue);
         $debut->appendChild($dateID);
         $debut->appendChild($heureID);
         $interv->appendChild($debut);
         $identi->appendChild($emetti);
         $interv->appendChild($identi);
         $datePr->appendChild($dateP);
         $datePr->appendChild($heureP);
         $demande->appendChild($datePr);
         $uniteF->appendChild($code);
         $demande->appendChild($uniteF);
         $interv->appendChild($demande);
         $evtSA->appendChild($interv);
         $evtSA->appendChild($raes);
         $evtsSA->appendChild($evtSA);
         $dom->appendChild($evtsSA);
     } else {
         $dom = new DOMDocument('1.0', 'ISO-8859-1');
         $evtsPMSI = $dom->createElement('evenementsPMSI', '');
         $enteteM = $dom->createElement('enteteMessage', '');
         $idMe = $dom->createElement('identifiantMessage', $res['ID'][$i]);
         $dHProd = $dom->createElement('dateHeureProduction', $date->getDatetime());
         $emett = $dom->createElement('emetteur', '');
         $agentse = $dom->createElement('agents', '');
         $agente = $dom->createElement('agent', '');
         $agente->setAttribute('categorie', 'application');
         $codee = $dom->createElement('code', $options->getOption('HprimXML_Emet'));
         $desti = $dom->createElement('destinataire', '');
         $agentsd = $dom->createElement('agents', '');
         $agentd = $dom->createElement('agent', '');
         $agentd->setAttribute('categorie', 'application');
         $coded = $dom->createElement('code', $options->getOption('HprimXML_Dest'));
         $evtPMSI = $dom->createElement('evenementPMSI', '');
         $patient = $dom->createElement('patient', '');
         $identp = $dom->createElement('identifiant', '');
         $emettp = $dom->createElement('emetteur', '');
         $valpe = $dom->createElement('valeur', $idu);
         $recepp = $dom->createElement('recepteur', '');
         $valpp = $dom->createElement('valeur', $idu);
         $persP = $dom->createElement('personnePhysique', '');
         $persP->setAttribute('sexe', $sexe);
         $nomUs = $dom->createElement('nomUsuel', $nomu);
         $prenoms = $dom->createElement('prenoms', '');
         $prenom = $dom->createElement('prenom', $pren);
         $dateNa = $dom->createElement('dateNaissance', '');
         $dateN = $dom->createElement('date', $dtnai);
         $venue = $dom->createElement('venue', '');
         $identv = $dom->createElement('identifiant', '');
         $recepv = $dom->createElement('recepteur', '');
         $valeur = $dom->createElement('valeur', $idpass);
         $entreev = $dom->createElement('entree', '');
         $entreev->setAttribute('typeEntree', '');
         $dateHO = $dom->createElement('dateHeureOptionnelle', '');
         $dateho = $dom->createElement('date', $dtdem);
         $heureho = $dom->createElement('heure', $hhdem);
         $rss = $dom->createElement('rss', '');
         $rum = $dom->createElement('rum', '');
         $rum->setAttribute('action', $action);
         $identr = $dom->createElement('identifiant', '');
         $emettr = $dom->createElement('emetteur', $idpass);
         $dateAc = $dom->createElement('dateAction', $dtr);
         $actAc = $dom->createElement('acteurAction', '');
         $numAA = $dom->createElement('numeroAdeli', $adeli);
         $uniteMed = $dom->createElement('uniteMedicale', '');
         $codeU = $dom->createElement('code', $ufr);
         $entreeU = $dom->createElement('entree', '');
         $entreeU->setAttribute('mode', '');
         $entreeU->setAttribute('complementMode', '');
         $dateHOe = $dom->createElement('dateHeureOptionnelle', '');
         $datHoe = $dom->createElement('date', $dtr);
         $heurHoe = $dom->createElement('heure', $hhr);
         $diags = $dom->createElement('diagnostics', '');
         $diagPri = $dom->createElement('diagnosticPrincipal', '');
         $codeCim = $dom->createElement('codeCim10', $cdccam);
         $diagsSi = $dom->createElement('diagnosticsSignificatifs', '');
         $tabd = explode('~', $cddiags);
         for ($i = 0; isset($tabd[$i]); $i++) {
             eval('$diagSi' . $i . '    = $dom->createElement ( "diagnosticSignificatif", "" ) ;');
             eval('$codeCimS' . $i . '  = $dom->createElement ( "codeCim10", "' . $tabd[$i] . '" ) ;');
         }
         $enteteM->appendChild($idMe);
         $enteteM->appendChild($dHProd);
         $agente->appendChild($codee);
         $agentse->appendChild($agente);
         $emett->appendChild($agentse);
         $enteteM->appendChild($emett);
         $agentd->appendChild($coded);
         $agentsd->appendChild($agentd);
         $desti->appendChild($agentsd);
         $enteteM->appendChild($desti);
         $evtsPMSI->appendChild($enteteM);
         $emettp->appendChild($valpe);
         $identp->appendChild($emettp);
         //$valpp   = $dom->createElement ( 'valeur', $idu ) ;
         $recepp->appendChild($valpp);
         $identp->appendChild($recepp);
         $patient->appendChild($identp);
         $persP->appendChild($nomUs);
         $prenoms->appendChild($prenom);
         $persP->appendChild($prenoms);
         $dateNa->appendChild($dateN);
         $persP->appendChild($dateNa);
         $patient->appendChild($persP);
         $evtPMSI->appendChild($patient);
         $recepv->appendChild($valeur);
         $identv->appendChild($recepv);
         $venue->appendChild($identv);
         $dateHO->appendChild($dateho);
         $dateHO->appendChild($heureho);
         $entreev->appendChild($dateHO);
         $venue->appendChild($entreev);
         $evtPMSI->appendChild($venue);
         $identr->appendChild($emettr);
         $rum->appendChild($identr);
         $rum->appendChild($dateAc);
         $actAc->appendChild($numAA);
         $rum->appendChild($actAc);
         $uniteMed->appendChild($codeU);
         $dateHOe->appendChild($datHoe);
         $dateHOe->appendChild($heurHoe);
         $entreeU->appendChild($dateHOe);
         $uniteMed->appendChild($entreeU);
         $rum->appendChild($uniteMed);
         $diagPri->appendChild($codeCim);
         $diags->appendChild($diagPri);
         for ($i = 0; isset($tabd[$i]); $i++) {
             eval('$diagSi' . $i . '   -> appendChild ( $codeCimS' . $i . ' ) ;');
             eval('$diagsSi  -> appendChild ( $diagSi' . $i . ' ) ;');
         }
         $diags->appendChild($diagsSi);
         //$uniteMed -> appendChild ( $diags ) ;
         $rum->appendChild($diags);
         $rss->appendChild($rum);
         $evtPMSI->appendChild($rss);
         $evtsPMSI->appendChild($evtPMSI);
         $dom->appendChild($evtsPMSI);
     }
     if ($type == 'DIAG' and $options->getOption("HprimXML_noDIAG")) {
         // Création, écriture et fermeture du fichier.
         $this->af .= "- Génération du fichier '" . 'hprim/xml/' . $nomFic . '.xml' . ' -> ';
         $this->mbtv2Traited($num);
         $this->af .= '<font color="orange">Pas d\'envoi des DIAG</font><br/>';
     } else {
         // Création, écriture et fermeture du fichier.
         $this->af .= "- Génération du fichier '" . 'hprim/xml/' . $nomFic . '.xml' . ' -> ';
         $FIC = fopen('hprim/xml/' . $nomFic . '.xml', "w");
         $creation = fwrite($FIC, $dom->saveXML());
         fclose($FIC);
         if ($creation) {
             $FIC = fopen('hprim/xml/' . $nomFic . '.ok', "w");
             $creation2 = fwrite($FIC, '');
             fclose($FIC);
         }
         //eko ( $nomFic." -> ".$res['ID'][$i]." ($num)" ) ;
         if ($creation) {
             $this->mbtv2Traited($num);
             $this->af .= '<font color="green">OK</font><br/>';
         } else {
             global $errs;
             $errs->addErreur('Problème création pour ID=' . $num);
             $this->af .= '<font color="red">KO</font><br/>';
         }
     }
 }
Exemplo n.º 2
0
 function createDiag($res, $i)
 {
     global $options;
     global $stopAffichage;
     $mod = new ModeliXe("HprimXMLDiag.html");
     $mod->SetModeliXe();
     $tabActe = array();
     $tabActe = explode('|', XhamTools::sansAccent($res['CONTENU'][$i]));
     $type = $res['TYPE'][$i];
     $idpass = $tabActe[0];
     $idu = $tabActe[1];
     $nomu = $tabActe[2];
     $pren = $tabActe[3];
     $sexe = $tabActe[4];
     $dtnai = $tabActe[5];
     $dtdem = $tabActe[6];
     $hhdem = $tabActe[7];
     $action = $tabActe[9];
     $idact = $tabActe[10];
     $cdccam = $tabActe[11];
     $cddiags = $tabActe[12];
     $dtr = $tabActe[15];
     $hhr = $tabActe[16];
     $nomumed = $tabActe[17];
     $prenmed = $tabActe[18];
     $adeli = $tabActe[19];
     $ufr = $tabActe[20];
     if ($options->getOption("HprimXML_CodeMedecinInterv") == 'ADELI9') {
         $this->adeliMedecin = sprintf('%09d', $adeli);
     } elseif ($options->getOption("HprimXML_CodeMedecinInterv") == 'NOMMED') {
         $this->adeliMedecin = $nomumed . ' ' . $prenmed;
     } elseif ($options->getOption("HprimXML_CodeMedecinInterv") == 'NOMMED10') {
         $this->adeliMedecin = substr($nomumed . ' ' . $prenmed, 0, 10);
     } elseif ($options->getOption("HprimXML_CodeMedecinInterv") == 'ADELI') {
         $this->adeliMedecin = $adeli;
     } else {
         $this->adeliMedecin = '';
     }
     if ($action == 'creation') {
         $action = utf8_encode('création');
     }
     $date = new clDate();
     if ($options->getOption('HprimXML_NomFic')) {
         $nomFic = $options->getOption('HprimXML_NomFic') . '_' . $res['ID'][$i] . '';
     } else {
         $nomFic = 'fic' . $options->getOption('HprimXML_ChaineFic') . 'TV2_' . $res['ID'][$i] . '';
     }
     $num = $res['ID'][$i];
     $pati = new clPatient($res['DISCR'][$i], '');
     if (!$pati->getID()) {
         $pati = new clPatient($res['DISCR'][$i], 'Sortis');
     }
     $datadmi = new clDate($pati->getDateAdmission());
     $datexam = new clDate($pati->getDateExamen());
     $datsort = new clDate($pati->getDateSortie());
     $this->codeMedecinUrgentiste = $pati->getMatriculeMedecin();
     if ($options->getOption("ChoixHeureAffectationActes") == "Heure d'admission") {
         $datdema = $datadmi;
     } elseif ($options->getOption("ChoixHeureAffectationActes") == "Heure d'examen") {
         $datdema = $datexam;
     } elseif ($options->getOption("ChoixHeureAffectationActes") == "Heure de sorti") {
         $datdema = $datsort;
     } else {
         if ($datadmi->getDatetime() != '1999-12-31 00:00:00' and $datsort->getDatetime() != '1999-12-31 00:00:00') {
             $time = (int) ($datadmi->getTimestamp() / 2) + $datsort->getTimestamp() / 2;
         } elseif ($datadmi->getDatetime() != '1999-12-31 00:00:00') {
             $time = $datadmi->getTimestamp();
         } else {
             $time = $datsort->getTimestamp();
         }
         $datdema = new clDate($time);
         $datmed = new clDate($time);
         //eko ( $datadmi->getTimestamp ( ).' + '.$datsort->getTimestamp ( ).' = '.$time.' = '.$datdema -> getTimestamp ( ) ) ;
         //eko ( $datadmi->getDatetime ( ).' + '.$datsort->getDatetime ( ).' = '.$time.' = '.$datdema -> getDatetime ( ) ) ;
     }
     $dtdem = $datdema->getDate('Y-m-d');
     $hhdem = $datdema->getDate('H:i:s');
     if ($options->getOption('HprimXML_DateProduction') == 'Heure médiane') {
         $date = $datmed;
     } elseif ($options->getOption('HprimXML_DateProduction') == 'Heure admission') {
         $date = $datadmi;
     } elseif ($options->getOption('HprimXML_DateProduction') == 'Heure examen') {
         $date = $datadmi;
     } elseif ($options->getOption('HprimXML_DateProduction') == 'Heure sortie') {
         $date = $datsort;
     }
     if ($options->getOption('HprimXML_DateT')) {
         $mod->MxText('dateHeureProduction', $date->getDate("Y-m-d\\TH:i:s"));
     } else {
         $mod->MxText('dateHeureProduction', $date->getDatetime());
     }
     if ($options->getOption('HprimXML_DateVenue') == 'Heure médiane') {
         $dateve = $datmed;
     } elseif ($options->getOption('HprimXML_DateVenue') == 'Heure admission') {
         $dateve = $datadmi;
     } elseif ($options->getOption('HprimXML_DateVenue') == 'Heure examen') {
         $dateve = $datadmi;
     } elseif ($options->getOption('HprimXML_DateVenue') == 'Heure sortie') {
         $dateve = $datsort;
     } else {
         $dateve = $datdema;
     }
     $dtven = $dateve->getDate('Y-m-d');
     $hhven = $dateve->getDate('H:i:s');
     $mod->MxText('identifiantMessage', $res['ID'][$i]);
     if ($options->getOption('HprimXML_DateT')) {
         $mod->MxText('dateHeureProduction', $date->getDate("Y-m-d\\TH:i:s"));
     } else {
         $mod->MxText('dateHeureProduction', $date->getDatetime());
     }
     $mod->MxText('codeEmetteur', $options->getOption('HprimXML_Emet') ? $options->getOption('HprimXML_Emet') : $res['DISCR'][$i]);
     $mod->MxText('codeDestinataire', $options->getOption('HprimXML_Dest'));
     $mod->MxText('patientEmetteur', $idu);
     $mod->MxText('patientRecepteur', $idu);
     $mod->MxText('sexe', $sexe);
     $mod->MxText('patientNom', $nomu);
     $mod->MxText('patientPrenom', $pren);
     if ($dtnai != "00/00/0000") {
         $mod->MxText('patientNaissance', $dtnai);
     } else {
         $mod->MxText('patientNaissance', "");
     }
     $mod->MxText('venueRecepteur', $idpass);
     $mod->MxText('venueDate', $dtven);
     $mod->MxText('venueHeure', $hhven);
     $mod->MxText('action', $action);
     $mod->MxText('rumEmetteur', $idpass);
     $mod->MxText('rumDate', $dtr);
     $mod->MxText('ADELI', $this->adeliMedecin);
     //$mod -> MxText ( 'rumUF', $ufr ) ;
     $mod->MxText('rumUF', $pati->getUF() ? $pati->getUF() : $ufr);
     $mod->MxText('rumUFDate', $dtdem);
     $mod->MxText('rumUFHeure', $hhdem);
     switch ($options->getOption('HprimXML_CIM10_encodage')) {
         case 'alphanum':
             $cdccam = ereg_replace("[^A-Za-z0-9]", "", $cdccam);
             break;
         case 'alphanumcross':
             $cdccam = ereg_replace("[^A-Za-z0-9+]", "", $cdccam);
             break;
         default:
             $cdccam = $cdccam;
             break;
     }
     $mod->MxText('cim10princ', $cdccam);
     $tabd = explode('~', $cddiags);
     //eko ( count ( $tabd ).' : '.$cddiags );
     if (count($tabd) < 1 or $cddiags == '~' or $cddiags == '') {
         //$mod -> MxBloc ( 'diagsign', 'replace', '<diagnosticSignificatif><codeCim10/></diagnosticSignificatif>' ) ;
         //eko ( "ici" ) ;
         $mod->MxBloc('diagssign', 'replace', ' ');
     } else {
         for ($i = 0; isset($tabd[$i]); $i++) {
             switch ($options->getOption('HprimXML_CIM10_encodage')) {
                 case 'alphanum':
                     $codeCim10sign = ereg_replace("[^A-Za-z0-9]", "", $tabd[$i]);
                     break;
                 case 'alphanumcross':
                     $codeCim10sign = ereg_replace("[^A-Za-z0-9+]", "", $tabd[$i]);
                     break;
                 default:
                     $codeCim10sign = $tabd[$i];
                     break;
             }
             $mod->MxText('diagssign.diagsign.codeCim10sign', $codeCim10sign);
             $mod->MxBloc('diagssign.diagsign', 'loop');
         }
     }
     if ($options->getOption('HprimXML_NomFic') and $options->getOption('HprimXML_NomModulo')) {
         $nomFic = $options->getOption('HprimXML_NomFic') . sprintf('%03d', $res['ID'][$deb] % 1000);
     }
     $this->genFile($mod->MxWrite("1"), $num, $nomFic, array(), "diagxml/");
 }