Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1175 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [ACCESS] Aide pour projet de fac...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[ACCESS] Aide pour projet de fac...

n°1486719
$@G4
Posté le 05-12-2006 à 16:47:11  profilanswer
 

:hello:  à tous!
 
J'espere poster dans la bonne section  :ange:  
 
Voici mon (mes) problème(s), je dois faire un petit projet (rien de bien savant mais bon faut bien débuter  [:burtonsnowboard] ) pour mon UE "conception et interrogation de bdd" et vue qu'un peu de zelle ne fait de mal a personne j'essaie de regler quelques détails qui nécessite des connaissance qui ne sont pas dans le cours...
Je m'en retourne donc vers vous les pro de la bdd pour demander de l'aide  :D .
 
Voici ma première question:
 
Je voudrais savoir comment utiliser la fonction "valeur si" et "message si erreur".  
 
En fait dans une table véhicule, je dois rentre la propriété type de vehicule ({"camion";"voiture"}, puis selon le type de vehicule le poid (si c'est un camion) ou la puissance (si c'est une voiture).
 
Je pense donc qu'il faut faire une manip de ce style:
Tester si la valeur de type de véhicule et puis selon si c'est un camion ou une voiture obliger la saisie du poids ou de la puissance.
 
Ceci peut parraitre enfantin pour certain d'entre vous mais je n'ai pas trouver de tuto dessu (je ne suis pas non plus un pro de google  :whistle: )
 
Voilà merci d'avance  :jap:  
 
Ps: je fais mon projet sur access 2003 et à ma fac on travail sur le 97 [:k@nt] y a-t-il des problèmes de compatibilité?

mood
Publicité
Posté le 05-12-2006 à 16:47:11  profilanswer
 

n°1486826
MagicBuzz
Posté le 05-12-2006 à 19:49:58  profilanswer
 

Si je suis d'accord avec ta démarche, je ne peux malheureusement pas t'aider, car quand on "programme" (pour de vrai) on ne bidouille pas avec les forumlaire Excel, on utilise plutôt un langage de programmation (ne serait-ce que du VBA, que génèrent de toute façon tes actions sur les formulaires).
 
A partir de là, tu risques d'avoir peu d'aide...
 
Sinon, d'entrée de jeu, si tu dev avec Access 2003, ne compte surtout pas que ce genre de traîtements passent dans Access 97. Au mieux, ça plantera de partout et tu n'auras qu'à repasser quelques heures à tout corriger, au pire, tu ne pourras carrément pas ouvrir le fichier.
 
Désolé de ne pas pouvoir t'aider plus. Bon courage en tout cas !

n°1486865
olivthill
Posté le 05-12-2006 à 23:41:44  profilanswer
 

Je serais moins négatif que MagicBuzz, car j'utilise reltivement souvent Excel et Access, et les plantages sont très rares.
A mon avis, le problème essentiel de ces logiciels est la très mauvaise qualité de la documentation, qui est sensée être comblée par des livres complémentaires et des cours.
 
Mais pour la questions précise, je ne comprends pas bien de quoi il s'agit.
Combien y a t-il de tables ? Je vois, une table des types de véhicule, mais y a-t-il aussi une table des poids et une table des puissances ? Comment sont organisées les données ?
 
A priori, je ferais une seule table avec les colonnes suivantes :
 
- vehicule_id, numero automatique
- vehicule_lib, chaine de caractères
- type_camion_voiture, chaine de caractères
- poids, nombre
- puissance, nombre
 
Ensuite, je ferais des sélections avec des reqêtes SQL, par exemple :
Select vehicule_lib where type_camion="Camion" and poids > 1500;
 
Select

n°1486921
MagicBuzz
Posté le 06-12-2006 à 09:40:43  profilanswer
 

olivthill a écrit :

Je serais moins négatif que MagicBuzz, car j'utilise reltivement souvent Excel et Access, et les plantages sont très rares.


Je ne dis pas du tout que ça plante.
 
Au contraire, Access est un formidable outil pour faire des petites applications perso, ou dans le cadre de l'informatique d'une PME/PMI. On dispose d'un outil formidablement puissant, dont les limitations ne gênent pas du tout si peu d'acteurs s'en servent et que le volume de données sont faibles.
 
Par contre (et c'est pas un reproche fait à Access particulièrement), espérer faire tourner une appli Access 2003 avec Access 97, c'est comme vouloir faire tourner une appli C# 2.0 avec le FrameWork 1.1 : ça marche pas. Dans l'autre sens, ça marche certainement (et encore, pas toujours), mais en aucun cas on ne peut espérer qu'une application "ancienne" puisse supporter sans problème des fichiers écrits avec une appli plus récente.

n°1486924
MagicBuzz
Posté le 06-12-2006 à 09:44:05  profilanswer
 

olivthill a écrit :

A priori, je ferais une seule table avec les colonnes suivantes :
 
- vehicule_id, numero automatique
- vehicule_lib, chaine de caractères
- type_camion_voiture, chaine de caractères
- poids, nombre
- puissance, nombre
 
Ensuite, je ferais des sélections avec des reqêtes SQL, par exemple :
Select vehicule_lib where type_camion="Camion" and poids > 1500;


 
Pendant qu'on est dans la dénormalisation du MCD, autant y aller franchement :
puissance et poids étant deux nombres, et que leur présence est exclusive (l'un OU l'autre, jamais les deux, mais obligatoirement un), alors tu remplaces les champs "poids" et "puissance" par un champ "valeur" de type numérique et n'acceptant pas les valeurs nulles. grace au champ "type_camion_voiture" ("type" tout court c'est mieu, un jour tu voudra peut-être mettre des bus par exemple) te permet déjà de savoir si "valeur" est un poids ou une puissance.
 
cependant, c'est de la dénormalisation. selon le prof, ça peut aussi bien rapporter un max de points parceque "l'astuce est bien vue", tout comme ça peut faire un 0 pointé parceque ça ne respecte pas les cours d'UML ou de MERISE.
c'est la grande différence entre la fac et l'entreprise : dans le premier cas, on veut la solution la meilleure et la plus normalisée possible, tandis que dans la seconde, on peut la plus performante et la moins onéreuse possible.


Message édité par MagicBuzz le 06-12-2006 à 09:45:57
n°1486932
FlorentG
Unité de Masse
Posté le 06-12-2006 à 09:51:38  profilanswer
 

olivthill a écrit :

A mon avis, le problème essentiel de ces logiciels est la très mauvaise qualité de la documentation, qui est sensée être comblée par des livres complémentaires et des cours.


Au contraire, je trouve la doc plutôt bien foutue...

n°1486936
MagicBuzz
Posté le 06-12-2006 à 09:53:57  profilanswer
 

FlorentG a écrit :

Au contraire, je trouve la doc plutôt bien foutue...


pas pour tout...
 
cherche juste comment convertir une date dans un autre format dans la doc, moi j'ai jamais trouvé. j'ai du installer VB6 pour trouver la doc de format() :o

n°1486937
FlorentG
Unité de Masse
Posté le 06-12-2006 à 09:54:37  profilanswer
 

Euh... la doc de format y est parfaitement, hein [:johneh] Bien détaillée et complète :??:

n°1486948
MagicBuzz
Posté le 06-12-2006 à 10:02:59  profilanswer
 

pas dans ma version d'Excel en tout cas :o


Message édité par MagicBuzz le 06-12-2006 à 10:03:07
n°1486950
FlorentG
Unité de Masse
Posté le 06-12-2006 à 10:03:52  profilanswer
 

Ah :o Le plus gros problème avec la doc par contre, c'est l'installation, t'es jamais sûr d'avoir tout installé :/

mood
Publicité
Posté le 06-12-2006 à 10:03:52  profilanswer
 

n°1486951
MagicBuzz
Posté le 06-12-2006 à 10:04:02  profilanswer
 

si je tapes "format", j'ai l'aide sur comment formater une cellule dans Excel, mais rien sur VBA.
 
plus exactement, j'ai aucune doc VBA :o
 
(j'ai peut-être oublié de l'installer, j'y pense... [:magicbuzz])

n°1486956
FlorentG
Unité de Masse
Posté le 06-12-2006 à 10:05:54  profilanswer
 

Justement, c'est là le bordel, faut chercher format, mais dans l'éditeur VBA, et prier pour que ça marche :D

n°1486966
MagicBuzz
Posté le 06-12-2006 à 10:14:10  profilanswer
 

c'est peut-être ça aussi.
 
enfin bref, je trouve que la MSDN de Visual Studio ou de SQL Server est vachement mieu faite.

n°1487240
$@G4
Posté le 06-12-2006 à 14:30:31  profilanswer
 

Merci beaucoup pour vos réponses :)

 
MagicBuzz a écrit :

Si je suis d'accord avec ta démarche, je ne peux malheureusement pas t'aider, car quand on "programme" (pour de vrai) on ne bidouille pas avec les forumlaire Excel, on utilise plutôt un langage de programmation (ne serait-ce que du VBA, que génèrent de toute façon tes actions sur les formulaires).

 

A partir de là, tu risques d'avoir peu d'aide...

 

Sinon, d'entrée de jeu, si tu dev avec Access 2003, ne compte surtout pas que ce genre de traîtements passent dans Access 97. Au mieux, ça plantera de partout et tu n'auras qu'à repasser quelques heures à tout corriger, au pire, tu ne pourras carrément pas ouvrir le fichier.

 

Désolé de ne pas pouvoir t'aider plus. Bon courage en tout cas !

 

Mon chargé de td m'a dit que si j'avais un problème de compatibilité je pourrais utiliser son portable pour faire la soutenance. Je n'ai pas encore essayer mais je crois que je peux enregistré le mdb de telle sorte qu'il soit compatible avec des version antérieure grâce à une option lors de la sauvegarde.

 
olivthill a écrit :

Je serais moins négatif que MagicBuzz, car j'utilise reltivement souvent Excel et Access, et les plantages sont très rares.
A mon avis, le problème essentiel de ces logiciels est la très mauvaise qualité de la documentation, qui est sensée être comblée par des livres complémentaires et des cours.

 

Mais pour la questions précise, je ne comprends pas bien de quoi il s'agit.
Combien y a t-il de tables ? Je vois, une table des types de véhicule, mais y a-t-il aussi une table des poids et une table des puissances ? Comment sont organisées les données ?

 

A priori, je ferais une seule table avec les colonnes suivantes :

 

- vehicule_id, numero automatique
- vehicule_lib, chaine de caractères
- type_camion_voiture, chaine de caractères
- poids, nombre
- puissance, nombre

 

Ensuite, je ferais des sélections avec des reqêtes SQL, par exemple :
Select vehicule_lib where type_camion="Camion" and poids > 1500;

 

Select

 

En fait je n'ai pas été très précis sur mon problème, je vous posterais un screen du shema entité association ce soir pour mieux illustrer.

 

Donc j'ai une entité "VEHICULES" qui contient la clé "immatriculation" et les propriétés "TypeVéhicule" "Puissance" et "Poids". L'exo veut que les pilotes de rallye inscrivent leurs véhicule et qu'ils précisent le poid si c'est un camion ou la puissance si c'est une voiture.

 

Je veux donc que la proprieté TypeVehicule détermine si c'est le poids ou la puissance qu'il faut inscrire.

 

A priori je vais essayer de le faire avec un masque de saisie mais je ne peux pas tester là  :p

 

Merci encore  [:al_bundy]

 

Edit voici le shema:

 

http://img506.imageshack.us/img506/3107/shemasj6.png


Message édité par $@G4 le 06-12-2006 à 22:41:40
n°1488700
seniorpapo​u
Posté le 08-12-2006 à 16:09:08  profilanswer
 

Bonjour,
Pour faire ta saisie, comment est le formulaire (lié ou non à VEHICULES??)
A la saisie du Type Véhicule
testes la valeur et déverrouilles la zone de saisie obligatoire et verrouillesl a zone inutile. Voir dans le help de VBA la propriété locked (de textbox par exemple)
Tu devras tester à la saisie et aussi à l'affichage d'un record déjà créé
Cordialement
 

n°1497845
$@G4
Posté le 02-01-2007 à 12:01:26  profilanswer
 

Merci beaucoup!  [:al_bundy]  
 
Désolé de ne pas avoir pu répondre plus tôt (c'est peu de le dire)... Mais grâce à toi j'ai trouvé  :D  
 
Dans la propriété de la table VEHICULES j'ai mis cette restriction:
 
[TypeVéhicule]="Voiture" Et [Puissance]<>0 Et [Poids]=0 Ou [TypeVéhicule]="Camion" Et [Poids]<>0 Et [Puissance]=0
 
Et ça marche  :)  
 
Merci encore  :jap:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [ACCESS] Aide pour projet de fac...

 

Sujets relatifs
Java Mysql besoin d'aidepb de calcul dans une requette ACCESS
Aide sur un Arbre binaire containerCalcul de prix avec Access + VB
[Access] Liste déroulante à partir d'une fonction (syntaxe)[Access] Différence de vitesse INNER JOIN et 2 requetes imbriquées?
[VB Access]Supprimer un élément d'un textboxAide MACRO (desole je suis vraiment un nul en macro)
Problème de connexion a une base de donnée VBA Access[SQL] Besoin d'aide sur les attributs pour une requete
Plus de sujets relatifs à : [ACCESS] Aide pour projet de fac...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR