Procédures stockées SQLServer !!! URGENT !!!
Stagiaire WDF
Inscrit:
27/03/2004 01:21
De Strasbourg
Post(s): 4
Je reviens à la charge concernant l'utilisation de procédures stockées SQLServer avec Windev.
Je ne parviens pas à trouver de solution avec accès natif ou non pour récupérer la valeur renvoyée par une procédure stockée sur une base SQLServer.

voici la procédure :
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO

/****** Objet : procédure stockée U_AIG.PR_AIG_ADD_XML_INPUT Date du script : 08/02/2007 10:35:45 ******/
if exists (select * from dbo.sysobjects where id = object_id(N'[U_AIG].[PR_AIG_ADD_XML_INPUT]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [U_AIG].[PR_AIG_ADD_XML_INPUT]
GO

CREATE

PROCEDURE [U_AIG].[PR_AIG_ADD_XML_INPUT]
@sender varchar(20),
@xml_type numeric(3,0),
@xml_data varchar(max)
AS

DECLARE @return_value int,
@sequence_value numeric(38, 0)

BEGIN

EXEC @return_value = [U_REF].[PR_REF_GET_NEXT_SEQUENCE_VALUE]
@schema_name = N'U_AIG',
@sequence_name = N'S_AIG_INPUT_EVTSUIVI',
@sequence_value = @sequence_value OUTPUT

INSERT INTO U_AIG.T_AIG_INPUT
(
U_AIG.T_AIG_INPUT.AIG_INPUT_VC_SENDER,
U_AIG.T_AIG_INPUT.AIG_INPUT_DT_POSTAGE,
U_AIG.T_AIG_INPUT.AIG_INPUT_NB_TRAITE,
U_AIG.T_AIG_INPUT.AIG_INPUT_CL_XMLDATA,
U_AIG.T_AIG_INPUT.AIG_INPUT_NB_TYPEXML,
U_AIG.T_AIG_INPUT.AIG_INPUT_NB_EVTSUIVI
)
VALUES
(
@sender,
getdate(),
0,
@xml_data,
@xml_type,
@sequence_value
)

IF (@@TRANCOUNT > 0)
COMMIT WORK
return @sequence_value
END

GO

SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO


On peut bien voir qu'elle renvoie @sequence_value, ma question est de savoir comment la récupérer en WDLangage, j'ai fais plusieurs tantatives infructueuses. La dernière solution que j'ai pu trouver est de lire directement la table et de récupérer le dernier enregistrement inséré. Mais je me rend compte que àa pose un problème, quand mon horloge n'est pas en phase avec celle du server.
Merci à tous ceux qui pourront me répondre, et l'équipe Technique PCSoft, si vous avez une solution.... merci d'avance

Contribution le : 08/02/2007 11:22
Créer un fichier PDF de la contribution Imprimer


Re: Procédures stockées SQLServer !!! URGENT !!!
Stagiaire WDF
Inscrit:
14/06/2006 11:15
Post(s): 12
Bon je vois que tu est en SQL server 2005, moi je travaille sous SQL Server 2000. Voici mon code pour récupérer ta valeur :


s_nomReq est une chaine = "REQ"+DonneIdentifiant()

SQLExec(s_nomReq,"PR_AIG_ADD_XML_INPUT @sender='toto',@xml_type=1,@xml_data='blabla' ")

SQLFetch(s_nomReq)
Trace(SQLLitCol(s_nomReq,1))
SQLFerme(s_nomReq)

Contribution le : 08/02/2007 14:13
Créer un fichier PDF de la contribution Imprimer


Re: Procédures stockées SQLServer !!! URGENT !!!
Stagiaire WDF
Inscrit:
27/03/2004 01:21
De Strasbourg
Post(s): 4
C'est gentil à toi, mais j'avais déjà essayé cette syntaxhe, qui ne fonctionne pas. Le sqllitcol(s_nomreq,1) ne m'apporte rien.
Et fait attention dans un SQLEXEC on met d'abord le texte de la requete et ensuite le nom de la requete.
Merci tout de même!

Contribution le : 09/02/2007 09:57
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2