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/3776-energopoiisi-entolis-stin-kyrios-forma-meta-apo-enimerosi-pedioy-se-ypoforma.html)

γιώργοςΚ 29-07-15 10:23

Ενεργοποίηση εντολής στην κυρίως φόρμα μετά απο ενημέρωση πεδίου σε υποφόρμα
 
1 Συνημμένο(α)
Αγαπητοί φίλοι γειά σας,

Παραθέτω ένα παράδειγμα στο οποίο θα ήθελα εφόσον γίνει update ένα πεδίο που βρίσκεται στην υποφόρμα, αυτόματα να πατιέται και το command που βρίσκεται στην κυρίως φόρμα.

Την βοήθεια σας διότι "κόλλησα"

Ευχαριστώ εκ προτερων

Spirosgr 29-07-15 11:08

Το κουμπί στην κύρια φόρμα, «τρέχει» κάποια εντολή.
Επομένως, στο AfterUpdate του πεδίου υποφόρμας, θα «τρέχει» η ίδια εντολή.

Έχεις αυτό
Κώδικας:

Private Sub cmd1_Click()
    MsgBox "Σας ευχαριστώ πολύ", vbInformation, "Πάτησε με"
End Sub

Το μετατρέπεις σε
Κώδικας:

Private Sub cmd1_Click()
    test
End Sub

Σε μια module
Κώδικας:

Sub test()
    MsgBox "Σας ευχαριστώ πολύ", vbInformation, "Πάτησε με"
End Sub

Sto AfterUpdate του πεδίου
Κώδικας:

Private Sub Field1_AfterUpdate()
    test
End Sub

Έτσι click & update κάνουν την ίδια ενέργεια

Spirosgr 29-07-15 11:55

1 Συνημμένο(α)
Παράδειγμα

γιώργοςΚ 29-07-15 12:27

Σπύρο γειά σου και σε ευχαριστώ φίλε μου,

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

Θέλω απλά μια γραμμή κώδικα (απλά δεν το θυμάμαι) έτσι ώστε εφόσον γίνει update το πεδίο να πατιέται το κουμπί και απο εκεί και πέρα θα μπορούν να εκτελούνται αρκετά IIF.....

Πάντως σε ευχαριστώ πολύ

Spirosgr 29-07-15 13:06

Σαφώς και το msgbox είναι παραδειγματικό αλλά:

Η διαδικασία αυτή, ισχύει και απλοποιεί πολλές ενέργειες.
Για να γίνει κατανοητό:

Έστω ότι έχεις τους κώδικες:
test1(), test2(), test3()....testν()
και τις συναρτήσεις:
Function1(), Function2()...Functionν()
σε module / s

Μπορείς να καλείς από κουμπιά ή συμβάντα ό, τι θέλεις από αυτά, με την χρήση μόνο του τίτλου.
Παράδειγμα:
Κώδικας:

Private Sub cmd1_Click()
    test1
    test3
    Function2
End Sub

με το κλικ τρέχουν οι κώδικες test1, test3 και η Function2,
που περιλλαμβάνονται στο συμβάν Click.

Όμοια και σε κάποιο update...

Spirosgr 29-07-15 16:20

Θεωρώ (και αυτό κάνω εγώ) ότι ο προηγούμενος τρόπος είναι καλύτερος για πολλούς λόγους.

Παρ' όλα αυτά μπορείς να:

Μετατρέψεις την εντολή σε Public
Κώδικας:

Public Sub cmd1_Click()
    MsgBox ""
End Sub

και να χρησιμοποιήσεις αυτόν τον κώδικα στο update.

Κώδικας:

Private Sub Field1_AfterUpdate()
    Forms![ΌνομαΦόρμας].cmd1_Click
End Sub


γιώργοςΚ 29-07-15 19:34

Καλησπέρα Σπύρο

Με κάλυψες απόλυτα και σε ευχαριστώ πάρα πολύ. Όπως πάντα εκτός από αρκετά κατατοπιστικός είσαι παρόλα αυτά και επιμορφωτικός!

Νάσαι καλά και σε ευχαριστώ πάρα πολύ


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

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


Search Engine Optimization by vBSEO 3.3.2