begin process at 2012 02 09 03:40:17
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Base de données

 > 

Access

 > 

Requet de Mise à jour un peu speciale " Besoin d'aide"


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Requet de Mise à jour un peu speciale " Besoin d'aide"

jeudi 27 mars 2008 à 19:14:08 | Requet de Mise à jour un peu speciale " Besoin d'aide"

good speed


Bonjour, je travails sur ACCESS 2003

Voilà, j'ai deux tables, une pour les ventes des articles " Ventes" et l'autre pour les tailles des articles " Tailles"

Table  "vente"

Vente
VenteIDDateReferenceTailleQuantité
102/03/2008Ref139401
202/03/2008Ref222
302/03/2008Ref241
403/03/2008Ref139402
503/03/2008Ref3401
603/03/2008Ref231
703/03/2008Ref231
804/03/2008Ref221
915/03/2008Ref3442
1015/03/2008Ref141423
1115/03/2008Ref3441
1218/03/2008Ref242
1318/03/2008Ref143441
1418/03/2008Ref221

Table " Tailles"

Tailles
IDReferenceTailleQuantiteMAJ Quantité
1Ref1373855
2Ref1394088
3Ref141421010
4Ref1434488
5Ref221010
6Ref2366
7Ref241212
8Ref2599
9Ref3401010
10Ref34288
11Ref34466
12Ref34688


Comme vous voyez, j'aimerais bien qu'à l'aide d'une requete je parviendrai à metre à jour le champ [MAJ Quantite] de la table "Tailles" et ce,  en fonction des quantité des articles vendus, et pour ce faire j'aimerai coïncider les deux champs [Reference] et [Taille] qui se trouvent dans chacune des deux tables

exp:

Dans (Table Ventes)
Quand  :  Reference = Ref2 et   Taille = 2    la quantité totale est égale à  2   ( voir les lignes en rouge)

Donc:
Dans ( Table Taille)
Quand : Reference = Ref2 et Taille = 2  je voudrais que  [MAJ Quantite] = 6-2 =  4

et ainsi de suite pour les autres articles et references.

A souligner qu'il n y a aucune relation entre les deux tables.

Aidez moi SVP à  créer la requete nécéssaire pour obtenir le resultat souhaité

Merci  d'Avance

Health & Peace
vendredi 28 mars 2008 à 01:11:11 | Re : Requet de Mise à jour un peu speciale " Besoin d'aide"

LIBRE_MAX

Bonsoir,

Deux solutions:
  A - Conserver ta structure actuelle
   1- faire une requete somme des ventes pour chaque référence  et pour chaque Taille
    
   2 - lier ta requete citée en 1 à ta table Tailles sur Reference  et   sur Taille (double liaison)
     
   3 - mettre à jour ta table Taille à partir de requete1
  Tailles.Quantité=Tailles.Quantité - Requete1.SommeQuantite


B - Optimiser ta table vente en modifiant sa structure.
      VenteID   Date   ID   Quantité 
     au leiu de     

VenteID Date Reference Taille Quantité

  1- faire une requete somme des ventes pour chaque ID
     
  2-  lier ta requete citée en 1 à ta table Tailles sur ID
   
  3 - mettre à jour ta table Tailles à partir de Requete1
   Tailles.Quantité=Tailles.Quantité -Requete1.SommeQuantite

                         



... Y'en a même qui disent qu'ils l'ont vu voler.



/P>
vendredi 28 mars 2008 à 20:06:04 | Re : Requet de Mise à jour un peu speciale " Besoin d'aide"

good speed

Salut,

Merci pour ta reponse cher  Libre_Max

J'ai opté pour la premiere méthode, et ce, pour garder la meme structure..., mais!, hé oui  il y a un mais , après avoir crée ma requete j'arrive pas à créer une double liaison à partir de la requete vers Taille.Quantité et  Taille.Reference  au meme temps, Access me dit "une relation existe déjà"

Comment faire mon ami, merci

Health & Peace
vendredi 28 mars 2008 à 23:01:14 | Re : Requet de Mise à jour un peu speciale " Besoin d'aide"

LIBRE_MAX

Bonsoir,
Par contre moi j' y arrive !

*Tailles         *Requete1
ID                   
Reference  ----> Reference 
Taille      -------> Taille      
Quantite             SommeDeQuantite

Je rappelle que Requete1 est une requete Regroupement
faite à partir de la table vente.

Seulement, il y' a un hic , et (sans jeu de mot) de Taille !
On en reparlera quand tu auras réussi à mettre en place
la double liaison.

                        



... Y'en a même qui disent qu'ils l'ont vu voler.

/PRE>

samedi 29 mars 2008 à 12:10:12 | Re : Requet de Mise à jour un peu speciale " Besoin d'aide"

good speed


Bonjour,

Voilà exactement  comment j'ai fais :

1- Creation de la requete1

Requête1
Requête1
ReferenceTailleSommeDeQuantité
Ref139403
Ref141423
Ref143441
Ref224
Ref232
Ref243
Ref3401
Ref3443

2-Creation des Relations:
*Tailles         *Requete1
ID                   
Reference  ----> Reference   ( la relation ce fait normalement)

Taille      -------> Taille      ( Access me dit :  une relation existe déjà : voulez-vous modifiez la relation
                                            existante? cliquez sur non pour créer une nouvelle relation)

Alors je clique sur NON  et là !   une requete nommée  requete1_1 se crée instantanément avec une
relation  Tailles.Taille---------------> requete1_1.Taille

Est-ce cela la double liaison

J'ai hate de voir le HIC  pourvu qu'il y ait un  anti-HIC

Merci

Health & Peace
samedi 29 mars 2008 à 14:21:08 | Re : Requet de Mise à jour un peu speciale " Besoin d'aide"

LIBRE_MAX

Bonjour,
la double liaison se fera dans l' onglet Requete et pas dans l' onglet Tables.
Parce que tu as déjà fais la liaison Vente ---Tailles.C' est pour ça qu' il n' accepte pas entre Tailles et Requete1.
(Requete1 etant issue de vente).Tu vois ce que je veux dire.

Onglet Requetes donc
+Mode creation
+Ajoutes la table Tailles et la Requete1
+Lies Reference de Tailles à Reference de Requete1
   et Taille de Tailles à Taille de Requete1

Ensuite, tu fais Menu/Requetes/Requete mise a jour, et tu fais ce que tu as à faire pour le champ Quantite de la table Tailles.

Quand au hic, il s' agit justement de cette mise à jour.
Mais sois patient.

                         



... Y'en a même qui disent qu'ils l'ont vu voler.

/PRE>

samedi 29 mars 2008 à 17:48:21 | Re : Requet de Mise à jour un peu speciale " Besoin d'aide"

good speed


Salut,

On suivons ton procédé càd:

Onglet Requetes donc
+Mode creation
+Ajoutes la table Tailles et la Requete1
+Lies Reference de Tailles à Reference de Requete1
   et Taille de Tailles à Taille de Requete1

Ensuite, tu fais Menu/Requetes/Requete mise a jour, et tu fais ce que tu as à faire pour le champ Quantite de la table Tailles.


j'obtiens ceci:

*Tailles                          *Requete1

ID                                 
Reference ------------- > Reference
Taille        -------------> Taille          
Quantité                          SommeDeQuantité
MAJ Quantité

Donc j'ai remarqué que la double liaison s'est faite toute seule

Ensuite dans la zone des critères et parametres  j'ai inséré ceci ( en rouge)

champ: Quantité

Table:  Taille

Mise à Jour : [Tailles].[Quantité]-[Requête1].[SommeDeQuantité]

Ensuite en executant la requete Access me donne ce message

"L'opération doit utiliser une requete qui peut etre mise à jour"

Est-ce cela  le HIC?

Merci
Health & Peace
samedi 29 mars 2008 à 18:34:12 | Re : Requet de Mise à jour un peu speciale " Besoin d'aide"

LIBRE_MAX

Tout à fait

D' ailleur même si ça marchait, le raisonnement est faux:

03/03/2008
Quantite =15
SommeDeVente=10
15-10=5

si en deux jours je vend 2

05/03/2008
Quantite=5
SommeDeVente=12
5-12=-7


C 'est pourquoi, perso je prend toujours garde à ne pas stocker une info qui peut être calculée.

Stock=(QteInitiale+SumQteEntree) - SumQteSortie

Mais mon champ stock n' existe dans aucune table.
C' est un champ résultat quyi peut être calculé à tout moment.



... Y'en a même qui disent qu'ils l'ont vu voler.

/PRE>
samedi 29 mars 2008 à 20:33:35 | Re : Requet de Mise à jour un peu speciale " Besoin d'aide"

good speed

Salut mon ami,

Si tu vois bien la table Tailles

Tailles
IDReferenceTailleQuantiteMAJ Quantité
1Ref1373855
2Ref1394088
3Ref141421010
4Ref1434488
5Ref221010
6Ref2366
7Ref241212
8Ref2599
9Ref3401010
10Ref34288
11Ref34466
12Ref34688

Il y a le champ Quantité  et  MAJ Quantité et j'ai crée les deux champs avec les memes valeurs pour garder le champ Quantité comme Repere et  Executer les mises à jours sur MAJ Quantité avec se raisonnement, arrète moi si je me trompe,  on peut toujours garder ton raisonnement càd :

Creation de la requete1

*Tailles                          *Requete1

ID                                 
Reference ------------- > Reference
Taille        -------------> Taille          
Quantité                          SommeDeQuantité
MAJ Quantité

Sauf que au lieu de  metre à jour le champ quantité  c'est le champ  MAJ quantité qui sera mis à jour
et le champ  Quantité servira de repere

champ:MAJ Quantité

Table:  Taille

Mise à Jour : [Tailles].[Quantité] - [Requête1].[SommeDeQuantité]
comme ca ton exemple deviendra comme ceci :

03/03/2008
MAJ Quantite =15     et   Quantité = 15
SommeDeVente=10
MAJ Quantite = (Quantité)15-10  =  5

si en deux jours je vend 2

05/03/2008
MAJ Quantite=  5    et   Quantité = 15
SommeDeVente=12
MAJ Quantite = (Quantité)15-12 =  3
et ainsi de suite

Le probleme demeurera toujours celuis de la requet2

A toi de voir  mon ami

Merci
Health & Peace
dimanche 30 mars 2008 à 11:40:29 | Re : Requet de Mise à jour un peu speciale " Besoin d'aide"

good speed


Salut  Libre_Max,

Du nouveau sur ma  problématique? ,  une proposition?, une suggestion?

Merci.
Health & Peace

1 2 3

Cette discussion est classée dans : taille, table, jour, articles, tailles


Répondre à ce message

Sujets en rapport avec ce message

Mise à jour d'une table à partire d'un formulaire avec VB [ par good speed ] Bonjour,Voilà je suis entrain de preparer une modeste application pour la gestion du magasin de pret à porter dans lequel je travails,  et je trouves Misa à jour gridview [ par papiona ] Salut(mon projet c gestion d'une ecole:les outilles utilisés:VS2005+Sql server 2000bon voila mon prbléme:j'ai besoin d emettre à jour mes données stoc DataSet Mis à jour [ par EvilGost ] Bonjour à tous amis développeurs,Je vous expose mon soucis.J'ai une base Access et une application sur 2 postes différents, qui accèdent tous deux à c le forms contient des colonnes qui sont pas basé mise à jour impossible [ par isito ] Bonjourg un écran qui est de type maitre détail mais mon probléme est que sur le détail je dois affiché un libellé( qui n'est pas dans la table) d'un Mise à jour de base de données access en vb.net [ par moi411 ] Tout d'abord bonsoir,J'ai donc un problème pour mettre à jour une base de données (créée avec access) ) partir d'un programme VB.NET. J'ai fait la con Mise-à-jour Datable après changement BD [ par tweeder ] Bonjour à tous,J'utilise un Datatable pour effectuer mes opérations avec une base de données SQL Server. J'ai un Datatable pour ma table Usager. Petit Mis a jour DataGridView => DataTable => DataBase [ par simo5963 ] Bonjour ;'Mis a jour entre dataGridView(DataGrid) et un table qui est dans <span style="mso-spacerun: mise à jour champs d'une table BD mysql en vb6 [ par dahouetagnes ] Bonjour,je veux mettre à jour un champs dans une table "mesure" de ma base de données Mysql enregistre7.Open "SELECT id,date,heure FROM mesure ", conn


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,326 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales