Bonjour,
J'ai un fichier .txt avec des nouveaux clients que je dois importer dans
une
base Client Access (ceci très régulièrement).
J'ai donc fait une requête d'ajout avec ma table Client qui oriente les
différentes données dans les bons champs.
Le souci est sur ma clé primaire Client.
Mes clients sont numérotés de 10 en 10 (c'est pas moi qui ait choisi cette
numérotation ;-)))
Et donc je voudrais savoir si dans ma requête d'ajout je peux appeler une
fonction de creation_n°_client ?
Champ : code_cli : creation_code_client()
Ajouter à : code_client
Apparemment, ça ne marche pas mais peut être que je ne le fais pas comme
il
faut.
Sinon avez-vous d'autres idées ?
D'avance merci de vos réponses.
Bonjour,
J'ai un fichier .txt avec des nouveaux clients que je dois importer dans
une
base Client Access (ceci très régulièrement).
J'ai donc fait une requête d'ajout avec ma table Client qui oriente les
différentes données dans les bons champs.
Le souci est sur ma clé primaire Client.
Mes clients sont numérotés de 10 en 10 (c'est pas moi qui ait choisi cette
numérotation ;-)))
Et donc je voudrais savoir si dans ma requête d'ajout je peux appeler une
fonction de creation_n°_client ?
Champ : code_cli : creation_code_client()
Ajouter à : code_client
Apparemment, ça ne marche pas mais peut être que je ne le fais pas comme
il
faut.
Sinon avez-vous d'autres idées ?
D'avance merci de vos réponses.
Bonjour,
J'ai un fichier .txt avec des nouveaux clients que je dois importer dans
une
base Client Access (ceci très régulièrement).
J'ai donc fait une requête d'ajout avec ma table Client qui oriente les
différentes données dans les bons champs.
Le souci est sur ma clé primaire Client.
Mes clients sont numérotés de 10 en 10 (c'est pas moi qui ait choisi cette
numérotation ;-)))
Et donc je voudrais savoir si dans ma requête d'ajout je peux appeler une
fonction de creation_n°_client ?
Champ : code_cli : creation_code_client()
Ajouter à : code_client
Apparemment, ça ne marche pas mais peut être que je ne le fais pas comme
il
faut.
Sinon avez-vous d'autres idées ?
D'avance merci de vos réponses.
Bonjour.
tu peux utiliser toute fonction dans une requête, notamment dans une requête
ajout.
par exemple:
INSERT INTO table2 ( Pays, Région, code_client)
SELECT Table1.Pays, Table1.Région, creation_code_client() AS Expr1
FROM Table1;
il faut bien sûr ajuster les paramètres éventuels à passer à la fonction.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Bonjour,
J'ai un fichier .txt avec des nouveaux clients que je dois importer dans
une
base Client Access (ceci très régulièrement).
J'ai donc fait une requête d'ajout avec ma table Client qui oriente les
différentes données dans les bons champs.
Le souci est sur ma clé primaire Client.
Mes clients sont numérotés de 10 en 10 (c'est pas moi qui ait choisi cette
numérotation ;-)))
Et donc je voudrais savoir si dans ma requête d'ajout je peux appeler une
fonction de creation_n°_client ?
Champ : code_cli : creation_code_client()
Ajouter à : code_client
Apparemment, ça ne marche pas mais peut être que je ne le fais pas comme
il
faut.
Sinon avez-vous d'autres idées ?
D'avance merci de vos réponses.
Bonjour.
tu peux utiliser toute fonction dans une requête, notamment dans une requête
ajout.
par exemple:
INSERT INTO table2 ( Pays, Région, code_client)
SELECT Table1.Pays, Table1.Région, creation_code_client() AS Expr1
FROM Table1;
il faut bien sûr ajuster les paramètres éventuels à passer à la fonction.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" <Isa@discussions.microsoft.com> a écrit dans le message de news:
46A270D3-52E8-4BFC-A8CD-05A9005BAD99@microsoft.com...
Bonjour,
J'ai un fichier .txt avec des nouveaux clients que je dois importer dans
une
base Client Access (ceci très régulièrement).
J'ai donc fait une requête d'ajout avec ma table Client qui oriente les
différentes données dans les bons champs.
Le souci est sur ma clé primaire Client.
Mes clients sont numérotés de 10 en 10 (c'est pas moi qui ait choisi cette
numérotation ;-)))
Et donc je voudrais savoir si dans ma requête d'ajout je peux appeler une
fonction de creation_n°_client ?
Champ : code_cli : creation_code_client()
Ajouter à : code_client
Apparemment, ça ne marche pas mais peut être que je ne le fais pas comme
il
faut.
Sinon avez-vous d'autres idées ?
D'avance merci de vos réponses.
Bonjour.
tu peux utiliser toute fonction dans une requête, notamment dans une requête
ajout.
par exemple:
INSERT INTO table2 ( Pays, Région, code_client)
SELECT Table1.Pays, Table1.Région, creation_code_client() AS Expr1
FROM Table1;
il faut bien sûr ajuster les paramètres éventuels à passer à la fonction.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Bonjour,
J'ai un fichier .txt avec des nouveaux clients que je dois importer dans
une
base Client Access (ceci très régulièrement).
J'ai donc fait une requête d'ajout avec ma table Client qui oriente les
différentes données dans les bons champs.
Le souci est sur ma clé primaire Client.
Mes clients sont numérotés de 10 en 10 (c'est pas moi qui ait choisi cette
numérotation ;-)))
Et donc je voudrais savoir si dans ma requête d'ajout je peux appeler une
fonction de creation_n°_client ?
Champ : code_cli : creation_code_client()
Ajouter à : code_client
Apparemment, ça ne marche pas mais peut être que je ne le fais pas comme
il
faut.
Sinon avez-vous d'autres idées ?
D'avance merci de vos réponses.
Merci de ta réponse.
C'est exactement ce que j'ai fait mais le pb c'est qu'il ne m'ajoute qu'un
nouveau client et pas les autres (Dans mon jeu d'essai, j'en ai 4 en tout
à
ajouter).
J'ai l'impression qu'il incrémente de 10 le code_client qu'une seule fois
et
qu'il essaye d'attribuer le même pour les autres enregistrements et comme
c'est la clé primaire, ça ne marche pas !!!
J'ai le message suivant : "...3 enr n'ont pas été ajoutés à la table à la
suite d'une violation de clé..."
Comment faire pour qu'il réexecute la fonction à chaque ligne à ajouter ?
D'avance merci.
Isa.
"Raymond [mvp]" wrote:Bonjour.
tu peux utiliser toute fonction dans une requête, notamment dans une
requête
ajout.
par exemple:
INSERT INTO table2 ( Pays, Région, code_client)
SELECT Table1.Pays, Table1.Région, creation_code_client() AS Expr1
FROM Table1;
il faut bien sûr ajuster les paramètres éventuels à passer à la fonction.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Bonjour,
J'ai un fichier .txt avec des nouveaux clients que je dois importer
dans
une
base Client Access (ceci très régulièrement).
J'ai donc fait une requête d'ajout avec ma table Client qui oriente les
différentes données dans les bons champs.
Le souci est sur ma clé primaire Client.
Mes clients sont numérotés de 10 en 10 (c'est pas moi qui ait choisi
cette
numérotation ;-)))
Et donc je voudrais savoir si dans ma requête d'ajout je peux appeler
une
fonction de creation_n°_client ?
Champ : code_cli : creation_code_client()
Ajouter à : code_client
Apparemment, ça ne marche pas mais peut être que je ne le fais pas
comme
il
faut.
Sinon avez-vous d'autres idées ?
D'avance merci de vos réponses.
Merci de ta réponse.
C'est exactement ce que j'ai fait mais le pb c'est qu'il ne m'ajoute qu'un
nouveau client et pas les autres (Dans mon jeu d'essai, j'en ai 4 en tout
à
ajouter).
J'ai l'impression qu'il incrémente de 10 le code_client qu'une seule fois
et
qu'il essaye d'attribuer le même pour les autres enregistrements et comme
c'est la clé primaire, ça ne marche pas !!!
J'ai le message suivant : "...3 enr n'ont pas été ajoutés à la table à la
suite d'une violation de clé..."
Comment faire pour qu'il réexecute la fonction à chaque ligne à ajouter ?
D'avance merci.
Isa.
"Raymond [mvp]" wrote:
Bonjour.
tu peux utiliser toute fonction dans une requête, notamment dans une
requête
ajout.
par exemple:
INSERT INTO table2 ( Pays, Région, code_client)
SELECT Table1.Pays, Table1.Région, creation_code_client() AS Expr1
FROM Table1;
il faut bien sûr ajuster les paramètres éventuels à passer à la fonction.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" <Isa@discussions.microsoft.com> a écrit dans le message de news:
46A270D3-52E8-4BFC-A8CD-05A9005BAD99@microsoft.com...
Bonjour,
J'ai un fichier .txt avec des nouveaux clients que je dois importer
dans
une
base Client Access (ceci très régulièrement).
J'ai donc fait une requête d'ajout avec ma table Client qui oriente les
différentes données dans les bons champs.
Le souci est sur ma clé primaire Client.
Mes clients sont numérotés de 10 en 10 (c'est pas moi qui ait choisi
cette
numérotation ;-)))
Et donc je voudrais savoir si dans ma requête d'ajout je peux appeler
une
fonction de creation_n°_client ?
Champ : code_cli : creation_code_client()
Ajouter à : code_client
Apparemment, ça ne marche pas mais peut être que je ne le fais pas
comme
il
faut.
Sinon avez-vous d'autres idées ?
D'avance merci de vos réponses.
Merci de ta réponse.
C'est exactement ce que j'ai fait mais le pb c'est qu'il ne m'ajoute qu'un
nouveau client et pas les autres (Dans mon jeu d'essai, j'en ai 4 en tout
à
ajouter).
J'ai l'impression qu'il incrémente de 10 le code_client qu'une seule fois
et
qu'il essaye d'attribuer le même pour les autres enregistrements et comme
c'est la clé primaire, ça ne marche pas !!!
J'ai le message suivant : "...3 enr n'ont pas été ajoutés à la table à la
suite d'une violation de clé..."
Comment faire pour qu'il réexecute la fonction à chaque ligne à ajouter ?
D'avance merci.
Isa.
"Raymond [mvp]" wrote:Bonjour.
tu peux utiliser toute fonction dans une requête, notamment dans une
requête
ajout.
par exemple:
INSERT INTO table2 ( Pays, Région, code_client)
SELECT Table1.Pays, Table1.Région, creation_code_client() AS Expr1
FROM Table1;
il faut bien sûr ajuster les paramètres éventuels à passer à la fonction.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Bonjour,
J'ai un fichier .txt avec des nouveaux clients que je dois importer
dans
une
base Client Access (ceci très régulièrement).
J'ai donc fait une requête d'ajout avec ma table Client qui oriente les
différentes données dans les bons champs.
Le souci est sur ma clé primaire Client.
Mes clients sont numérotés de 10 en 10 (c'est pas moi qui ait choisi
cette
numérotation ;-)))
Et donc je voudrais savoir si dans ma requête d'ajout je peux appeler
une
fonction de creation_n°_client ?
Champ : code_cli : creation_code_client()
Ajouter à : code_client
Apparemment, ça ne marche pas mais peut être que je ne le fais pas
comme
il
faut.
Sinon avez-vous d'autres idées ?
D'avance merci de vos réponses.
à chaque ligne la fonction est exécutée. ne serait-ce pas ta fonction qui
oublie d'incrémenter le numéro ?
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Merci de ta réponse.
C'est exactement ce que j'ai fait mais le pb c'est qu'il ne m'ajoute qu'un
nouveau client et pas les autres (Dans mon jeu d'essai, j'en ai 4 en tout
à
ajouter).
J'ai l'impression qu'il incrémente de 10 le code_client qu'une seule fois
et
qu'il essaye d'attribuer le même pour les autres enregistrements et comme
c'est la clé primaire, ça ne marche pas !!!
J'ai le message suivant : "...3 enr n'ont pas été ajoutés à la table à la
suite d'une violation de clé..."
Comment faire pour qu'il réexecute la fonction à chaque ligne à ajouter ?
D'avance merci.
Isa.
"Raymond [mvp]" wrote:Bonjour.
tu peux utiliser toute fonction dans une requête, notamment dans une
requête
ajout.
par exemple:
INSERT INTO table2 ( Pays, Région, code_client)
SELECT Table1.Pays, Table1.Région, creation_code_client() AS Expr1
FROM Table1;
il faut bien sûr ajuster les paramètres éventuels à passer à la fonction.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Bonjour,
J'ai un fichier .txt avec des nouveaux clients que je dois importer
dans
une
base Client Access (ceci très régulièrement).
J'ai donc fait une requête d'ajout avec ma table Client qui oriente les
différentes données dans les bons champs.
Le souci est sur ma clé primaire Client.
Mes clients sont numérotés de 10 en 10 (c'est pas moi qui ait choisi
cette
numérotation ;-)))
Et donc je voudrais savoir si dans ma requête d'ajout je peux appeler
une
fonction de creation_n°_client ?
Champ : code_cli : creation_code_client()
Ajouter à : code_client
Apparemment, ça ne marche pas mais peut être que je ne le fais pas
comme
il
faut.
Sinon avez-vous d'autres idées ?
D'avance merci de vos réponses.
à chaque ligne la fonction est exécutée. ne serait-ce pas ta fonction qui
oublie d'incrémenter le numéro ?
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" <Isa@discussions.microsoft.com> a écrit dans le message de news:
84AC746F-90F2-4DB1-8D43-310089172E60@microsoft.com...
Merci de ta réponse.
C'est exactement ce que j'ai fait mais le pb c'est qu'il ne m'ajoute qu'un
nouveau client et pas les autres (Dans mon jeu d'essai, j'en ai 4 en tout
à
ajouter).
J'ai l'impression qu'il incrémente de 10 le code_client qu'une seule fois
et
qu'il essaye d'attribuer le même pour les autres enregistrements et comme
c'est la clé primaire, ça ne marche pas !!!
J'ai le message suivant : "...3 enr n'ont pas été ajoutés à la table à la
suite d'une violation de clé..."
Comment faire pour qu'il réexecute la fonction à chaque ligne à ajouter ?
D'avance merci.
Isa.
"Raymond [mvp]" wrote:
Bonjour.
tu peux utiliser toute fonction dans une requête, notamment dans une
requête
ajout.
par exemple:
INSERT INTO table2 ( Pays, Région, code_client)
SELECT Table1.Pays, Table1.Région, creation_code_client() AS Expr1
FROM Table1;
il faut bien sûr ajuster les paramètres éventuels à passer à la fonction.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" <Isa@discussions.microsoft.com> a écrit dans le message de news:
46A270D3-52E8-4BFC-A8CD-05A9005BAD99@microsoft.com...
Bonjour,
J'ai un fichier .txt avec des nouveaux clients que je dois importer
dans
une
base Client Access (ceci très régulièrement).
J'ai donc fait une requête d'ajout avec ma table Client qui oriente les
différentes données dans les bons champs.
Le souci est sur ma clé primaire Client.
Mes clients sont numérotés de 10 en 10 (c'est pas moi qui ait choisi
cette
numérotation ;-)))
Et donc je voudrais savoir si dans ma requête d'ajout je peux appeler
une
fonction de creation_n°_client ?
Champ : code_cli : creation_code_client()
Ajouter à : code_client
Apparemment, ça ne marche pas mais peut être que je ne le fais pas
comme
il
faut.
Sinon avez-vous d'autres idées ?
D'avance merci de vos réponses.
à chaque ligne la fonction est exécutée. ne serait-ce pas ta fonction qui
oublie d'incrémenter le numéro ?
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Merci de ta réponse.
C'est exactement ce que j'ai fait mais le pb c'est qu'il ne m'ajoute qu'un
nouveau client et pas les autres (Dans mon jeu d'essai, j'en ai 4 en tout
à
ajouter).
J'ai l'impression qu'il incrémente de 10 le code_client qu'une seule fois
et
qu'il essaye d'attribuer le même pour les autres enregistrements et comme
c'est la clé primaire, ça ne marche pas !!!
J'ai le message suivant : "...3 enr n'ont pas été ajoutés à la table à la
suite d'une violation de clé..."
Comment faire pour qu'il réexecute la fonction à chaque ligne à ajouter ?
D'avance merci.
Isa.
"Raymond [mvp]" wrote:Bonjour.
tu peux utiliser toute fonction dans une requête, notamment dans une
requête
ajout.
par exemple:
INSERT INTO table2 ( Pays, Région, code_client)
SELECT Table1.Pays, Table1.Région, creation_code_client() AS Expr1
FROM Table1;
il faut bien sûr ajuster les paramètres éventuels à passer à la fonction.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Bonjour,
J'ai un fichier .txt avec des nouveaux clients que je dois importer
dans
une
base Client Access (ceci très régulièrement).
J'ai donc fait une requête d'ajout avec ma table Client qui oriente les
différentes données dans les bons champs.
Le souci est sur ma clé primaire Client.
Mes clients sont numérotés de 10 en 10 (c'est pas moi qui ait choisi
cette
numérotation ;-)))
Et donc je voudrais savoir si dans ma requête d'ajout je peux appeler
une
fonction de creation_n°_client ?
Champ : code_cli : creation_code_client()
Ajouter à : code_client
Apparemment, ça ne marche pas mais peut être que je ne le fais pas
comme
il
faut.
Sinon avez-vous d'autres idées ?
D'avance merci de vos réponses.
Je ne vois pas l'erreur si c'est dans ma fonction.
La voici :
Public Function creation_code_client() As String
Dim connexion As New ADODB.Connection
Dim R As New ADODB.Recordset
Dim SQL As String
' Le code Client sera du format "10000" et ensuite incrémenté de 10 en
10
' Déclaration d'une connexion pour la base en cours
Set connexion = CurrentProject.Connection
SQL = "SELECT MAX(code_client) AS max_code_client FROM client;"
' Assignation au recordset du résultat de la requête SQL sur la
connexion
Set R = connexion.Execute(SQL)
'Debug.Print SQL
If Not R.EOF And Not IsNull(R("max_code_client")) Then
' On ajoute 10 au dernier plus grand code client
creation_code_client = R("max_code_client") + 10
Else
creation_code_client = "10000"
End If
R.Close
Set connexion = Nothing
End Function
Je ne vois pas l'erreur si c'est dans ma fonction.
La voici :
Public Function creation_code_client() As String
Dim connexion As New ADODB.Connection
Dim R As New ADODB.Recordset
Dim SQL As String
' Le code Client sera du format "10000" et ensuite incrémenté de 10 en
10
' Déclaration d'une connexion pour la base en cours
Set connexion = CurrentProject.Connection
SQL = "SELECT MAX(code_client) AS max_code_client FROM client;"
' Assignation au recordset du résultat de la requête SQL sur la
connexion
Set R = connexion.Execute(SQL)
'Debug.Print SQL
If Not R.EOF And Not IsNull(R("max_code_client")) Then
' On ajoute 10 au dernier plus grand code client
creation_code_client = R("max_code_client") + 10
Else
creation_code_client = "10000"
End If
R.Close
Set connexion = Nothing
End Function
Je ne vois pas l'erreur si c'est dans ma fonction.
La voici :
Public Function creation_code_client() As String
Dim connexion As New ADODB.Connection
Dim R As New ADODB.Recordset
Dim SQL As String
' Le code Client sera du format "10000" et ensuite incrémenté de 10 en
10
' Déclaration d'une connexion pour la base en cours
Set connexion = CurrentProject.Connection
SQL = "SELECT MAX(code_client) AS max_code_client FROM client;"
' Assignation au recordset du résultat de la requête SQL sur la
connexion
Set R = connexion.Execute(SQL)
'Debug.Print SQL
If Not R.EOF And Not IsNull(R("max_code_client")) Then
' On ajoute 10 au dernier plus grand code client
creation_code_client = R("max_code_client") + 10
Else
creation_code_client = "10000"
End If
R.Close
Set connexion = Nothing
End Function
d'abord tu n'as pas besoin de passer par un recordset mais par dmax ce sera
suffisant. ensuite il faut, soit conserver le numéro généré pour l'augmenter
de 10 chaque fois , soit récupérer le dernier enregistrement de la table
dans laquelle l'enregistrement est ajouté, sinon tu généres toujopurs le
même numéro d'où erreur.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Je ne vois pas l'erreur si c'est dans ma fonction.
La voici :
Public Function creation_code_client() As String
Dim connexion As New ADODB.Connection
Dim R As New ADODB.Recordset
Dim SQL As String
' Le code Client sera du format "10000" et ensuite incrémenté de 10 en
10
' Déclaration d'une connexion pour la base en cours
Set connexion = CurrentProject.Connection
SQL = "SELECT MAX(code_client) AS max_code_client FROM client;"
' Assignation au recordset du résultat de la requête SQL sur la
connexion
Set R = connexion.Execute(SQL)
'Debug.Print SQL
If Not R.EOF And Not IsNull(R("max_code_client")) Then
' On ajoute 10 au dernier plus grand code client
creation_code_client = R("max_code_client") + 10
Else
creation_code_client = "10000"
End If
R.Close
Set connexion = Nothing
End Function
d'abord tu n'as pas besoin de passer par un recordset mais par dmax ce sera
suffisant. ensuite il faut, soit conserver le numéro généré pour l'augmenter
de 10 chaque fois , soit récupérer le dernier enregistrement de la table
dans laquelle l'enregistrement est ajouté, sinon tu généres toujopurs le
même numéro d'où erreur.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" <Isa@discussions.microsoft.com> a écrit dans le message de news:
37F06339-00B5-47DB-8B99-498ADABA3B16@microsoft.com...
Je ne vois pas l'erreur si c'est dans ma fonction.
La voici :
Public Function creation_code_client() As String
Dim connexion As New ADODB.Connection
Dim R As New ADODB.Recordset
Dim SQL As String
' Le code Client sera du format "10000" et ensuite incrémenté de 10 en
10
' Déclaration d'une connexion pour la base en cours
Set connexion = CurrentProject.Connection
SQL = "SELECT MAX(code_client) AS max_code_client FROM client;"
' Assignation au recordset du résultat de la requête SQL sur la
connexion
Set R = connexion.Execute(SQL)
'Debug.Print SQL
If Not R.EOF And Not IsNull(R("max_code_client")) Then
' On ajoute 10 au dernier plus grand code client
creation_code_client = R("max_code_client") + 10
Else
creation_code_client = "10000"
End If
R.Close
Set connexion = Nothing
End Function
d'abord tu n'as pas besoin de passer par un recordset mais par dmax ce sera
suffisant. ensuite il faut, soit conserver le numéro généré pour l'augmenter
de 10 chaque fois , soit récupérer le dernier enregistrement de la table
dans laquelle l'enregistrement est ajouté, sinon tu généres toujopurs le
même numéro d'où erreur.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Je ne vois pas l'erreur si c'est dans ma fonction.
La voici :
Public Function creation_code_client() As String
Dim connexion As New ADODB.Connection
Dim R As New ADODB.Recordset
Dim SQL As String
' Le code Client sera du format "10000" et ensuite incrémenté de 10 en
10
' Déclaration d'une connexion pour la base en cours
Set connexion = CurrentProject.Connection
SQL = "SELECT MAX(code_client) AS max_code_client FROM client;"
' Assignation au recordset du résultat de la requête SQL sur la
connexion
Set R = connexion.Execute(SQL)
'Debug.Print SQL
If Not R.EOF And Not IsNull(R("max_code_client")) Then
' On ajoute 10 au dernier plus grand code client
creation_code_client = R("max_code_client") + 10
Else
creation_code_client = "10000"
End If
R.Close
Set connexion = Nothing
End Function
Je veux bien le faire mais je ne vois pas comment faire pour incrémenter
de
10 entre chaque ajout. Ou alors faut que je les ajoute un par un et non
tous
ensemble ?
Qu'en penses-tu ?d'abord tu n'as pas besoin de passer par un recordset mais par dmax ce
sera
suffisant. ensuite il faut, soit conserver le numéro généré pour
l'augmenter
de 10 chaque fois , soit récupérer le dernier enregistrement de la table
dans laquelle l'enregistrement est ajouté, sinon tu généres toujopurs le
même numéro d'où erreur.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Je ne vois pas l'erreur si c'est dans ma fonction.
La voici :
Public Function creation_code_client() As String
Dim connexion As New ADODB.Connection
Dim R As New ADODB.Recordset
Dim SQL As String
' Le code Client sera du format "10000" et ensuite incrémenté de 10
en
10
' Déclaration d'une connexion pour la base en cours
Set connexion = CurrentProject.Connection
SQL = "SELECT MAX(code_client) AS max_code_client FROM client;"
' Assignation au recordset du résultat de la requête SQL sur la
connexion
Set R = connexion.Execute(SQL)
'Debug.Print SQL
If Not R.EOF And Not IsNull(R("max_code_client")) Then
' On ajoute 10 au dernier plus grand code client
creation_code_client = R("max_code_client") + 10
Else
creation_code_client = "10000"
End If
R.Close
Set connexion = Nothing
End Function
Je veux bien le faire mais je ne vois pas comment faire pour incrémenter
de
10 entre chaque ajout. Ou alors faut que je les ajoute un par un et non
tous
ensemble ?
Qu'en penses-tu ?
d'abord tu n'as pas besoin de passer par un recordset mais par dmax ce
sera
suffisant. ensuite il faut, soit conserver le numéro généré pour
l'augmenter
de 10 chaque fois , soit récupérer le dernier enregistrement de la table
dans laquelle l'enregistrement est ajouté, sinon tu généres toujopurs le
même numéro d'où erreur.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" <Isa@discussions.microsoft.com> a écrit dans le message de news:
37F06339-00B5-47DB-8B99-498ADABA3B16@microsoft.com...
Je ne vois pas l'erreur si c'est dans ma fonction.
La voici :
Public Function creation_code_client() As String
Dim connexion As New ADODB.Connection
Dim R As New ADODB.Recordset
Dim SQL As String
' Le code Client sera du format "10000" et ensuite incrémenté de 10
en
10
' Déclaration d'une connexion pour la base en cours
Set connexion = CurrentProject.Connection
SQL = "SELECT MAX(code_client) AS max_code_client FROM client;"
' Assignation au recordset du résultat de la requête SQL sur la
connexion
Set R = connexion.Execute(SQL)
'Debug.Print SQL
If Not R.EOF And Not IsNull(R("max_code_client")) Then
' On ajoute 10 au dernier plus grand code client
creation_code_client = R("max_code_client") + 10
Else
creation_code_client = "10000"
End If
R.Close
Set connexion = Nothing
End Function
Je veux bien le faire mais je ne vois pas comment faire pour incrémenter
de
10 entre chaque ajout. Ou alors faut que je les ajoute un par un et non
tous
ensemble ?
Qu'en penses-tu ?d'abord tu n'as pas besoin de passer par un recordset mais par dmax ce
sera
suffisant. ensuite il faut, soit conserver le numéro généré pour
l'augmenter
de 10 chaque fois , soit récupérer le dernier enregistrement de la table
dans laquelle l'enregistrement est ajouté, sinon tu généres toujopurs le
même numéro d'où erreur.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Je ne vois pas l'erreur si c'est dans ma fonction.
La voici :
Public Function creation_code_client() As String
Dim connexion As New ADODB.Connection
Dim R As New ADODB.Recordset
Dim SQL As String
' Le code Client sera du format "10000" et ensuite incrémenté de 10
en
10
' Déclaration d'une connexion pour la base en cours
Set connexion = CurrentProject.Connection
SQL = "SELECT MAX(code_client) AS max_code_client FROM client;"
' Assignation au recordset du résultat de la requête SQL sur la
connexion
Set R = connexion.Execute(SQL)
'Debug.Print SQL
If Not R.EOF And Not IsNull(R("max_code_client")) Then
' On ajoute 10 au dernier plus grand code client
creation_code_client = R("max_code_client") + 10
Else
creation_code_client = "10000"
End If
R.Close
Set connexion = Nothing
End Function
Je veux bien le faire mais je ne vois pas comment faire pour incrémenter de
10 entre chaque ajout. Ou alors faut que je les ajoute un par un et non tous
ensemble ?
Qu'en penses-tu ?d'abord tu n'as pas besoin de passer par un recordset mais par dmax ce sera
suffisant. ensuite il faut, soit conserver le numéro généré pour l'augmenter
de 10 chaque fois , soit récupérer le dernier enregistrement de la table
dans laquelle l'enregistrement est ajouté, sinon tu généres toujopurs le
même numéro d'où erreur.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Je ne vois pas l'erreur si c'est dans ma fonction.
La voici :
Public Function creation_code_client() As String
Dim connexion As New ADODB.Connection
Dim R As New ADODB.Recordset
Dim SQL As String
' Le code Client sera du format "10000" et ensuite incrémenté de 10 en
10
' Déclaration d'une connexion pour la base en cours
Set connexion = CurrentProject.Connection
SQL = "SELECT MAX(code_client) AS max_code_client FROM client;"
' Assignation au recordset du résultat de la requête SQL sur la
connexion
Set R = connexion.Execute(SQL)
'Debug.Print SQL
If Not R.EOF And Not IsNull(R("max_code_client")) Then
' On ajoute 10 au dernier plus grand code client
creation_code_client = R("max_code_client") + 10
Else
creation_code_client = "10000"
End If
R.Close
Set connexion = Nothing
End Function
Je veux bien le faire mais je ne vois pas comment faire pour incrémenter de
10 entre chaque ajout. Ou alors faut que je les ajoute un par un et non tous
ensemble ?
Qu'en penses-tu ?
d'abord tu n'as pas besoin de passer par un recordset mais par dmax ce sera
suffisant. ensuite il faut, soit conserver le numéro généré pour l'augmenter
de 10 chaque fois , soit récupérer le dernier enregistrement de la table
dans laquelle l'enregistrement est ajouté, sinon tu généres toujopurs le
même numéro d'où erreur.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" <Isa@discussions.microsoft.com> a écrit dans le message de news:
37F06339-00B5-47DB-8B99-498ADABA3B16@microsoft.com...
Je ne vois pas l'erreur si c'est dans ma fonction.
La voici :
Public Function creation_code_client() As String
Dim connexion As New ADODB.Connection
Dim R As New ADODB.Recordset
Dim SQL As String
' Le code Client sera du format "10000" et ensuite incrémenté de 10 en
10
' Déclaration d'une connexion pour la base en cours
Set connexion = CurrentProject.Connection
SQL = "SELECT MAX(code_client) AS max_code_client FROM client;"
' Assignation au recordset du résultat de la requête SQL sur la
connexion
Set R = connexion.Execute(SQL)
'Debug.Print SQL
If Not R.EOF And Not IsNull(R("max_code_client")) Then
' On ajoute 10 au dernier plus grand code client
creation_code_client = R("max_code_client") + 10
Else
creation_code_client = "10000"
End If
R.Close
Set connexion = Nothing
End Function
Je veux bien le faire mais je ne vois pas comment faire pour incrémenter de
10 entre chaque ajout. Ou alors faut que je les ajoute un par un et non tous
ensemble ?
Qu'en penses-tu ?d'abord tu n'as pas besoin de passer par un recordset mais par dmax ce sera
suffisant. ensuite il faut, soit conserver le numéro généré pour l'augmenter
de 10 chaque fois , soit récupérer le dernier enregistrement de la table
dans laquelle l'enregistrement est ajouté, sinon tu généres toujopurs le
même numéro d'où erreur.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Je ne vois pas l'erreur si c'est dans ma fonction.
La voici :
Public Function creation_code_client() As String
Dim connexion As New ADODB.Connection
Dim R As New ADODB.Recordset
Dim SQL As String
' Le code Client sera du format "10000" et ensuite incrémenté de 10 en
10
' Déclaration d'une connexion pour la base en cours
Set connexion = CurrentProject.Connection
SQL = "SELECT MAX(code_client) AS max_code_client FROM client;"
' Assignation au recordset du résultat de la requête SQL sur la
connexion
Set R = connexion.Execute(SQL)
'Debug.Print SQL
If Not R.EOF And Not IsNull(R("max_code_client")) Then
' On ajoute 10 au dernier plus grand code client
creation_code_client = R("max_code_client") + 10
Else
creation_code_client = "10000"
End If
R.Close
Set connexion = Nothing
End Function
si ta fonction rajoute 10 à une valeur, il faut bien qu'elle récupère cette
valeur , qu'elle rajoute 10 et qu'elle renvoie la nouvelle valeur à la
requête qui elle mettra la bonne valeur dans le bon champ.
donne:
le nom de la table ou requête à ajouter.
le nom de la table dans laquelle il faut ajouter
le champ de la table dans laquelle il faut ajouter, qu'il faut incrémenter
de 10.
un champ quelconque à ajouter, pour l'exemple.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Je veux bien le faire mais je ne vois pas comment faire pour incrémenter
de
10 entre chaque ajout. Ou alors faut que je les ajoute un par un et non
tous
ensemble ?
Qu'en penses-tu ?d'abord tu n'as pas besoin de passer par un recordset mais par dmax ce
sera
suffisant. ensuite il faut, soit conserver le numéro généré pour
l'augmenter
de 10 chaque fois , soit récupérer le dernier enregistrement de la table
dans laquelle l'enregistrement est ajouté, sinon tu généres toujopurs le
même numéro d'où erreur.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Je ne vois pas l'erreur si c'est dans ma fonction.
La voici :
Public Function creation_code_client() As String
Dim connexion As New ADODB.Connection
Dim R As New ADODB.Recordset
Dim SQL As String
' Le code Client sera du format "10000" et ensuite incrémenté de 10
en
10
' Déclaration d'une connexion pour la base en cours
Set connexion = CurrentProject.Connection
SQL = "SELECT MAX(code_client) AS max_code_client FROM client;"
' Assignation au recordset du résultat de la requête SQL sur la
connexion
Set R = connexion.Execute(SQL)
'Debug.Print SQL
If Not R.EOF And Not IsNull(R("max_code_client")) Then
' On ajoute 10 au dernier plus grand code client
creation_code_client = R("max_code_client") + 10
Else
creation_code_client = "10000"
End If
R.Close
Set connexion = Nothing
End Function
si ta fonction rajoute 10 à une valeur, il faut bien qu'elle récupère cette
valeur , qu'elle rajoute 10 et qu'elle renvoie la nouvelle valeur à la
requête qui elle mettra la bonne valeur dans le bon champ.
donne:
le nom de la table ou requête à ajouter.
le nom de la table dans laquelle il faut ajouter
le champ de la table dans laquelle il faut ajouter, qu'il faut incrémenter
de 10.
un champ quelconque à ajouter, pour l'exemple.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" <Isa@discussions.microsoft.com> a écrit dans le message de news:
027CE596-3AA1-42F4-ADBF-30B3835E2624@microsoft.com...
Je veux bien le faire mais je ne vois pas comment faire pour incrémenter
de
10 entre chaque ajout. Ou alors faut que je les ajoute un par un et non
tous
ensemble ?
Qu'en penses-tu ?
d'abord tu n'as pas besoin de passer par un recordset mais par dmax ce
sera
suffisant. ensuite il faut, soit conserver le numéro généré pour
l'augmenter
de 10 chaque fois , soit récupérer le dernier enregistrement de la table
dans laquelle l'enregistrement est ajouté, sinon tu généres toujopurs le
même numéro d'où erreur.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" <Isa@discussions.microsoft.com> a écrit dans le message de news:
37F06339-00B5-47DB-8B99-498ADABA3B16@microsoft.com...
Je ne vois pas l'erreur si c'est dans ma fonction.
La voici :
Public Function creation_code_client() As String
Dim connexion As New ADODB.Connection
Dim R As New ADODB.Recordset
Dim SQL As String
' Le code Client sera du format "10000" et ensuite incrémenté de 10
en
10
' Déclaration d'une connexion pour la base en cours
Set connexion = CurrentProject.Connection
SQL = "SELECT MAX(code_client) AS max_code_client FROM client;"
' Assignation au recordset du résultat de la requête SQL sur la
connexion
Set R = connexion.Execute(SQL)
'Debug.Print SQL
If Not R.EOF And Not IsNull(R("max_code_client")) Then
' On ajoute 10 au dernier plus grand code client
creation_code_client = R("max_code_client") + 10
Else
creation_code_client = "10000"
End If
R.Close
Set connexion = Nothing
End Function
si ta fonction rajoute 10 à une valeur, il faut bien qu'elle récupère cette
valeur , qu'elle rajoute 10 et qu'elle renvoie la nouvelle valeur à la
requête qui elle mettra la bonne valeur dans le bon champ.
donne:
le nom de la table ou requête à ajouter.
le nom de la table dans laquelle il faut ajouter
le champ de la table dans laquelle il faut ajouter, qu'il faut incrémenter
de 10.
un champ quelconque à ajouter, pour l'exemple.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Je veux bien le faire mais je ne vois pas comment faire pour incrémenter
de
10 entre chaque ajout. Ou alors faut que je les ajoute un par un et non
tous
ensemble ?
Qu'en penses-tu ?d'abord tu n'as pas besoin de passer par un recordset mais par dmax ce
sera
suffisant. ensuite il faut, soit conserver le numéro généré pour
l'augmenter
de 10 chaque fois , soit récupérer le dernier enregistrement de la table
dans laquelle l'enregistrement est ajouté, sinon tu généres toujopurs le
même numéro d'où erreur.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Isa" a écrit dans le message de news:Je ne vois pas l'erreur si c'est dans ma fonction.
La voici :
Public Function creation_code_client() As String
Dim connexion As New ADODB.Connection
Dim R As New ADODB.Recordset
Dim SQL As String
' Le code Client sera du format "10000" et ensuite incrémenté de 10
en
10
' Déclaration d'une connexion pour la base en cours
Set connexion = CurrentProject.Connection
SQL = "SELECT MAX(code_client) AS max_code_client FROM client;"
' Assignation au recordset du résultat de la requête SQL sur la
connexion
Set R = connexion.Execute(SQL)
'Debug.Print SQL
If Not R.EOF And Not IsNull(R("max_code_client")) Then
' On ajoute 10 au dernier plus grand code client
creation_code_client = R("max_code_client") + 10
Else
creation_code_client = "10000"
End If
R.Close
Set connexion = Nothing
End Function
Je ne dois pas être en forme aujourd'hui...
J'ai ceci dans ma requête :
INSERT INTO client ( code_client, nom_client )
SELECT creation_code_client() AS code_cli, import.nom_client
FROM import;
Ceci ne m'ajoute que le premier enregistrement de ma table import.
Je ne vois pas ce que je peux faire pour récupérer le code_client du
premier
enregistrement ajouté et faire ce code + 10, tout ça dans cette requête.
Je comprends ce que tu me dis mais ne vois pas comment l'appliquer.
D'avance merci.
Je ne dois pas être en forme aujourd'hui...
J'ai ceci dans ma requête :
INSERT INTO client ( code_client, nom_client )
SELECT creation_code_client() AS code_cli, import.nom_client
FROM import;
Ceci ne m'ajoute que le premier enregistrement de ma table import.
Je ne vois pas ce que je peux faire pour récupérer le code_client du
premier
enregistrement ajouté et faire ce code + 10, tout ça dans cette requête.
Je comprends ce que tu me dis mais ne vois pas comment l'appliquer.
D'avance merci.
Je ne dois pas être en forme aujourd'hui...
J'ai ceci dans ma requête :
INSERT INTO client ( code_client, nom_client )
SELECT creation_code_client() AS code_cli, import.nom_client
FROM import;
Ceci ne m'ajoute que le premier enregistrement de ma table import.
Je ne vois pas ce que je peux faire pour récupérer le code_client du
premier
enregistrement ajouté et faire ce code + 10, tout ça dans cette requête.
Je comprends ce que tu me dis mais ne vois pas comment l'appliquer.
D'avance merci.