Salut à tous,
Voilà j'ai créé la fonction table suivante :
Quand je l'avais créé je l'avais testé, et elle marchait très bien.
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 CREATE FUNCTION Programmation_Emailing (@DateLow AS DATETIME, @DateHigh AS DATETIME) RETURNS @Table_Envoi_Emailing TABLE (EmailProspect VARCHAR(80), FichierHTML VARCHAR(200), DateEnvoi DATETIME) AS BEGIN DECLARE @EmailProspectTemp TABLE (EmailTemp VARCHAR(80), HTMLTemp VARCHAR(200), EnvoiTemp DATETIME) IF (@DateHigh IS NULL) SET @DateHigh = (@DateLow) IF (@DateLow IS NULL) SET @DateLow = (@DateHigh) IF (@DateLow = @DateHigh) SET @DateHigh = (@DateHigh + 1) INSERT INTO @EmailProspectTemp SELECT EmailProspect, FichierHTML, DateEnvoi From Prospects P, Newsletters N, Abonnements A, Souscrire SOU WHERE N.CodeAbonnement = A.CodeAbonnement AND A.CodeAbonnement = SOU.CodeAbonnement AND SOU.NumProspect = P.NumProspect AND DateEnvoi > DateInscription AND ((DateEnvoi < DateDesinscription) OR (DateDesinscription IS NULL)) AND DateEnvoi BETWEEN @DateLow AND @DateHigh INSERT INTO @Table_Envoi_Emailing SELECT DISTINCT EmailTemp, HTMLTemp, EnvoiTemp FROM @EmailProspectTemp RETURN END
Par contre entretemps j'ai oublié quelle était la requête pour appeller cette fonction. Normalement ça devrait être tout bêtement :
Mais ça ne marche pas. Ça me dit "Syntaxe incorrecte vers 31/12/2007."
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT [dbo.Programmation_Emailing]('31/12/2007', '15/03/2008')
[dbo].[Programmation_Emailing] ne marche pas mieux. Il croit alors que dbo est un nom de colonne...
Merci pour votre aide.
Partager