Fnzione TableLogOnInfo

domenica 14 dicembre 2008 - 02.38

luxsor Profilo | Guru

Ciao a tutti, ho seguito i link che gentilmente mi ha consigliato "freeteo" è ho risolto il problema del fatto che mi chiedeva la password, quando caricavo il report.

Nella funzione "TableLogOnInfo"
logOnInfo = mioreport.Database.Tables.Item("Tabella").LogOnInfo)

bisogna inserire il nome della tabella. Quale?
Io ho inserito il nome della tabella interessata nella sql è funziona tutto correttamente, ma siccome in un altro report, li dovrei passare una query con 2 join in cascata, quale tabella devo mettere?

Grazie

freeteo Profilo | Guru

Ciao,
devi mettere il nome della tabella che ti compare nel design del report, nella finestra "field explorer" ossia dove puoi prendere i campi e trascinarli sul report.
Il nodo principale da cui puoi trascinare i campi è la tabella.

Cmq se ne hai una sola, al posto del nome, puoi mettere il numero "0" dato che quella proprieta è indicizzata anche per numero oltre che per stringa.

Ciao.

Matteo Raumer
[MVP Visual C#]
http://blogs.dotnethell.it/freeteo

luxsor Profilo | Guru

Ciao Matteo,
a me nel esplora campo mi compaiono 3 tabelle, perchè al report li passo una query con join tra le tre tabelle, quindi per nodo principale tu cosa intendi?
Nel DB tutte le tabelle fanno capo a Dbo, ma ho provato e non funziona.

Quindi?

freeteo Profilo | Guru

>Ciao Matteo,
>a me nel esplora campo mi compaiono 3 tabelle, perchè al report
>li passo una query con join tra le tre tabelle, quindi per nodo
>principale tu cosa intendi?
no, non va bene.
Se nel report hai 3 tabelle devi passare 3 tabelle distinte, sarà il report a fare il link (quindi la join che fai tu da stringa sql).
Questo approccio io lo sconsiglio sempre, sia per problemi di performace, che di funzionamento stesso (a volte mi è capitato che non legasse correttamente le tabelle).

Se gli passi una join, cosa che io preferisco sempre, allora il tuo report deve essere costruito con una join, quindi dentro all'esplorer dei campi troverai una sola tabella e tutti campi risultanti dalla query.
In gergo Crystal, questo si chiama "Comando", e nel momento in cui vai a scegliere il database, devi impostarlo con la query che vuoi (nel tuo caso appunto con la join) :

800x600 224Kb

Come da query, avrai sicuraemnte dei valori duplicati e per questi campi in comune alla join, devi raggruppare.

Come ti dicevo prima, ricorda di mettere in quella casella di testo del comando, la stessa query che poi gli passerai a runtime, in modo che i campi siano uguali sia come ordinamento che come tipo.

Ciao.

Matteo Raumer
[MVP Visual C#]
http://blogs.dotnethell.it/freeteo

luxsor Profilo | Guru

Ciao Matteo
spiegazione perfetta.
Ora io mi domando, facendo così, cioè inserendo la query nel comando, mi crea una tabella contenenti i campi contenuti nella query che io ho inserito.
Quindi cosi mi devo creare un report per ogni query che non ha tabelle in comune? Ad esempio la prima query fa una join tra la tab1 e la tab2. La seconda query fa una join tra la tab3 e la tab4.
In questo caso devo creare 2 report, un che implementa i campi ottenuti dalla prima query e l'altro che implementa i campi ottenuti dalla seconda query. Giusto?

freeteo Profilo | Guru

Ciao,
si, se non riesci a fare tutto con una query puoi farne 2 di comandi, non è detto che il report con il command deve averne uno solo, puoi aggiungerne quanti vuoi (alla stessa stregua di una tabella) e poi fare il link tra quelli.
Vedi tu, ma non devi assolutamente fare 2 report se hai 2 query e puoi legarle.

Altrimenti, se non riesci a fare il report bene con i vari comandi, puoi pensare di fare un sottoreport e impostare la seconda query su quello...tipicamente il sottoreport si usa quando hai impostazioni diverse di visualizzazione dei dati, ma sono legati (oppure anche no, ma di solito si) al report principale, impostando i subreport-links.

Ciao.

Matteo Raumer
[MVP Visual C#]
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