Bonjour, j'apprends les sp...
Là j'ai un pb :
Je dois insérer à la volée dans +eures tables "Tampon" des données
des tables "mères". ==> ok
Mais je veux insérer un ID fourni dans la sp (voir --Copy AMC)
dans sp ci dessous.
CREATE PROCEDURE sp_CopyAllTemp
(
@IID int
)
AS BEGIN
-- Retour TempID
DECLARE @TempID int
--Lock fiche
UPDATE [TI_Individus] SET IsLock=1 WHERE IID=@IID;
--Copy fiche to T_Temp
INSERT INTO [Temp_TI_Individus]
(IIDSource, EID, ISID, IGID, Nom, Prenom, Statut, Fonction, Tel, Fax, Web, IPRID, VIP, IABoNI, ITanID, IAboNiStart, IAboNiEnd, IAboNiRelance)
SELECT
B.IID, B.EID, B.ISID, B.IGID, B.Nom, B.Prenom, B.Statut, B.Fonction, B.Tel, B.Fax, B.Web, B.IPRID, B.VIP, B.IABoNI, B.ITANID, B.IAboNiStart, B.IAboNiEnd, B.IAboNiRelance
FROM [TI_Individus] B WHERE B.IID=@IID;
--Get TempID
SET @TempID=(SELECT SCOPE_IDENTITY())
--Copy AMC
/*Celle ci ok mais pas insertion de @TempID)
INSERT INTO [Temp_TI_AMC] (IIDSource, IMCID, IAMCCoord, IAMCComm)
SELECT B.IID, B.IMCID, B.IAMCCoord, B.IAMCComm FROM [TI_AMC] B WHERE B.IID=@IID;
*/
--Fonctionne pas : synthaxe pourave mais je vois pas. comment copier à la volée
INSERT INTO [Temp_TI_AMC] (IID, IIDSource, IMCID, IAMCCoord, IAMCComm)
@TempID, SELECT B.IID, B.IMCID, B.IAMCCoord, B.IAMCComm FROM [TI_AMC] B WHERE B.IID=@IID;
--Copy CentInt
INSERT INTO [Temp_TI_CentInt] (IIDSource, ICIID, ICenIntComm)
SELECT B.IID, B.ICIID, B.ICenIntComm FROM [TI_CentInt] B WHERE B.IID=@IID;
--Copy Fonc Second
INSERT INTO [Temp_TI_FonctionsSecond] (IIDSource, IFSFonction, IFSISID)
SELECT B.IID, B.IFSFonction, B.IFSISID FROM [TI_FonctionsSecond] B WHERE B.IID=@IID;
--Copy VIP
INSERT INTO [Temp_TI_VIP] (IIDSource, IVIPTitre, IVIPPeriode, IVIPOrganisme)
SELECT B.IID, B.IVIPTitre, B.IVIPPeriode, B.IVIPOrganisme FROM [TI_VIP] B WHERE B.IID=@IID;
--Return TempID
RETURN @TempID
END
GO
Merci de vos conseils ou pistes.
Samish
Partager