Bonjour tout le monde,

Voilà je débute avec SQL Server Management Studio 2008. Tout d'abord, je fais une sorte de reporting 1 fois toutes les 2 semaines pour facturer des clients. Voici la procédure stockée que j'ai crée

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
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
USE Telephonie_Express_Fr
GO
 
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
 
CREATE PROCEDURE ExtractFacturePhone 
 
	@NameClient nvarchar(10) , 
	@StartDate datetime ,
	@EndDate datetime
AS
BEGIN
 
	SET NOCOUNT ON;
 
 
	SELECT	Phone.name AS Phone,
			AVG(HST_Currents.Original_Value) AS Moyenne,
			MIN(HST_Currents.Original_Value) AS Minimum,
			MAX(HST_Currents.Original_Value) AS Maximum 
	FROM HST_Currents INNER JOIN
		Phone ON HST_Currents.Phone_ID = Phone.local_Phone_ID
	WHERE	(HST_Currents.Topic_ID IN (900, 901, 902))
			AND (Phone.name IN
					(SELECT Phone_Name
						FROM Phone
						WHERE Phone.Phone_NameClient = @NameClient))
		AND (dbo.udfTicksToDateTime(HST_Currents.Timestamp_ID) > = @StartDate)
		AND (dbo.udfTicksToDateTime(HST_Currents.Timestamp_ID) < @EndDate)
 
END
GO

Et voilà ce que j'exécute pour chaque client 1 fois toutes les 2 semaines:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
DECLARE @RC int
DECLARE @NameClient nvarchar(10)
DECLARE @StartDate datetime
DECLARE @EndDate datetime
 
SET @NameClient = 'DUPONT'
SET @StartDate = CAST('2013-05-06 00:00' AS datetime)
SET @EndDate = CAST('2013-05-12 00:00' AS datetime)
 
EXECUTE @RC = [Telephonie_Express_Fr].[dbo].[ExtractFacturePhone] 
   @NameClient
  ,@StartDate
  ,@EndDate
GO
J'ai 2 soucis:

- Avez-vous une solution pour que j'évite à chaque fois d'exécuter la requête pour chaque client en marquant leur nom manuellement (environ 100) et ainsi changer la date pour que cela se fasse sur 1 semaine sans que j'ai à noter à chaque fois la date ?

- J'aimerai utiliser l'Agent SQL mais je ne vois pas comment je dois faire, je dois copier coller ma requête suivante:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
DECLARE @RC int
DECLARE @NameClient nvarchar(10)
DECLARE @StartDate datetime
DECLARE @EndDate datetime
 
SET @NameClient = 'DUPONT'
SET @StartDate = CAST('2013-05-06 00:00' AS datetime)
SET @EndDate = CAST('2013-05-12 00:00' AS datetime)
 
EXECUTE @RC = [Telephonie_Express_Fr].[dbo].[ExtractFacturePhone] 
   @NameClient
  ,@StartDate
  ,@EndDate
GO
Sur New Jobs>Steps ?

Je vous remercie d'avance.