======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: {{:slam:ws:2013:ppe3.2:equipe6:applifrais.zip|}}