====== Tâche 1 ======
===== Requête d'automatisation pour clôturer les fiches de frais =====
CREATE EVENT MAJ
ON SCHEDULE EVERY 1 MONTH STARTS '2013-10-10 01:00:00'
DO UPDATE fichefrais
SET idEtat="CL"
WHERE idEtat="CR"
AND right (mois,2)!=MONTH(CURRENT_DATE);
Cette requête permet la création d'un événement appelé "MAJ" qui aura lieu tout les 10 du mois à
1 heure du matin.
Cet événement fera alors la modification de toutes les fiches frais à l'état "CR" et les passera
à l'état "CL".
====== Tâche 2 ======
===== Formulaire de validation des fiches de frais =====
==== Création du menu d'un comptable ====
Pour différencier un comptable d'un visiteur, cette requête a été utilisée.
function obtenirComptable()
{
$id=$_SESSION["idUser"];
$req = "select Comptable from visiteur where id='".$id."'";
$idCompt = mysql_query($req);
$ligne = mysql_fetch_assoc($idCompt);
return $ligne["Comptable"];
}
Au préalable une colonne Comptable a été ajoutée à la table visiteur.
Après on l'intègre dans le code de la page _sommaire.inc.php sachant qu'un comptable possède la valeur 1.
0 ) {
echo toStringErreurs($tabErreurs) ;
}
}
}
?>
Le menu du comptable propose donc de valider des fiches de frais et de suivre les remboursements des fiches.
==== Création du formulaire de validation ====
Tout d'abord on crée une requête pour récupérer tous les visiteurs possédants des fiches de frais.
function obtenirReqUtilisateursFicheFrais()
{
$req = "select id, nom, prenom from visiteur,fichefrais where Comptable=0 and idVisiteur=id
and idEtat='CL' or idEtat='CR'";
return $req;
}
Ensuite on l'intègre à la page cValiderFichesFrais.php pour obtenir une liste déroulante.
Après on utilise la liste déroulante de la page cConsulterFicheFrais.php afin de sélectionner le mois.
Une fois la sélection effectuée la fiche de frais ainsi que les liste des frais hors forfait s'affiche.
Le comptable peut alors cliquer sur un lien refuser qui indiquera dans le libellé du frais hors forfait que le remboursement de ce frais est refusé.
La requête modifie donc le libellé du frais en y ajoutant Refusé.
function modifierRefuser($idLigneHF)
{
$deb="select libelle from lignefraishorsforfait where id='".$idLigneHF."'";
$mid=mysql_query($deb);
$fin=mysql_fetch_assoc($mid);
$libelle=$fin["libelle"];
$refuse="Refuse - ";
$req="update lignefraishorsforfait set libelle='".$refuse.$libelle."' where id='".$idLigneHF."'";
mysql_query($req);
}
Il faut ensuite l'intégrer dans le tableau des frais hors forfait.
while ( is_array($lgEltHorsForfait) ) {
$idLigneHF=$lgEltHorsForfait["id"];
$date=$lgEltHorsForfait["date"];
?>
Le comptable a également la possibilité de valider la fiche de frais et la faire passer en demande de remboursement, c'est à dire faire passer la fiche à l'état "VA".
La requête permet donc de mettre à jour l'état de la fiche et d'enregistrer la date de modification.
function modifierFicheHF($unMois, $unIdVisiteur, $date)
{
$unMois=filtrerChainePourBD($unMois);
$unIdVisiteur=filtrerChainePourBD($unIdVisiteur);
$date=date('o--m--d');
$requete = "update FicheFrais set idEtat='VA', dateModif='".$date."' where idVisiteur = '" . $unIdVisiteur . "' and mois = '"
. $unMois . "'";
mysql_query($requete);
}
Pour exécuter la requête, nous l'avons mise dans un bouton Valider.