Questione : PASSARE MULTI-VALUE AD UNA DOMANDA O AD UNO STOREPROCEDURE?

La domanda sotto il pozzo di funzionamento quando selezionano singolo valore; tuttavia, quando è utilizzato in SSRS per interrogare i multi-valori (@PPFNCL) ottengo il seguente errore: il

" un errore si è presentato durante il rapporto locale che proceda, esecuzione di domanda venuta a mancare per l'insieme di dati “ReportDB'.
Line 15: la sintassi errata vicino ', '

Should questo è una procedura immagazzinata?  se sì, potesse qualcuno fornirmi la sintassi corretta code.

Thank you.
class= > " libero " del
> " del codeSnippet " del class= del
class= " lineNumbers " del
class= del
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
>SELECT notpretty " del class= " del id= " codeSnippet815288 del
           
class= del

Risposta : PASSARE MULTI-VALUE AD UNA DOMANDA O AD UNO STOREPROCEDURE?

l'approvazione genera una funzione come la spaccatura

allora la vostra domanda si trasforma in questa


SELEZIONARE DISTINTO
                      PRINCIPALE 100 PER CENTO VW_HPPATMFL.ccGrpName, VW_HPPATMFL.PPPATno, VW_HPPATMFL.PPBLDT, VW_HPPATMFL.PPADDT,
                      VW_HPPATMFL.PPDSDT, HAABSTFL.AALOSD, VW_HPPATMFL.PPNAME, HPMEDRFL.PMPSSN, VW_HPPATMFL.PPTYPE, VW_HPPATMFL.PPMSRV,
                      VW_HPPATMFL.PPFNCL + ''+ HBFNCLFL.BNNAME COME FC_Desc, HPINPLFL.PLINCO, HPINCOFL.PINAME, HPINPLFL.PLPLCY,
                      VW_HPPATMFL.PPPDOB, VW_HPPATMFL.PPCHGS, VW_HPPATMFL.PPADJU, VW_HPPATMFL.PPPYMT, VW_HPPATMFL.PPCBAL,
                      HPINPLFL.PLPLN#
DA HAABSTFL LASCIATO ESTERNO UNIR
                      ESTERNI DI DESTRA DI HBFNCLFL SI UNISCONO
                      VW_HPPATMFL SU HBFNCLFL.BNGRP# = VW_HPPATMFL.PPGRPno E HBFNCLFL.BNFNCL = VW_HPPATMFL.PPFNCL LASCIATO ESTERNO SI UNISCONO
                      HPINPLFL INTERNI SI UNISCONO
                      HPINCOFL SU HPINPLFL.PLINCO = HPINCOFL.PICMP# SU VW_HPPATMFL.PPGRPno = HPINPLFL.PLGRP# E
                      VW_HPPATMFL.PPPATno = HPINPLFL.PLPAT# E VW_HPPATMFL.PPGRPno = HPINCOFL.PIGRP# LASCIATI ESTERNI SI UNISCONO
                      HPMEDRFL SU VW_HPPATMFL.PPGRPno = HPMEDRFL.PMGRP# E VW_HPPATMFL.PPPATno = HPMEDRFL.PMPAT# SOPRA
                      HAABSTFL.AAGRP# = VW_HPPATMFL.PPGRPno E HAABSTFL.AAPAT# = VW_HPPATMFL.PPPATno
 Interno unire dbo.split (@PPFBCL, “, ") come X
 su VW_HPPATMFL.PPFNCL = X.data
DOVE VW_HPPATMFL.PPDSDT FRA @STARTDATE E @ENDDATE
 E HPINPLFL.PLPLN# = 1
 E VW_HPPATMFL.ccGrpName = @GRPNAME
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:
GENERARE il dbo di FUNZIONE. Spaccatura
(
	@RowData nvarchar (2000),
	@SplitOn nvarchar (5)
)  
RESTITUISCE la tabella del @RtnValue 
(
	Identità di identificazione int (1.1),
	Dati nvarchar (100)
) 
AS  
COMINCIARE 
	Dichiarare il @Cnt int
	Regolare il @Cnt = 1

	Mentre (Charindex (@SplitOn, @RowData) >0)
	Cominciare
		Inserire in @RtnValue (dati)
		Selezionare 
			Dati = ltrim (rtrim (sottostringa (@RowData, 1, Charindex (@SplitOn, @RowData) - 1)))

		Fissare il @RowData = la sottostringa (@RowData, Charindex (@SplitOn, @RowData) +1, len (@RowData))
		Regolare il @Cnt = il @Cnt + 1
	Estremità
	
	Inserto in @RtnValue (dati)
	Selezionare i dati = il ltrim (rtrim (@RowData))

	Rinviare
ESTREMITÀ
Altre soluzioni  
 
programming4us programming4us