Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Πώς απενεργοποιούμε τον κώδικά μας (υπολογισμοί στο dataset), ώστε να μην επηρεάζονται τα δεδομένα που φορτώνουμε από την ΒΔ κατα το Fill των TableAdapters?

Îåêßíçóå áðü ôï ìÝëïò PanPan. Τελευταία δημοσίευση από το μέλος PanPan στις 05-02-2008, 12:33. Υπάρχουν 4 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  28-01-2008, 14:46 39618

    Πώς απενεργοποιούμε τον κώδικά μας (υπολογισμοί στο dataset), ώστε να μην επηρεάζονται τα δεδομένα που φορτώνουμε από την ΒΔ κατα το Fill των TableAdapters?

    Γειά σε όλους.

    Καταρχήν, λυπάμαι για τον μακροσκελή τίτλο, αλλά δεν βρήκα καλύτερο τρόπο να περιγράψω το πρόβλημά μου. Σας αναφέρω παρακάτω τι συμβαίνει.

    Έχω μια φόρμα με 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.

    Ευχαριαστώ που με ακούσατε.


    "Μη σταματάς να αναζητάς αυτό που αγαπάς, ειδάλλως θα καταλήξεις να αγαπάς ό,τι βρίσκεις." (Αγνώστου)
  •  31-01-2008, 12:58 39746 σε απάντηση της 39618

    Απ: Πώς απενεργοποιούμε τον κώδικά μας (υπολογισμοί στο dataset), ώστε να μην επηρεάζονται τα δεδομένα που φορτώνουμε από την ΒΔ κατα το Fill των TableAdapters?

    To master σού είναι το DetailsView? Mπορείς λογικά να ορίσεις σαν null το κλειδί που διαβάζει το adapter...

    Γιατί δεν χρησιμοποιείς το "new" template στο DetailsView? Θα σου τα κάνει όλα αυτόματα.


    Simple Photography
  •  01-02-2008, 13:30 39771 σε απάντηση της 39746

    Απ: Πώς απενεργοποιούμε τον κώδικά μας (υπολογισμοί στο dataset), ώστε να μην επηρεάζονται τα δεδομένα που φορτώνουμε από την ΒΔ κατα το Fill των TableAdapters?

    null το κλειδί που διαβάζει τον adapter; Πολύ φοβάμαι πως δεν σε πολυκατάλαβα.

    Έχω δώσει το DataSetUpdateMode: None, αλλά δεν πέτυχα και πολλά.

    new template στο DetailsView? Μα από το datasource τα τραβάω όλα και δημιουργούνται τα controls πάνω στην φόρμα, αφού προηγουμένως έχω ορίσε πως θέλω να εμφανίζονται κάποια από αυτά, π.χ. το πεδίο fDocumentTypeID θέλω να είναι ComboBox.

    Αν χρειάζεσαι περισσότερα πράγματα να σου πω για να βοηθήσεις όσο μπορείς και όσο ξέρεις, πέσμου.

    Ευχαριστώ.


    "Μη σταματάς να αναζητάς αυτό που αγαπάς, ειδάλλως θα καταλήξεις να αγαπάς ό,τι βρίσκεις." (Αγνώστου)
  •  01-02-2008, 13:55 39772 σε απάντηση της 39771

    Απ: Πώς απενεργοποιούμε τον κώδικά μας (υπολογισμοί στο dataset), ώστε να μην επηρεάζονται τα δεδομένα που φορτώνουμε από την ΒΔ κατα το Fill των TableAdapters?

    Έχω διαβάσει αυτό το post εδώ και καιρό αλλά δεν έχω καταλάβει τι προσπαθείς να κάνεις (ή μαλλον έχω καταλάβει τι προσπαθείς να κάνεις αλλά όχι το πως προσπαθείς να το κάνεις). Θα σου πρότεινα να κάνεις ένα απλό παράδειγμα χρησιμοποιώντας πχ τη Northwind) ώστε να σούμε λίγο κώδικα ή να κάνεις attach ένα sample application.


    Vir prudens non contra ventum mingit
  •  05-02-2008, 12:33 39870 σε απάντηση της 39772

    Απ: Πώς απενεργοποιούμε τον κώδικά μας (υπολογισμοί στο dataset), ώστε να μην επηρεάζονται τα δεδομένα που φορτώνουμε από την ΒΔ κατα το Fill των TableAdapters?

    Ok, έχω φτιάξει ένα sample...
    "Μη σταματάς να αναζητάς αυτό που αγαπάς, ειδάλλως θα καταλήξεις να αγαπάς ό,τι βρίσκεις." (Αγνώστου)
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems