Righe su più Documenti

sabato 11 novembre 2006 - 22.34

jekisi Profilo | Senior Member

Salve a tutto il forum, avrei il seguente problema:
Ho 3 Datagridview, nella prima vengono visualizzate tutte le righe che come cliente hanno il valore uguale a quello di una text, e il campo Fatturata uguale a N.
Quando passo la riga selezionata alla seconda Datagridview, il campo Fatturata si mdifica a S.
La tabella è chiamata TDDT, la quale e messa in relazione con un' altra tabella chiamata RDDT.
Adesso, quando passo una riga dalla datagridview di sinistra a quella di destra, oltre alla mofica del campo Fatturata, una terga Datagridview, mi dovrebbe visualizzare tutte le righe appartenente a quel documento, se passo 2 righe, mi dovrebbe visualizzare tutte le righe di tutte e 2 documenti e così via.


Qualcuno sa dirmi come fare?




Distinti Saluti Fabio Messina

Slayer Profilo | Newbie

Ciao, ogni riga dell' ogetto DataGridView è la rispettiva proprietà rows ed ha un indice,
a sua volta le rows hanno celle(rispettiva proprietà cells) anch' esse hanno un indice.
Le celle hanno una proprietà value che rappresenta il testo all' interno della cella.
Quindi per recuperare il contenuto delle prime due DataGridView dovresti associare all' evento che scaturisce l' aggiunta nella terza DataGridView codice simile a questo:

DataGridView3.Rows.Add(DataGridView1.Rows(0).Cell(0).Value),

cosi facendo aggiungrai il testo contnuto della prima cella nella prima riga,
cambiando l' indice della cella otterrai il testo della seconda( terza ecc.) cella
nella prima riga e cosi via.
Potresti implementare un ciclo se sono numerosi i campi da assoggettare.

jekisi Profilo | Senior Member

Ciao, non credo sia ciò che cerco io, comunque, posso dire una cosa, forse così, riesco a farmi capire meglio.

In vb 6 faccio:
Dim strsqlddt As String
Dim strsql As String
strsqlddt = "(SELECT DDT FROM tddt WHERE cliente=" & Text1.Text & " AND fattura=" & Text9.Text & " and fatturata='S')"
strsql = "SELECT * FROM RDDT WHERE DDT IN " & strsqlddt
With Data4
.RecordSource = strsql
.Refresh
End With



Adesso, questa riga riesco a farla in questo modo

TDDTBindingSource.Filter = "cliente = '" & TextBox1.Text & "' And fattura= '" & TextBox2.Text & "' and fatturata = 'S'"

solo che mi rimane questa
strsql = "SELECT * FROM RDDT WHERE DDT IN " & strsqlddt
e proittare tutte le righe su un' altra Datagridview


Distinti Saluti Fabio Messina

Slayer Profilo | Newbie

Allora non ho capito qualè il tuo intoppo.
Utilizzi un BindigsSource, che è un' origine dati alla quale ne inserisci a tuo piacimento e poi la passi alla DataGridView come DataSource.

jekisi Profilo | Senior Member

Non riesco a capire come dovrebbe diventare questa riga
strsql = "SELECT * FROM RDDT WHERE DDT IN " & strsqlddt
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