Compte-Rendu PPE 3.2

T1: Script de clôture

Le script de clôture a été réalisé de cette manière, elle permet de modifier manuellement l'état d'une fiche de frais:

function modifierEtatFicheFrais($idCnx, $unMois, $unIdVisiteur, $unEtat) { $requete = "update FicheFrais set idEtat = '" . $unEtat . "', dateModif = now() where idVisiteur ='" . $unIdVisiteur . "' and mois = '". $unMois . "'"; mysql_query($requete, $idCnx);

Il est possible de l'automatiser avec le code suivant (à rentrer sur PHPMyAdmin):

CREATE EVENT Cloture
ON SCHEDULE EVERY 1 MONTH STARTS '2013-10-10 01:00:00'
DO UPDATE fichefrais SET idEtat='CL' WHERE RIGHT(mois , 2) = MONTH(DATE_SUB(NOW(), INTERVAL 1 MONTH))

T2: programme de validation/suppression/modification des fiches de frais

La fonction modifierEtatFicheFrais utilisé en T1 permet aussi de valider les fiches de frais.

Le programme de suppression est codé de la manière suivante:

function refuseLigneHF($idCnx, $unIdLigneHF) { $requete = "update lignefraishorsforfait set libelle = CONCAT('[REFUSE] ', libelle) where id =".$unIdLigneHF; mysql_query($requete, $idCnx); }

Cette fonction ajoute simplement le mot [REFUSE] à la fiche de frais choisi.

La modification d'une fiche de frais est codée de la manière suivante:

function modifierEltsForfait($idCnx, $unMois, $unIdVisiteur, $desEltsForfait) { $unMois=filtrerChainePourBD($unMois); $unIdVisiteur=filtrerChainePourBD{{:slam:ws:2013:ppe3.2:equipe6:applifrais.zip|}}($unIdVisiteur); foreach ($desEltsForfait as $idFraisForfait => $quantite) { $requete = "update LigneFraisForfait set quantite = " . $quantite . " where idVisiteur = '" . $unIdVisiteur . "' and mois = '" . $unMois . "' and idFraisForfait='" . $idFraisForfait . "'"; mysql_query($requete, $idCnx); } }

Le comptable entrera ensuite les nouvelles coordonnées de la fiche de frais sur un tableau prévu à cet effet et valider.

T3:

Lien partie: applifrais.zip