![]() |
Πολλαπλή αντιγραφή μιάς εγγραφής στον ίδιο πίνακα 1 Συνημμένο(α) Καλησπέρα. Στην παρακάτω συνημμένη δειγματική βάση υπάρχει ο πίνακας [tblExoda] και η φόρμα [NewExodaIn]. Τα δεδομένα που εσάγονται στη φόρμα αποθηκεύονται στον ως άνω πίνακα. Έχω ένα ερώτημα το οποίο είναι μακράν των δυνατοτήτων μου. Αν και βρήκα σχετικές εγγραφές στο Forum όπως, "http://www.ms-office.gr/forum/access...-mia-alli.html", δεν κατάφερα να προσαρμόσω τον κώδικα αναλόγως για την περίπτωση του παρακάτω ζητούμενου: Αφού συμπληρώσουμε την αρχική εγγραφή στη φόρμα, είναι δυνατόν, κάνοντας κλικ στο κουμπί [Αντιγραφή], να αντιγράφεται η τρέχουσα εγγραφή στον πίνακα [tblExoda] τόσες φορές όσος είναι ο αριθμός του πεδίου [SYNDOSEON], με τις ακόλουθες διαφοροποιήσεις: α) Σε κάθε εγγραφή η ημερομηνία [DAYEX] να αλλάζει μόνον ως προς το μήνα, δηλ. αν η πρώτη (αρχική) εγγραφή εχει ημερομηνία 3/10/2016, οι επόμενες 3/11/2016, 3/12/2016, 3/1/2017 κοκ. β) Η τρέχουσα δόση [TREXDOSI] να αλλάζει αυξητικά κατά (+1), δηλ. αν η πρώτη (αρχική) εγγραφή έχει τον αριθμό 1 οι επόμενες 2, 3, 4, 5 κοκ. γ) Λοιπά δεδομένα να αντιγράφοναι ως έχουν... Σας ευχαριστώ εκ των προτέρων |
Καλημέρα φίλε Δημήτρη αρχικά να σου πω ότι για κάποιο λόγο που δεν γνωρίζω η βάση που ανέβασες δεν μου ανοίγει. Βγάζει σφάλμα. Σίγουρα γίνεται αυτό που ζητάς. Ίσως όμως θα χρειαστούν και λίγες γραμμές κώδικα. |
Καλησπέρα. Φίλε Βάγγο, δεν γνωρίζω για ποιό λόγο δεν σου ανοίγει η βάση. Κοίταξέ το πάλι διότι αφού έχεις access 2010 λογικά έπρεπε να ανοίγει... Όσον αφορά το θέμα μας, σίγουρα θα χρειαστεί κάποιος Κώδικας, αλλά η σύνταξή του είναι μακράν των δυνατοτήτων μου... Καλή συνεχεια... |
2 Συνημμένο(α) Καλησπέρα Οι συνημμένες ΒΔ αποτελούν πρόταση για την υλοποίηση του ζητούμενου. Στη ΒΔ, μορφής *.mdb, αφαίρεσα το υπολογιζόμενο πεδίο [PosoDoseon] και κάποια χαρακτηριστικά της φόρμας, επειδή δεν υποστηρίζονται από τις παλιότερες της 2010 εκδόσεις της Access. Η φόρμα [NewExodaAdd], που πρόσθεσα: 1) Δε συνδέεται με δεδομένα. 2) Δεν περιέχει το πεδίο [PosoDoseon], αφού ως υπολογιζόμενο προκύπτει από τα άλλα δεδομένα. 3) Είναι αναδυόμενη (Pop Up), αλλά όχι αποκλειστική (Modal). Πατώντας το κουμπί εκτελείται κώδικας, ο οποίος: 1) Ελέγχει αν έχουν συμπληρωθεί σωστά τα πεδία της φόρμας. 2) Αποτρέπει την πολλαπλή καταχώρηση. Θα μπορούσε για παράδειγμα να πατήσουμε πολλές φορές το κουμπί και να πραγματοποιήσουμε πολλαπλή καταχώρηση των ίδιων στοιχείων. 3) Προσθέτει στον πίνακα τις κατάλληλες εγγραφές. Δημήτρη κάνε δοκιμές, μήπως μου διέφυγε κάτι. Φιλικά/Γιώργος |
2 Συνημμένο(α) Καλημέρα. Γιώργο (kapetang), σε υπερευχαριστώ. Η πρότασή σου είναι εξαιρετική. Ωστόσο παρουσιάζεται ένα σφάλμα σε μια μόνον περίπτωση: Υστερα από δοκιμές, διαπιστώθηκε ότι, όταν η τιμή του πεδίου [POSOEX] ( Ετικέτα: "Τρέχουσα οφειλή) είναι δεκαδικός αριθμός τότε βγάζει το παρακάτω συνημμένο σφάλμα που ανεβάζω (Φωτο). |
1 Συνημμένο(α) Δημήτρη, δοκίμασε το συνημμένο |
Καλησπέρα Γιώργο (kapetang), ο Κώδικας πλέον λειτουργεί τέλεια. Τον προσάρμοσα ήδη στη βάση μου με επιτυχία. Ομως, παράλειψα να αναφέρω στις πιό πάνω αναρτήσεις μου κάτι σημαντικό: Στη βάση πού ανέβασα υπάρχει το σύνθετο πλαίσιο [PERIODOS] (Ετικέτα: Περίοδος δόσεων). Θα ήθελα να ρωτήσω αν είναι δυνατόν να λειτουργήσει ο Κώδικας αναλόγως της επιλογής μας στο σύνθετο πλαίσιο, δηλαδή: α) Αν επιλέξω στο σύνθετο πλαίσιο "ΜΗΝΙΑΙΑ", και η πρώτη (αρχική) εγγραφή εχει ημερομηνία 3/10/2016, οι επόμενες να είναι 3/11/2016, 3/12/2016, 3/1/2017 κοκ. (Διαφορά 1 μήνας) β) Αν επιλέξω στο σύνθετο πλαίσιο "ΔΙΜΗΝΙΑΙΑ", και η πρώτη (αρχική) εγγραφή εχει ημερομηνία 3/10/2016, οι επόμενες να είναι 3/12/2016, 3/1/2017, 3/3/2017 κοκ. (Διαφορά 2 μήνες) γ) Αν επιλέξω στο σύνθετο πλαίσιο "ΤΡΙΜΗΝΙΑΙΑ", και η πρώτη (αρχική) εγγραφή εχει ημερομηνία 3/10/2016, οι επόμενες να είναι 3/1/2017, 3/3/2017, 3/6/2017 κοκ. (Διαφορά 3 μήνες) .................................................. .................................................. ............ .................................................. .................................................. ........κλπ. Καταχρηστικά πλέον, θα σου ζητούσα τη βοήθειά σου, αν έχεις χρόνο, και γι` αυτό. Πάντως, σε ευχαριστώ θερμά. Σε κάθε περίπτωση είμαι υπόχρεος. |
1 Συνημμένο(α) Καλησπέρα Δημήτρη, δοκίμασε τη συνημμένη ΒΔ. Αφαίρεσα κάποια πεδία από τη φόρμα, που τα θεωρώ περιττά. 1) Το [PosoEx] μπορεί να υπολογιστεί όπως και το [PosoDoseon] 2) Το πεδίο [TREXDOSI], επειδή η αρίθμηση είναι δεδομένη (αρχίζει πάντα από το 1 και φθάνει στο [SYNDOSEON]). Φιλικά/Γιώργος |
Γιώργο (kapetang), με υπερκάλυψες. Είσαι κορυφαίος..., η ψυχή του Forum ...!!! Νάσαι πάντα καλά. Καλή συνέχεια ... |
Δημήτρη ευχαριστώ πολύ. Να είσαι, επίσης, καλά. |
Γιώργο (kapetang), Είναι δυνατόν να αποφύγουμε την αφαίρεση του πεδίου [POSOEX] (ή την αλλαγή του σε [PosoEX] )διότι υπάρχουν ήδη αρκετά δεδομένα (εγγραφές) σ` αυτό ; |
Δεν μπορώ να καταλάβω το πρόβλημα. Οι παλιές τιμές στο πεδίο [POSOEX], αν είχαν καταχωρηθεί σωστά, ισούνται με το πηλίκο [PosoDoseon]/[SYNDOSEON]. Για να μη έχουμε πολλά δεκαδικά είναι καλύτερα να υπολογίζονται με τον τύπο: Round([PosoDoseon]/[SYNDOSEON];2). Αν δεν μπορείς στον πίνακά σου να δημιουργήσεις το πεδίο [PosoEx] (είναι το ίδιο με το [POSOEX], αφού δεν υπάρχει διάκριση πεζών και κεφαλαίων) κάνε τα εξής: 1) Πάρε ένα αντίγραφο του πίνακά σου (για λόγους ασφάλειας). 2) Στη σχεδίαση διάγραψε το πεδίο [POSOEX] 3) Πρόσθεσε ένα νέο πεδίο [POSOEX], τύπου υπολογιζόμενου (Calculated) . Το πεδίο αυτό, φυσιολογικά, θα γεμίσει με τις υπολογιζόμενες τιμές. |
Γιώργο, Συμφωνώ μαζί σου και, έχεις απόλυτο δίκιο στις παρατηρήσεις σου. Όμως, να με συγχωρήσεις διότι, έκανα σοβαρό λάθος που δεν σου εξήγησα απ` την αρχή ότι το πεδίο [POSOEX] χρησιμοποιείται για εισαγωγή δεδομένων και από άλλες Φόρμες που υπάρχουν στην κανονική μου βάση και, συνεπώς, είναι αδύνατον να μετατραπεί σε υπολογιζόμενο πεδίο. |
1 Συνημμένο(α) Αν και εξακολουθώ να μη καταλαβαίνω, δοκίμασε τη συνημμένη ΒΔ . |
Γιώργο σε υπερευχαριστώ για μιά ακόμη φορά. Ο στόχος επιτεύχθηκε. Το σφάλμα είναι δικό μου διότι δεν έθεσα σωστά τα δεδομένα του ζητούμενου εξαρχής. Εξηγώ για άλλη μιά φορά ότι το πεδίο [POSOEX] του πίνακα χρησιμοποιείται και από αλλες φόρμες, οι οποίες είναι συνδεδεμένες με τον πίνακα, προκειμένου να εισάγονται στο ίδιο πεδίο άλλες εγγραφές για διαφορετικούς λόγους (για παράδειγμα έξοδα χωρίς δόσεις). Τώρα, αν το πεδίο αυτό μετατραπεί σε υπολογιζόμενο δεν θα μπορώ πλεν να εισάγω δεδομένα απο τις λοιπές φόρμες της βάσης στο ίδιο πεδίο. Καλή συνέχεια... |
| Η ώρα είναι 10:11. |
Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.