Γειά σε όλους.
Καταρχήν, λυπάμαι για τον μακροσκελή τίτλο, αλλά δεν βρήκα καλύτερο τρόπο να περιγράψω το πρόβλημά μου. Σας αναφέρω παρακάτω τι συμβαίνει.
Έχω μια φόρμα με detailsView controls και DataGridView control, που συνδέονται μεταξύ τους (one-to-many). Τα controls του Detailsview είναι πεδία του πρώτου πίνακα (master) και το datagrid αφορά πεδία του δεύτερου πίνακα (detail ή αλλιώς child table). Αυτά όλα για να δείξουν ένα παραστατικό. Οι δύο πίνακες έχουν αρκετά πεδία Not Null, μια και είναι αξιακά πεδία τύπου decimal. Η φόρμα με τα controls που περιέγραψα παραπάνω μπορεί να καλείται είτε μόνη της ή μέσω μιας φόρμας αναζήτησης για να δείξει την εγγραφή που επιλέχθηκε ή να εισάγει μια νέα. Μια και έχω αρκετά πεδία not null έχω γράψει κώδικα στην TableNewRow των δύο tables, έτσι ώστε να τους δίνω default τιμές και να μη σκάει η φόρμα με το καλημέρα. Επίσης κώδικα έχω γράψει και στην RowChanged του κάθε πίνακα, όπου κάνω τους υπολογισμούς μου για τα αξιακά πεδία. Το πρόβλημα που αντιμετωπίζω είναι ότι ενώ στην νέα εγγραφή πάνε όλα μια χαρά, όταν προσπαθώ να περάσω εκ νέου άλλη εγγραφή γεμίζουν τα αξιακά πεδία του row του master πίνακα με τις τιμές που είχε η τελευταία εγγραφή που σώθηκε (εξαιτίας των υπολογισμών που κάνω στην RowChanged). Αναζητώ έναν τρόπο, ώστε κατα το fill των tableAdapters (Load της φόρμας) να μην επηρεάζεται ότι φορτώνω από την βάση με τους υπολογισμούς που κάνω μέσω κώδικα. Αλλά πώς μπορώ να κάνω κάτι τέτοιο; Φαντάζομαι κάποιο flag..... Μέχρι τώρα δεν τα έχω καταφέρει και ζητώ την βοήθειά σας. Δεν ξέρω άμα βολεύει να σας στείλω και ένα sample με τον κώδικά μου για να βοηθείτε περισσότερο, σε περίπτωση που δεν έχουν γίνει κατανοητά τα όσα γράφω. Χρησιμοποιώ Vb2005 & SQL2000.
Ευχαριαστώ που με ακούσατε.
"Μη σταματάς να αναζητάς αυτό που αγαπάς, ειδάλλως θα καταλήξεις να αγαπάς ό,τι βρίσκεις." (Αγνώστου)