Bonjour,
Désolé, la question est très certainement triviale mais je suis codeur SQL ...le dimancheet je ne vois pas.
J'obtiens le message d'erreur en titre, bien que mon code contienne bien une instruction DECLARE.
Quelques détails :
Environnement MS-SQL 2005 sous éditeur Management Studio.
Je cherche à créer une vue avec deux dates en variables pour pouvoir obtenir différents champs et calculs de valeurs de stock en fonction d'une date initiale et une date finale de période.
L"idée est de pouvoir changer ces bornes très rapidement sans toucher le reste du code.
La requête est pour l'instant très simple, mais hormis ce problème de variable le reste ne devrais pas poser de problème. C'est pourquoi je teste cette partie.
Je me suis limité à ajouter les lignes 7 à 10
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 USE [POWER_SBO] GO /****** Objet*: View [dbo].[E_S_DATE] Date de génération du script*: 09/22/2013 13:02:27 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON DECLARE @InitDate Datetime DECLARE @FinalDate Datetime SET @InitDate = '01.04.2012' SET @FinalDate = '31.03.2013' GO ALTER VIEW [dbo].[E_S_DATE] AS SELECT ItemCode, InQty, OutQty, DocDate FROM dbo.ES WHERE (ItmsGrpCod = '110') AND (DocDate BETWEEN @InitDate AND @FinalDate)
et à remplacer les deux dates dans la clause WHERE par les variables dans la vue créée par Management Studio qui elle, fonctionne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 DECLARE @InitDate Datetime DECLARE @FinalDate Datetime SET @InitDate = '01.04.2012' SET @FinalDate = '31.03.2013'
merci à qui me mettra sur la piste.
Partager