J'ai un petit problème avec la procédure utilisant un cursor ci-dessous, en
effet, lors du test isolé de la requête : Rq_PrixArt_MajPrixArticle
AR_Type, AR_Article, @NoHA, celle-ci s'exécute bien correctement, par
contre, lors de l'exécution au sein de la procédure, les articles sont bien
parcourus mais aucune mise à jour n'est effectuée.
Etant donné que je ne suis pas sûr de la syntaxe exact de ma procédure et
surtout de mes cursors j'aimerais savoir si vous arrivez à me dire l'erreur
que je commets.
Aucun message d'erreur
Résultat : mise à jour non effectuée.
CREATE PROCEDURE [dbo].[Rq_PrixArt_MajPrixToutArticle] AS
DECLARE vCur CURSOR FOR
SELECT AR_Type, AR_Code FROM dbo.Tb_Articles WHERE (AR_MajPrix = 1)
OPEN vCur
FETCH NEXT FROM vCur
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC Rq_PrixArt_MajPrixArticle AR_Type, AR_Article, @NoHA
FETCH NEXT FROM vCur
END
CLOSE vCur
DEALLOCATE vCur
END
GO
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Med Bouchenafa[MVP]
Je ne sais d'où sort la variable @NoHA Par contre, pour le reste, cela fonctionnerait certainement mieux si tu récupérais le contenu de ton curseur dans deux variables qu'il faut déclarer au préalable
CREATE PROCEDURE [dbo].[Rq_PrixArt_MajPrixToutArticle] AS BEGIN DECLATE @AR_Type .... DECLARE @AR_Article ... DECLARE @NoHA
SET @NoHA ..... Ne pas oublier de renseigner cette variable !!!
DECLARE vCur CURSOR FOR SELECT AR_Type, AR_Code FROM dbo.Tb_Articles WHERE (AR_MajPrix = 1) OPEN vCur FETCH NEXT FROM vCur INTO @AR_Type, @AR_Article WHILE @@FETCH_STATUS = 0 BEGIN EXEC Rq_PrixArt_MajPrixArticle @AR_Type, @AR_Article, @NoHA FETCH NEXT FROM vCur INTO @AR_Type, @AR_Article END CLOSE vCur DEALLOCATE vCur END END
-- Bien cordialement Med Bouchenafa TETRASET 75015 Paris "Loïc Kuhn" wrote in message news:3fb9d6e6$
Bonjour à tous,
J'ai un petit problème avec la procédure utilisant un cursor ci-dessous,
en
effet, lors du test isolé de la requête : Rq_PrixArt_MajPrixArticle AR_Type, AR_Article, @NoHA, celle-ci s'exécute bien correctement, par contre, lors de l'exécution au sein de la procédure, les articles sont
bien
parcourus mais aucune mise à jour n'est effectuée.
Etant donné que je ne suis pas sûr de la syntaxe exact de ma procédure et surtout de mes cursors j'aimerais savoir si vous arrivez à me dire
l'erreur
que je commets.
Aucun message d'erreur Résultat : mise à jour non effectuée.
CREATE PROCEDURE [dbo].[Rq_PrixArt_MajPrixToutArticle] AS DECLARE vCur CURSOR FOR SELECT AR_Type, AR_Code FROM dbo.Tb_Articles WHERE (AR_MajPrix = 1) OPEN vCur FETCH NEXT FROM vCur WHILE @@FETCH_STATUS = 0 BEGIN EXEC Rq_PrixArt_MajPrixArticle AR_Type, AR_Article, @NoHA FETCH NEXT FROM vCur END CLOSE vCur DEALLOCATE vCur END GO
Merci d'avance Loïc
Je ne sais d'où sort la variable @NoHA
Par contre, pour le reste, cela fonctionnerait certainement mieux si tu
récupérais le contenu de ton curseur dans deux variables qu'il faut déclarer
au préalable
CREATE PROCEDURE [dbo].[Rq_PrixArt_MajPrixToutArticle] AS
BEGIN
DECLATE @AR_Type ....
DECLARE @AR_Article ...
DECLARE @NoHA
SET @NoHA ..... Ne pas oublier de renseigner cette variable !!!
DECLARE vCur CURSOR FOR
SELECT AR_Type, AR_Code FROM dbo.Tb_Articles WHERE (AR_MajPrix = 1)
OPEN vCur
FETCH NEXT FROM vCur INTO @AR_Type, @AR_Article
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC Rq_PrixArt_MajPrixArticle @AR_Type, @AR_Article, @NoHA
FETCH NEXT FROM vCur INTO @AR_Type, @AR_Article
END
CLOSE vCur
DEALLOCATE vCur
END
END
--
Bien cordialement
Med Bouchenafa
TETRASET
75015 Paris
"Loïc Kuhn" <loic.kuhn@bluewin.ch> wrote in message
news:3fb9d6e6$1_3@news.bluewin.ch...
Bonjour à tous,
J'ai un petit problème avec la procédure utilisant un cursor ci-dessous,
en
effet, lors du test isolé de la requête : Rq_PrixArt_MajPrixArticle
AR_Type, AR_Article, @NoHA, celle-ci s'exécute bien correctement, par
contre, lors de l'exécution au sein de la procédure, les articles sont
bien
parcourus mais aucune mise à jour n'est effectuée.
Etant donné que je ne suis pas sûr de la syntaxe exact de ma procédure et
surtout de mes cursors j'aimerais savoir si vous arrivez à me dire
l'erreur
que je commets.
Aucun message d'erreur
Résultat : mise à jour non effectuée.
CREATE PROCEDURE [dbo].[Rq_PrixArt_MajPrixToutArticle] AS
DECLARE vCur CURSOR FOR
SELECT AR_Type, AR_Code FROM dbo.Tb_Articles WHERE (AR_MajPrix = 1)
OPEN vCur
FETCH NEXT FROM vCur
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC Rq_PrixArt_MajPrixArticle AR_Type, AR_Article, @NoHA
FETCH NEXT FROM vCur
END
CLOSE vCur
DEALLOCATE vCur
END
GO
Je ne sais d'où sort la variable @NoHA Par contre, pour le reste, cela fonctionnerait certainement mieux si tu récupérais le contenu de ton curseur dans deux variables qu'il faut déclarer au préalable
CREATE PROCEDURE [dbo].[Rq_PrixArt_MajPrixToutArticle] AS BEGIN DECLATE @AR_Type .... DECLARE @AR_Article ... DECLARE @NoHA
SET @NoHA ..... Ne pas oublier de renseigner cette variable !!!
DECLARE vCur CURSOR FOR SELECT AR_Type, AR_Code FROM dbo.Tb_Articles WHERE (AR_MajPrix = 1) OPEN vCur FETCH NEXT FROM vCur INTO @AR_Type, @AR_Article WHILE @@FETCH_STATUS = 0 BEGIN EXEC Rq_PrixArt_MajPrixArticle @AR_Type, @AR_Article, @NoHA FETCH NEXT FROM vCur INTO @AR_Type, @AR_Article END CLOSE vCur DEALLOCATE vCur END END
-- Bien cordialement Med Bouchenafa TETRASET 75015 Paris "Loïc Kuhn" wrote in message news:3fb9d6e6$
Bonjour à tous,
J'ai un petit problème avec la procédure utilisant un cursor ci-dessous,
en
effet, lors du test isolé de la requête : Rq_PrixArt_MajPrixArticle AR_Type, AR_Article, @NoHA, celle-ci s'exécute bien correctement, par contre, lors de l'exécution au sein de la procédure, les articles sont
bien
parcourus mais aucune mise à jour n'est effectuée.
Etant donné que je ne suis pas sûr de la syntaxe exact de ma procédure et surtout de mes cursors j'aimerais savoir si vous arrivez à me dire
l'erreur
que je commets.
Aucun message d'erreur Résultat : mise à jour non effectuée.
CREATE PROCEDURE [dbo].[Rq_PrixArt_MajPrixToutArticle] AS DECLARE vCur CURSOR FOR SELECT AR_Type, AR_Code FROM dbo.Tb_Articles WHERE (AR_MajPrix = 1) OPEN vCur FETCH NEXT FROM vCur WHILE @@FETCH_STATUS = 0 BEGIN EXEC Rq_PrixArt_MajPrixArticle AR_Type, AR_Article, @NoHA FETCH NEXT FROM vCur END CLOSE vCur DEALLOCATE vCur END GO
Merci d'avance Loïc
Loïc Kuhn
Merci beaucoup, cela fonctionne.
A bientôt pour de nouvelles aventures. Loïc
"Med Bouchenafa[MVP]" a écrit dans le message de news:
Je ne sais d'où sort la variable @NoHA Par contre, pour le reste, cela fonctionnerait certainement mieux si tu récupérais le contenu de ton curseur dans deux variables qu'il faut
déclarer
au préalable
CREATE PROCEDURE [dbo].[Rq_PrixArt_MajPrixToutArticle] AS BEGIN DECLATE @AR_Type .... DECLARE @AR_Article ... DECLARE @NoHA
SET @NoHA ..... Ne pas oublier de renseigner cette variable !!!
DECLARE vCur CURSOR FOR SELECT AR_Type, AR_Code FROM dbo.Tb_Articles WHERE (AR_MajPrix = 1) OPEN vCur FETCH NEXT FROM vCur INTO @AR_Type, @AR_Article WHILE @@FETCH_STATUS = 0 BEGIN EXEC Rq_PrixArt_MajPrixArticle @AR_Type, @AR_Article, @NoHA FETCH NEXT FROM vCur INTO @AR_Type, @AR_Article END CLOSE vCur DEALLOCATE vCur END END
-- Bien cordialement Med Bouchenafa TETRASET 75015 Paris "Loïc Kuhn" wrote in message news:3fb9d6e6$ > Bonjour à tous, > > J'ai un petit problème avec la procédure utilisant un cursor ci-dessous, en > effet, lors du test isolé de la requête : Rq_PrixArt_MajPrixArticle > AR_Type, AR_Article, @NoHA, celle-ci s'exécute bien correctement, par > contre, lors de l'exécution au sein de la procédure, les articles sont bien > parcourus mais aucune mise à jour n'est effectuée. > > Etant donné que je ne suis pas sûr de la syntaxe exact de ma procédure
et
> surtout de mes cursors j'aimerais savoir si vous arrivez à me dire l'erreur > que je commets. > > Aucun message d'erreur > Résultat : mise à jour non effectuée. > > CREATE PROCEDURE [dbo].[Rq_PrixArt_MajPrixToutArticle] AS > DECLARE vCur CURSOR FOR > SELECT AR_Type, AR_Code FROM dbo.Tb_Articles WHERE (AR_MajPrix = 1) > OPEN vCur > FETCH NEXT FROM vCur > WHILE @@FETCH_STATUS = 0 > BEGIN > EXEC Rq_PrixArt_MajPrixArticle AR_Type, AR_Article, @NoHA > FETCH NEXT FROM vCur > END > CLOSE vCur > DEALLOCATE vCur > END > GO > > Merci d'avance > Loïc > > > >
Merci beaucoup, cela fonctionne.
A bientôt pour de nouvelles aventures.
Loïc
"Med Bouchenafa[MVP]" <com.tetraset@bouchenafa> a écrit dans le message de
news: OSI6O8arDHA.3612@TK2MSFTNGP11.phx.gbl...
Je ne sais d'où sort la variable @NoHA
Par contre, pour le reste, cela fonctionnerait certainement mieux si tu
récupérais le contenu de ton curseur dans deux variables qu'il faut
déclarer
au préalable
CREATE PROCEDURE [dbo].[Rq_PrixArt_MajPrixToutArticle] AS
BEGIN
DECLATE @AR_Type ....
DECLARE @AR_Article ...
DECLARE @NoHA
SET @NoHA ..... Ne pas oublier de renseigner cette variable !!!
DECLARE vCur CURSOR FOR
SELECT AR_Type, AR_Code FROM dbo.Tb_Articles WHERE (AR_MajPrix = 1)
OPEN vCur
FETCH NEXT FROM vCur INTO @AR_Type, @AR_Article
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC Rq_PrixArt_MajPrixArticle @AR_Type, @AR_Article, @NoHA
FETCH NEXT FROM vCur INTO @AR_Type, @AR_Article
END
CLOSE vCur
DEALLOCATE vCur
END
END
--
Bien cordialement
Med Bouchenafa
TETRASET
75015 Paris
"Loïc Kuhn" <loic.kuhn@bluewin.ch> wrote in message
news:3fb9d6e6$1_3@news.bluewin.ch...
> Bonjour à tous,
>
> J'ai un petit problème avec la procédure utilisant un cursor ci-dessous,
en
> effet, lors du test isolé de la requête : Rq_PrixArt_MajPrixArticle
> AR_Type, AR_Article, @NoHA, celle-ci s'exécute bien correctement, par
> contre, lors de l'exécution au sein de la procédure, les articles sont
bien
> parcourus mais aucune mise à jour n'est effectuée.
>
> Etant donné que je ne suis pas sûr de la syntaxe exact de ma procédure
et
> surtout de mes cursors j'aimerais savoir si vous arrivez à me dire
l'erreur
> que je commets.
>
> Aucun message d'erreur
> Résultat : mise à jour non effectuée.
>
> CREATE PROCEDURE [dbo].[Rq_PrixArt_MajPrixToutArticle] AS
> DECLARE vCur CURSOR FOR
> SELECT AR_Type, AR_Code FROM dbo.Tb_Articles WHERE (AR_MajPrix = 1)
> OPEN vCur
> FETCH NEXT FROM vCur
> WHILE @@FETCH_STATUS = 0
> BEGIN
> EXEC Rq_PrixArt_MajPrixArticle AR_Type, AR_Article, @NoHA
> FETCH NEXT FROM vCur
> END
> CLOSE vCur
> DEALLOCATE vCur
> END
> GO
>
> Merci d'avance
> Loïc
>
>
>
>
"Med Bouchenafa[MVP]" a écrit dans le message de news:
Je ne sais d'où sort la variable @NoHA Par contre, pour le reste, cela fonctionnerait certainement mieux si tu récupérais le contenu de ton curseur dans deux variables qu'il faut
déclarer
au préalable
CREATE PROCEDURE [dbo].[Rq_PrixArt_MajPrixToutArticle] AS BEGIN DECLATE @AR_Type .... DECLARE @AR_Article ... DECLARE @NoHA
SET @NoHA ..... Ne pas oublier de renseigner cette variable !!!
DECLARE vCur CURSOR FOR SELECT AR_Type, AR_Code FROM dbo.Tb_Articles WHERE (AR_MajPrix = 1) OPEN vCur FETCH NEXT FROM vCur INTO @AR_Type, @AR_Article WHILE @@FETCH_STATUS = 0 BEGIN EXEC Rq_PrixArt_MajPrixArticle @AR_Type, @AR_Article, @NoHA FETCH NEXT FROM vCur INTO @AR_Type, @AR_Article END CLOSE vCur DEALLOCATE vCur END END
-- Bien cordialement Med Bouchenafa TETRASET 75015 Paris "Loïc Kuhn" wrote in message news:3fb9d6e6$ > Bonjour à tous, > > J'ai un petit problème avec la procédure utilisant un cursor ci-dessous, en > effet, lors du test isolé de la requête : Rq_PrixArt_MajPrixArticle > AR_Type, AR_Article, @NoHA, celle-ci s'exécute bien correctement, par > contre, lors de l'exécution au sein de la procédure, les articles sont bien > parcourus mais aucune mise à jour n'est effectuée. > > Etant donné que je ne suis pas sûr de la syntaxe exact de ma procédure
et
> surtout de mes cursors j'aimerais savoir si vous arrivez à me dire l'erreur > que je commets. > > Aucun message d'erreur > Résultat : mise à jour non effectuée. > > CREATE PROCEDURE [dbo].[Rq_PrixArt_MajPrixToutArticle] AS > DECLARE vCur CURSOR FOR > SELECT AR_Type, AR_Code FROM dbo.Tb_Articles WHERE (AR_MajPrix = 1) > OPEN vCur > FETCH NEXT FROM vCur > WHILE @@FETCH_STATUS = 0 > BEGIN > EXEC Rq_PrixArt_MajPrixArticle AR_Type, AR_Article, @NoHA > FETCH NEXT FROM vCur > END > CLOSE vCur > DEALLOCATE vCur > END > GO > > Merci d'avance > Loïc > > > >