bootchoz
Messages postés88Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention17 septembre 2006
-
7 août 2006 à 16:33
bootchoz
Messages postés88Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention17 septembre 2006
-
11 août 2006 à 14:55
bonjour,
est-il possible de convertir un paramètre passé dans une procédure stockée ? J'ai un varchar(50) que je voudrais convertir en bigint.
merci pour votre aide...
AS
DECLARE @id_EN bigint
SET @id_EN=CONVERT( bigint, @id_form )
DECLARE @id_pers bigint
SET @id_pers=(SELECT personne.id_pers FROM personne WHERE [mailto:wwid_pers=@wwid_pers wwid_pers=@wwid_pers])
DECLARE @id_dem bigint
DECLARE @var bigint
DECLARE @nom_form varchar(50)
SET @nom_form=(SELECT nom_form FROM formulaire WHERE [mailto:id_form=@id_EN id_form=@id_EN])
DECLARE @nom_logi varchar(50)
SET @nom_logi=(SELECT nom_logi FROM logiciel, formulaire WHERE formulaire.id_logi=logiciel.id_logi AND [mailto:formulaire.nom_form=@id_EN formulaire.nom_form=@id_EN])
DECLARE @nom_serv varchar(50)
SET @nom_serv=(SELECT nom_serv FROM service, formulaire WHERE formulaire.id_serv=service.id_serv AND [mailto:formulaire.nom_form=@id_EN formulaire.nom_form=@id_EN])
SET @var=(SELECT DISTINCT id_dem FROM table_virtuel)
if(@var is NULL)
SET @id_dem=((SELECT MAX(id_dem) FROM [demande])+1)
else
SET @id_dem=@var
if (@date_exp>@date_deb OR @date_exp=NULL)
begin
UPDATE etre_attribue
SET [mailto:date_exp=@date_exp date_exp=@date_exp], [mailto:id_dem=@id_dem id_dem=@id_dem]
WHERE( [mailto:id_pers=@id_pers id_pers=@id_pers] AND [mailto:id_role=@id_role id_role=@id_role])
if(@id_role NOT IN (select id_role from table_virtuel))
INSERT INTO table_virtuel(date_exp, id_role, id_dem, nom_form, nom_logi, nom_serv, nom_role, code_role)
VALUES(@date_exp, @id_role, @id_dem, @nom_form, @nom_logi, @nom_serv, @nom_role, @code_role)
else
UPDATE table_virtuel
SET [mailto:date_exp=@date_exp date_exp=@date_exp], [mailto:date_sup=@date_sup date_sup=@date_sup], [mailto:id_dem=@id_dem id_dem=@id_dem], [mailto:nom_form=@nom_form nom_form=@nom_form], [mailto:nom_logi=@nom_logi nom_logi=@nom_logi],
[mailto:nom_serv=@nom_serv nom_serv=@nom_serv], [mailto:nom_role=@nom_role nom_role=@nom_role], [mailto:code_role=@code_role code_role=@code_role]
WHERE [mailto:id_role=@id_role id_role=@id_role]
end
if(@date_sup>@date_deb )
begin
UPDATE etre_attribue
SET [mailto:date_sup=@date_sup date_sup=@date_sup], [mailto:id_dem=@id_dem id_dem=@id_dem]
WHERE( [mailto:id_pers=@id_pers id_pers=@id_pers] AND [mailto:id_role=@id_role id_role=@id_role])
if(@id_role NOT IN (select id_role from table_virtuel))
INSERT INTO table_virtuel(date_sup, id_role, id_dem, nom_form, nom_logi, nom_serv, nom_role, code_role)
VALUES(@date_sup, @id_role, @id_dem, @nom_form, @nom_logi, @nom_serv, @nom_role, @code_role)
else
UPDATE table_virtuel
SET [mailto:date_exp=@date_exp date_exp=@date_exp], [mailto:date_sup=@date_sup date_sup=@date_sup], [mailto:id_dem=@id_dem id_dem=@id_dem], [mailto:nom_form=@nom_form nom_form=@nom_form], [mailto:nom_logi=@nom_logi nom_logi=@nom_logi],
[mailto:nom_serv=@nom_serv nom_serv=@nom_serv], [mailto:nom_role=@nom_role nom_role=@nom_role], [mailto:code_role=@code_role code_role=@code_role]
WHERE [mailto:id_role=@id_role id_role=@id_role]
end
GO
bootchoz
Messages postés88Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention17 septembre 2006 11 août 2006 à 14:55
en fait je recupere @id_form de @id_form=session["id_form"]; ca doit venir de la. pour finir j'ai abandonné l'idee de la session, je me suis rendue compte que ca ne me servbait pas. merci à vous !