Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > IHM
IHM Ce forum est dédié aux questions relatives à la création de formulaires et d'états, avec ou sans code VBA, et macros.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/06/2011, 11h50   #1
Futur Membre du Club
 
Inscription : septembre 2006
Messages : 93
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 93
Points : 16
Points : 16
Par défaut Etat : application de recrutement

Bonjour à tous,

Dans le cadre d'une application permettant de gérer les recrutements d'une société, je dois créer plusieurs états dont l'un me donne du fil à retordre. Je vous explique. L'état doit montrer pour chaque jour de la semaine et pour chaque heure de la journée, le nom du candidat qui passe un entretien avec tel ou tel recruteur. Même les heures pour lesquelles il n'y a pas de rdv doivent être affichée afin que la personne responsable des recrutements puisse organiser le planning des recruteurs. Voici le rapport dont j'aurais besoin. J'ai essayé avec des crosstabl queries etc mais je ne parviens pas à obtenir ce que je veux.

Au niveau du modèle de données, je suis libre de rajouter toutes les tables que je veux. Pourriez-vous me donner quelque conseils ou astuces me permettant d'arriver au résultat ?




Merci
hx.jonathan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/06/2011, 15h03   #2
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
Salut,

J'ai posté un tel exemple d'état ici.

A+
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/06/2011, 15h47   #3
Futur Membre du Club
 
Inscription : septembre 2006
Messages : 93
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 93
Points : 16
Points : 16
Salut,

C'est moi qui ai posté dans l'autre section également car mon problème concerne aussi bien les états que le modèle de données. Merci pour ton exemple. Je regarde tout cela et te dis quoi.

hx.jonathan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/06/2011, 12h12   #4
Futur Membre du Club
 
Inscription : septembre 2006
Messages : 93
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 93
Points : 16
Points : 16
Salut,


Tout d'abord merci pour ton aide, tes exemples m'ont vraiment aidé.

Tout semble fonctionner. J'aimerais maintenant aller un peu plus loin et créer un form sur lequel j'ai deux text box respectivement From Date et To Date afin de filter mon report sur base de ces deux text box. Comment me conseilles-tu de procéder ? J'aimerais écrire cela en VBA mais je n'ai pour ainsi dire aucune connaissance de ce langage. Je suis prêt à l'apprendre, pas de problème.


Une idée ?
hx.jonathan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/06/2011, 14h24   #5
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
Bonjour,

Le filtre ne va pas dépasser 31 jours d'intervalle ou bien il faut augmenter le nombre d'indices dans la table "T_Jour2",

En fait c'est le même principe que pour les autres requêtes, sauf qu'on se base sur la table "T_Jour2" et qu'on utilise 2 paramètres (Forms!F_Filtre!DateD et Forms!F_Filtre!DateF) dans la requête "R_Jour2".
(pratiquement pas besoin de VBA)

J'ai donc renommé "R_Jour" en "R_Jour2", "R_JourHoraire" en "R_JourHoraire2", "R_RendezVous(2)" en "R_RendezVous(2)2" et enfin "R_RendezVous(2)_Analyse croisée" en "R_RendezVous(2)_Analyse croisée2"

L'état "R_Planning2" est basé sur cette dernière requête...

Tu ouvres le formulaire "F_Filtre", choisi les date de début et de fin et ouvre l'état...

Je ne vois pas comment je peux t'expliquer autrement

Et comme un exemple vaut toujours mieux qu'1 long discours, le voici:
PlanningRecrutement.zip

A+
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 10h27   #6
Futur Membre du Club
 
Inscription : septembre 2006
Messages : 93
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 93
Points : 16
Points : 16
Salut,

Besoin de quelques explications. Dans ta requete R_Jour2 , pourrais-tu me donner quelques précisons sur cette ligne :

DateJour: Forms!F_Filtrer!DateD+[IndiceJour]-1

D'où vient DateJour ?
hx.jonathan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 10h31   #7
Futur Membre du Club
 
Inscription : septembre 2006
Messages : 93
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 93
Points : 16
Points : 16
Je viens de trouver. Désolé.

Par contre je ne comprends pas bien le -1 à la fin de cette ligne dans ta Query R_Jour2

DateJour: [Forms]![F_Planning]![DateD]+[IndiceJour]-1
hx.jonathan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 12h41   #8
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
Cette requête génère les 7 jours du calendrier (du planning et état) compris entre DateD et DateD+6 sur le formulaire "F_Planning".

Code :
DateJour: [Forms]![F_Planning]![DateD]+[IndiceJour]-1
si [Forms]![F_Planning]![DateD]=#01/01/2011#

et

si IndiceJour=1 (j'aurais pu partir de 0 et ôter le -1)

DateJour= #01/01/2011#+1-1
DateJour= #01/01/2011#

si IndiceJour=2

DateJour= #01/01/2011#+2-1
DateJour= #02/01/2011#

...

si IndiceJour=7
DateJour= #07/01/2011#


Donc ca va te générer dans la requête:
DateJour
#01/01/2011#
#02/01/2011#
#03/01/2011#
#04/01/2011#
#05/01/2011#
#06/01/2011#
#07/01/2011#


après tu fais dans "R_HoraireJour" le produit cartésien entre les jours générés et les heures et ça te donne ton calendrier horaires, tu n'as plus qu'a faire une jointure gauche et la requête croisée pour générer ton planning et les rendez-vous...

A+
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 16h54   #9
Futur Membre du Club
 
Inscription : septembre 2006
Messages : 93
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 93
Points : 16
Points : 16
Bon j'ai encore un souci. Voici où j'en suis.
J'ai 3 problèmes:

1) lorsque j'ouvre ma requête croisée, j'ai ceci dans l'en tête de colonne :



2) je ne parviens pas à créer mon état sur base de ma requête croisée alors que dans ton fichier pas de problème il me propose bien les champs de la requête lorsque je suis dans le wizard. Pour info, je travaille avec Access 2010.

3) dans le fichier R_Jour2 chez toi (ce qui correspond à Q_Day chez moi), je ne peux pas ajouter la ligne DateJour: Forms!F_Filtrer!DateD+[IndiceJour]-1 dans le champ Field de la requête en mode design. A chaque fois il me l'enlève dès que je quitte le mode design.

En dehors de ça il semble que la requête croisée affiche correctement les infos.

Je testerai la création du rapport une fois que tout cela est clean.


Voici mon fichier :

Tests_Report.zip

Correspondance de mes noms de fichiers:

Rem: je n'ai laissé que les version 2 des fichiers histoire de voir clair.

hx.jonathan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 17h07   #10
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
Tu peux convertir ton fichier au format 2000, j'ai access 2003
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 17h16   #11
Futur Membre du Club
 
Inscription : septembre 2006
Messages : 93
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 93
Points : 16
Points : 16
Il semble que je n'ai pas la possibilité de sauver en mdb. une autre idée ?

Attend, j'ai encore une version installée de 2003 quelque part. Je check ça de suite.
hx.jonathan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 17h29   #12
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
Poste déjà le SQL des requêtes en utilisant la balise de code (#)

Surtout le sql de "Q_Day",

A+
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 17h35   #13
Futur Membre du Club
 
Inscription : septembre 2006
Messages : 93
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 93
Points : 16
Points : 16
Voilà tu peux essayer avec ça.

Recrutement.zip
hx.jonathan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 17h47   #14
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
tu as oublié de mettre la requête croisée "Q_03_CrossTab"...
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 17h53   #15
Futur Membre du Club
 
Inscription : septembre 2006
Messages : 93
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 93
Points : 16
Points : 16
Zut. Je te refais une archive


Recrutement.zip

Voilà.
hx.jonathan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 18h12   #16
Rédacteur/Modérateur
 
Avatar de User
 
Homme Denis
Développeur informatique
Inscription : août 2004
Messages : 3 206
Détails du profil
Informations personnelles :
Nom : Homme Denis
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : août 2004
Messages : 3 206
Points : 5 258
Points : 5 258
A priori je ne vois pas de problème mis à part pour la requête croisée: il faut figer les en-têtes de colonnes:

Dans la requête croisée tu as le champ "IDInterviewer", affiche les propriétés de ce champ (sélection du champ, puis menu "affichage", puis "propriétés")

Et dans la feuille des propriétés du champs sur la ligne "En-têtes des colonnes..." tu mets : 1;2;3;4;5;6

ce qui devrait te faire en sql :

Code sql :
1
2
3
4
5
TRANSFORM First(Q_02_Link_00_01_DateTime_Rdv.CandidateName) AS FirstOfCandidateName
SELECT Q_02_Link_00_01_DateTime_Rdv.DateJour, Q_02_Link_00_01_DateTime_Rdv.Time
FROM Q_02_Link_00_01_DateTime_Rdv
GROUP BY Q_02_Link_00_01_DateTime_Rdv.DateJour, Q_02_Link_00_01_DateTime_Rdv.Time
PIVOT Q_02_Link_00_01_DateTime_Rdv.IDInterviewer IN (1,2,3,4,5,6);


remarque que la ligne pivot à changé:

Code sql :
PIVOT Q_02_Link_00_01_DateTime_Rdv.IDInterviewer IN (1,2,3,4,5,6);

A+
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp.

Bon développement !


Mes tutoriels et contributions sur ma page perso:
Ma page personnelle
User est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2011, 09h17   #17
Futur Membre du Club
 
Inscription : septembre 2006
Messages : 93
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 93
Points : 16
Points : 16
Salut,

Je viens de tester. Ça fonctionne nickel. Le formulaire ouvre bien le rapport filtré comme il faut. Donc c'est impeccable. Je continue d'avancer sur le projet et reviendrai vers toi si j'ai des questions.

Grand merci pour ta réactivité.
hx.jonathan est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h53.


 
 
 
 
Partenaires

Hébergement Web