Forum

Forum (https://www.ms-office.gr/forum/)
-   Access - Ερωτήσεις / Απαντήσεις (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/)
-   -   [ Πίνακες ] Πολλαπλή αντιγραφή μιάς εγγραφής στον ίδιο πίνακα (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/4298-pollapli-antigrafi-mias-eggrafis-ston-idio-pinaka.html)

dimitrisp 03-10-16 19:07

Πολλαπλή αντιγραφή μιάς εγγραφής στον ίδιο πίνακα
 
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 κοκ.

γ) Λοιπά δεδομένα να αντιγράφοναι ως έχουν...


Σας ευχαριστώ εκ των προτέρων

kasampas 04-10-16 10:30

Καλημέρα φίλε Δημήτρη
αρχικά να σου πω ότι για κάποιο λόγο που δεν γνωρίζω η βάση που ανέβασες δεν μου ανοίγει. Βγάζει σφάλμα.
Σίγουρα γίνεται αυτό που ζητάς. Ίσως όμως θα χρειαστούν και λίγες γραμμές κώδικα.

dimitrisp 04-10-16 13:07

Καλησπέρα.

Φίλε Βάγγο, δεν γνωρίζω για ποιό λόγο δεν σου ανοίγει η βάση.
Κοίταξέ το πάλι διότι αφού έχεις access 2010 λογικά έπρεπε να ανοίγει...

Όσον αφορά το θέμα μας, σίγουρα θα χρειαστεί κάποιος Κώδικας, αλλά η σύνταξή του είναι μακράν των δυνατοτήτων μου...

Καλή συνεχεια...

kapetang 04-10-16 14:53

2 Συνημμένο(α)
Καλησπέρα

Οι συνημμένες ΒΔ αποτελούν πρόταση για την υλοποίηση του ζητούμενου.

Στη ΒΔ, μορφής *.mdb, αφαίρεσα το υπολογιζόμενο πεδίο [PosoDoseon] και κάποια χαρακτηριστικά της φόρμας, επειδή δεν υποστηρίζονται από τις παλιότερες της 2010 εκδόσεις της Access.

Η φόρμα [NewExodaAdd], που πρόσθεσα:

1) Δε συνδέεται με δεδομένα.

2) Δεν περιέχει το πεδίο [PosoDoseon], αφού ως υπολογιζόμενο προκύπτει από τα άλλα δεδομένα.

3) Είναι αναδυόμενη (Pop Up), αλλά όχι αποκλειστική (Modal).

Πατώντας το κουμπί εκτελείται κώδικας, ο οποίος:

1) Ελέγχει αν έχουν συμπληρωθεί σωστά τα πεδία της φόρμας.

2) Αποτρέπει την πολλαπλή καταχώρηση. Θα μπορούσε για παράδειγμα να πατήσουμε πολλές φορές το κουμπί και να πραγματοποιήσουμε πολλαπλή καταχώρηση των ίδιων στοιχείων.

3) Προσθέτει στον πίνακα τις κατάλληλες εγγραφές.

Δημήτρη κάνε δοκιμές, μήπως μου διέφυγε κάτι.

Φιλικά/Γιώργος

dimitrisp 05-10-16 09:12

2 Συνημμένο(α)
Καλημέρα.

Γιώργο (kapetang), σε υπερευχαριστώ. Η πρότασή σου είναι εξαιρετική.

Ωστόσο παρουσιάζεται ένα σφάλμα σε μια μόνον περίπτωση:

Υστερα από δοκιμές, διαπιστώθηκε ότι,

όταν η τιμή του πεδίου [POSOEX] ( Ετικέτα: "Τρέχουσα οφειλή) είναι δεκαδικός αριθμός τότε βγάζει το
παρακάτω συνημμένο σφάλμα που ανεβάζω (Φωτο)
.

kapetang 05-10-16 15:24

1 Συνημμένο(α)
Δημήτρη, δοκίμασε το συνημμένο

dimitrisp 05-10-16 17:54

Καλησπέρα

Γιώργο (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 μήνες)
.................................................. .................................................. ............
.................................................. .................................................. ........κλπ.

Καταχρηστικά πλέον, θα σου ζητούσα τη βοήθειά σου, αν έχεις χρόνο, και γι` αυτό.
Πάντως, σε ευχαριστώ θερμά. Σε κάθε περίπτωση είμαι υπόχρεος.

kapetang 05-10-16 18:34

1 Συνημμένο(α)
Καλησπέρα

Δημήτρη, δοκίμασε τη συνημμένη ΒΔ.

Αφαίρεσα κάποια πεδία από τη φόρμα, που τα θεωρώ περιττά.

1) Το [PosoEx] μπορεί να υπολογιστεί όπως και το [PosoDoseon]

2) Το πεδίο [TREXDOSI], επειδή η αρίθμηση είναι δεδομένη (αρχίζει πάντα από το 1 και φθάνει στο [SYNDOSEON]).

Φιλικά/Γιώργος

dimitrisp 05-10-16 18:50

Γιώργο (kapetang), με υπερκάλυψες.

Είσαι κορυφαίος..., η ψυχή του Forum ...!!!

Νάσαι πάντα καλά.
Καλή συνέχεια ...

kapetang 05-10-16 19:09

Δημήτρη ευχαριστώ πολύ.
Να είσαι, επίσης, καλά.


Η ώρα είναι 08:22.

Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.


Search Engine Optimization by vBSEO 3.3.2