Operatore Like all'interno di un filtro in SQL reporting server.

mercoledì 28 febbraio 2007 - 14.42

kingtarkus Profilo | Newbie

Salve a tutti.
Sono nuovo e prima di scrivere questo thread ho cercato per un'oretta ma non ho trovato nulla !
Ho scoperto da poco questo tool di Microsoft per lo sviluppo di reportistica e devo dire, che per
le nostre esigenze e' una vera bomba.
Il mio problema e' il segnete:
come faccio a costruire un filtro all'interno del datasource in modo tale che capisca un parametro
del report del tipo: Codice like "*AD*" or Codice like "*VF*"
Ho provato di tutto ma capisce solo un parametro !
Dove sbaglio ?
Grazie.
Saluti.
Stefano.

freeteo Profilo | Guru

>Salve a tutti
ciao

>Sono nuovo e prima di scrivere questo thread ho cercato per un'oretta
>ma non ho trovato nulla !
>Ho scoperto da poco questo tool di Microsoft per lo sviluppo
>di reportistica e devo dire, che per
>le nostre esigenze e' una vera bomba.
ottimo, piace molto anche a me

>Il mio problema e' il segnete:
>come faccio a costruire un filtro all'interno del datasource
>in modo tale che capisca un parametro
>del report del tipo: Codice like "*AD*" or Codice like "*VF*"
>Ho provato di tutto ma capisce solo un parametro !
>Dove sbaglio ?
per impostare un filtro del datasource, ti basta aprire il report, e aggiungerci un parametro.
Dopodiche vai nel menu "Report->data Sources" e selezioni la tua datasource.
Poi clicchi si "properties"e vai sulla tab "filter" e li scegli il campo, la condiziona "like" e scegli "expression" come valore.
Dentro all'expression vai a prendere il campo "parametro" che hai aggiunto prima e quindi salvi tutto.
Poi da codice, ti basta caricare il repotr e settargli il parametro con il valore che vuoi, e settare il datasource, e il report automaticamente filtrera' i dati che gli passi in base a quel parametro.

L'unica cosa è che devi mettere l'asterisco, o lo metti come valore del parametro o nel filtro del dataset da designer del report, è lo stesso, pero' deve essere della forma "*..*"



>Grazie.
di niente spero sia quello che stavi cercando
ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

kingtarkus Profilo | Newbie

Innanzitutto grazie per aver risposto.
Il mio problema e' leggermente piu' complesso.
Ho fatto quello che hai scritto nella risposta e con un parametro non ho problemi, funziona tutto !
Pero' devo usare un parametro multiplo e ho costruito la seguente stringa:

="*" + replace(join(Parameters!Prova.Value,","),",","* OR " + Fields!Codice.Value +" Like *")+"*"
e lo inserita in Expression di Filters.

Da SQL Query (aggiustando ovviamente la stringa) il comando funziona, mentre qui no !

Dove e' l'errore ?

Ho provato a fare anche una prova cablata ma da sempre lo stesso risultato. Non funziona.
Prova cablata:

="*AD*" or Codice like "*VF*"
O provato anche a sostituire Codice con Fields!Codice.value ma non cambia niente !
Da codice, poi, non riesco a fare debug .... (Sono alle prime armi in questo ambiente di sviluppo... In realta' lavoro molto con VB6)

Ti ringrazio anticipatamente per il tuo aiuto.
Stefano.


>>Salve a tutti
>ciao
>
>>Sono nuovo e prima di scrivere questo thread ho cercato per un'oretta
>>ma non ho trovato nulla !
>>Ho scoperto da poco questo tool di Microsoft per lo sviluppo
>>di reportistica e devo dire, che per
>>le nostre esigenze e' una vera bomba.
>ottimo, piace molto anche a me
>
>>Il mio problema e' il segnete:
>>come faccio a costruire un filtro all'interno del datasource
>>in modo tale che capisca un parametro
>>del report del tipo: Codice like "*AD*" or Codice like "*VF*"
>>Ho provato di tutto ma capisce solo un parametro !
>>Dove sbaglio ?
>per impostare un filtro del datasource, ti basta aprire il report,
>e aggiungerci un parametro.
>Dopodiche vai nel menu "Report->data Sources" e selezioni
>la tua datasource.
>Poi clicchi si "properties"e vai sulla tab "filter" e li scegli
>il campo, la condiziona "like" e scegli "expression" come valore.
>Dentro all'expression vai a prendere il campo "parametro" che
>hai aggiunto prima e quindi salvi tutto.
>Poi da codice, ti basta caricare il repotr e settargli il parametro
>con il valore che vuoi, e settare il datasource, e il report
>automaticamente filtrera' i dati che gli passi in base a quel
>parametro.
>
>L'unica cosa è che devi mettere l'asterisco, o lo metti come
>valore del parametro o nel filtro del dataset da designer del
>report, è lo stesso, pero' deve essere della forma "*..*"
>
>
>
>>Grazie.
>di niente spero sia quello che stavi cercando
>ciao.
>
>Matteo Raumer
>[MCAD .net]
>http://blogs.dotnethell.it/freeteo
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5