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/6096-enhmerosh-enhmeromhnias-se-forma.html)

exarhos 14-04-22 11:14

ΕΝΗΜΕΡΩΣΗ ΗΜΕΡΟΜΗΝΙΑΣ ΣΕ ΦΟΡΜΑ
 
καλημερα σασ και πάλι. θα χρειαστώ για πολλοστή φόρα τη βοηθεια σας. Σε μια φρομα vardies.frm" θα ήθελα στο κουμπι "ΑΠΟΘΗΚΕΥΣΗ¨,αφου αποθηκευει τα δεδομενα σton πινακα vardies.tbl, ανοιγει νεα εγγραφη (DoCmd.GoToRecord , , acNewRec
) στον πινακα "Vardies.tbl" θα ήθελα το πλαίσιο ελεγχου
date ( ημερομηνια_βαρδιας) να πηγαινει αυτοματα στην επομενη ημερα απο την ημερα που αποθηκευτηκε. πχ. σημερα 14/04 βγαζω βαρδιεσ για την 23/4 αφου πατησω το κουμπι "ΑΠΟΘΗΚΕΥΣΗ" να ανοιγει νεα εγγραφη με την επομενη ημερα(
24/4)
Ευχαριστω πολυ εκ των προτερων

tsgiannis 15-04-22 11:17

Στο Click event της ΑΠΟΘΗΚΕΥΣΗΣ :
DoCmd.GoToRecord , , acNewRec

και μετά στο Current event της φορμας
If me.NewRecord then
me.[ShiftDate] = dateAdd('d',1,DMax('Shiftdate",'Vardies.tbl")
End if

ΥΠΟΨΙΝ εαν έχεις πεδίο Date...αλλαξε το σε κάτι άλλο καθώς το Date είναι reserved word και θα χτυπήσει

exarhos 15-04-22 21:00

2 Συνημμένο(α)
φίλε Γιάννη σ ευχαριστώ πολύ που για μια ακομα φορά ανταποκριθηκες στο προβλημα μου.
αντικατέστησα το πλαισιο κειμενου "date" με το "shiftdate" γιατι οπωσ είπες θα χτυπησει. εκανα copy paste τον κωδικα αλλα και πάλι χτυπάει. (κοκκινιζει) μου βγαζει μηνυμα τησ φωτο που επισυναπτω
Συνημμένο Αρχείο 11908

Συνημμένο Αρχείο 11909

tsgiannis 18-04-22 09:39

Σίγουρα ξέχασες μια παρένθεση στο τέλος όπως βλέπω..τώρα για κάτι περισσότερο θα χρειαστώ δείγμα της βάσης σου ...για να δω αν κάτι άλλο παίζει

exarhos 18-04-22 10:40

1 Συνημμένο(α)
φίλε μου καλημέρα και καλή Μεγάλη Εβδομάδα. σου επισυνάπτω δείγμα της βάσης
. Ευχαριστώ πολύ εκ των προτέρων
Συνημμένο Αρχείο 11913

tsgiannis 18-04-22 11:43

1 Συνημμένο(α)
Οταν δουλεύεις με πολλές γλώσσες αυτά παθαίνεις...ήθελε 2πλα quotes "
Αυτό που χρειάζεσαι είναι :
Κώδικας:

Private Sub Form_Current()
If Me.NewRecord Then
    Me.dateshift = DateAdd("d", 1, DMax("imerom", "ergasia")) + 1
End If

End Sub

Μπερδεύεις λίγο τα ονόματα με τα Aliases .... καλυτερα να κρατάς το όνομα του πεδίου για να μην ψάχνεις..δλδ ή Imerom ή DateShift (ή μάλλον καλύτερα ShiftDate) ...το οποίο θα είναι το όνομα του πεδίου στον πίνακα και θα διατηρηθεί παντού...απο εκεί και πέρα έχουμε τα labels για να βάζουμε βολικές ονομασίες

Καλη Μεγάλη Βδομάδα.

exarhos 18-04-22 14:05

1 Συνημμένο(α)
Σ'ευχαριστω πολύ για το χρόνο σου τη βοηθεια και τισ συμβουλες. δουλεύει εν μερη. δλδ δεν πηγαινει ακριβωσ στην επομενη ημερα αλλα 2 μερεσ μετα, Συνημμένο Αρχείο 11915

exarhos 18-04-22 14:18

Παράθεση:

Αρχική Δημοσίευση από exarhos (Μήνυμα 33705)
Σ'ευχαριστω πολύ για το χρόνο σου τη βοηθεια και τισ συμβουλες. δουλεύει εν μερη. δλδ δεν πηγαινει ακριβωσ στην επομενη ημερα αλλα 2 μερεσ μετα, Συνημμένο Αρχείο 11915


αυτοσχεδίασα και βρηκα τη λυση.
If Me.NewRecord Then
Me.dateshift = DateAdd("d", 0, DMax("imerom", "ergasia")) + 1
End If
εβαλα 0 αντιθ για 1 που ειχεσ γραψει εσυ και δουλευει

σε ευχαριστω πολύ φίλε μου.
Υ.Γ σε αρκετους εδω μέσα αλλα ειδικα σε σένα χρωστάω πολλά κερασματα, τοσες πολλές φόρες που με βοήθησατε σε δίαφορα προβλήματα που αντιμετώπισα. :thumbup:

kapetang 18-04-22 14:53

Και μια απλοποίηση του κώδικα:

Me.dateshift = DMax("imerom", "ergasia") + 1

exarhos 18-04-22 17:27

χιλια ευχαριστω. να σαι καλα


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

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


Search Engine Optimization by vBSEO 3.3.2