Bonjour,
Je souhaite inserer des enregistrements à partir d'une table dans une une
autre table, l'insertion ne se fait pas.
Je ne vois pas pourquoi ?
Merci
Voilà le code de la SP :
ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
varchar(16), @RV int output)
AS
begin
SET NOCOUNT ON
BEGIN TRANSACTION
insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
DateEdition, TVA, Prix)
select sNumeroDevis, NumeroClient, NumeroArticle, Quantite, DateEdition,
TVA, Prix From T_Devis_TMP
where sNumeroDevis = @sNumeroDevis And PC = @PC
set @RV = @@ERROR
COMMIT TRANSACTION
end
Bonjour,
Je souhaite inserer des enregistrements à partir d'une table dans une une
autre table, l'insertion ne se fait pas.
Je ne vois pas pourquoi ?
Merci
Voilà le code de la SP :
ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
varchar(16), @RV int output)
AS
begin
SET NOCOUNT ON
BEGIN TRANSACTION
insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
DateEdition, TVA, Prix)
select sNumeroDevis, NumeroClient, NumeroArticle, Quantite, DateEdition,
TVA, Prix From T_Devis_TMP
where sNumeroDevis = @sNumeroDevis And PC = @PC
set @RV = @@ERROR
COMMIT TRANSACTION
end
Bonjour,
Je souhaite inserer des enregistrements à partir d'une table dans une une
autre table, l'insertion ne se fait pas.
Je ne vois pas pourquoi ?
Merci
Voilà le code de la SP :
ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
varchar(16), @RV int output)
AS
begin
SET NOCOUNT ON
BEGIN TRANSACTION
insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
DateEdition, TVA, Prix)
select sNumeroDevis, NumeroClient, NumeroArticle, Quantite, DateEdition,
TVA, Prix From T_Devis_TMP
where sNumeroDevis = @sNumeroDevis And PC = @PC
set @RV = @@ERROR
COMMIT TRANSACTION
end
Le SELECT retourne t'il quelque chose ?
Patrice
"TF" a écrit dans le message de
news:40a32ecb$0$12743$
> Bonjour,
>
> Je souhaite inserer des enregistrements à partir d'une table dans une
> autre table, l'insertion ne se fait pas.
> Je ne vois pas pourquoi ?
> Merci
> Voilà le code de la SP :
> ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
> varchar(16), @RV int output)
>
> AS
>
> begin
>
> SET NOCOUNT ON
>
> BEGIN TRANSACTION
>
> insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle,
> DateEdition, TVA, Prix)
>
> select sNumeroDevis, NumeroClient, NumeroArticle, Quantite, DateEdition,
> TVA, Prix From T_Devis_TMP
>
> where sNumeroDevis = @sNumeroDevis And PC = @PC
>
> set @RV = @@ERROR
>
> COMMIT TRANSACTION
>
> end
>
>
Le SELECT retourne t'il quelque chose ?
Patrice
"TF" <tf85@nospamhotmail.com> a écrit dans le message de
news:40a32ecb$0$12743$636a15ce@news.free.fr...
> Bonjour,
>
> Je souhaite inserer des enregistrements à partir d'une table dans une
> autre table, l'insertion ne se fait pas.
> Je ne vois pas pourquoi ?
> Merci
> Voilà le code de la SP :
> ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
> varchar(16), @RV int output)
>
> AS
>
> begin
>
> SET NOCOUNT ON
>
> BEGIN TRANSACTION
>
> insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle,
> DateEdition, TVA, Prix)
>
> select sNumeroDevis, NumeroClient, NumeroArticle, Quantite, DateEdition,
> TVA, Prix From T_Devis_TMP
>
> where sNumeroDevis = @sNumeroDevis And PC = @PC
>
> set @RV = @@ERROR
>
> COMMIT TRANSACTION
>
> end
>
>
Le SELECT retourne t'il quelque chose ?
Patrice
"TF" a écrit dans le message de
news:40a32ecb$0$12743$
> Bonjour,
>
> Je souhaite inserer des enregistrements à partir d'une table dans une
> autre table, l'insertion ne se fait pas.
> Je ne vois pas pourquoi ?
> Merci
> Voilà le code de la SP :
> ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
> varchar(16), @RV int output)
>
> AS
>
> begin
>
> SET NOCOUNT ON
>
> BEGIN TRANSACTION
>
> insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle,
> DateEdition, TVA, Prix)
>
> select sNumeroDevis, NumeroClient, NumeroArticle, Quantite, DateEdition,
> TVA, Prix From T_Devis_TMP
>
> where sNumeroDevis = @sNumeroDevis And PC = @PC
>
> set @RV = @@ERROR
>
> COMMIT TRANSACTION
>
> end
>
>
Bonjour,
Je souhaite inserer des enregistrements à partir d'une table dans une une
autre table, l'insertion ne se fait pas.
Je ne vois pas pourquoi ?
Merci
Voilà le code de la SP :
ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
varchar(16), @RV int output)
AS
begin
SET NOCOUNT ON
BEGIN TRANSACTION
insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
DateEdition, TVA, Prix)
select sNumeroDevis, NumeroClient, NumeroArticle, Quantite, DateEdition,
TVA, Prix From T_Devis_TMP
where sNumeroDevis = @sNumeroDevis And PC = @PC
set @RV = @@ERROR
COMMIT TRANSACTION
end
Bonjour,
Je souhaite inserer des enregistrements à partir d'une table dans une une
autre table, l'insertion ne se fait pas.
Je ne vois pas pourquoi ?
Merci
Voilà le code de la SP :
ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
varchar(16), @RV int output)
AS
begin
SET NOCOUNT ON
BEGIN TRANSACTION
insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
DateEdition, TVA, Prix)
select sNumeroDevis, NumeroClient, NumeroArticle, Quantite, DateEdition,
TVA, Prix From T_Devis_TMP
where sNumeroDevis = @sNumeroDevis And PC = @PC
set @RV = @@ERROR
COMMIT TRANSACTION
end
Bonjour,
Je souhaite inserer des enregistrements à partir d'une table dans une une
autre table, l'insertion ne se fait pas.
Je ne vois pas pourquoi ?
Merci
Voilà le code de la SP :
ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
varchar(16), @RV int output)
AS
begin
SET NOCOUNT ON
BEGIN TRANSACTION
insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
DateEdition, TVA, Prix)
select sNumeroDevis, NumeroClient, NumeroArticle, Quantite, DateEdition,
TVA, Prix From T_Devis_TMP
where sNumeroDevis = @sNumeroDevis And PC = @PC
set @RV = @@ERROR
COMMIT TRANSACTION
end
Les enregistrements ne sont pas insérés dans la table T_Devis.
"Patrice" a écrit dans le message de
news:
> Le SELECT retourne t'il quelque chose ?
>
> Patrice
>
>
>
>
> "TF" a écrit dans le message de
> news:40a32ecb$0$12743$
> > Bonjour,
> >
> > Je souhaite inserer des enregistrements à partir d'une table dans une
une
> > autre table, l'insertion ne se fait pas.
> > Je ne vois pas pourquoi ?
> > Merci
> > Voilà le code de la SP :
> > ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
> > varchar(16), @RV int output)
> >
> > AS
> >
> > begin
> >
> > SET NOCOUNT ON
> >
> > BEGIN TRANSACTION
> >
> > insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle,
Quantite,
> > DateEdition, TVA, Prix)
> >
> > select sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
> > TVA, Prix From T_Devis_TMP
> >
> > where sNumeroDevis = @sNumeroDevis And PC = @PC
> >
> > set @RV = @@ERROR
> >
> > COMMIT TRANSACTION
> >
> > end
> >
> >
>
>
Les enregistrements ne sont pas insérés dans la table T_Devis.
"Patrice" <nobody@nowhere.com> a écrit dans le message de
news:uK9JBPMOEHA.2468@TK2MSFTNGP11.phx.gbl...
> Le SELECT retourne t'il quelque chose ?
>
> Patrice
>
>
>
>
> "TF" <tf85@nospamhotmail.com> a écrit dans le message de
> news:40a32ecb$0$12743$636a15ce@news.free.fr...
> > Bonjour,
> >
> > Je souhaite inserer des enregistrements à partir d'une table dans une
une
> > autre table, l'insertion ne se fait pas.
> > Je ne vois pas pourquoi ?
> > Merci
> > Voilà le code de la SP :
> > ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
> > varchar(16), @RV int output)
> >
> > AS
> >
> > begin
> >
> > SET NOCOUNT ON
> >
> > BEGIN TRANSACTION
> >
> > insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle,
Quantite,
> > DateEdition, TVA, Prix)
> >
> > select sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
> > TVA, Prix From T_Devis_TMP
> >
> > where sNumeroDevis = @sNumeroDevis And PC = @PC
> >
> > set @RV = @@ERROR
> >
> > COMMIT TRANSACTION
> >
> > end
> >
> >
>
>
Les enregistrements ne sont pas insérés dans la table T_Devis.
"Patrice" a écrit dans le message de
news:
> Le SELECT retourne t'il quelque chose ?
>
> Patrice
>
>
>
>
> "TF" a écrit dans le message de
> news:40a32ecb$0$12743$
> > Bonjour,
> >
> > Je souhaite inserer des enregistrements à partir d'une table dans une
une
> > autre table, l'insertion ne se fait pas.
> > Je ne vois pas pourquoi ?
> > Merci
> > Voilà le code de la SP :
> > ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
> > varchar(16), @RV int output)
> >
> > AS
> >
> > begin
> >
> > SET NOCOUNT ON
> >
> > BEGIN TRANSACTION
> >
> > insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle,
Quantite,
> > DateEdition, TVA, Prix)
> >
> > select sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
> > TVA, Prix From T_Devis_TMP
> >
> > where sNumeroDevis = @sNumeroDevis And PC = @PC
> >
> > set @RV = @@ERROR
> >
> > COMMIT TRANSACTION
> >
> > end
> >
> >
>
>
ALTER PROCEDURE sp_TransfererDevis
@PC Varchar(50),
@sNumeroDevis varchar(16),
@RV int output)
AS
SET NOCOUNT ON
insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
select sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
From T_Devis_TMP
where sNumeroDevis = @sNumeroDevis
And PC = @PC
set @RV = @@ERROR
***
La gestion de la transaction est inutile dans ce cas et pour 2 raisons :
1) une requête est une transaction même si elle comporte 3278 sous
2) il est inutile de gérer un COMMIT si pas de voie au ROLLBACK !
Le code est correct. Comme la lance tu ?
A +
--
Frédéric BROUARD, MVP MS SQL Server. Expert Langage SQL / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
TF a écrit:
> Bonjour,
>
> Je souhaite inserer des enregistrements à partir d'une table dans une
> autre table, l'insertion ne se fait pas.
> Je ne vois pas pourquoi ?
> Merci
> Voilà le code de la SP :
> ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
> varchar(16), @RV int output)
>
> AS
>
> begin
>
> SET NOCOUNT ON
>
> BEGIN TRANSACTION
>
> insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle,
> DateEdition, TVA, Prix)
>
> select sNumeroDevis, NumeroClient, NumeroArticle, Quantite, DateEdition,
> TVA, Prix From T_Devis_TMP
>
> where sNumeroDevis = @sNumeroDevis And PC = @PC
>
> set @RV = @@ERROR
>
> COMMIT TRANSACTION
>
> end
>
>
ALTER PROCEDURE sp_TransfererDevis
@PC Varchar(50),
@sNumeroDevis varchar(16),
@RV int output)
AS
SET NOCOUNT ON
insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
select sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
From T_Devis_TMP
where sNumeroDevis = @sNumeroDevis
And PC = @PC
set @RV = @@ERROR
***
La gestion de la transaction est inutile dans ce cas et pour 2 raisons :
1) une requête est une transaction même si elle comporte 3278 sous
2) il est inutile de gérer un COMMIT si pas de voie au ROLLBACK !
Le code est correct. Comme la lance tu ?
A +
--
Frédéric BROUARD, MVP MS SQL Server. Expert Langage SQL / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
TF a écrit:
> Bonjour,
>
> Je souhaite inserer des enregistrements à partir d'une table dans une
> autre table, l'insertion ne se fait pas.
> Je ne vois pas pourquoi ?
> Merci
> Voilà le code de la SP :
> ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
> varchar(16), @RV int output)
>
> AS
>
> begin
>
> SET NOCOUNT ON
>
> BEGIN TRANSACTION
>
> insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle,
> DateEdition, TVA, Prix)
>
> select sNumeroDevis, NumeroClient, NumeroArticle, Quantite, DateEdition,
> TVA, Prix From T_Devis_TMP
>
> where sNumeroDevis = @sNumeroDevis And PC = @PC
>
> set @RV = @@ERROR
>
> COMMIT TRANSACTION
>
> end
>
>
ALTER PROCEDURE sp_TransfererDevis
@PC Varchar(50),
@sNumeroDevis varchar(16),
@RV int output)
AS
SET NOCOUNT ON
insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
select sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
From T_Devis_TMP
where sNumeroDevis = @sNumeroDevis
And PC = @PC
set @RV = @@ERROR
***
La gestion de la transaction est inutile dans ce cas et pour 2 raisons :
1) une requête est une transaction même si elle comporte 3278 sous
2) il est inutile de gérer un COMMIT si pas de voie au ROLLBACK !
Le code est correct. Comme la lance tu ?
A +
--
Frédéric BROUARD, MVP MS SQL Server. Expert Langage SQL / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
TF a écrit:
> Bonjour,
>
> Je souhaite inserer des enregistrements à partir d'une table dans une
> autre table, l'insertion ne se fait pas.
> Je ne vois pas pourquoi ?
> Merci
> Voilà le code de la SP :
> ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
> varchar(16), @RV int output)
>
> AS
>
> begin
>
> SET NOCOUNT ON
>
> BEGIN TRANSACTION
>
> insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle,
> DateEdition, TVA, Prix)
>
> select sNumeroDevis, NumeroClient, NumeroArticle, Quantite, DateEdition,
> TVA, Prix From T_Devis_TMP
>
> where sNumeroDevis = @sNumeroDevis And PC = @PC
>
> set @RV = @@ERROR
>
> COMMIT TRANSACTION
>
> end
>
>
A partir d'un code VBA comme suit :
''''''''''''''''''''''''''''''''''''''''''''''''''''''
Function ADO_TransfererDevis(sNumeroDevis, PC)
Dim Cmd As New ADODB.Command
Dim Prm As ADODB.Parameter
Set Prm = Cmd.CreateParameter("sNumeroDevis", adVarChar, adParamInput, 16)
Cmd.Parameters.Append Prm
Prm.Value = sNumeroDevis
Set Prm = Cmd.CreateParameter("PC", adVarChar, adParamInput, 50)
Cmd.Parameters.Append Prm
Prm.Value = PC
Cmd.Parameters.Append Cmd.CreateParameter("RV", adInteger, adParamOutput)
Cmd.CommandText = "sp_TransfererDevis" <<<<<<<<<<<<<<<<<<<<< c'est ma SP
Cmd.CommandType = adCmdStoredProc
Set Cmd.ActiveConnection = CurrentProject.Connection
Cmd.Execute
ADO_TransfererDevis = Cmd.Parameters("RV").Value
Set Cmd = Nothing
Set Prm = Nothing
End Function
''''''''''''''''''''''''''''''''''''''''''''''''''''''
"Fred BROUARD" a écrit dans le message de
news:
>
> ALTER PROCEDURE sp_TransfererDevis
> @PC Varchar(50),
> @sNumeroDevis varchar(16),
> @RV int output)
>
> AS
>
> SET NOCOUNT ON
>
> insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle,
DateEdition, TVA, Prix)
> select sNumeroDevis, NumeroClient, NumeroArticle,
DateEdition, TVA, Prix
> From T_Devis_TMP
> where sNumeroDevis = @sNumeroDevis
> And PC = @PC
>
> set @RV = @@ERROR
>
> ***
>
> La gestion de la transaction est inutile dans ce cas et pour 2 raisons :
> 1) une requête est une transaction même si elle comporte 3278 sous
requêtes ...
> 2) il est inutile de gérer un COMMIT si pas de voie au ROLLBACK !
>
> Le code est correct. Comme la lance tu ?
>
> A +
>
>
>
> --
> Frédéric BROUARD, MVP MS SQL Server. Expert Langage SQL / Delphi / web
> Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
> Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
> ************************ www.datasapiens.com *************************
>
> TF a écrit:
> > Bonjour,
> >
> > Je souhaite inserer des enregistrements à partir d'une table dans une
une
> > autre table, l'insertion ne se fait pas.
> > Je ne vois pas pourquoi ?
> > Merci
> > Voilà le code de la SP :
> > ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
> > varchar(16), @RV int output)
> >
> > AS
> >
> > begin
> >
> > SET NOCOUNT ON
> >
> > BEGIN TRANSACTION
> >
> > insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle,
Quantite,
> > DateEdition, TVA, Prix)
> >
> > select sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
> > TVA, Prix From T_Devis_TMP
> >
> > where sNumeroDevis = @sNumeroDevis And PC = @PC
> >
> > set @RV = @@ERROR
> >
> > COMMIT TRANSACTION
> >
> > end
> >
> >
>
A partir d'un code VBA comme suit :
''''''''''''''''''''''''''''''''''''''''''''''''''''''
Function ADO_TransfererDevis(sNumeroDevis, PC)
Dim Cmd As New ADODB.Command
Dim Prm As ADODB.Parameter
Set Prm = Cmd.CreateParameter("sNumeroDevis", adVarChar, adParamInput, 16)
Cmd.Parameters.Append Prm
Prm.Value = sNumeroDevis
Set Prm = Cmd.CreateParameter("PC", adVarChar, adParamInput, 50)
Cmd.Parameters.Append Prm
Prm.Value = PC
Cmd.Parameters.Append Cmd.CreateParameter("RV", adInteger, adParamOutput)
Cmd.CommandText = "sp_TransfererDevis" <<<<<<<<<<<<<<<<<<<<< c'est ma SP
Cmd.CommandType = adCmdStoredProc
Set Cmd.ActiveConnection = CurrentProject.Connection
Cmd.Execute
ADO_TransfererDevis = Cmd.Parameters("RV").Value
Set Cmd = Nothing
Set Prm = Nothing
End Function
''''''''''''''''''''''''''''''''''''''''''''''''''''''
"Fred BROUARD" <brouardf@club-internet.fr> a écrit dans le message de
news:40A340EC.30608@club-internet.fr...
>
> ALTER PROCEDURE sp_TransfererDevis
> @PC Varchar(50),
> @sNumeroDevis varchar(16),
> @RV int output)
>
> AS
>
> SET NOCOUNT ON
>
> insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle,
DateEdition, TVA, Prix)
> select sNumeroDevis, NumeroClient, NumeroArticle,
DateEdition, TVA, Prix
> From T_Devis_TMP
> where sNumeroDevis = @sNumeroDevis
> And PC = @PC
>
> set @RV = @@ERROR
>
> ***
>
> La gestion de la transaction est inutile dans ce cas et pour 2 raisons :
> 1) une requête est une transaction même si elle comporte 3278 sous
requêtes ...
> 2) il est inutile de gérer un COMMIT si pas de voie au ROLLBACK !
>
> Le code est correct. Comme la lance tu ?
>
> A +
>
>
>
> --
> Frédéric BROUARD, MVP MS SQL Server. Expert Langage SQL / Delphi / web
> Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
> Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
> ************************ www.datasapiens.com *************************
>
> TF a écrit:
> > Bonjour,
> >
> > Je souhaite inserer des enregistrements à partir d'une table dans une
une
> > autre table, l'insertion ne se fait pas.
> > Je ne vois pas pourquoi ?
> > Merci
> > Voilà le code de la SP :
> > ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
> > varchar(16), @RV int output)
> >
> > AS
> >
> > begin
> >
> > SET NOCOUNT ON
> >
> > BEGIN TRANSACTION
> >
> > insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle,
Quantite,
> > DateEdition, TVA, Prix)
> >
> > select sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
> > TVA, Prix From T_Devis_TMP
> >
> > where sNumeroDevis = @sNumeroDevis And PC = @PC
> >
> > set @RV = @@ERROR
> >
> > COMMIT TRANSACTION
> >
> > end
> >
> >
>
A partir d'un code VBA comme suit :
''''''''''''''''''''''''''''''''''''''''''''''''''''''
Function ADO_TransfererDevis(sNumeroDevis, PC)
Dim Cmd As New ADODB.Command
Dim Prm As ADODB.Parameter
Set Prm = Cmd.CreateParameter("sNumeroDevis", adVarChar, adParamInput, 16)
Cmd.Parameters.Append Prm
Prm.Value = sNumeroDevis
Set Prm = Cmd.CreateParameter("PC", adVarChar, adParamInput, 50)
Cmd.Parameters.Append Prm
Prm.Value = PC
Cmd.Parameters.Append Cmd.CreateParameter("RV", adInteger, adParamOutput)
Cmd.CommandText = "sp_TransfererDevis" <<<<<<<<<<<<<<<<<<<<< c'est ma SP
Cmd.CommandType = adCmdStoredProc
Set Cmd.ActiveConnection = CurrentProject.Connection
Cmd.Execute
ADO_TransfererDevis = Cmd.Parameters("RV").Value
Set Cmd = Nothing
Set Prm = Nothing
End Function
''''''''''''''''''''''''''''''''''''''''''''''''''''''
"Fred BROUARD" a écrit dans le message de
news:
>
> ALTER PROCEDURE sp_TransfererDevis
> @PC Varchar(50),
> @sNumeroDevis varchar(16),
> @RV int output)
>
> AS
>
> SET NOCOUNT ON
>
> insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle,
DateEdition, TVA, Prix)
> select sNumeroDevis, NumeroClient, NumeroArticle,
DateEdition, TVA, Prix
> From T_Devis_TMP
> where sNumeroDevis = @sNumeroDevis
> And PC = @PC
>
> set @RV = @@ERROR
>
> ***
>
> La gestion de la transaction est inutile dans ce cas et pour 2 raisons :
> 1) une requête est une transaction même si elle comporte 3278 sous
requêtes ...
> 2) il est inutile de gérer un COMMIT si pas de voie au ROLLBACK !
>
> Le code est correct. Comme la lance tu ?
>
> A +
>
>
>
> --
> Frédéric BROUARD, MVP MS SQL Server. Expert Langage SQL / Delphi / web
> Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
> Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
> ************************ www.datasapiens.com *************************
>
> TF a écrit:
> > Bonjour,
> >
> > Je souhaite inserer des enregistrements à partir d'une table dans une
une
> > autre table, l'insertion ne se fait pas.
> > Je ne vois pas pourquoi ?
> > Merci
> > Voilà le code de la SP :
> > ALTER PROCEDURE sp_TransfererDevis (@PC Varchar(50), @sNumeroDevis
> > varchar(16), @RV int output)
> >
> > AS
> >
> > begin
> >
> > SET NOCOUNT ON
> >
> > BEGIN TRANSACTION
> >
> > insert Into T_Devis (sNumeroDevis, NumeroClient, NumeroArticle,
Quantite,
> > DateEdition, TVA, Prix)
> >
> > select sNumeroDevis, NumeroClient, NumeroArticle, Quantite,
> > TVA, Prix From T_Devis_TMP
> >
> > where sNumeroDevis = @sNumeroDevis And PC = @PC
> >
> > set @RV = @@ERROR
> >
> > COMMIT TRANSACTION
> >
> > end
> >
> >
>