Εργασίες στο παρασκήνιο σε ξεχωριστό διακομιστή. Καθολική διαδικαστική εργασία

Πιθανώς, καμία σοβαρή διαμόρφωση στο 1C 8.3 ή 8.2 δεν μπορεί να κάνει χωρίς τη χρήση προγραμματισμένων εργασιών και εργασιών στο παρασκήνιο. Είναι πολύ βολικά, καθώς θα εκτελεστούν σύμφωνα με ένα σαφώς καθορισμένο χρονοδιάγραμμα χωρίς παρέμβαση χρήστη και προγραμματιστή.

Για παράδειγμα, πρέπει να ανταλλάσσετε δεδομένα με άλλο πρόγραμμα μία φορά την ημέρα. Χρησιμοποιώντας εργασίες ρουτίνας και παρασκηνίου, το 1C θα μπορεί να εκτελεί αυτές τις ενέργειες μόνο του, για παράδειγμα, κατά τις μη εργάσιμες ώρες. Αυτή η μέθοδος δεν θα επηρεάσει με κανέναν τρόπο την εργασία των χρηστών και θα εξοικονομήσει χρόνο.

Αρχικά, ας καταλάβουμε τι σημαίνουν και πώς διαφέρουν:

  • Προγραμματισμένη εργασίασας επιτρέπει να εκτελέσετε οποιεσδήποτε συγκεκριμένες ενέργειες σύμφωνα με ένα προκαθορισμένο χρονοδιάγραμμα.
  • Εργασία στο παρασκήνιοείναι ένα αντικείμενο που περιέχει τις ενέργειες που πρέπει να εκτελεστούν.

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

Ανοίξτε τη διαμόρφωση και προσθέστε μια προγραμματισμένη εργασία.

Ρύθμιση ιδιοτήτων

Εξετάστε τα περισσότερα σημαντικές παραμέτρους, το οποίο πρέπει να συμπληρωθεί στις ιδιότητές του.

  • στο χωράφι" Όνομα μεθόδου» επιλέγεται η διαδικασία κάποιας συγκεκριμένης γενικής ενότητας, η οποία θα εκτελεστεί απευθείας. Θα υποδεικνύει όλες τις ενέργειες για τη μεταφόρτωση τιμών στον ιστότοπό μας. Σημειώστε ότι η εκτέλεση θα πραγματοποιηθεί στον διακομιστή. Αυτό είναι λογικό, επειδή οι λειτουργίες ρουτίνας εκτελούνται χωρίς παρέμβαση του χρήστη.
  • Η προγραμματισμένη εργασία μπορεί να απενεργοποιηθεί ή να ενεργοποιηθεί όπως απαιτείται. Δεν χρειάζεται να αλλάζει το πρόγραμμά του κάθε φορά. Για να το κάνετε αυτό, στην παλέτα ιδιοτήτων, επιλέξτε ή αποεπιλέξτε το " Χρήση».
  • Μια άλλη σημαντική ρύθμιση είναι εάν αυτή η προγραμματισμένη εργασία θα είναι προκαθορισμένο, ή όχι. Οι προκαθορισμένες προγραμματισμένες εργασίες εκτελούνται αυτόματα. Εάν αυτή η σημαία δεν έχει οριστεί, τότε θα πρέπει να τις εκτελέσετε μέσω προγραμματισμού ή να χρησιμοποιήσετε την επεξεργασία "Job Console" με το ITS.
  • Μπορείτε επίσης να καθορίσετε τον αριθμό των επαναλήψεων και το διάστημα μεταξύ τουςκατά τη συντριβή. Η μη φυσιολογική ολοκλήρωση αναφέρεται σε εκείνες τις καταστάσεις όπου οι εργασίες δεν ολοκληρώθηκαν λόγω σφάλματος.

Ρύθμιση χρονοδιαγράμματος

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

Θα ανοίξει μπροστά σας τυπικό σκηνικόχρονοδιαγράμματα στο 1C 8.3. Δεν υπάρχει τίποτα περίπλοκο εδώ. Σε αυτό το παράδειγμα, ρυθμίσαμε την έναρξη της μεταφόρτωσης τιμών στον ιστότοπο καθημερινά από τις πέντε έως τις επτά το πρωί. Σε περίπτωση που η προγραμματισμένη εργασία δεν προλάβει να εκπονηθεί πριν τις 7:00, θα ολοκληρωθεί την επόμενη μέρα.

Αποκλεισμός προγραμματισμένων εργασιών

Εκτελέστε το τυπικό βοηθητικό πρόγραμμα διαχείρισης διακομιστή 1C Enterprise και ανοίξτε τις ιδιότητες της βάσης πληροφοριών όπου δημιουργήσατε την προγραμματισμένη εργασία (για εκδόσεις πελάτη-διακομιστή 1C).

Στο παράθυρο που ανοίγει (αφού εισαγάγετε τη σύνδεση και τον κωδικό πρόσβασης για πρόσβαση στο IB), ελέγξτε ότι δεν έχει οριστεί η σημαία στο στοιχείο "Ο αποκλεισμός προγραμματισμένων εργασιών είναι ενεργοποιημένος". Εάν αντιμετωπίσετε μια κατάσταση όπου η εργασία δεν λειτουργεί, ελέγξτε πρώτα αυτήν τη ρύθμιση.

Με τον ίδιο τρόπο, μπορείτε να απενεργοποιήσετε πλήρως τις προγραμματισμένες εργασίες στο 1C 8.3. Για να απενεργοποιήσετε συγκεκριμένες εργασίες στο παρασκήνιο, μπορείτε να χρησιμοποιήσετε την επεξεργασία "Background Jobs Console" που είναι ενσωματωμένη στις πρόσφατες εκδόσεις.

Παρασκήνιο και προγραμματισμένες εργασίες σε λειτουργία αρχείου

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

Η ενεργοποίηση των προγραμματισμένων εργασιών σε αυτήν την περίπτωση πραγματοποιείται χρησιμοποιώντας τη μέθοδο "PerformProcessingTasks()".

Μπορείτε επίσης να χρησιμοποιήσετε την ακόλουθη κατασκευή:

Το όνομα της διαδικασίας πρέπει να είναι το όνομα της διαδικασίας πελάτη που πρόκειται να εκτελεστεί. Το διάστημα δείχνει πόσα δευτερόλεπτα θα διαρκέσει η εκτέλεση. Η παράμετρος "Once" είναι προαιρετική. Αντικατοπτρίζει εάν η συγκεκριμένη διαδικασία θα εκτελεστεί μία ή πολλές φορές.

Παρακολούθηση σφαλμάτων σε εργασίες παρασκηνίου

Δείτε την πρόοδο των εργασιών στο παρασκήνιο, καθώς και τη διαθεσιμότητα πιθανά σφάλματαμπορεί να είναι στο μητρώο. Στο φίλτρο, ορίστε την επιλογή στην εφαρμογή "Εργασία παρασκηνίου" και, εάν είναι απαραίτητο, επιλέξτε τη σημασία του ενδιαφέροντος, για παράδειγμα, μόνο "Σφάλματα".

Το αρχείο καταγραφής θα εμφανίσει όλες τις καταχωρήσεις που ταιριάζουν με την επιλογή σας με ένα σχόλιο που μπορείτε να χρησιμοποιήσετε για να κατανοήσετε την αιτία του σφάλματος.

Προγραμματισμένες εργασίες 1C είναι ένας ειδικός μηχανισμός του συστήματος που έχει σχεδιαστεί για να εκτελεί μια συγκεκριμένη ενέργεια αυτόματα μέσα Ιστορικόκαι σύμφωνα με συγκεκριμένο χρονοδιάγραμμα (για παράδειγμα, αποστολή αναφορών, αναβολή, λήψη συναλλαγματικών ισοτιμιών κ.λπ.).

Εργασία στο παρασκήνιο - ένα αντικείμενο, που δημιουργείται από μια προγραμματισμένη εργασία, το οποίο εκτελεί απευθείας την προβλεπόμενη ενέργεια χωρίς τη συμμετοχή του χρήστη ή του προγραμματιστή.

Εργασία φόντου 1C:

  1. εκτελούνται υπό χρήστης των Windows, στο πλαίσιο του οποίου εκτελείται η διαδικασία του προγράμματος διακομιστή 1C.
  2. μπορεί να δημιουργηθεί σε γλώσσα 1C αυθαίρετα χωρίς προγραμματισμένη εργασία (για παράλληλος υπολογισμόςστον διακομιστή).

ΣΠΟΥΔΑΙΟΣ!Οι εργασίες στο παρασκήνιο εκτελούνται στον διακομιστή.

Η διαφορά μεταξύ μιας προγραμματισμένης εργασίας και μιας συνδρομής εκδήλωσης:

  • σας επιτρέπει να εκτελέσετε το πρόγραμμα χειρισμού όχι όταν συμβαίνει ένα συμβάν (όπως συμβαίνει), αλλά σύμφωνα με ένα χρονοδιάγραμμα.

Ο μηχανισμός προγραμματισμένων και παρασκηνιακών εργασιών λειτουργεί:

  • αυτόματα - στον τρόπο λειτουργίας πελάτη-διακομιστή (λόγω της λειτουργικότητας του DBMS).
  • διαδραστικό - όταν χρησιμοποιείτε μια βάση δεδομένων αρχείων, εκτελώντας μια εντολή ExecuteProcessingJobs()από μια περίοδο λειτουργίας σε λειτουργία 1C: Enterprise.

Χαρακτηριστικά εργασιών ρουτίνας και παρασκηνίου 1C:

  1. Προγραμματισμένη περίπτωση εργασίαςμπορεί να δημιουργηθεί μέσω προγραμματισμού.Εάν η προγραμματισμένη εργασία είναι προκαθορισμένη (η σημαία "Προκαθορισμένη" έχει οριστεί στις ιδιότητες), τότε η εργασία θα δημιουργηθεί σε μία μόνο παρουσία με το χρονοδιάγραμμα που καθορίζεται στο πρόγραμμα διαμόρφωσης. Οι παρουσίες των ΜΗ προκαθορισμένων εργασιών εμφανίζονται σύμφωνα με ένα χρονοδιάγραμμα που έχει οριστεί προγραμματικά σε λειτουργία Enterprise.
  2. Οποιοσδήποτε αριθμός προγραμματισμένων εργασιών μπορεί να εκτελεστεί ταυτόχρονα, αλλά δύο δουλειές δεν θα τρέξουν ( για αποφυγή συγκρούσεων):
    • με το ίδιο κλειδί (προς κλειδί - μια ιδιότητα μιας προγραμματισμένης εργασίας που σας επιτρέπει να ομαδοποιήσετε πολλές εργασίες του ίδιου τύπου);
    • συσχετίζεται με το ίδιο αντικείμενο μεταδεδομένων.
  3. Η διαδικασία μπορεί να χρησιμοποιηθεί ως μέθοδος προγραμματισμένης εργασίας., το οποίο μπορεί να έχει οποιονδήποτε αριθμό παραμέτρων. Ο αριθμός των παραμέτρων της μεθόδου προγραμματισμένης εργασίας αντιστοιχεί στον αριθμό των παραμέτρων της ίδιας της προγραμματισμένης εργασίας.
  4. Για να δημιουργήσετε μια προγραμματισμένη εργασία, ο χρήστης πρέπει να έχειδικαιώματα διαχειριστή.
  5. Εάν η προγραμματισμένη εργασία ορίζεται στον διαμορφωτή (στο αντίστοιχο αντικείμενο) όπως έχει προκαθοριστεί, τότε μια προκαθορισμένη παρουσία μιας προγραμματισμένης εργασίας δεν μπορεί να επισημανθεί για διαγραφή και διαγραφή (αλλά μπορεί να αλλάξει και θα είναι πάντα διαθέσιμα στη λίστα των προτύπων προγραμματισμένων εργασιών).
  6. Εάν μια συνάρτηση χρησιμοποιείται ως μέθοδος προγραμματισμένης εργασίας,η επιστρεφόμενη τιμή της συνάρτησης αγνοείται.
  7. Για τη διασφάλιση της λειτουργίας προγραμματισμένων και παρασκηνιακών εργασιώντόσο σε εκδόσεις αρχείων όσο και σε εκδόσεις πελάτη-διακομιστήδεν χρειάζεται να εκκινήσετε μια παρουσία 1C: Enterprise.

    Σχόλιο

    ... Στον τρόπο λειτουργίας πελάτη-διακομιστή, οι προγραμματισμένες προγραμματισμένες εργασίες εκκινούνται από τον διαχειριστή συμπλέγματος. Έτσι, ακόμα κι αν δεν έχει δημιουργηθεί σύνδεση πελάτη με τη βάση πληροφοριών, οι προγραμματισμένες εργασίες θα εκτελούνται (με την προϋπόθεση ότι δεν απαγορεύονται για μια συγκεκριμένη βάση πληροφοριών). ΣΕ έκδοση αρχείουεργάζονται για αυτόματη εκκίνησηΟι προγραμματισμένες εργασίες απαιτούν μια αποκλειστική σύνδεση πελάτη για να χρησιμοποιηθεί ως προγραμματιστής εργασιών. Πρέπει να ξεκινήσει μια αναμονή σε αυτήν τη σύνδεση, με κάποια περιοδικότητα να εκτελείται μια κλήση στη μέθοδο 1ης γλώσσας ExecuteProcessingJobs().

    [κρύβω]

  8. Οι εργασίες στο παρασκήνιο επιτρέπουν εκτελέστε μια διαδικασία ασύγχρονα.
  9. Οποιοσδήποτε αριθμός εργασιών παρασκηνίου μπορεί να εκτελεστεί ταυτόχρονα, αλλά δεν μπορείτε να εκτελέσετε δύο εργασίες με το ίδιο κλειδί και όνομα μεθόδου.
  10. Ολοκληρωμένες εργασίες παρασκηνίουείναι αντικείμενα συνεδρίας, αποθηκεύονται για κάποιο χρονικό διάστημα (σε βάση πληροφοριώνδεν σώζονται). Μια εργασία παρασκηνίου είναι ένα αντικείμενο γλώσσας 1C:Enterprise που υπάρχει μόνο κατά τη διάρκεια της περιόδου λειτουργίας.
  11. Ρύθμιση προγραμματισμένης εργασίας στον τρόπο λειτουργίας πελάτη-διακομιστή 1C

    Η προγραμματισμένη εργασία διαμορφώνεται στην παλέτα ιδιοτήτων αυτό το αντικείμενοδιαμόρφωση.

    Σχέδιο της παλέτας ιδιοτήτων του αντικειμένου 1C "Τακτικές εργασίες"

    [κρύβω]

    Παλέτα ιδιοτήτων του αντικειμένου "Κανονικές εργασίες":

  • Το όνομα της μεθόδου είναι η διαδρομή προς τη διαδικασία, η οποία βρίσκεται στον δημόσιο τομέα και θα εκτελεστεί στην εργασία παρασκηνίου σύμφωνα με το καθορισμένο χρονοδιάγραμμα. Συνιστάται να μην χρησιμοποιείτε τυπικά, αλλά να δημιουργήσετε το δικό σας.
  • Όνομα - ορίζει το όνομα που εμφανίζεται στα στοιχεία ελέγχου εργασίας.
  • Key - σας επιτρέπει να ομαδοποιήσετε πολλές διαφορετικές προγραμματισμένες εργασίες 1C, ενώ ταυτόχρονα μπορεί να εκκινηθεί μόνο μία εργασία με την ίδια βασική τιμή.Η ίδια η τιμή μπορεί να είναι αυθαίρετη. Μια κενή τιμή δεν λαμβάνεται υπόψη κατά τον έλεγχο (δηλαδή θεωρείται κενή).
  • Χρήση - η σημαία για τη χρήση της προγραμματισμένης εργασίας.
  • προκαθορισμένο- η σημαία υποδεικνύει εάν η προγραμματισμένη εργασία είναι προκαθορισμένη, π.χ. εκτελείται αμέσως μετά την τοποθέτηση στη βάση δεδομένων (η εργασία θα δημιουργηθεί σε μία μόνο περίπτωση με το χρονοδιάγραμμα που καθορίζεται στον διαμορφωτή). Οι μη προκαθορισμένες εργασίες εμφανίζονται μέσω προγραμματισμού τη στιγμή του χρονοδιαγράμματος (πρέπει να χρησιμοποιήσετε την επεξεργασία "Job Console" ή να καλέσετε την εκκίνηση εργασιών μέσω προγραμματισμού).
  • Αριθμός επαναλήψεων όταν μια εργασία διακόπτεται- πόσες φορές επανεκκινήθηκε εργασία στο παρασκήνιοαν εκτελέστηκε με λάθος.
  • Διάστημα επανάληψης ματαίωσης εργασίας- συχνότητα επανεκκίνησης της εργασίας στο παρασκήνιο εάν εκτελέστηκε με σφάλμα.
  • Χρονοδιάγραμμα - ορισμός του διαστήματος για την έναρξη της διαδικασίας που καθορίζεται στο πεδίο "Όνομα μεθόδου".

Για να διαχειριστείτε εργασίες στο παρασκήνιο, μπορείτε να χρησιμοποιήσετε επεξεργασία από τον δίσκο ITS "", που σας επιτρέπει:

  • παρακολουθεί τη λειτουργία προγραμματισμένων και παρασκηνιακών εργασιών.
  • διαγράψτε και δημιουργήστε νέες εργασίες παρασκηνίου χρησιμοποιώντας την ενσωματωμένη γλώσσα.
  • απενεργοποιήστε προσωρινά τις προγραμματισμένες εργασίες (?).

Δυνατότητες ρύθμισης προγραμματισμένων εργασιών 1C:

    Οι εργασίες εκτελούνται αυτόματα - πρέπει να ελεγχθούν (παρακολούθηση).

    [κρύβω]

Ρύθμιση προγραμματισμένων εργασιών στον τρόπο λειτουργίας αρχείου 1C

ΣΕ λειτουργία αρχείουγια μια προγραμματισμένη εργασία, πρέπει να ξεκινήσει μια ξεχωριστή συνεδρία του προγράμματος 1C. Συχνά αυτό επιλύεται ορίζοντας έναν "τεχνικό" χρήστη του οποίου η περίοδος λειτουργίας εκτελείται πάντα.

Η προετοιμασία της προγραμματισμένης εργασίας πραγματοποιείται:

  1. γενικά - όταν ξεκινάτε μια μέθοδο ExecuteProcessingJobs();
  2. για συγκεκριμένο χρήστη - όταν εκτελείται η μέθοδος ConnectWaitingHandler(<ИмяПроцедуры>, <Интервал>, <Однократно>) (λειτουργεί στον πελάτη).
  • ProcedureName είναι το όνομα της εξαγόμενης διαδικασίας μιας λειτουργικής μονάδας (κανονική λειτουργική μονάδα εφαρμογής) ή μιας καθολικής κοινόχρηστης λειτουργικής μονάδας που περιλαμβάνεται ως πρόγραμμα χειρισμού αναμονής. Η διαδικασία πρέπει να βρίσκεται στον πελάτη.
  • Διάστημα - η περίοδος μεταξύ των εκτελέσεων των πράξεων σε δευτερόλεπτα.
  • Μία φορά - ο αριθμός των εκτελέσεων της εργασίας (μία ή όχι).

Δημιουργήστε μια προγραμματισμένη εργασία

Ας δημιουργήσουμε μια προγραμματισμένη εργασία "Εκτέλεση επεξεργασίας".

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

Εκχωρήστε μια διαδικασία που θα ενεργοποιηθεί κατά την εκκίνηση μιας προγραμματισμένης εργασίας:Προγραμματισμένη ενότητα εργασιών.

Η ίδια η διαδικασία μοιάζει με:

Εξαγωγή διαδικασίας ScheduledTaskPerformanceProcessing(Key).

Παράμετροι προγραμματισμένων εργασιών. Εκτέλεση Επεξεργασίας με Παράμετρους(Κλειδί);

Διαδικασία λήξης

Δημιουργούμε έναν κατάλογο για εργασίες ρουτίνας

Η προγραμματισμένη εργασία μας μπορεί να δημιουργήσει πολλές διεργασίες παρασκηνίου - μία για κάθε επεξεργασία. Κάθε εργασία στην πλατφόρμα 1C8 έχει ένα κλειδί. Αλλά η μέθοδος προγραμματισμένης εργασίας δεν γνωρίζει το κλειδί εργασίας παρασκηνίου, επομένως πρέπει να χρησιμοποιήσετε τις παραμέτρους της εργασίας παρασκηνίου. Ως αποτέλεσμα, μπορούμε να δούμε την εργασία παρασκηνίου στην κονσόλα εργασιών, αλλά δεν μπορούμε να δημιουργήσουμε με μη αυτόματο τρόπο μια εργασία παρασκηνίου από αυτήν την κονσόλα, επειδή εργασίες με μη αυτόματες παραμέτρους δεν δημιουργούνται.

Κατάλογος "Παράμετροι προγραμματισμένων εργασιών" :

Προϋποθέσεις :

· CodeBeforeLaunch- απεριόριστη συμβολοσειρά - κωδικός σε γλώσσα 1C, ο οποίος πρέπει να εκτελεστεί πριν από την εκκίνηση.

· Επεξεργασία από τη διαμόρφωση - συμβολοσειρά (100) - Αναγνωριστικό επεξεργασίας από τη διαμόρφωση

· Επεξεργασία από τον κατάλογο - γραμμή (100) - σύνδεσμος προς το στοιχείο καταλόγου "Εξωτερική επεξεργασία", εάν υπάρχει στη διαμόρφωση

· Εκτελέστε την εφαρμογή 1C - boolean - θα δημιουργηθεί μια ξεχωριστή εφαρμογή 1C και θα ξεκινήσει μια προγραμματισμένη εργασία σε αυτήν. Δημιουργήθηκε για την έκδοση 8.1 όπου δεν είναι διαθέσιμες όλες οι μέθοδοι εφαρμογής στον διακομιστή όπου εκτελείται η προγραμματισμένη εργασία.

· Κωδικός εκκίνησης- - απεριόριστη συμβολοσειρά - κωδικός σε γλώσσα 1C, ο οποίος θα εκτελεστεί όταν ξεκινήσει η προγραμματισμένη εργασία.

Δημιουργήστε ένα σχήμα στοιχείου :

Κάνοντας κλικ στο "Δημιουργία Reg. task" δημιουργεί προγραμματικά μια προγραμματισμένη εργασία με έναν κωδικό-κλειδί:

Διαδικασία MainActionsFormsCreateReglTask(Button)

Μεταβλητή αναφορά;

Κλειδί = ShortLP(Κωδικός);

Task = ScheduledTasks.Create ScheduledTask("PerformingProcessing");

Task.Name = Κλειδί;

Job.Key = Κλειδί;

Παράμετροι = New Array();

Options.Add(Key);

Task.Parameters = Παράμετροι;

Task.Write();

Διαδικασία λήξης

Έναρξη προγραμματισμένης εργασίας

Κάθε προγραμματισμένη εργασία που δημιουργείται από εμάς έχει ένα κλειδί:

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

Περαιτέρω, εάν δίνεται ο κωδικόςCodeBeforeLaunchτότε αυτός ο κώδικας θα εκτελεστεί. Περαιτέρω, εάν η μεταβλητή Εκπληρώαξιολογείται ως ψευδής, η εργασία δεν θα εκτελεστεί. Μεταβλητή διαθέσιμη σε ανάλυση Επιλογές, όπου αποθηκεύεται ένας σύνδεσμος προς το στοιχείο που βρέθηκε στον κατάλογο "Παράμετροι προγραμματισμένων εργασιών".

Ανάλογα με τις επιλεγμένες τιμές των λεπτομερειών, είτε θα ξεκινήσει ο κωδικός στη γλώσσα 1C, είτε η επεξεργασία θα ξεκινήσει από τη διαμόρφωση είτε η επεξεργασία θα ξεκινήσει από το τυπικό βιβλίο αναφοράς "Εξωτερική επεξεργασία".

Για το 1C81, η εκτέλεση παρέχεται σε μια νέα εφαρμογή - έτσι ώστε να μπορείτε να χρησιμοποιήσετε έναν κωδικό που είναι διαθέσιμος μόνο στον πελάτη, συμπεριλαμβανομένης της χρήσης εξωτερική επεξεργασία. Για να το κάνετε αυτό, επιλέξτε το πλαίσιο "Εκτέλεση μέσω της εφαρμογής 1C". Διαφορετικά, η προγραμματισμένη εργασία θα εκτελεστεί στον διακομιστή.

Συνιστώ να ρυθμίσετε τον χρήστη στο πεδίο "Χρήστης" της προγραμματισμένης εργασίας που δημιουργήθηκε πρόσφατα, έτσι ώστε η εργασία να εκτελείται με συγκεκριμένα δικαιώματα. Συνιστώ να δώσετε σε αυτόν τον χρήστη πλήρη δικαιώματα. έχω χρήστη"ρομπότ».

Το χρονοδιάγραμμα της προγραμματισμένης εργασίας δημιουργείται από τον υπερσύνδεσμο "Προγραμματισμός" από τη φόρμα της προγραμματισμένης εργασίας. Μπορείτε να χρησιμοποιήσετε την επεξεργασία "Κονσόλα προγραμματισμένων εργασιών".

Ο μηχανισμός εργασιών είναι ένα από τα εργαλεία διαχείρισης 1C. Περιλαμβάνει:

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

Ερώτηση 09.59 της εξέτασης 1C: Επαγγελματίας πλατφόρμας. Προγραμματισμένη περίπτωση εργασίας:

  1. μπορεί να δημιουργηθεί μέσω προγραμματισμού
  2. μπορεί να δημιουργηθεί με τη μορφή λίστας, προσβάσιμη μέσω της εντολής του κύριου μενού του προγράμματος («Λειτουργίες / Προγραμματισμένες εργασίες»)
  3. δημιουργείται πάντα μόνο ένα στιγμιότυπο (όταν δημιουργείται το αντίστοιχο αντικείμενο διαμόρφωσης)
  4. ορίζεται μόνο στη λειτουργία διαμόρφωσης στην καρτέλα Άλλα χρησιμοποιώντας το κουμπί "Σύνθεση".
  5. σωστές απαντήσεις 1 και 2
Η σωστή απάντηση είναι η πρώτη. Εάν η προγραμματισμένη εργασία είναι προκαθορισμένη (εικ.), τότε η εργασία θα δημιουργηθεί σε μία μόνο περίπτωση με το χρονοδιάγραμμα που καθορίζεται στον διαμορφωτή. Οι παρουσίες των ΜΗ προκαθορισμένων εργασιών εμφανίζονται σύμφωνα με το χρονοδιάγραμμα που έχει οριστεί στη λειτουργία Enterprise, μέσω προγραμματισμού.
Ερώτηση 09.60 της εξέτασης 1C: Επαγγελματίας πλατφόρμας. Ο αριθμός των προγραμματισμένων εργασιών που εκτελούνται ταυτόχρονα μπορεί να είναι:
  1. οποιαδήποτε χωρίς περιορισμό
  2. οποιονδήποτε αριθμό, αλλά δεν θα εκτελέσει δύο εργασίες με το ίδιο κλειδί και όνομα μεθόδου
  3. οποιοσδήποτε αριθμός, αλλά δύο εργασίες με το ίδιο κλειδί και όνομα δεν θα εκτελεστούν
  4. οποιονδήποτε αριθμό, αλλά δεν θα εκτελέσει δύο εργασίες με το ίδιο κλειδί και συσχετισμένες με το ίδιο αντικείμενο μεταδεδομένων
Η σωστή απάντηση είναι έξι. Το κλειδί είναι μια ιδιότητα μιας προγραμματισμένης εργασίας που σας επιτρέπει να ομαδοποιήσετε πολλές εργασίες του ίδιου τύπου. Μόνο μία εργασία με μία τιμή κλειδιού μπορεί να εκτελεστεί ταυτόχρονα (η κενή τιμή δεν μετράει). Επίσης, εκτελείται μόνο μία εργασία εγγραφής κάθε φορά σε ένα συγκεκριμένο αντικείμενο, προκειμένου να αποφευχθούν συγκρούσεις.
Ερώτηση 09.62 της εξέτασης 1C: Επαγγελματίας πλατφόρμας. Ως μέθοδος μιας προγραμματισμένης εργασίας, μπορεί να χρησιμοποιηθεί μια διαδικασία στην οποία:
  1. δεν πρέπει να έχει παραμέτρους
  2. μπορεί να υπάρχει μόνο μία παράμετρος (λίστα τιμών)
  3. μπορεί να υπάρχει μόνο μία παράμετρος (struct)
  4. μπορεί να υπάρχει μόνο μία παράμετρος (πίνακας)
  5. μπορεί να είναι οποιοσδήποτε αριθμός παραμέτρων
Η σωστή απάντηση είναι πέμπτη. Ο αριθμός των παραμέτρων της μεθόδου προγραμματισμένης εργασίας αντιστοιχεί στον αριθμό των παραμέτρων της ίδιας της προγραμματισμένης εργασίας.
Ερώτηση 09.63 της εξέτασης 1C: Επαγγελματίας πλατφόρμας. Για να δημιουργήσετε μια προγραμματισμένη εργασία, ο χρήστης πρέπει να έχει:
  1. δικαιώματα διαχειριστή
  2. δικαιώματα χρήσης αυτού του αντικειμένου διαμόρφωσης (με δυνατότητα διαμόρφωσης στο ρόλο)
  3. δικαιώματα για τη δημιουργία νέων παρουσιών αυτού του αντικειμένου διαμόρφωσης (με δυνατότητα διαμόρφωσης στο ρόλο)
  4. τυχόν δικαιώματα, η μέθοδος προγραμματισμένης εργασίας εκτελείται σε προνομιακή λειτουργία
Η σωστή απάντηση είναι η πρώτη, μόνο οι διαχειριστές έχουν το δικαίωμα.
Ερώτηση 09.64 της εξέτασης 1C: Επαγγελματίας πλατφόρμας. Εάν μια προγραμματισμένη εργασία ορίζεται στον διαμορφωτή (στο αντίστοιχο αντικείμενο διαμόρφωσης) ως προκαθορισμένη, τότε χαρακτηρίζεται από (επιλέξτε την πιο ολοκληρωμένη απάντηση):
  1. δεν είναι δυνατή η δημιουργία μιας μη προκαθορισμένης παρουσίας μιας προγραμματισμένης εργασίας με δέσμευση σε ένα αντικείμενο μεταδεδομένων μιας προκαθορισμένης προγραμματισμένης εργασίας
  2. μια προκαθορισμένη προγραμματισμένη εμφάνιση εργασίας δεν μπορεί να επισημανθεί για διαγραφή και δεν μπορεί να διαγραφεί
  3. μόνο προκαθορισμένες παρουσίες προγραμματισμένων εργασιών αποθηκεύονται στη βάση πληροφοριών, οι μη προκαθορισμένες παρουσίες είναι αντικείμενα περιόδου λειτουργίας και δεν αποθηκεύονται στη βάση δεδομένων
  4. σωστές απαντήσεις 1 και 2
  5. σωστές απαντήσεις 2 και 3
  6. σωστές απαντήσεις 1, 2, 3
Η σωστή απάντηση είναι η δεύτερη. Οι προκαθορισμένες προγραμματισμένες παρουσίες εργασίας μπορούν να τροποποιηθούν, αλλά όχι να διαγραφούν. Θα είναι πάντα διαθέσιμα στη λίστα προτύπων:
Ερώτηση 09.67 της εξέτασης 1C: Επαγγελματίας πλατφόρμας. Εάν μια συνάρτηση χρησιμοποιείται ως μέθοδος προγραμματισμένης εργασίας, τότε:
  1. η επιστρεφόμενη τιμή της συνάρτησης αγνοείται
  2. παρουσιάζεται ένα σφάλμα κατά την προσπάθεια εκτέλεσης μιας εργασίας
  3. το σύστημα θα περιμένει για την εκτέλεση αυτής της εργασίας (η εκτέλεση δεν θα γίνει ασύγχρονη)
  4. η τιμή θα επιστραφεί στην αντίστοιχη παράμετρο της προγραμματισμένης εργασίας
Η σωστή απάντηση είναι η πρώτη.
Ερώτηση 09.61 της εξέτασης 1C: Επαγγελματίας πλατφόρμας. Πώς μπορούν να συσχετιστούν οι προγραμματισμένες εργασίες και οι εργασίες στο παρελθόν;
  1. Μια προγραμματισμένη εργασία μπορεί να δημιουργήσει μια εργασία παρασκηνίου
  2. Μια προγραμματισμένη εργασία δημιουργεί απαραίτητα μια εργασία στο παρασκήνιο
  3. Μια εργασία παρασκηνίου δημιουργεί αναγκαστικά μια προγραμματισμένη εργασία
  4. Δεν υπάρχει σχέση
Η σωστή απάντηση είναι η δεύτερη - μια εργασία παρασκηνίου είναι ένα αντικείμενο που δημιουργείται από μια προγραμματισμένη εργασία και πρέπει να δημιουργηθεί, διαφορετικά η ίδια η προγραμματισμένη εργασία χάνει το νόημά της.
Ερώτηση 09.65 της εξέτασης 1C: Επαγγελματίας πλατφόρμας. Για να διασφαλίσετε τη λειτουργία προγραμματισμένων εργασιών και εργασιών στο παρασκήνιο, πρέπει:
  1. 1C: Εκκίνηση επιχείρησης με τη σημαία "Scheduler" που έχει οριστεί κατά την εκκίνηση
  2. διαθεσιμότητα εκκίνησης 1C: Enterprise με περιοδική εκτέλεση της αντίστοιχης μεθόδου του συστήματος
  3. διαθεσιμότητα εκκίνησης του 1C:Enterprise με μια περιοδική εκτέλεση αντίστοιχης μεθόδου του συστήματος (αλλά μόνο στην έκδοση αρχείου του συστήματος που λειτουργεί)
  4. τόσο σε εκδόσεις αρχείων όσο και σε εκδόσεις πελάτη-διακομιστή, δεν χρειάζεται να εκκινήσετε μια παρουσία 1C: Enterprise
Στην πράξη, η σωστή απάντηση είναι η τρίτη. Στον τρόπο λειτουργίας πελάτη-διακομιστή, οι προγραμματισμένες προγραμματισμένες εργασίες εκκινούνται από τον διαχειριστή συμπλέγματος. Έτσι, ακόμα κι αν δεν έχει δημιουργηθεί σύνδεση πελάτη με τη βάση πληροφοριών, οι προγραμματισμένες εργασίες θα εκτελούνται (με την προϋπόθεση ότι δεν απαγορεύονται για μια συγκεκριμένη βάση πληροφοριών). Στην έκδοση αρχείου της εργασίας, για να ξεκινήσετε αυτόματα τις προγραμματισμένες εργασίες, πρέπει να έχετε μια αποκλειστική σύνδεση πελάτη που χρησιμοποιείται ως προγραμματιστής εργασιών. Η επεξεργασία αναμονής πρέπει να ξεκινήσει σε αυτήν τη σύνδεση, πραγματοποιώντας μια κλήση στη μέθοδο 1ης γλώσσας ExecuteJobProcessing() σε ορισμένα διαστήματα.
Σύμφωνα με τις απαντήσεις, η σωστή απάντηση είναι η τέταρτη.
Ερώτηση 09.57 της εξέτασης 1C: Επαγγελματίας πλατφόρμας. Οι εργασίες στο παρασκήνιο σάς επιτρέπουν να:
  1. εκτελέστε τη διαδικασία σύμφωνα με το χρονοδιάγραμμα
  2. εκτελέστε μια διαδικασία ασύγχρονα
  3. επανεκκίνηση σε περίπτωση συντριβής
  4. σωστές απαντήσεις 1 και 2
  5. σωστές απαντήσεις 2 και 3
  6. σωστές απαντήσεις 1, 2, 3
Η σωστή απάντηση είναι η δεύτερη. Ασύγχρονη σημαίνει να μην περιμένεις να ολοκληρωθεί η διαδικασία.
Ερώτηση 09.58 της εξέτασης 1C: Επαγγελματίας πλατφόρμας. Ο αριθμός των εργασιών παρασκηνίου που εκτελούνται ταυτόχρονα μπορεί να είναι:
  1. οποιαδήποτε χωρίς περιορισμό
  2. μόνο μία εργασία ανά βάση πληροφοριών
  3. μόνο μία εργασία ανά περίοδο σύνδεσης χρήστη
  4. οποιονδήποτε αριθμό, αλλά δεν μπορείτε να εκτελέσετε δύο εργασίες με το ίδιο κλειδί και όνομα μεθόδου
  5. οποιονδήποτε αριθμό, αλλά δεν μπορείτε να εκτελέσετε δύο εργασίες με το ίδιο κλειδί και όνομα
  6. οποιονδήποτε αριθμό, αλλά δεν μπορείτε να εκτελέσετε δύο εργασίες με το ίδιο κλειδί και συσχετισμένες με το ίδιο αντικείμενο μεταδεδομένων
Η σωστή απάντηση είναι η τέταρτη.
Ερώτηση 09.66 της εξέτασης 1C: Επαγγελματίας πλατφόρμας. Ολοκληρωμένες εργασίες παρασκηνίου:
  1. αποθηκεύονται στη βάση πληροφοριών
  2. είναι αντικείμενα συνεδρίας, αποθηκεύονται για κάποιο χρονικό διάστημα (δεν αποθηκεύονται στη βάση πληροφοριών)
  3. δεν αποθηκεύεται με κανέναν τρόπο.
Η σωστή απάντηση είναι έκτη - μια εργασία παρασκηνίου είναι ένα αντικείμενο γλώσσας 1C:Enterprise που υπάρχει μόνο για τη διάρκεια της συνεδρίας.

Αυτό το άρθρο παρέχει ένα παράδειγμα εργασίας με εργασίες παρασκηνίου, όπως στο Ξεκινούν οι εργασίες παρασκηνίου 1Cπώς μπορείτε να λάβετε μια λίστα εργασιών χρησιμοποιώντας τη μέθοδο "GetBackgroundJobs()". Έτσι, αυτή η μέθοδος μας επιστρέφει έναν πίνακα. Ας δούμε τι περιέχει.

Θα κάνω μια κράτηση αμέσως ότι το παραπάνω παράδειγμα αναπτύχθηκε στην έκδοση πελάτη-διακομιστή της βάσης δεδομένων.

Το παραπάνω σχήμα δείχνει τα περιεχόμενα αυτού του πίνακα.

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

Περιέχει επίσης πληροφορίες σχετικά με την ανεπιτυχή εκτέλεση της εργασίας. Αυτός ο πίνακας περιέχει επίσης πληροφορίες για κλειδιά, μοναδικά αναγνωριστικά, ονόματα εργασιών παρασκηνίου. Οι πληροφορίες σχετικά με τις εκτελούμενες και τις ολοκληρωμένες εργασίες αποθηκεύονται στη βάση πληροφοριών, αλλά υπάρχει όριο στον αριθμό των αποθηκευμένων εγγραφών στον πίνακα. Αυτός ο αριθμός είναι περίπου 1000 εγγραφές. Δηλαδή, όταν προστίθενται νέα στοιχεία, αφαιρούνται τα παλιά. Επίσης, η εργασία αφαιρείται από τον πίνακα εάν ολοκληρώθηκε πριν από περισσότερο από μία ημέρα.

Ένα παράδειγμα εργασίας με μια εργασία παρασκηνίου 1C - Μέθοδος "GetBackgroundTasks"

Ας δούμε επίσης την εργασία με εργασίες παρασκηνίου χρησιμοποιώντας τη μέθοδο του παραδείγματος "GetBackgroundJobs()". ΣΕ αυτή τη μέθοδοείναι δυνατό να ορίσετε ένα φίλτρο στις εγγραφές που έχετε λάβει. Δηλαδή, ως παράμετρος μεθόδου, πρέπει να περάσουμε μια δομή.

Η δομή μπορεί να περιέχει πεδία: Μοναδικό αναγνωριστικό, Κλειδί, Κατάσταση, Έναρξη, Τέλος, Όνομα, Όνομα μεθόδου, ΠρογραμματισμένηΕργασία.

Για παράδειγμα, εάν χρειαζόμασταν μόνο εκτελούμενες εργασίες, θα επιβάλλαμε μια επιλογή με το όνομα του στοιχείου της δομής "Κατάσταση" και την τιμή που θα ορίζαμε την απαρίθμηση συστήματος "Κατάσταση της εργασίας παρασκηνίου" στην ενεργή κατάσταση. Επομένως, πρώτα πρέπει να βεβαιωθείτε ότι οι εγγραφές σχετικά με την εκτέλεση εργασιών παρασκηνίου 1C εμφανίζονται στη βάση δεδομένων επίδειξης.


Ας κάνουμε τα εξής για να εφαρμόσουμε το παράδειγμα:
1. Ας δημιουργήσουμε μια κοινή ενότητα "Χειριστές παρασκηνίου"Αυτό που τρέχει στον διακομιστή.

Και προσθέστε τον ακόλουθο κώδικα σε αυτό:

Διαδικασία PerformBackgroundComputation(Parameter) Εξαγωγή

StartTime = CurrentDate() ;

ByeCurrentDate() - Ώρα έναρξης Κύκλος

EndCycle ;

Διαδικασία λήξης

2. Δημιουργήστε μια επεξεργασία, τοποθετήστε ένα κουμπί στη φόρμα "Εκτελέστε την εργασία στο παρασκήνιο"και στη διαδικασία χειρισμού του γεγονότος κλικ στο κουμπί, προσθέστε τον ακόλουθο κώδικα:

Διαδικασία &OnClient ExecuteJob(Command) ExecuteBackgroundJobOnServer() ; Διαδικασία λήξης

Περιγραφή καλούμενης διαδικασίας:

Διαδικασία &AtServer ExecuteBackgroundJobAtServer() BackgroundJob Parameters = New Array; Παράμετροι του BackgroundJob. Προσθήκη( "Κάποια παράμετρος" "Δοκιμή" ) ; BackgroundJobParameters = Νέος πίνακας; Παράμετροι του BackgroundJob. Προσθήκη( "Κάποια παράμετρος") ; BackgroundTasks. Εκτέλεση ( "BackgroundJobHandlers.PerformBackgroundComputation", BackgroundJobParameters, New UniqueIdentifier, "Τεστ 2") ; Διαδικασία λήξης // ExecuteBackgroundJobOnServer()

Τώρα ας εκτελέσουμε το 1C σε λειτουργία επιχείρησης και ας ξεκινήσουμε την εργασία παρασκηνίου.


Ετοιμος. Με αυτές τις ενέργειες, έχουμε εξασφαλίσει ότι οι εγγραφές σχετικά με την εκτέλεση εργασιών παρασκηνίου 1C έχουν εμφανιστεί στη δοκιμαστική βάση δεδομένων μας και τώρα μπορούμε να δείξουμε ένα παράδειγμα απόκτησης του πίνακα τους που περιέχεται στη βάση δεδομένων μας.

Προσθήκη άλλου κουμπιού στη φόρμα "Αποκτήστε θέσεις εργασίας στο παρελθόν". Ας γράψουμε τον ακόλουθο κώδικα στη διαδικασία χειρισμού κλικ:

Διαδικασία &OnClient GetBackgroundJobs(Command) GetBackgroundJobsOnServer() ; Διαδικασία λήξης

Το κείμενο της διαδικασίας στον διακομιστή:

Διαδικασία &AtServer GetBackgroundJobsAtServer() Παράμετροι επιλογής = Νέα δομή ("Όνομα" , "Τεστ 2") ; BackgroundJobsList = BackgroundJobs. GetBackgroundTasks(Επιλογές Επιλογής) ; Για κάθε εργασία από τη λίστα εργασιών παρασκηνίου Αναφορά βρόχου (Όνομα εργασίας) ; EndCycle ; Διαδικασία λήξης // GetBackgroundJobsOnServer()

Εκτελέστε το 1C για εκτέλεση και πατήστε το κουμπί "Αποκτήστε θέσεις εργασίας στο παρελθόν".



Φόρτωση...
Μπλουζα