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 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
|
/****** Object: StoredProcedure [dbo].[sp_GetListActeRechAli_S] Script Date: 01/05/2011 14:08:06 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
/**************************************************************************************************
#DCART
NOM : sp_GetListActeRechAli_S
DESCRIPTION : Recherche une liste d'acte selon certains criteres
PARAMETRES EN ENTREE : code marque, code pays, dispositif, date, code vin, mail, nom client, code site
code agent, code rrdi, code CC
PARAMETRES EN SORTIE :
HISTORIQUE :
DATE AUTEUR OBJET
12/10/2010 TCo Création
10/12/2010 TCo Modif (MANTIS 81)
#FCART
**************************************************************************************************/
CREATE PROCEDURE [dbo].[sp_GetListActeRechAli_S]
(
@CODE_MARQUE nchar(2),
@CODE_TYPE_ACTE nvarchar(3),
@CODE_PAYS nchar(2),
@DATE_FACTURATION_LIVRAISON datetime,
@CODE_RRDI nvarchar(9) = NULL,
@VIN nvarchar(32) = NULL,
@SITECODE nvarchar(254) = NULL,
@CodeCustomerManager nvarchar(20) = NULL,
@AGENTCODE nvarchar(254) = NULL,
@ADRESSE_MAIL nvarchar(255) = NULL,
@NOM_CLIENT nvarchar(255) = NULL
)
AS
BEGIN
DECLARE
@DATEDEBUT datetime,
@DATEFIN datetime
SET @DATEDEBUT = dbo.GetFirstDayOfMonthCustom(@DATE_FACTURATION_LIVRAISON)
SET @DATEFIN = dbo.GetLastDayOfMonthCustom(@DATE_FACTURATION_LIVRAISON,1)
SELECT
A.IDACTE,
A.CODE_TYPE_ACTE,
A.CODE_MARQUE,
A.CODE_ISO_PAYS,
A.CODE_ETAT,
A.DATE_DEBUT_TERRAIN,
A.VIN,
CO.CODE_RRDI,
A.ID_AUTO,
A.DATE_FIN_INTERVIEW,
A.ADRESSE_MAIL,
A.LASTNAME,
CO.IDCONCESSIONNAIRE,
CO.CODE_IPSOS,
CO.NOM_COMMERCIAL,
M.LIBELLE AS LIB_MARQUE,
P.LIBELLE AS LIB_PAYS ,
H.ID_MODELE_FICHE
FROM
ACTE AS A
LEFT JOIN CONCESSIONNAIRE AS CO ON A.IDCONCESSIONNAIRE = CO.IDCONCESSIONNAIRE
INNER JOIN MARQUE M ON A.CODE_MARQUE = M.CODE_MARQUE
INNER JOIN PAYS P ON A.CODE_ISO_PAYS = P.CODE_ISO_PAYS
LEFT JOIN HISTORIQUE_REPONSE H ON
H.IDACTE = A.IDACTE AND
H.CODE_PAYS = A.CODE_ISO_PAYS AND
H.CODE_MARQUE = A.CODE_MARQUE AND
H.CODE_TYPE_ACTE = A.CODE_TYPE_ACTE AND
H.CATI = 0
WHERE
A.CODE_MARQUE = @CODE_MARQUE AND
A.CODE_TYPE_ACTE = @CODE_TYPE_ACTE AND
A.CODE_ISO_PAYS = @CODE_PAYS AND
A.DATE_FACTURATION_LIVRAISON BETWEEN @DATEDEBUT AND @DATEFIN AND
(@CODE_RRDI IS NULL OR UPPER(CO.CODE_RRDI)=UPPER(@CODE_RRDI)) AND
(@CodeCustomerManager IS NULL OR A.CODECUSTOMERMANAGER = @CodeCustomerManager) AND
(@VIN IS NULL OR A.VIN = @VIN) AND
(@SITECODE IS NULL OR UPPER(A.SITECODE) = UPPER(@SITECODE)) AND
(@AGENTCODE IS NULL OR UPPER(A.AGENTCODE) = UPPER(@AGENTCODE)) AND
(@ADRESSE_MAIL IS NULL OR UPPER(A.ADRESSE_MAIL) = UPPER(@ADRESSE_MAIL)) AND
(@NOM_CLIENT IS NULL OR UPPER(A.LASTNAME) = UPPER(@NOM_CLIENT)) AND
(A.FLAG_ANNULE = 0 OR A.FLAG_ANNULE IS NULL)
END |
Partager