Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Query in DataGridView
Forum - C# / VB.NET - Query in DataGridView

Avatar
Nikitto46 (Normal User)
Pro


Messaggi: 61
Iscritto: 27/12/2007

Segnala al moderatore
Postato alle 20:40
Lunedì, 09/03/2009
Ciao , ho un piccolo problema con la gestione di 1 DataGridView in C# .. praticamente ho creato questa DataGridView trascinando la tabella da Esplora Soluzioni nella form .. poi ho modificato la riga nel codice dove viene effettuata la fill sostituendola con una query parametri con join tra tabelle fatta nella progettazione del DataSet (tasto dx su tabella , aggiungi query) .. tutto ok .. tutto funziona .. ma non riesco a fare 1 cosa semplicissima : nella datagridview ci sono solo le colonne della tabella padre e non delle tabelle figlio ottenute dalla join , questo sicuramente perchè da qualche parte gli devo dire che oltre a popolare i dati dalla query deve popolare anche le colonne dalla query e non sto riuscendo a capire come si fa .. qualcuno può aiutarmi?
Come al solito vi ringrazio anticipatamente xkè fino ad adesso siete riusciti sempre ad aiutarmi .. fino a quando non mi levate l'accesso al forum 8-|;):-|

PM Quote
Avatar
Jeremy (Normal User)
Pro


Messaggi: 134
Iscritto: 08/02/2009

Segnala al moderatore
Postato alle 12:01
Martedì, 10/03/2009
Ciao
Devi accertarti che nella Select, siano presenti anche i campi della tabella figlio
Puoi mostrare la query string che hai usato?

Facci sapere...
Ciao

PM Quote
Avatar
Nikitto46 (Normal User)
Pro


Messaggi: 61
Iscritto: 27/12/2007

Segnala al moderatore
Postato alle 18:07
Martedì, 10/03/2009
No ti confermo che nella query ci sono i campi delle altre tabelle ... è 1 po lunga comunque :

SELECT     Ascensori.ID_Ascensore, Ascensori.Matricola, Ascensori.Sigla, Ascensori.AnnoImm, Ascensori.MatricolaComune, Ascensori.NumFabbrica,
                      Ascensori.ExMatricola, Ascensori.ExSigla, Ascensori.ExAnnoImm, Ascensori.CodDittaAddeb, Ascensori.SubCodDittaAddeb,
                      DitteAddeb.RGS AS RGS_Addeb, ComuniAddeb.Descrizione AS Comune_Addeb, Ascensori.SubCodDittaInst, DitteInst.RGS AS RGS_Inst,
                      ComuniInst.Descrizione AS Comune_Inst, DitteAddeb.IDAmministratore AS CodAmm, Amministratori.RGS AS RGS_Amm,
                      ComuniAmm.Descrizione AS Comune_Amm, Ascensori.CodCategoria, Ascensori.CodCostruttore, Ascensori.CodManutentore, Ascensori.ID_Status,
                      Ascensori.NumFermate, Ascensori.Portata, Ascensori.Corsa, Ascensori.Velocita, Ascensori.Trazione, Ascensori.Motore, Ascensori.Manovre,
                      Ascensori.Porte, Ascensori.Distanza, Ascensori.DataScadenza
FROM         Ascensori LEFT OUTER JOIN
                      Comuni AS ComuniAmm RIGHT OUTER JOIN
                      Amministratori ON ComuniAmm.Codice = Amministratori.ID_Comune RIGHT OUTER JOIN
                      Ditte AS DitteAddeb LEFT OUTER JOIN
                      Comuni AS ComuniAddeb ON DitteAddeb.ID_Comune = ComuniAddeb.Codice ON Amministratori.Codice = DitteAddeb.IDAmministratore ON
                      Ascensori.CodDittaAddeb = DitteAddeb.Codice AND Ascensori.SubCodDittaAddeb = DitteAddeb.SubCodice LEFT OUTER JOIN
                      Comuni AS ComuniInst RIGHT OUTER JOIN
                      Ditte AS DitteInst ON ComuniInst.Codice = DitteInst.ID_Comune ON Ascensori.CodDittaAddeb = DitteInst.Codice AND
                      Ascensori.SubCodDittaInst = DitteInst.SubCodice
WHERE    
((Ascensori.CodDittaAddeb = @CodDittaAddeb) OR (@CodDittaAddeb = 0)) AND
((Ascensori.SubCodDittaAddeb = @SubCodDittaAddeb) OR (@SubCodDittaAddeb = 0)) AND
((Ascensori.Matricola = @Matricola) OR (@Matricola = 0)) AND
((Ascensori.MatricolaComune = @MatricolaComune) OR (@MatricolaComune = 0)) AND
((Ascensori.ExMatricola = @ExMatricola) OR (@ExMatricola = 0)) AND
((Ascensori.Sigla = @Sigla) OR (@Sigla = 0)) AND
((Ascensori.ExSigla = @ExSigla) OR (@ExSigla = 0)) AND
((Ascensori.AnnoImm = @AnnoImm) OR (@AnnoImm = 0)) AND
((Ascensori.ExAnnoImm = @ExAnnoImm) OR (@ExAnnoImm = 0)) AND
((Ascensori.NumFabbrica = @NumFabbrica) OR (@NumFabbrica = 0)) AND
((Ascensori.SubCodDittaInst = @SubCodDittaInst) OR (@SubCodDittaInst = 0)) AND
((Ascensori.CodCategoria = @CodCategoria) OR (@CodCategoria = 0)) AND
((Ascensori.CodCostruttore = @CodCostruttore) OR (@CodCostruttore = 0)) AND
((Ascensori.CodManutentore = @CodManutentore) OR (@CodManutentore = 0)) AND
((Ascensori.ID_Status = @IDStatus) OR (@IDStatus = 0)) AND
((DitteAddeb.RGS LIKE '%' + @RGS_Addeb + '%') OR (@RGS_Addeb = '')) AND
((DitteInst.RGS LIKE '%' + @RGS_Inst + '%') OR (@RGS_Inst = '')) AND
((ComuniAddeb.Descrizione LIKE '%' + @ComuneAddeb + '%') OR (@ComuneAddeb = '')) AND
((ComuniInst.Descrizione LIKE '%' + @ComuneInst + '%') OR (@ComuneInst = '')) AND
((Amministratori.RGS LIKE '%' + @RGS_Amm + '%') OR (@RGS_Amm = '')) AND
((ComuniAmm.Descrizione LIKE '%' + @ComuneAmm + '%') OR (@ComuneAmm = '')) AND
((DitteAddeb.IDAmministratore = @CodAmm) OR (@CodAmm = 0))

PM Quote
Avatar
Nikitto46 (Normal User)
Pro


Messaggi: 61
Iscritto: 27/12/2007

Segnala al moderatore
Postato alle 11:47
Mercoledì, 11/03/2009
Ci sono riuscito :

Bisogna aggiungere 1 colonna inizialmente non agganciata al db . Poi cambiare il DataPropertyName nel nome corrispondente alla colonna della query

PM Quote