diff --git a/module/ExportRh/config/module.config.php b/module/ExportRh/config/module.config.php
index bc0eea02340dbce14d0c3dd2732ea7ac8e4ccafa..460ea395bae9a07354efdcc507be43bb3b405699 100644
--- a/module/ExportRh/config/module.config.php
+++ b/module/ExportRh/config/module.config.php
@@ -45,6 +45,17 @@ return [
                             ],
                         ],
                     ],
+                    'ren'            => [
+                        'type'          => 'Segment',
+                        'may_terminate' => false,
+                        'options'       => [
+                            'route'    => '/:intervenant/ren',
+                            'defaults' => [
+                                'controller' => Controller\ExportRhController::class,
+                                'action'     => 'renouvellement',
+                            ],
+                        ],
+                    ],
                     'administration' => [
                         'type'          => 'Literal',
                         'may_terminate' => true,
@@ -120,7 +131,7 @@ return [
                 ],
                 [
                     'controller' => Controller\ExportRhController::class,
-                    'action'     => ['exporter', 'prise-en-charge'],
+                    'action'     => ['exporter', 'prise-en-charge', 'renouvellement'],
                     'privileges' => [Privileges::EXPORT_RH_SYNC],
                     'assertion'  => ExportRhAssertion::class,
 
diff --git a/module/ExportRh/src/Connecteur/Siham/SihamConnecteur.php b/module/ExportRh/src/Connecteur/Siham/SihamConnecteur.php
index 4e3ea1e9064669af4f109ed7292003b569512931..ef51f20330850ab32b4a53f74dda967e25f550dc 100644
--- a/module/ExportRh/src/Connecteur/Siham/SihamConnecteur.php
+++ b/module/ExportRh/src/Connecteur/Siham/SihamConnecteur.php
@@ -266,6 +266,56 @@ class SihamConnecteur implements ConnecteurRhInterface
 
 
 
+    public function renouvellerIntervenantRH(\Application\Entity\Db\Intervenant $intervenant, $datas): ?string
+    {
+        try {
+            /* Récupération du dossier de l'intervenant */
+            $dossierIntervenant = $this->getServiceDossier()->getByIntervenant($intervenant);
+
+            /* Récupération du dossier de l'intervenant */
+            $dossierIntervenant = $this->getServiceDossier()->getByIntervenant($intervenant);
+
+            /*POSITION ADMINISTRATIVE*/
+            $position[] =
+                ['dateEffetPosition' => $datas['connecteurForm']['anneeUniversitaire'],
+                 'position'          => $datas['connecteurForm']['position']];
+
+            /*STATUT*/
+            $statut[] =
+                ['dateEffetStatut' => $datas['connecteurForm']['anneeUniversitaire'],
+                 'statut'          => $datas['connecteurForm']['statut']];
+
+            /*MODALITE SERVICE*/
+            $service[] =
+                ['dateEffetModalite' => $datas['connecteurForm']['anneeUniversitaire'],
+                 'modalite'          => $datas['connecteurForm']['modaliteService']];
+
+
+            $params = [
+                'categorieEntree'        => 'ACTIVE',
+                'dateRenouvellement'     => $datas['connecteurForm']['anneeUniversitaire'],
+                'emploi'                 => $datas['connecteurForm']['emploi'],
+                'listeModalitesServices' => $service,
+                'listeStatuts'           => $statut,
+                
+                'listePositions' => $position,
+                'motifEntree'    => 'REN',
+                'matricule'      => $intervenant->getCodeRh(),
+                'temoinValidite' => '1',
+                'UO'             => $datas['connecteurForm']['affectation'],
+            ];
+
+            $matricule = $this->siham->renouvellementAgent($params);
+
+
+            return $matricule;
+        } catch (SihamException $e) {
+            throw new \Exception($e->getMessage());
+        }
+    }
+
+
+
     public function recupererListeUO(): ?array
     {
         /*On récupére les UO de type composante*/
diff --git a/module/ExportRh/src/Controller/ExportRhController.php b/module/ExportRh/src/Controller/ExportRhController.php
index 97ecd0875d50acafd8990057a2783219b8841890..9d8c77a35ba5568a98cd49c85e1f051c2ee8bd48 100644
--- a/module/ExportRh/src/Controller/ExportRhController.php
+++ b/module/ExportRh/src/Controller/ExportRhController.php
@@ -74,8 +74,12 @@ class ExportRhController extends AbstractController
     {
 
         /* Initialisation */
-        $role        = $this->getServiceContext()->getSelectedIdentityRole();
-        $intervenant = $role->getIntervenant() ?: $this->getEvent()->getParam('intervenant');
+        $role                     = $this->getServiceContext()->getSelectedIdentityRole();
+        $intervenant              = $role->getIntervenant() ?: $this->getEvent()->getParam('intervenant');
+        $intervenantRh            = '';
+        $form                     = '';
+        $nameConnecteur           = '';
+        $affectationFonctionnelle = '';
 
         if (!$intervenant) {
             throw new \LogicException('Intervenant non précisé ou inexistant');
@@ -95,27 +99,33 @@ class ExportRhController extends AbstractController
          * Etape 4 : Si il a une affectation en cours alors on propose uniquement la mise à jour des données personnelles
          * Etape 5 : Si il n'a pas encore d'affectation on propose alors un renouvellement de l'intervenant
          */
-
-        $intervenantRh = $this->exportRhService->getIntervenantRh($intervenant);
-
-        if ($intervenantRh) {
-            //On a trouvé un intervenant dans le SI RH
-            $affectationEnCours = $this->exportRhService->getAffectationEnCours($intervenant);
-            //On regarde si il a une affectation en cours pour l'année courante si oui alors on propose uniquement une synchronisation des données personnelles
-            $renouvellement = true;
-            if (!empty($affectationEnCours)) {
-                //Si non on propose un renouvellement de l'intervenant SI RH
-                $renouvellement = false;
+        try {
+            $intervenantRh = $this->exportRhService->getIntervenantRh($intervenant);
+            if (!empty($intervenantRh)) {
+                //On a trouvé un intervenant dans le SI RH
+                $affectationEnCours = $this->exportRhService->getAffectationEnCours($intervenant);
+                //On regarde si il a une affectation en cours pour l'année courante si oui alors on propose uniquement une synchronisation des données personnelles
+                $renouvellement = true;
+                if (!empty($affectationEnCours)) {
+                    foreach ($affectationEnCours as $affectation) //Si non on propose un renouvellement de l'intervenant SI RH
+                    {
+                        if ($affectation->codeTypeRattachement == 'FUN') {
+                            $affectationFonctionnelle = $affectation;
+                            $renouvellement           = false;
+                        }
+                    }
+                }
+            } else {
+                $priseEnCharge = true;
             }
-        } else {
-            $priseEnCharge = true;
-        }
-
-        $form = $this->getExportRhForm();
 
 
-        $nameConnecteur = $this->exportRhService->getConnecteurName();
-
+            $nameConnecteur = $this->exportRhService->getConnecteurName();
+            $form           = $this->getExportRhForm();
+        } catch (SihamException $e) {
+            $this->flashMessenger()->addErrorMessage($e->getMessage());
+        }
+      
 
         return compact('typeIntervenant',
             'intervenant',
@@ -125,7 +135,8 @@ class ExportRhController extends AbstractController
             'form',
             'renouvellement',
             'priseEnCharge',
-            'nameConnecteur');
+            'nameConnecteur',
+            'affectationFonctionnelle');
     }
 
 
@@ -157,4 +168,30 @@ class ExportRhController extends AbstractController
         return $this->redirect()->toRoute('intervenant/exporter', [], [], true);
     }
 
+
+
+    public function renouvellementAction()
+    {
+        try {
+            if ($this->getRequest()->isPost()) {
+                $intervenant = $this->getEvent()->getParam('intervenant');
+                if (!$intervenant) {
+                    throw new \LogicException('Intervenant non précisé ou inexistant');
+                }
+
+                $posts  = $this->getRequest()->getPost();
+                $result = $this->exportRhService->renouvellementIntervenantRh($intervenant, $posts);
+                if ($result !== false) {
+                    $this->flashMessenger()->addSuccessMessage('succes du renouvellement matricule : ' . $result);
+                } else {
+                    $this->flashMessenger()->addErrorMessage('Probleme de renouvellement');
+                }
+            }
+        } catch (\Exception $e) {
+            $this->flashMessenger()->addErrorMessage($e->getMessage());
+        }
+
+
+        return $this->redirect()->toRoute('intervenant/exporter', [], [], true);
+    }
 }
diff --git a/module/ExportRh/src/Service/ExportRhService.php b/module/ExportRh/src/Service/ExportRhService.php
index 9e4916ffe97d6f3e12c9c0b77752c31819310a52..767def32b7b9a13d0913049ad25ff71ae00475b7 100644
--- a/module/ExportRh/src/Service/ExportRhService.php
+++ b/module/ExportRh/src/Service/ExportRhService.php
@@ -91,8 +91,7 @@ class ExportRhService extends AbstractService
     public function getAffectationEnCours($intervenant)
     {
         $affectation = $this->connecteur->recupererAffectationEnCours($intervenant);
-        var_dump($affectation);
-        die;
+
 
         return $affectation;
     }
@@ -141,6 +140,13 @@ class ExportRhService extends AbstractService
 
 
 
+    public function renouvellementIntervenantRh(Intervenant $intervenant, $datas)
+    {
+        return $this->connecteur->renouvellerIntervenantRH($intervenant, $datas);
+    }
+
+
+
     public function getIntervenantRHParamsDescription(): array
     {
         $desc = [
diff --git a/module/ExportRh/view/export-rh/export-rh/exporter.phtml b/module/ExportRh/view/export-rh/export-rh/exporter.phtml
index 9f4036eee57f3e05503f1f7603e69fe90706b8a4..ea80448395e3474086d54aa570813d6695f79dde 100755
--- a/module/ExportRh/view/export-rh/export-rh/exporter.phtml
+++ b/module/ExportRh/view/export-rh/export-rh/exporter.phtml
@@ -5,13 +5,19 @@
  * @var \Application\Entity\Db\IntervenantDossier $intervenantDossier
  */
 
-$form->prepare();
-$generiqueFieldset  = $form->get('generiqueFieldset');
-$connecteurFieldset = $form->get('connecteurForm');
+if ($priseEnCharge) {
+    $action = 'intervenant/pec';
+} elseif ($renouvellement) {
+    $action = 'intervenant/ren';
+} else {
+    $action = 'intervenant/ren';
+}
 
 ?>
 <br/>
 
+<?php echo $this->messenger()->addCurrentMessagesFromFlashMessenger()->addMessagesFromFlashMessenger(); ?>
+
 
 <div class="messenger alert alert-warning">
     <?php if ($typeIntervenant == 'P'): ?>
@@ -21,143 +27,164 @@ $connecteurFieldset = $form->get('connecteurForm');
     <?php elseif (empty($intervenantRh)): ?>
     <?php endif; ?>
 </div>
-<?php echo $this->messenger()->addCurrentMessagesFromFlashMessenger()->addMessagesFromFlashMessenger(); ?>
-
-<form class="no-intranavigation" action="<?= $this->url('intervenant/pec', ['intervenant' => $intervenant->getId()]) ?>" method="post">
-    <!--Partie générique du formulaire-->
-    <div class="panel panel-default">
-        <div class="panel-heading">Récapitulatif des données personnelles</div>
-        <div class="panel-body">
-            <? if (empty($intervenantRh)): ?>
-            <p>L'intervenant <?= $intervenantDossier->getPrenom() . ' ' . $intervenantDossier->getNomUsuel() ?> n'a pas été trouvé dans le SI RH. Vous pouvez si vous le souhaiter prendre en charge cette intervenant avec les données de son dossier, résumées ci-dessous :</p>
-            <table class="table">
-                <thead>
-                <tr>
-                    <th>Champs</th>
-                    <th>Données</th>
-
-                </tr>
-                </thead>
-                <tbody>
-                <tr>
-                    <td>
-                        <?= $this->formCheckbox($generiqueFieldset->get('nomUsuel')); ?>
-                        <?= $this->formLabel($generiqueFieldset->get('nomUsuel')) ?> :
-                    </td>
-                    <td><?= $intervenantDossier->getNomUsuel() ?></td>
-                </tr>
-                <tr>
-                    <td>
-                        <?= $this->formCheckbox($generiqueFieldset->get('prenom')); ?>
-                        <?= $this->formLabel($generiqueFieldset->get('prenom')) ?> :
-                    </td>
-                    <td><?= $intervenantDossier->getPrenom() ?></td>
-
-                </tr>
-                <tr>
-                    <td>
-                        <?= $this->formCheckbox($generiqueFieldset->get('dateNaissance')); ?>
-                        <?= $this->formLabel($generiqueFieldset->get('dateNaissance')) ?> :
-                    </td>
-                    <td><?= $intervenantDossier->getDateNaissance()->format('d/m/Y') ?></td>
-
-                </tr>
-                <tr>
-                    <td>
-                        <?= $this->formCheckbox($generiqueFieldset->get('nationalite')); ?>
-                        <?= $this->formLabel($generiqueFieldset->get('nationalite')) ?> :
-                    </td>
-                    <td><?= $intervenantDossier->getPaysNationalite()->getLibelle() ?></td>
-                </tr>
-
-                <tr>
-                    <td>
-                        <?= $this->formCheckbox($generiqueFieldset->get('adressePrincipale')); ?>
-                        <?= $this->formLabel($generiqueFieldset->get('adressePrincipale')) ?> :
-                    </td>
-                    <td>
-                        <?php
-                        $adresse = '';
-                        $adresse .= (!empty($intervenantDossier->getAdresseNumero())) ? $intervenantDossier->getAdresseNumero() . ' ' : '';
-                        $adresse .= (!empty($intervenantDossier->getAdresseNumeroCompl())) ? $intervenantDossier->getAdresseNumeroCompl() . ' ' : '';
-                        $adresse .= (!empty($intervenantDossier->getAdresseVoirie())) ? $intervenantDossier->getAdresseVoirie() . ' ' : '';
-                        $adresse .= (!empty($intervenantDossier->getAdresseVoie())) ? $intervenantDossier->getAdresseVoie() . ' ' : '';
-                        $adresse .= (!empty($intervenantDossier->getAdressePrecisions())) ? '<br/>' . $intervenantDossier->getAdressePrecisions() . ' ' : '';
-                        $adresse .= '<br/>';
-                        $adresse .= $intervenantDossier->getAdresseCodePostal() . ' ' . $intervenantDossier->getAdresseCommune();
-                        echo $adresse;
-                        ?>
-                    </td>
-                </tr>
-                <tr>
-                    <td>
-                        <?= $this->formCheckbox($generiqueFieldset->get('telPro')); ?>
-                        <?= $this->formLabel($generiqueFieldset->get('telPro')) ?> :
-                    </td>
-                    <td><?= $intervenantDossier->getTelPro() ?></td>
-                </tr>
-                <tr>
-                    <td>
-                        <?= $this->formCheckbox($generiqueFieldset->get('telPerso')); ?>
-                        <?= $this->formLabel($generiqueFieldset->get('telPerso')) ?> :
-                    </td>
-                    <td><?= $intervenantDossier->getTelPerso() ?></td>
-                </tr>
-                <tr>
-                    <td>
-                        <?= $this->formCheckbox($generiqueFieldset->get('emailPro')); ?>
-                        <?= $this->formLabel($generiqueFieldset->get('emailPro')) ?> :
-                    </td>
-                    <td><?= $intervenantDossier->getEmailPro() ?></td>
-                </tr>
-                <tr>
-                    <td>
-                        <?= $this->formCheckbox($generiqueFieldset->get('emailPerso')); ?>
-                        <?= $this->formLabel($generiqueFieldset->get('emailPerso')) ?> :
-                    </td>
-                    <td><?= $intervenantDossier->getEmailPerso() ?></td>
-                </tr>
-                <tr>
-                    <td>
-                        <?= $this->formCheckbox($generiqueFieldset->get('numeroInsee')); ?>
-                        <?= $this->formLabel($generiqueFieldset->get('numeroInsee')) ?> :
-                    </td>
-                    <td><?= $intervenantDossier->getNumeroInsee() ?></td>
-
-                </tr>
-                <tr>
-                    <td>
-                        <?= $this->formCheckbox($generiqueFieldset->get('iban')); ?>
-                        <?= $this->formLabel($generiqueFieldset->get('iban')) ?> :
-                    </td>
-                    <td><?= $intervenantDossier->getIBAN() ?></td>
-                </tr>
-                <tr>
-                    <td>
-                        <?= $this->formCheckbox($generiqueFieldset->get('bic')); ?>
-                        <?= $this->formLabel($generiqueFieldset->get('bic')) ?> :
-                    </td>
-                    <td><?= $intervenantDossier->getBIC() ?></td>
-                </tr>
-                </tbody>
-            </table>
-
+<?php if (!empty($form)): ?>
+    <?php
+    $form->prepare();
+    $generiqueFieldset  = $form->get('generiqueFieldset');
+    $connecteurFieldset = $form->get('connecteurForm');
+    ?>
+
+    <form class="no-intranavigation" action="<?= $this->url($action, ['intervenant' => $intervenant->getId()]) ?>" method="post">
+        <!--Partie générique du formulaire-->
+        <div class="panel panel-default">
+            <div class="panel-heading">Récapitulatif des données personnelles</div>
+            <div class="panel-body">
+                <?php if (empty($intervenantRh)): ?>
+                    <p>L'intervenant <?= $intervenantDossier->getPrenom() . ' ' . $intervenantDossier->getNomUsuel() ?> n'a pas été trouvé dans le SI RH. Vous pouvez si vous le souhaiter prendre en charge cette intervenant avec les données de son dossier, résumées ci-dessous :</p>
+                <?php else: ?>
+                    <?php if (!empty($affectationFonctionnelle)): ?>
+                        <p>L'intervenant <?= $intervenantDossier->getPrenom() . ' ' . $intervenantDossier->getNomUsuel() ?> est bien dans le <?= $nameConnecteur ?>. Il possède déjà actuellement une affectation pour l'année universitaire en cours. Vous pouvez mettre à jour ses données personnelles si
+                            vous le souhaitez avec le bouton synchronisation ci-dessous.</p>
+                    <?php else: ?>
+                        <p>L'intervenant <?= $intervenantDossier->getPrenom() . ' ' . $intervenantDossier->getNomUsuel() ?> est bien dans le <?= $nameConnecteur ?>.Il ne possède pas encore d'affectation pour l'année en cours. Vous pouvez le renouveller pour cette année à l'aide du formulaire
+                            ci-dessous.</p>
+                    <?php endif; ?>
+                <?php endif; ?>
+
+                <table class="table">
+                    <thead>
+                    <tr>
+                        <th>Champs</th>
+                        <th>Données</th>
+
+                    </tr>
+                    </thead>
+                    <tbody>
+                    <tr>
+                        <td>
+                            <?= $this->formCheckbox($generiqueFieldset->get('nomUsuel')); ?>
+                            <?= $this->formLabel($generiqueFieldset->get('nomUsuel')) ?> :
+                        </td>
+                        <td><?= $intervenantDossier->getNomUsuel() ?></td>
+                    </tr>
+                    <tr>
+                        <td>
+                            <?= $this->formCheckbox($generiqueFieldset->get('prenom')); ?>
+                            <?= $this->formLabel($generiqueFieldset->get('prenom')) ?> :
+                        </td>
+                        <td><?= $intervenantDossier->getPrenom() ?></td>
+
+                    </tr>
+                    <tr>
+                        <td>
+                            <?= $this->formCheckbox($generiqueFieldset->get('dateNaissance')); ?>
+                            <?= $this->formLabel($generiqueFieldset->get('dateNaissance')) ?> :
+                        </td>
+                        <td><?= $intervenantDossier->getDateNaissance()->format('d/m/Y') ?></td>
+
+                    </tr>
+                    <tr>
+                        <td>
+                            <?= $this->formCheckbox($generiqueFieldset->get('nationalite')); ?>
+                            <?= $this->formLabel($generiqueFieldset->get('nationalite')) ?> :
+                        </td>
+                        <td><?= $intervenantDossier->getPaysNationalite()->getLibelle() ?></td>
+                    </tr>
+
+                    <tr>
+                        <td>
+                            <?= $this->formCheckbox($generiqueFieldset->get('adressePrincipale')); ?>
+                            <?= $this->formLabel($generiqueFieldset->get('adressePrincipale')) ?> :
+                        </td>
+                        <td>
+                            <?php
+                            $adresse = '';
+                            $adresse .= (!empty($intervenantDossier->getAdresseNumero())) ? $intervenantDossier->getAdresseNumero() . ' ' : '';
+                            $adresse .= (!empty($intervenantDossier->getAdresseNumeroCompl())) ? $intervenantDossier->getAdresseNumeroCompl() . ' ' : '';
+                            $adresse .= (!empty($intervenantDossier->getAdresseVoirie())) ? $intervenantDossier->getAdresseVoirie() . ' ' : '';
+                            $adresse .= (!empty($intervenantDossier->getAdresseVoie())) ? $intervenantDossier->getAdresseVoie() . ' ' : '';
+                            $adresse .= (!empty($intervenantDossier->getAdressePrecisions())) ? '<br/>' . $intervenantDossier->getAdressePrecisions() . ' ' : '';
+                            $adresse .= '<br/>';
+                            $adresse .= $intervenantDossier->getAdresseCodePostal() . ' ' . $intervenantDossier->getAdresseCommune();
+                            echo $adresse;
+                            ?>
+                        </td>
+                    </tr>
+                    <tr>
+                        <td>
+                            <?= $this->formCheckbox($generiqueFieldset->get('telPro')); ?>
+                            <?= $this->formLabel($generiqueFieldset->get('telPro')) ?> :
+                        </td>
+                        <td><?= $intervenantDossier->getTelPro() ?></td>
+                    </tr>
+                    <tr>
+                        <td>
+                            <?= $this->formCheckbox($generiqueFieldset->get('telPerso')); ?>
+                            <?= $this->formLabel($generiqueFieldset->get('telPerso')) ?> :
+                        </td>
+                        <td><?= $intervenantDossier->getTelPerso() ?></td>
+                    </tr>
+                    <tr>
+                        <td>
+                            <?= $this->formCheckbox($generiqueFieldset->get('emailPro')); ?>
+                            <?= $this->formLabel($generiqueFieldset->get('emailPro')) ?> :
+                        </td>
+                        <td><?= $intervenantDossier->getEmailPro() ?></td>
+                    </tr>
+                    <tr>
+                        <td>
+                            <?= $this->formCheckbox($generiqueFieldset->get('emailPerso')); ?>
+                            <?= $this->formLabel($generiqueFieldset->get('emailPerso')) ?> :
+                        </td>
+                        <td><?= $intervenantDossier->getEmailPerso() ?></td>
+                    </tr>
+                    <tr>
+                        <td>
+                            <?= $this->formCheckbox($generiqueFieldset->get('numeroInsee')); ?>
+                            <?= $this->formLabel($generiqueFieldset->get('numeroInsee')) ?> :
+                        </td>
+                        <td><?= $intervenantDossier->getNumeroInsee() ?></td>
+
+                    </tr>
+                    <tr>
+                        <td>
+                            <?= $this->formCheckbox($generiqueFieldset->get('iban')); ?>
+                            <?= $this->formLabel($generiqueFieldset->get('iban')) ?> :
+                        </td>
+                        <td><?= $intervenantDossier->getIBAN() ?></td>
+                    </tr>
+                    <tr>
+                        <td>
+                            <?= $this->formCheckbox($generiqueFieldset->get('bic')); ?>
+                            <?= $this->formLabel($generiqueFieldset->get('bic')) ?> :
+                        </td>
+                        <td><?= $intervenantDossier->getBIC() ?></td>
+                    </tr>
+                    </tbody>
+                </table>
+
+            </div>
         </div>
-    </div>
-    <?php if ($priseEnCharge): ?>
-
-        <!-- Formulaire spécifique au connecteur-->
-        <?php
-        echo $this->partial('export-rh/export-rh/' . $nameConnecteur . '/connecteurForm', compact('connecteurFieldset'));
-        ?>
-
-        <p>
-            <input type="submit" value="Prendre en charge l'agent"/>
-        </p>
-    <?php elseif ($renouvellement): ?>
-        renouvellement
-
-    <?php endif; ?>
-
-</form>
+        <?php if ($priseEnCharge): ?>
+
+            <!-- Formulaire spécifique au connecteur-->
+            <?php
+            echo $this->partial('export-rh/export-rh/' . $nameConnecteur . '/connecteurForm', compact('connecteurFieldset'));
+            ?>
+
+            <p>
+                <input type="submit" value="Prendre en charge l'agent"/>
+            </p>
+        <?php elseif ($renouvellement): ?>
+            <?php
+            echo $this->partial('export-rh/export-rh/' . $nameConnecteur . '/connecteurForm', compact('connecteurFieldset'));
+            ?>
+
+            <p>
+                <input type="submit" value="Renouveller l'agent"/>
+            </p>
+        <?php endif; ?>
+
+    </form>
+<?php endif; ?>
 
diff --git a/module/UnicaenSiham/src/UnicaenSiham/Service/Siham.php b/module/UnicaenSiham/src/UnicaenSiham/Service/Siham.php
index 0804cc65db92bd5e2034e95eda086ef7b4ff0068..c9c77c4876cc1556eb5d7049ce4a3b7611757d5f 100644
--- a/module/UnicaenSiham/src/UnicaenSiham/Service/Siham.php
+++ b/module/UnicaenSiham/src/UnicaenSiham/Service/Siham.php
@@ -251,7 +251,7 @@ class Siham
         $paramsWS = ['ParamListAgent' => [
             'codeEtablissement'  => $this->codeEtablissement,
             'dateFinObservation' => (isset($params['dateFinObservation'])) ? $params['dateFinObservation'] : '',
-            'dateObservation'    => '',//(isset($params['dateObservation'])) ? $params['dateObservation'] : '',
+            'dateObservation'    => (isset($params['dateObservation'])) ? $params['dateObservation'] : '',
             'listeMatricules'    => $listeMatricules,
         ]];
 
@@ -259,7 +259,7 @@ class Siham
         try {
             $client = $this->sihamClient->getClient('DossierAgentWebService');
             $result = $client->RecupDonneesAdministratives($paramsWS);
-            
+
             if (isset($result->return)) {
 
                 return $result->return;
@@ -353,8 +353,7 @@ class Siham
                 $paramsWS['ParamModifDP']['dateDebut'] = $agent->getDateDebutAdresse();
                 $client                                = $this->sihamClient->getClient('DossierAgentWebService');
                 $result                                = $client->ModifDonneesPersonnelles($paramsWS);
-                var_dump($this->sihamClient->getLastRequest());
-                die;
+
                 if (isset($result->return)) {
                     if ($result->return->statutMAJ == 1) {
                         return true;
@@ -730,6 +729,124 @@ class Siham
 
 
 
+    public function renouvellementAgent(array $params)
+    {
+
+        //Traitement des modalités de services
+        $listeModalitesServices = [];
+
+        if (!empty($params['listeModalitesServices'])) {
+            foreach ($params['listeModalitesServices'] as $modalite) {
+                $listeModalitesServices[] = ['dateEffetModalite' => $modalite['dateEffetModalite'],
+                                             'modalite'          => $modalite['modalite']];
+            }
+        } else {
+            $listeModalitesServices[] = ['dateEffetModalite' => '',
+                                         'modalite'          => ''];
+        }
+
+        //Traitement du statut
+
+        $listeStatuts = [];
+
+        if (!empty($params['listeStatuts'])) {
+            foreach ($params['listeStatuts'] as $statut) {
+                $listeStatuts[] = ['dateEffetStatut' => $statut['dateEffetStatut'],
+                                   'statut'          => $statut['statut']];
+            }
+        } else {
+            $listeStatuts[] = ['dateEffetStatut' => '',
+                               'statut'          => ''];
+        }
+
+        //Traitement du carriere
+        $listeCarriere[] = ['dateEffetCarriere' => (isset($params['dateRenouvellement'])) ? strtoupper($params['dateRenouvellement']) : '',
+                            'grade'             => '0000',
+                            'qualiteStatutaire' => 'N',
+                            'temoinValidite'    => '1'];
+
+        //Traitement des positions
+
+        $listePositions = [];
+
+
+        if (!empty($params['listePositions'])) {
+            foreach ($params['listePositions'] as $position) {
+                $listePositions[] = [
+                    'dateEffetPosition' => (isset($position['dateEffetPosition'])) ? strtoupper($position['dateEffetPosition']) : '',
+                    'position'          => (isset($position['position'])) ? strtoupper($position['position']) : '',
+                    'temoinValidite'    => (isset($position['temoinValidite'])) ? strtoupper($position['temoinValidite']) : '',
+                ];
+            }
+        } else {
+            $listePositions[] = [
+                'dateEffetPosition' => '',
+                'position'          => '',
+                'temoinValidite'    => '',
+            ];
+        }
+
+        $paramsWS = ['ParamRA' => [
+            'categorieEntree'        => (isset($params['categorieEntree'])) ? strtoupper($params['categorieEntree']) : '',
+            'codeAdministration'     => $this->codeAdministration,
+            'codeEtablissement'      => $this->codeEtablissement,
+            'dateRenouvellement'     => (isset($params['dateRenouvellement'])) ? strtoupper($params['dateRenouvellement']) : '',
+            'emploi'                 => (isset($params['emploi'])) ? strtoupper($params['emploi']) : '',
+            'listeCarriere'          => $listeCarriere,
+            'listeModalitesServices' => $listeModalitesServices,
+            'listeStatuts'           => $listeStatuts,
+            'listePositions'         => $listePositions,
+            'motifEntree'            => (isset($params['motifEntree'])) ? strtoupper($params['motifEntree']) : self::SIHAM_MOTIF_ENTREE_DEFAULT,
+            'matricule'              => (isset($params['matricule'])) ? strtoupper($params['matricule']) : '',
+            'temoinValidite'         => (isset($params['temoinValidite'])) ? strtoupper($params['temoinValidite']) : '',
+            'UO'                     => (isset($params['UO'])) ? strtoupper($params['UO']) : '',
+
+        ]];
+
+
+        try {
+
+            $client = $this->sihamClient->getClient('PECWebService');
+            $result = $client->RenouvellementAgent($paramsWS);
+
+
+            if ($result->return->statut == 'ERREUR_GENERALE') {
+                $messageErreur  = '';
+                $messageWarning = '';
+                if (!empty($result->return->listeAnomaliesWebServices)) {
+                    if (is_array($result->return->listeAnomaliesWebServices)) {
+                        foreach ($result->return->listeAnomaliesWebServices as $anomalie) {
+                            if (isset($anomalie->anomalie)) {
+                                if (strpos($anomalie->anomalie, 'Erreur') === 0) {
+                                    $messageErreur .= $anomalie->anomalie . '<br/>';
+                                }
+                            }
+                        }
+                    } else {
+                        if (isset($result->return->listeAnomaliesWebServices->anomalie)) {
+                            if (strpos($result->return->listeAnomaliesWebServices->anomalie, 'Erreur') === 0) {
+                                $messageErreur .= $result->return->listeAnomaliesWebServices->anomalie . '<br/>';
+                            }
+                        }
+                    }
+                }
+                //Traitement du message d'erreur spécifique à la PEC
+                throw new SihamException($messageErreur, 0);
+            } elseif ($result->return->statut == 'MAJ OK' && !empty($result->return->matricule)) {
+                return $result->return->matricule;
+            } else {
+                throw new SihamException('Erreur non identifié, veuillez vous rapprocher du support informatique', 0);
+            }
+        } catch (\SoapFault $e) {
+
+            throw new SihamException($e->faultstring, 0, $e);
+        }
+
+        return false;
+    }
+
+
+
     /**
      * @param $params       array Paramètres du webservice : codeRepertoire
      *