ciao.
Ho creato con vs 2005 un master detail multiplo(3 tabelle master detail)con 3 griglie e 3 bindingsource.
Qui riporto la funzione in cui ho dei problemi,il salvataggio dei dati:
1 FatturelolloDataSet.EnforceConstraints = False
2 FatturebolleBindingSource2.EndEdit()
3 NominativifattureBindingSource1.EndEdit()
4 NominativiBindingSource.EndEdit()
5 NominativiTableAdapter.Update(FatturelolloDataSet. Nominativi)
6 FattureTableAdapter.Update(FatturelolloDataSet.fat ture)
7 BolleTableAdapter.Update(FatturelolloDataSet.bolle )
8 FatturelolloDataSet.EnforceConstraints = True
il tutto funziona correttamente se aggiungo record , il problema è se cancello un record nella griglia delle fatture,2° livello,che mi va a cancellare per integrità referenziale 1 o piu record nella griglia delle bolle,3° livello.
In questo caso mi da il seguente errore sulla riga 6:
Impossibile eliminare o modificare il record. La tabella 'bolle' contiene record correlati.
Ho provato anche ad invertire gli update,
4 BolleTableAdapter.Update(FatturelolloDataSet.bolle )
5 FattureTableAdapter.Update(FatturelolloDataSet.fat ture)
6 NominativiTableAdapter.Update(FatturelolloDataSet. Nominativi)
ma in questo caso mi da il seguente errore:
Impossibile aggiungere o modificare il record. Nella tabella "fatture" è necessario un record correlato.
quando aggiungo dei dati.
pensavo di utilizzare i getchange con lo stato diverso dei datarow in questo modo:FatturelolloDataSet.Nominativi.GetChanges(sys tem.Data.DataRowState.Deleted)
e gestire in questo modo gli update in ordine inverso ma chiedo prima a voi.
grazie.