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:
J'ai 2 soucis:
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
- 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:
Sur New Jobs>Steps ?
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
Je vous remercie d'avance.
Partager