0% ont trouvé ce document utile (0 vote)
1 vues27 pages

# Guide Complet Des Fenetres Windev - Gestion Evenementielle

Ce guide fournit des instructions détaillées pour la création et la gestion d'une application de gestion événementielle avec WinDev. Il décrit les fenêtres principales, les champs requis, les procédures de connexion, ainsi que la gestion des événements et des participants. Des exemples de code en WLanguage sont fournis pour chaque fonctionnalité, assurant une mise en œuvre correcte des fonctionnalités de l'application.

Transféré par

yakoubadiallo172
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
1 vues27 pages

# Guide Complet Des Fenetres Windev - Gestion Evenementielle

Ce guide fournit des instructions détaillées pour la création et la gestion d'une application de gestion événementielle avec WinDev. Il décrit les fenêtres principales, les champs requis, les procédures de connexion, ainsi que la gestion des événements et des participants. Des exemples de code en WLanguage sont fournis pour chaque fonctionnalité, assurant une mise en œuvre correcte des fonctionnalités de l'application.

Transféré par

yakoubadiallo172
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

# Guide complet des fenetres WinDev - Gestion evenementielle

Ce guide suit ta base actuelle. Les noms importants confirmes dans ton analyse
sont :

```text
evenements, IDevenements
TARIF, IDTARIF
Utilisateur, Role, Client, Participant
Inscription, Paiement, Depense
Prestataire, Lieu, Salle, TypeEvenement
```

Important : ton analyse contient encore `IDOrganisateur` dans plusieurs fichiers.


Pour ton devoir local, garde un organisateur par defaut avec `IDOrganisateur =
1`. Dans les ajouts, on mettra donc souvent `IDOrganisateur = 1`.

## Regle generale dans WinDev

Pour chaque fenetre :

1. Clic droit sur `Fenetres`.


2. `Nouvelle fenetre`.
3. Choisir `Fenetre vierge`.
4. Donner exactement le nom indique.
5. Ajouter les champs avec les noms exacts.
6. Les tables doivent etre `par programmation`.
7. Les colonnes des tables doivent etre en `Affichage`, pas en saisie.
8. Coller le code seulement apres avoir cree tous les champs.
9. Si une ligne devient rouge, verifier d'abord le nom du champ et le nom de la
rubrique dans l'analyse.

## Variables globales du projet

A placer dans les declarations globales du projet :

```wlanguage
gnIDUtilisateur est un entier
gsLoginUtilisateur est une chaine
gsNomUtilisateur est une chaine
gsCodeRole est une chaine
```

## 1. FEN_Connexion
Interface :

![FEN_Connexion](C:/Users/LENOVO/Documents/New%20project/maquettes_gestion_evenem
entiel/01_FEN_Connexion.png)

Champs a creer :

```text
SAI_Login champ de saisie
SAI_MotDePasse champ de saisie, mot de passe
BTN_Connexion bouton
BTN_MotDePasseOublie bouton
BTN_Quitter bouton
```

Code de `BTN_Connexion` :

```wlanguage
SI SAI_Login = "" OU SAI_MotDePasse = "" ALORS
Info("Veuillez saisir le login et le mot de passe.")
RETOUR
FIN

SI HLitRecherchePremier(Utilisateur, Login, SAI_Login) = Faux ALORS


Erreur("Login ou mot de passe incorrect.")
RETOUR
FIN

SI [Link] <> SAI_MotDePasse ALORS


Erreur("Login ou mot de passe incorrect.")
RETOUR
FIN

SI [Link] = Faux ALORS


Erreur("Ce compte utilisateur est desactive.")
RETOUR
FIN

gnIDUtilisateur = [Link]
gsLoginUtilisateur = [Link]
gsNomUtilisateur = [Link] + " " + [Link]

SI HLitRecherchePremier(Role, IDRole, [Link]) ALORS


gsCodeRole = [Link]
SINON
gsCodeRole = ""
FIN

[Link] = DateHeureSys()
HModifie(Utilisateur)

Ouvre(FEN_Principale)
Ferme()
```

Code de `BTN_MotDePasseOublie` :

```wlanguage
SI SAI_Login = "" ALORS
Info("Veuillez saisir votre login.")
RepriseSaisie(SAI_Login)
RETOUR
FIN

SI HLitRecherchePremier(Utilisateur, Login, SAI_Login) = Faux ALORS


Erreur("Aucun utilisateur trouve avec ce login.")
RETOUR
FIN

sReponse est une chaine = ""

SI Saisie([Link], sReponse) = 0 ALORS


RETOUR
FIN

SI Majuscule(sReponse) <> Majuscule([Link]) ALORS


Erreur("Reponse incorrecte.")
RETOUR
FIN

sNouveauMotDePasse est une chaine = ""

SI Saisie("Saisissez votre nouveau mot de passe", sNouveauMotDePasse) = 0 ALORS


RETOUR
FIN

SI sNouveauMotDePasse = "" ALORS


Erreur("Le mot de passe ne peut pas etre vide.")
RETOUR
FIN
[Link] = sNouveauMotDePasse

SI HModifie(Utilisateur) = Faux ALORS


Erreur(HErreurInfo())
RETOUR
FIN

Info("Mot de passe reinitialise avec succes.")


```

Code de `BTN_Quitter` :

```wlanguage
FinProgramme()
```

## 2. FEN_Principale

Interface :

![FEN_Principale](C:/Users/LENOVO/Documents/New%20project/maquettes_gestion_evene
mentiel/02_FEN_Principale.png)

Boutons a creer :

```text
BTN_Evenements
BTN_Participants
BTN_Clients
BTN_Inscriptions
BTN_Paiements
BTN_Depenses
BTN_Prestataires
BTN_LieuxSalles
BTN_Utilisateurs
BTN_Rapports
BTN_Deconnexion
```

Codes des boutons :

```wlanguage
// BTN_Evenements
Ouvre(FEN_ListeEvenements)
```

```wlanguage
// BTN_Participants
Ouvre(FEN_ListeParticipants)
```

```wlanguage
// BTN_Clients
Ouvre(FEN_Clients)
```

```wlanguage
// BTN_Inscriptions
Ouvre(FEN_Inscriptions)
```

```wlanguage
// BTN_Paiements
Ouvre(FEN_Paiements)
```

```wlanguage
// BTN_Depenses
Ouvre(FEN_Depenses)
```

```wlanguage
// BTN_Prestataires
Ouvre(FEN_Prestataires)
```

```wlanguage
// BTN_LieuxSalles
Ouvre(FEN_LieuxSalles)
```

```wlanguage
// BTN_Utilisateurs
Ouvre(FEN_Utilisateurs)
```

```wlanguage
// BTN_Rapports
Ouvre(FEN_Rapports)
```

```wlanguage
// BTN_Deconnexion
gnIDUtilisateur = 0
gsLoginUtilisateur = ""
gsNomUtilisateur = ""
gsCodeRole = ""

Ouvre(FEN_Connexion)
Ferme()
```

## 3. FEN_ListeEvenements

Interface :

![FEN_ListeEvenements](C:/Users/LENOVO/Documents/New%20project/maquettes_gestion_
evenementiel/03_FEN_ListeEvenements.png)

Champs :

```text
SAI_Recherche champ de saisie
TABLE_Evenements table par programmation
BTN_Nouveau bouton
BTN_Modifier bouton
BTN_Actualiser bouton
BTN_Fermer bouton
```

Colonnes de `TABLE_Evenements` :

```text
COL_IDevenements invisible
COL_CodeEvenement
COL_NomEvenement
COL_DateDebut
COL_DateFin
COL_Statut
COL_ModeAcces
COL_BudgetPrevisionnel
```
Procedure locale `ChargerEvenements` dans les declarations globales de la fenetre
:

```wlanguage
PROCÉDURE ChargerEvenements()

TableSupprimeTout(TABLE_Evenements)

sRecherche est une chaine = Majuscule(SAI_Recherche)

HLitPremier(evenements)
TANTQUE PAS HEnDehors(evenements)

SI sRecherche = "" OU ...


Position(Majuscule([Link]), sRecherche) > 0 OU ...
Position(Majuscule([Link]), sRecherche) > 0 ALORS

TableAjouteLigne(TABLE_Evenements, ...
[Link], ...
[Link], ...
[Link], ...
[Link], ...
[Link], ...
[Link], ...
[Link], ...
[Link])
FIN

HLitSuivant(evenements)
FIN
```

Initialisation de la fenetre :

```wlanguage
ChargerEvenements()
```

Codes des boutons :

```wlanguage
// BTN_Nouveau
Ouvre(FICHE_Evenement, 0)
ChargerEvenements()
```
```wlanguage
// BTN_Modifier
SI TableSelect(TABLE_Evenements) = -1 ALORS
Info("Veuillez selectionner un evenement.")
RETOUR
FIN

nLigne est un entier = TableSelect(TABLE_Evenements)


nIDevenements est un entier = TABLE_Evenements.COL_IDevenements[nLigne]

Ouvre(FICHE_Evenement, nIDevenements)
ChargerEvenements()
```

```wlanguage
// BTN_Actualiser
ChargerEvenements()
```

```wlanguage
// BTN_Fermer
Ferme()
```

Code de modification de `SAI_Recherche` :

```wlanguage
ChargerEvenements()
```

## 4. FICHE_Evenement

Interface :

![FICHE_Evenement](C:/Users/LENOVO/Documents/New%20project/maquettes_gestion_even
ementiel/04_FICHE_Evenement.png)

Champs :

```text
SAI_CodeEvenement
SAI_NomEvenement
COMBO_Client
COMBO_TypeEvenement
COMBO_Lieu
COMBO_Salle
COMBO_ModeAcces
COMBO_Statut
SAI_DateDebut
SAI_HeureDebut
SAI_DateFin
SAI_HeureFin
SAI_Capacite
SAI_BudgetPrevisionnel
SAI_ResponsableEvenement
SAI_Description
SAI_Observations
BTN_Enregistrer
BTN_Annuler
BTN_Fermer
```

Declarations globales de la fenetre :

```wlanguage
PROCÉDURE FICHE_Evenement(nIDParam est un entier = 0)

gnIDevenementsEnCours est un entier = nIDParam


```

Procedures locales :

```wlanguage
PROCÉDURE ChargerCombos()

ListeSupprimeTout(COMBO_Client)
HLitPremier(Client)
TANTQUE PAS HEnDehors(Client)
ListeAjoute(COMBO_Client, [Link] + gLien([Link]))
HLitSuivant(Client)
FIN
gLienActive(COMBO_Client, Vrai)

ListeSupprimeTout(COMBO_TypeEvenement)
HLitPremier(TypeEvenement)
TANTQUE PAS HEnDehors(TypeEvenement)
ListeAjoute(COMBO_TypeEvenement, [Link] +
gLien([Link]))
HLitSuivant(TypeEvenement)
FIN
gLienActive(COMBO_TypeEvenement, Vrai)

ListeSupprimeTout(COMBO_Lieu)
HLitPremier(Lieu)
TANTQUE PAS HEnDehors(Lieu)
ListeAjoute(COMBO_Lieu, [Link] + gLien([Link]))
HLitSuivant(Lieu)
FIN
gLienActive(COMBO_Lieu, Vrai)

ListeSupprimeTout(COMBO_Salle)
HLitPremier(Salle)
TANTQUE PAS HEnDehors(Salle)
ListeAjoute(COMBO_Salle, [Link] + gLien([Link]))
HLitSuivant(Salle)
FIN
gLienActive(COMBO_Salle, Vrai)
```

```wlanguage
PROCÉDURE ChargerEvenement(nID est un entier)

SI HLitRecherchePremier(evenements, IDevenements, nID) = Faux ALORS


Erreur("Evenement introuvable.")
Ferme()
RETOUR
FIN

SAI_CodeEvenement = [Link]
SAI_NomEvenement = [Link]
COMBO_Client = [Link]
COMBO_TypeEvenement = [Link]
COMBO_Lieu = [Link]
COMBO_Salle = [Link]
COMBO_ModeAcces = [Link]
COMBO_Statut = [Link]
SAI_DateDebut = [Link]
SAI_HeureDebut = [Link]
SAI_DateFin = [Link]
SAI_HeureFin = [Link]
SAI_Capacite = [Link]
SAI_BudgetPrevisionnel = [Link]
SAI_ResponsableEvenement = [Link]
SAI_Description = [Link]
SAI_Observations = [Link]
```

Initialisation :

```wlanguage
ChargerCombos()

ListeAjoute(COMBO_ModeAcces, "Gratuit")
ListeAjoute(COMBO_ModeAcces, "Invitation")
ListeAjoute(COMBO_ModeAcces, "Payant")

ListeAjoute(COMBO_Statut, "Brouillon")
ListeAjoute(COMBO_Statut, "Confirme")
ListeAjoute(COMBO_Statut, "EnCours")
ListeAjoute(COMBO_Statut, "Termine")
ListeAjoute(COMBO_Statut, "Annule")

SI gnIDevenementsEnCours = 0 ALORS
SAI_CodeEvenement = "EVT" + DateVersChaîne(DateSys(), "AAAAMMJJ") +
HeureVersChaîne(HeureSys(), "HHMMSS")
SAI_DateDebut = DateSys()
SAI_DateFin = DateSys()
COMBO_ModeAcces = "Gratuit"
COMBO_Statut = "Brouillon"
SINON
ChargerEvenement(gnIDevenementsEnCours)
FIN
```

Code de `BTN_Enregistrer` :

```wlanguage
SI SAI_NomEvenement = "" ALORS
Erreur("Veuillez saisir le nom de l'evenement.")
RETOUR
FIN

SI COMBO_Client = "" OU COMBO_TypeEvenement = "" OU COMBO_Lieu = "" ALORS


Erreur("Veuillez selectionner le client, le type et le lieu.")
RETOUR
FIN

SI SAI_DateFin < SAI_DateDebut ALORS


Erreur("La date de fin ne peut pas etre inferieure a la date de debut.")
RETOUR
FIN

SI gnIDevenementsEnCours = 0 ALORS
HRAZ(evenements)
[Link] = SAI_CodeEvenement
SINON
SI HLitRecherchePremier(evenements, IDevenements, gnIDevenementsEnCours) =
Faux ALORS
Erreur("Evenement introuvable.")
RETOUR
FIN
FIN

[Link] = 1
[Link] = Val(COMBO_Client[COMBO_Client])
[Link] = Val(COMBO_TypeEvenement[COMBO_TypeEvenement])
[Link] = Val(COMBO_Lieu[COMBO_Lieu])

SI COMBO_Salle <> "" ALORS


[Link] = Val(COMBO_Salle[COMBO_Salle])
SINON
[Link] = 0
FIN

[Link] = SAI_NomEvenement
[Link] = SAI_Description
[Link] = SAI_DateDebut
[Link] = SAI_HeureDebut
[Link] = SAI_DateFin
[Link] = SAI_HeureFin
[Link] = SAI_Capacite
[Link] = SAI_BudgetPrevisionnel
[Link] = COMBO_ModeAcces
[Link] = COMBO_Statut
[Link] = SAI_ResponsableEvenement
[Link] = SAI_Observations

SI gnIDevenementsEnCours = 0 ALORS
SI HAjoute(evenements) = Faux ALORS
Erreur(HErreurInfo())
RETOUR
FIN
SINON
SI HModifie(evenements) = Faux ALORS
Erreur(HErreurInfo())
RETOUR
FIN
FIN

Info("Evenement enregistre avec succes.")


Ferme()
```

`BTN_Annuler` et `BTN_Fermer` :

```wlanguage
Ferme()
```

## 5. FEN_ListeParticipants

Interface :

![FEN_ListeParticipants](C:/Users/LENOVO/Documents/New%20project/maquettes_gestio
n_evenementiel/05_FEN_ListeParticipants.png)

Champs :

```text
SAI_Recherche
TABLE_Participants
COL_IDParticipant invisible
COL_Nom
COL_Prenom
COL_Telephone
COL_Email
COL_Entreprise
COL_Fonction
BTN_Nouveau
BTN_Modifier
BTN_Actualiser
BTN_Fermer
```

Procedure `ChargerParticipants` :

```wlanguage
PROCÉDURE ChargerParticipants()
TableSupprimeTout(TABLE_Participants)
sRecherche est une chaine = Majuscule(SAI_Recherche)

HLitPremier(Participant)
TANTQUE PAS HEnDehors(Participant)
SI sRecherche = "" OU ...
Position(Majuscule([Link]), sRecherche) > 0 OU ...
Position(Majuscule([Link]), sRecherche) > 0 OU ...
Position(Majuscule([Link]), sRecherche) > 0 OU ...
Position(Majuscule([Link]), sRecherche) > 0 ALORS

TableAjouteLigne(TABLE_Participants, ...
[Link], ...
[Link], ...
[Link], ...
[Link], ...
[Link], ...
[Link], ...
[Link])
FIN
HLitSuivant(Participant)
FIN
```

Initialisation :

```wlanguage
ChargerParticipants()
```

Boutons :

```wlanguage
// BTN_Nouveau
Ouvre(FICHE_Participant, 0)
ChargerParticipants()
```

```wlanguage
// BTN_Modifier
SI TableSelect(TABLE_Participants) = -1 ALORS
Info("Veuillez selectionner un participant.")
RETOUR
FIN
nLigne est un entier = TableSelect(TABLE_Participants)
nIDParticipant est un entier = TABLE_Participants.COL_IDParticipant[nLigne]

Ouvre(FICHE_Participant, nIDParticipant)
ChargerParticipants()
```

```wlanguage
// BTN_Actualiser
ChargerParticipants()
```

```wlanguage
// BTN_Fermer
Ferme()
```

## 6. FICHE_Participant

Interface :

![FICHE_Participant](C:/Users/LENOVO/Documents/New%20project/maquettes_gestion_ev
enementiel/06_FICHE_Participant.png)

Champs :

```text
SAI_Nom
SAI_Prenom
COMBO_Sexe
SAI_Telephone
SAI_Email
SAI_Entreprise
SAI_Fonction
COMBO_TypePiece
SAI_NumeroPiece
SAI_Pays
SAI_Photo
BTN_Enregistrer
BTN_Annuler
BTN_Fermer
```

Declarations globales :
```wlanguage
PROCÉDURE FICHE_Participant(nIDParam est un entier = 0)

gnIDParticipantEnCours est un entier = nIDParam


```

Procedure `ChargerParticipant` :

```wlanguage
PROCÉDURE ChargerParticipant(nID est un entier)

SI HLitRecherchePremier(Participant, IDParticipant, nID) = Faux ALORS


Erreur("Participant introuvable.")
Ferme()
RETOUR
FIN

SAI_Nom = [Link]
SAI_Prenom = [Link]
COMBO_Sexe = [Link]
SAI_Telephone = [Link]
SAI_Email = [Link]
SAI_Entreprise = [Link]
SAI_Fonction = [Link]
COMBO_TypePiece = [Link]
SAI_NumeroPiece = [Link]
SAI_Pays = [Link]
SAI_Photo = [Link]
```

Initialisation :

```wlanguage
ListeAjoute(COMBO_Sexe, "Homme")
ListeAjoute(COMBO_Sexe, "Femme")

ListeAjoute(COMBO_TypePiece, "Carte identite")


ListeAjoute(COMBO_TypePiece, "Passeport")
ListeAjoute(COMBO_TypePiece, "Permis")
ListeAjoute(COMBO_TypePiece, "Autre")

SI gnIDParticipantEnCours <> 0 ALORS


ChargerParticipant(gnIDParticipantEnCours)
FIN
```
`BTN_Enregistrer` :

```wlanguage
SI SAI_Nom = "" ALORS
Erreur("Veuillez saisir le nom.")
RETOUR
FIN

SI SAI_Telephone = "" ET SAI_Email = "" ALORS


Erreur("Veuillez saisir au moins le telephone ou l'email.")
RETOUR
FIN

SI gnIDParticipantEnCours = 0 ALORS
HRAZ(Participant)
SINON
SI HLitRecherchePremier(Participant, IDParticipant, gnIDParticipantEnCours) =
Faux ALORS
Erreur("Participant introuvable.")
RETOUR
FIN
FIN

[Link] = 1
[Link] = SAI_Nom
[Link] = SAI_Prenom
[Link] = COMBO_Sexe
[Link] = SAI_Telephone
[Link] = SAI_Email
[Link] = SAI_Entreprise
[Link] = SAI_Fonction
[Link] = COMBO_TypePiece
[Link] = SAI_NumeroPiece
[Link] = SAI_Pays
[Link] = SAI_Photo

SI gnIDParticipantEnCours = 0 ALORS
SI HAjoute(Participant) = Faux ALORS
Erreur(HErreurInfo())
RETOUR
FIN
SINON
SI HModifie(Participant) = Faux ALORS
Erreur(HErreurInfo())
RETOUR
FIN
FIN

Info("Participant enregistre avec succes.")


Ferme()
```

`BTN_Annuler` et `BTN_Fermer` :

```wlanguage
Ferme()
```

## 7. FEN_Inscriptions

Interface :

![FEN_Inscriptions](C:/Users/LENOVO/Documents/New%20project/maquettes_gestion_eve
nementiel/07_FEN_Inscriptions.png)

Champs :

```text
COMBO_Evenement
COMBO_Participant
COMBO_Tarif
SAI_CodeInscription
SAI_MontantInscription
COMBO_StatutInscription
TABLE_Inscriptions
COL_IDInscription invisible
COL_CodeInscription
COL_Participant
COL_Evenement
COL_Tarif
COL_Montant
COL_Statut
BTN_Inscrire
BTN_Annuler
BTN_Fermer
```

Initialisation simple :
```wlanguage
ListeAjoute(COMBO_StatutInscription, "EnAttente")
ListeAjoute(COMBO_StatutInscription, "Confirmee")
ListeAjoute(COMBO_StatutInscription, "Annulee")
COMBO_StatutInscription = "Confirmee"

SAI_CodeInscription = "INS" + DateVersChaîne(DateSys(), "AAAAMMJJ") +


HeureVersChaîne(HeureSys(), "HHMMSS")
```

Code de `BTN_Fermer` :

```wlanguage
Ferme()
```

Note : cette fenetre depend des donnees deja creees dans `evenements`,
`Participant` et `TARIF`. Cree d'abord au moins un evenement et un participant.

## 8. FEN_Paiements

Interface :

![FEN_Paiements](C:/Users/LENOVO/Documents/New%20project/maquettes_gestion_evenem
entiel/08_FEN_Paiements.png)

Champs :

```text
COMBO_Evenement
COMBO_Client
COMBO_ModePaiement
SAI_ReferencePaiement
SAI_Montant
COMBO_StatutPaiement
TABLE_Paiements
BTN_Nouveau
BTN_Valider
BTN_Recu
BTN_Fermer
```

Initialisation :

```wlanguage
ListeAjoute(COMBO_ModePaiement, "Especes")
ListeAjoute(COMBO_ModePaiement, "Virement")
ListeAjoute(COMBO_ModePaiement, "Orange Money")
ListeAjoute(COMBO_ModePaiement, "Carte")

ListeAjoute(COMBO_StatutPaiement, "EnAttente")
ListeAjoute(COMBO_StatutPaiement, "Valide")
ListeAjoute(COMBO_StatutPaiement, "Annule")

SAI_ReferencePaiement = "PAY" + DateVersChaîne(DateSys(), "AAAAMMJJ") +


HeureVersChaîne(HeureSys(), "HHMMSS")
COMBO_ModePaiement = "Orange Money"
COMBO_StatutPaiement = "Valide"
```

Code de `BTN_Fermer` :

```wlanguage
Ferme()
```

## 9. FEN_Depenses

Interface :

![FEN_Depenses](C:/Users/LENOVO/Documents/New%20project/maquettes_gestion_eveneme
ntiel/09_FEN_Depenses.png)

Champs :

```text
COMBO_Evenement
COMBO_Prestataire
COMBO_CategorieDepense
SAI_LibelleDepense
SAI_Montant
COMBO_ModePaiement
TABLE_Depenses
BTN_Nouveau
BTN_Enregistrer
BTN_Fermer
```

Initialisation :
```wlanguage
ListeAjoute(COMBO_CategorieDepense, "Technique")
ListeAjoute(COMBO_CategorieDepense, "Salle")
ListeAjoute(COMBO_CategorieDepense, "Communication")
ListeAjoute(COMBO_CategorieDepense, "Personnel")
ListeAjoute(COMBO_CategorieDepense, "Autre")

ListeAjoute(COMBO_ModePaiement, "Especes")
ListeAjoute(COMBO_ModePaiement, "Virement")
ListeAjoute(COMBO_ModePaiement, "Orange Money")
ListeAjoute(COMBO_ModePaiement, "Carte")
```

Code de `BTN_Fermer` :

```wlanguage
Ferme()
```

## 10. FEN_Clients

Interface :

![FEN_Clients](C:/Users/LENOVO/Documents/New%20project/maquettes_gestion_evenemen
tiel/10_FEN_Clients.png)

Champs :

```text
SAI_Recherche
TABLE_Clients
COL_IDClient invisible
COL_NomOuRaisonSociale
COL_Telephone
COL_Email
COL_Adresse
BTN_Nouveau
BTN_Modifier
BTN_Fermer
```

Procedure `ChargerClients` :

```wlanguage
PROCÉDURE ChargerClients()
TableSupprimeTout(TABLE_Clients)
sRecherche est une chaine = Majuscule(SAI_Recherche)

HLitPremier(Client)
TANTQUE PAS HEnDehors(Client)
SI sRecherche = "" OU Position(Majuscule([Link]),
sRecherche) > 0 ALORS
TableAjouteLigne(TABLE_Clients, [Link],
[Link], [Link], [Link], [Link])
FIN
HLitSuivant(Client)
FIN
```

Initialisation :

```wlanguage
ChargerClients()
```

## 11. FEN_Prestataires

Interface :

![FEN_Prestataires](C:/Users/LENOVO/Documents/New%20project/maquettes_gestion_eve
nementiel/11_FEN_Prestataires.png)

Champs :

```text
SAI_Recherche
TABLE_Prestataires
COL_IDPrestataire invisible
COL_NomPrestataire
COL_TypePrestataire
COL_Telephone
COL_Email
COL_Statut
BTN_Nouveau
BTN_Modifier
BTN_Fermer
```

Procedure `ChargerPrestataires` :
```wlanguage
PROCÉDURE ChargerPrestataires()

TableSupprimeTout(TABLE_Prestataires)
sRecherche est une chaine = Majuscule(SAI_Recherche)

HLitPremier(Prestataire)
TANTQUE PAS HEnDehors(Prestataire)
SI sRecherche = "" OU Position(Majuscule([Link]),
sRecherche) > 0 ALORS
TableAjouteLigne(TABLE_Prestataires, [Link],
[Link], [Link], [Link],
[Link], [Link])
FIN
HLitSuivant(Prestataire)
FIN
```

Initialisation :

```wlanguage
ChargerPrestataires()
```

## 12. FEN_LieuxSalles

Interface :

![FEN_LieuxSalles](C:/Users/LENOVO/Documents/New%20project/maquettes_gestion_even
ementiel/12_FEN_LieuxSalles.png)

Champs :

```text
SAI_NomLieu
SAI_Adresse
SAI_CapaciteMax
TABLE_Salles
COL_IDSalle invisible
COL_NomSalle
COL_NomLieu
COL_CapaciteSalle
COL_TarifLocation
BTN_NouveauLieu
BTN_NouvelleSalle
BTN_Fermer
```

Code de `BTN_NouveauLieu` :

```wlanguage
SI SAI_NomLieu = "" ALORS
Erreur("Veuillez saisir le nom du lieu.")
RETOUR
FIN

HRAZ(Lieu)
[Link] = 1
[Link] = SAI_NomLieu
[Link] = SAI_Adresse
[Link] = SAI_CapaciteMax

SI HAjoute(Lieu) = Faux ALORS


Erreur(HErreurInfo())
RETOUR
FIN

Info("Lieu ajoute avec succes.")


```

Code de `BTN_Fermer` :

```wlanguage
Ferme()
```

## 13. FEN_Utilisateurs

Interface :

![FEN_Utilisateurs](C:/Users/LENOVO/Documents/New%20project/maquettes_gestion_eve
nementiel/13_FEN_Utilisateurs.png)

Champs :

```text
SAI_Login
SAI_MotDePasse
COMBO_Role
COMBO_Actif
TABLE_Utilisateurs
BTN_Nouveau
BTN_Modifier
BTN_Fermer
```

Initialisation :

```wlanguage
ListeAjoute(COMBO_Actif, "Oui")
ListeAjoute(COMBO_Actif, "Non")
COMBO_Actif = "Oui"

ListeSupprimeTout(COMBO_Role)
HLitPremier(Role)
TANTQUE PAS HEnDehors(Role)
ListeAjoute(COMBO_Role, [Link] + gLien([Link]))
HLitSuivant(Role)
FIN
gLienActive(COMBO_Role, Vrai)
```

Code simple de creation utilisateur dans `BTN_Nouveau` :

```wlanguage
SI SAI_Login = "" OU SAI_MotDePasse = "" OU COMBO_Role = "" ALORS
Erreur("Veuillez saisir le login, le mot de passe et le role.")
RETOUR
FIN

HRAZ(Utilisateur)
[Link] = 1
[Link] = Val(COMBO_Role[COMBO_Role])
[Link] = SAI_Login
[Link] = SAI_MotDePasse
[Link] = (COMBO_Actif = "Oui")

SI HAjoute(Utilisateur) = Faux ALORS


Erreur(HErreurInfo())
RETOUR
FIN

Info("Utilisateur cree avec succes.")


```
## 14. FEN_Rapports

Interface :

![FEN_Rapports](C:/Users/LENOVO/Documents/New%20project/maquettes_gestion_eveneme
ntiel/14_FEN_Rapports.png)

Champs :

```text
SAI_NbEvenements
SAI_NbParticipants
SAI_TotalRecettes
SAI_TotalDepenses
SAI_Benefice
TABLE_Rapports
BTN_Actualiser
BTN_ExporterPDF
BTN_Fermer
```

Procedure `ChargerRapports` :

```wlanguage
PROCÉDURE ChargerRapports()

nRecettes est un monetaire = 0


nDepenses est un monetaire = 0

SAI_NbEvenements = HNbEnr(evenements)
SAI_NbParticipants = HNbEnr(Participant)

HLitPremier(Paiement)
TANTQUE PAS HEnDehors(Paiement)
nRecettes += [Link]
HLitSuivant(Paiement)
FIN

HLitPremier(Depense)
TANTQUE PAS HEnDehors(Depense)
nDepenses += [Link]
HLitSuivant(Depense)
FIN
SAI_TotalRecettes = nRecettes
SAI_TotalDepenses = nDepenses
SAI_Benefice = nRecettes - nDepenses
```

Initialisation et `BTN_Actualiser` :

```wlanguage
ChargerRapports()
```

`BTN_Fermer` :

```wlanguage
Ferme()
```

Commence par faire compiler chaque fenetre avant de passer a la suivante. C'est
la meilleure facon d'eviter les erreurs en cascade.

Vous aimerez peut-être aussi