Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,117

    Creare "al volo" una tabella HTML

    Ho una tabella (di un DB) con X records, come posso sulla base del numero di righe creare una tabella (HTML) con X colonne

    inoltre (non è finita )

    sulla base di una query SQL visualizzare Y righe nella tabella HTML

    E' un po un casino!

    Grazie per l'aiuto

  2. #2
    Utente di HTML.it L'avatar di Ottavio
    Registrato dal
    Jul 2000
    Messaggi
    286
    ti suggerirei un repeater senza <HeaderTemplate>
    .... :tongue:
    <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    Era un mondo adulto, si sbagliava da professionisti....
    <P.Conte>
    <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

  3. #3
    La datagrid non va bene?
    Saluti a tutti
    Riccardo

  4. #4
    Utente di HTML.it L'avatar di Ottavio
    Registrato dal
    Jul 2000
    Messaggi
    286
    si probabilmente si può impostarla per visualizzare
    per riga anzichè per colonna...
    a me è venuto spontaneo pensare al repeater che
    forse si rivelerebbe + flessibile in qs contesto...
    <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    Era un mondo adulto, si sbagliava da professionisti....
    <P.Conte>
    <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

  5. #5

    Re: Creare "al volo" una tabella HTML

    Originariamente inviato da valeria75
    Ho una tabella (di un DB) con X records, come posso sulla base del numero di righe creare una tabella (HTML) con X colonne

    inoltre (non è finita )

    sulla base di una query SQL visualizzare Y righe nella tabella HTML

    E' un po un casino!

    Grazie per l'aiuto
    io l'ho fatto da codice c# usando il controllo HtmlTable
    aggiungendo le righe (HtmlTableRow) e le celle (HtmlTableCell) nel ciclo che scorre la tabella el database.
    effettivamente è un po' macchinoso ma funziona.
    come ha detto riccardone non ti è più comodo il datagrid?
    La cosa seccante di questo mondo è che gli stupidi sono sicuri di sé, mentre le persone intelligenti sono piene di dubbi. B. Russel

  6. #6
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,117
    Grazie per la risposta!

    Quello che sto cercando è la soluzione più semplice per incrociare i contenuti delle due tabelle (le tabelle le ho già salvate in un DataSet)



    ...
    Tabella 1
    DataAdatpConsulenti.Fill(Ds, "Consulenti");

    // campi: Codice - RagioneSociale


    ...

    Tabella 2

    DataAdatpCalendario.Fill(Ds, "Calendario");

    // campi: ID - Data - Descrizione - Consulente (con l'ID della tabella
    precedente - NomeConsulente


    a questo punto vorrei visualizzare qualche cosa del tipo:


    Data - Pippo - Pluto - Topolino
    01/01/2004 - des di Pi - - des di Top
    02/01/2004 - - - des di Top
    03/01/2004 - des di Pi
    04/01/2004
    05/01/2004 - des di Pi - des di Plu - des di Top


    dove,

    nella Tabella 1 avevo:
    01 - Pippo
    02 - Pluto
    03 - Topolino

    e nella Tabella 2:
    01/01/2004 - des di Pi - 01
    01/01/2004 - des di Top - 03
    02/01/2004 - des di Top - 03
    03/01/2004 - des di Pi - 01
    05/01/2004 - des di Pi - 01
    05/01/2004 - des di Plu - 02
    05/01/2004 - des di Top - 03


    Quale soluzione è meglio adottare?

    Grazie per l'aiuto

  7. #7
    Originariamente inviato da valeria75
    Quale soluzione è meglio adottare?
    Mi sembra ci siano principalmente due strade che puoi seguire.
    Se vuoi usare il dataset riempendo due tabelle per poi successivamente "incrociare" i dati devi aggiungere un oggetto datarelation opportunamente valorizzato (colonna parent e colonna child delle rispettive tabelle) al dataset. Questa soluzione e' difficilina da seguire se sei a digiuno di ado.net.
    L'alternativa e' utilizzare una datatable che riempirai con i dati gia' "incrociati". Devi quindi scrivere una query che metta gia' in relazione le due tabelle e ti restituisca i record con le colonne che ti interessano. Fatto questo riempi una datatable (in questo caso e' inutile utilizzare un dataset) e imposti la stessa datatable come datasource di una datagrid.
    Saluti a tutti
    Riccardo

  8. #8
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,117
    L'alternativa e' utilizzare una datatable che riempirai con i dati gia' "incrociati". Devi quindi scrivere una query che metta gia' in relazione le due tabelle e ti restituisca i record con le colonne che ti interessano. Fatto questo riempi una datatable (in questo caso e' inutile utilizzare un dataset) e imposti la stessa datatable come datasource di una datagrid.
    La seconda alternativa mi piace

    ma come posso incrociare le due tabelle?? io dovrei visualizzare tutti i giorni del mese (anche se sono vuoti ... non hanno dati per nessuna persona) ed accanto a quelli con dei dati visualizzare la descrizione in corrispondenza della colonna corretta (colonna=nome)

    Grazie per l'aiuto

  9. #9
    Originariamente inviato da valeria75
    La seconda alternativa mi piace

    ma come posso incrociare le due tabelle?? io dovrei visualizzare tutti i giorni del mese (anche se sono vuoti ... non hanno dati per nessuna persona) ed accanto a quelli con dei dati visualizzare la descrizione in corrispondenza della colonna corretta (colonna=nome)

    Grazie per l'aiuto
    ricapitoliamo: hai una tabella Consulenti e una tabella Calendario e vuoi vedere i corsi che ci sono ogni giorno?

    io comincerei a scorrere la tabella dei corsi
    all'interno del ciclo puoi usare un dataview per ricavare il nome del consulente
    esempio in c#:

    codice:
    foreach (DataRow r id ds.Tables["Calendario"].Rows)
    {
       Dataview dv= new dataview(ds.tables["Consulenti"]);
       dv.RowFilter="Codice='"+r["Consulente"].ToString()+"'";
    
       foreach (DataRowView drv in dv)
        {
    
        }
    
    }
    Così incroci le tabelle, ricavi i tuoi dati e poi li puoi scrivere in un DataTable che fai tu.
    Solo che non mi convince molto il tuo database.
    nel senso che secondo me ti servirebbe una terza tabella :master:
    Così com'è un consulente può essere in più giorni ma in ogni giorno ci può essere un solo consulente.
    non credo che sia quello che vuoi.
    La cosa seccante di questo mondo è che gli stupidi sono sicuri di sé, mentre le persone intelligenti sono piene di dubbi. B. Russel

  10. #10
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,117
    Perchè un'altra tabella???

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.