15/07/2023 - BarLudwig ha scritto:
Se inserisco un record nella tabella MastertblAggregatiAnnuali e non inserisco alcun valore nel campo ValoreAggregati non ho come risultato un valore Null nel campo ValoreAggregati ?
Perchè divaghi ? … è ovvio che non hai impostato il valore predefinito = 0 e il campo rimane null (vuoto) e in struttura tabella hai consentito valori null per tale campo… questo non è normale… non se fa.
Ma tu l'hai fatto perchè volevi assumere in valore lo 0 oppure -1 per indicare un possibile Vero/Falso etc etc etc … Vedi quando si fanno le cose che non hanno ne testa ne coda quanti problemi ti creano nel progetto ?
Vanno fatte le cose normali !
Detto questo da cui dovrai tranne esperienza positiva…
se vuoi passare tutti i records, anche quelli vuoti (fatta eccezione dei famosi Id 14)
allora modifica in questa parte di codice inserendo un controllo IsNull e modificando la DbEngine Execute
In questo punto qui sotto il commento ' write rows table, togli il DbEngine e ci metti queste righe:
' write rows table
Dim dblVal As Double
If IsNull(rsExp.Fields("ValoreAggregati")) Then dblVal = 0 Else dblVal = rsExp.Fields("ValoreAggregati").Value
DBEngine(0)(0).Execute "INSERT INTO tblAggregatiAnnualiRows (IdAggregatiAnnuali, IdAggregati, ValoreAggregati) " & _
"VALUES (" & lngNewIdHeader & ", " & rsExp.Fields("idAggregati").Value & ", " & dblVal & ")"
In questo modo i record dove Valore Aggregati = null , verranno valorizzati a 0