Convertion des requêttes acces2007 vers SQL

mond14 Messages postés 19 Date d'inscription jeudi 23 avril 2009 Statut Membre Dernière intervention 28 mai 2013 - 4 juil. 2009 à 19:51
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 - 5 juil. 2009 à 20:30
bonjour,
j'espère que tous le monde va bien ,
alors mon problème c'est dans mon application faite avec dot.net2008 et access2007 comme base des données,aprés converti en acces 2003
j'ai une table qui s'appelle "stock " ou il ya tous les iformation sur le stock et le reste du du produit
je fait une requête dans l'accès pour me donner la somme du produit et  son poids qui reste encore au stock
pour cela j'ai convertis cette requête en SQL j'ai déjà fait ça mais avec une requête qui donne la somme du produit et ça a fonctionné le problème c'est que je veux ajouter un autre critère et c'est le "poids".
je met ce code dans un bouton et le résultat s'affiche dans une textbox qui n'a pas une relation avec la base des données.

voilà le code qui fonctionnait bien :
=======================================================================
Dim sql As String = "SELECT le_stock.designation, Sum(le_stock.quantite) AS SommeDequantite FROM le_stock GROUP BY le_stock.designation HAVING (((le_stock.designation)='" &Me.DesignationTextBox.Text & "'));"

        Dim CON AsNew OleDb.OleDbConnection
        CON.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\moi\moi_complete-2003.mdb"
        CON.Open()
        Dim SETE As New DataSet
        Dim TAB As New DataTable
        Dim ADP As New OleDb.OleDbDataAdapter(sql, CON)
        ADP.Fill(SETE, sql)
        TAB = SETE.Tables(sql)        TextBoxX1.Text TAB.Rows(0).Item(1)

et voilà le code SQL que je veux intégrer dans ce code de bouton:

SELECT le_stock.designation, le_stock.poid, Sum(le_stock.quantite) AS SommeDequantite
FROM le_stock
GROUP BY le_stock.designation, le_stock.poid
HAVING (((le_stock.designation)="sultan"));

===========================================================================

et merci a vous 

7 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
4 juil. 2009 à 20:44
Et c'est quoi qui ne fonctionne pas dans cette requête ???

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
mond14 Messages postés 19 Date d'inscription jeudi 23 avril 2009 Statut Membre Dernière intervention 28 mai 2013
4 juil. 2009 à 21:00
salut,
merci pour votre réponse,
moi ce que je veux faire mnt c'est que je veux mettre ce code   :
SELECT le_stock.designation, le_stock.poid, Sum(le_stock.quantite) AS SommeDequantite
FROM le_stock
GROUP BY le_stock.designation, le_stock.poid
HAVING (((le_stock.designation)="sultan"));

a la place du premier celui là:

Dim sql As String = "SELECT
le_stock.designation, Sum(le_stock.quantite) AS SommeDequantite FROM
le_stock GROUP BY le_stock.designation HAVING
(((le_stock.designation)='" &Me.DesignationTextBox.Text & "'));"

et merci
0
mond14 Messages postés 19 Date d'inscription jeudi 23 avril 2009 Statut Membre Dernière intervention 28 mai 2013
4 juil. 2009 à 21:06
desolé j'ai oublie,
dans le deuxieme code je veux remplacer le nom du produit"sultan"  par  le combobox.text me.combobox2.text

HAVING (((le_stock.designation)="sultan"));
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
4 juil. 2009 à 21:13
Ok, mais je ne vois toujours pas ou est la difficulté.

En comparant les 2 requêtes, tu dois pouvoir voir comment il faut rajouter ton champ poids.
En regardant la première requête tu dois pouvoir voir que tu peux remplacer Me.DesignationTextBox.Text par Me.Combobox2.Text

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mond14 Messages postés 19 Date d'inscription jeudi 23 avril 2009 Statut Membre Dernière intervention 28 mai 2013
4 juil. 2009 à 21:55
salut,
je vais vous expliquer: mnt je veux juste voir si ce code fonction bien parceque chez moi ca ne fonctionne pas :

Dim sql As String = SELECT le_stock.designation, le_stock.poid, Sum(le_stock.quantite) AS SommeDequantite
FROM le_stock
GROUP BY le_stock.designation, le_stock.poid
HAVING (((le_stock.designation)='" &Me.DesignationTextBox.Text & "'));"

        Dim CON AsNew OleDb.OleDbConnection
        CON.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\moi\moi_complete-2003.mdb"
        CON.Open()
        Dim SETE As New DataSet
        Dim TAB As New DataTable
        Dim ADP As New OleDb.OleDbDataAdapter(sql, CON)
        ADP.Fill(SETE, sql)
        TAB = SETE.Tables(sql)
        TextBoxX1.Text = TAB.Rows(0).Item(1)
0
mond14 Messages postés 19 Date d'inscription jeudi 23 avril 2009 Statut Membre Dernière intervention 28 mai 2013
5 juil. 2009 à 14:17
salut,
je vais vous expliquer: mnt je veux juste voir si ce code fonction bien parceque chez moi ca ne fonctionne pas :

Dim sql As String = SELECT le_stock.designation, le_stock.poid, Sum(le_stock.quantite) AS SommeDequantite
FROM le_stock
GROUP BY le_stock.designation, le_stock.poid
HAVING (((le_stock.designation)='" &Me.DesignationTextBox.Text &)and ((le_stock.poid)='" & Me.combobox3.Text & "'));"

        Dim CON AsNew OleDb.OleDbConnection
        CON.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\moi\moi_complete-2003.mdb"
        CON.Open()
        Dim SETE As New DataSet
        Dim TAB As New DataTable
        Dim ADP As New OleDb.OleDbDataAdapter(sql, CON)
        ADP.Fill(SETE, sql)
        TAB = SETE.Tables(sql)
        TextBoxX1.Text = TAB.Rows(0).Item(1)

il me donne une erreur au niveau de cette ligne "   TextBoxX1.Text = TAB.Rows(0).Item(1)" qui me dit " il n 'y a pas de ligne dans la position 0
et merci
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
5 juil. 2009 à 20:30
Probablement parce que ta requette ne revoie aucun enregistrement

        ...................
        ADP.Fill(SETE, sql)
        TAB = SETE.Tables(sql)
        If TAB.Rows.Count > 0 Then
            TextBoxX1.Text = TAB.Rows(0).Item(1)
        Else
            TextBoxX1.Text = "Pas d'enregistrement"
        End If

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
Rejoignez-nous