Δημιουργία ερωτημάτων με χρήση του σχεδιαστή στο 1C 8.2. Σχεδιαστής ερωτήματος σχήματος σύνθεσης δεδομένων. Καρτέλα Παρτίδα ερωτήματος

Λοιπόν, ας ξεκινήσουμε με κάτι απλό: δημιουργήστε μια νέα επεξεργασία στο πρόγραμμα διαμόρφωσης, ονομάστε την Query Console ή Query Builder, όπως θέλετε.

Μπορούμε να προσθέσουμε αμέσως έναν πίνακα στα "Δεδομένα" για μελλοντικές παραμέτρους που χρειαζόμαστε, έτσι ώστε στην Κονσόλα μας να μην εκτελούμε το πιο πρωτόγονο αίτημα, αλλά με παραμέτρους και συνδέσμους, για παράδειγμα, για την εργασία μας θα δημιουργήσουμε ένα αίτημα σε περιοδικές καταχωρεί, αλλά εδώ χωρίς οδηγίες παραμέτρων=&Ημερομηνία πουθενά.

Για να δημιουργήσουμε τον πίνακα παραμέτρων, στην καρτέλα "Δεδομένα" στο "Πίνακας τμήμα" της θα προσθέσουμε έναν νέο πίνακα, ας τον ονομάσουμε Παράμετροι ερωτήματος, εδώ θα προσθέσουμε τις στήλες αυτού του πίνακα: 1) Όνομα παραμέτρου, πληκτρολογήστε συμβολοσειρά = 25 χαρακτήρες ; ParameterValue, εδώ είναι ένας σύνθετος τύπος δεδομένων, δείτε το Σχήμα:

Επομένως, όπως φαίνεται στην εικόνα, επιλέγουμε έναν σύνθετο τύπο για τη στήλη Parameter Value: στο μενού τύπου που ανοίγει, επιλέξτε το πλαίσιο ελέγχου "Composite type", επιλέξτε αριθμό, συμβολοσειρά (καθορίστε 20 χαρακτήρες), ημερομηνία, Boolean και ελέγξτε το κάτω πλαίσιο ελέγχου - AnyLink - σημαίνει αυτό που ακολουθεί, όταν καθορίζουμε τις Παραμέτρους του αιτήματός μας, μπορούμε να αναφερθούμε σε οποιοδήποτε αντικείμενο της διαμόρφωσής μας, για παράδειγμα, καταλόγους ή έγγραφα.

Τώρα πρέπει να δημιουργήσουμε τη φόρμα της μελλοντικής μας Query Console. Κατά την επεξεργασία, ας πάμε στην καρτέλα "Φόρμες" και ας προσθέσουμε μια νέα Εισάγουμε αυτήν τη φόρμα και υπάρχει ήδη ένα απεριόριστο πεδίο δημιουργικότητας - μπορείτε να τακτοποιήσετε τα δύο στοιχεία που μόλις δημιουργήσατε και ένα πιάτο με παραμέτρους όπως θέλετε! Για να το κάνετε αυτό, μπορείτε να χρησιμοποιήσετε τυπικά στοιχεία φόρμας, όπως μια Ομάδα ή μια Σελίδα με σελίδες (αν προτιμάτε να ανατρέπετε σελίδες.

Το κύριο πράγμα εδώ είναι ένα πράγμα: αφού σύρετε το χαρακτηριστικό "TextValues" στο αριστερό πεδίο επεξεργασίας της φόρμας, βεβαιωθείτε ότι έχετε ορίσει το "View"=Text Document Field στις ιδιότητές του.

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

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

Η ενότητα φόρμας θα ανοίξει με μια έτοιμη κενή διαδικασία «Δημιουργία ερωτήματος διαδικασίας (εντολή)». Μέσα σε αυτήν τη διαδικασία θα περιγράψουμε την κλήση στο τυπικό Εργαλείο δημιουργίας ερωτημάτων 1c8. Είναι πολύ εύκολο: Κατασκευαστής = Κατασκευαστής νέου αιτήματος;Αλλά υπάρχουν παγίδες εδώ - το Query Constructor που είναι ενσωματωμένο στην πλατφόρμα λειτουργεί σε λειτουργία χρήστη ΜΟΝΟ κάτω από έναν πυκνό πελάτη! Επομένως, θα εισαγάγουμε την συνθήκη της εντολής προεπεξεργαστή #If, αλλά εδώ αποφασίζετε μόνοι σας, με βάση την πλατφόρμα σας, ή έχετε συνηθισμένες φόρμες και, στη συνέχεια, επιλέξτε " FatClientRegular App"ή έχετε μια πλατφόρμα που βασίζεται σε διαχειριζόμενες φόρμες, τότε" ThickClientManagedApplication«.βλ. εικ.

Τώρα απομένει να προσθέσουμε σε αυτήν τη διαδικασία μια συνθήκη για την καταγραφή του κειμένου αιτήματος, την οποία θα δημιουργήσει για εμάς το Εργαλείο δημιουργίας ερωτημάτων στις λεπτομέρειες της φόρμας «Κείμενο αιτήματος»:

If Constructor.OpenModal()=True Τότε Object.RequestText=Constructor.Text; τέλος εαν;

Μπορούμε όμως να αλλάξουμε με μη αυτόματο τρόπο κάτι στο κείμενο του αιτήματος (σε λειτουργία χρήστη - στο παράθυρο χαρακτηριστικού "Αίτηση κειμένου"), ώστε οι αλλαγές μας να εισέλθουν στον Κατασκευαστή ερωτήματος όταν καλείται ξανά - θα προσθέσουμε μια απλή συνθήκη εδώ:

Αν όχι EmptyString(Object.QueryText) Τότε Constructor.Text = Object.QueryText; τέλος εαν;

Αυτό ήταν όλο, συνδέσαμε το Query Constructor που είναι ενσωματωμένο στην πλατφόρμα 1c8, ας δούμε τη δουλειά μας. Για να το κάνετε αυτό, εκκινήστε το 1C:Enterprise σε λειτουργία παχύ πελάτη χρησιμοποιώντας μία από τις ακόλουθες μεθόδους: 1) κύριο μενού του Configurator - Debugging - Start Debugging - Thick Client. 2) ή εάν έχετε αυτά τα πλήκτρα στον πίνακα ελέγχου του διαμορφωτή - απλώς πατήστε το κουμπί με έναν κίτρινο κύκλο με μια παχιά κουκκίδα, δείτε την εικόνα:

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

Έτσι, έχουμε το Query Constructor σε λειτουργία, μπορούμε να αρχίσουμε να συνθέτουμε το μελλοντικό μας ερώτημα σε αυτό, αλλά μας ενδιαφέρει να δούμε πώς θα λειτουργήσει το ερώτημα που δημιουργήσαμε! Και για να γίνει αυτό, πρέπει να δημιουργήσουμε ένα άλλο κουμπί στο πρόγραμμα διαμόρφωσης κατά την επεξεργασία της φόρμας της κονσόλας μας, ας το ονομάσουμε "Εκτέλεση ερωτήματος". Στις ιδιότητες του κουμπιού «Εκτέλεση ερωτήματος», κάντε κλικ στο «Ενέργεια», εμφανίζεται ξανά ένα μενού στο οποίο ερωτούμαστε πού θα γίνει η επεξεργασία του κώδικα του προγράμματος μας, σε αυτήν την περίπτωση επιλέγουμε «Τόσο στον πελάτη όσο και στον διακομιστή». και πάλι βρισκόμαστε στο ModuleForms.

Στη διαδικασία Execute Query(), που έχουμε στον πελάτη, θα γράψουμε μια συνθήκη εάν ο χρήστης δεν έχει εισαγάγει το κείμενο του ερωτήματος, αλλά ζητά να το εκτελέσει:

If EmptyString(Object.QueryText) Τότε report("Enter the query text!"); τέλος εαν;

Το σύστημα έχει ήδη δημιουργήσει αυτόματα έναν σύνδεσμο προς τη διαδικασία Execute RequestOnServer(). - αυτό είναι καλό, ας πάμε σε αυτή τη διαδικασία, η οποία εκτελείται στον διακομιστή, και γράψτε εδώ τον κώδικα για την εκτέλεση του αιτήματός μας που έχουμε εισαγάγει.

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

Εάν κάνετε κλικ στο στοιχείο "Σχεδιαστής ερωτήματος με επεξεργασία αποτελεσμάτων", τότε θα εμφανιστεί ένα παράθυρο "Το κείμενο του ερωτήματος δεν βρέθηκε;" στην πρώτη του καρτέλα "Επεξεργασία του αποτελέσματος" - επιλέξτε το πρώτο στοιχείο " Παράκαμψη του αποτελέσματος Αυτό είναι όλο, δεν χρειαζόμαστε τίποτα άλλο από αυτόν τον κατασκευαστή, κάντε κλικ στο κουμπί "Ok" - θα εμφανιστεί ένα παράθυρο τύπου: "Όχι." επιλέγονται τα πεδία στο αίτημα, κάντε κλικ στο "OK".

Μετά από αυτό, το ακόλουθο έτοιμο πρότυπο θα εμφανιστεί στη διαδικασία ExecuteRequestOnServer():

Ας προχωρήσουμε στην έκφραση που κατασκευάστηκε από τον κατασκευαστή:

Request.Text = "";

Request.Text = Object.RequestText;

Είναι τόσο απλό, το κουμπί "Εκτέλεση αιτήματος" στη φόρμα επεξεργασίας είναι ήδη πρακτικά λειτουργικό, μέχρι στιγμής μπορεί να επεξεργαστεί μόνο απλά αιτήματα χωρίς παραμέτρους, αλλά το κυριότερο είναι ότι λειτουργεί! Το μόνο που μένει είναι να εμφανίσουμε οπτικά τα αποτελέσματα του αιτήματός μας στο χαρακτηριστικό "Πίνακας τιμών" στη φόρμα επεξεργασίας. Να σας υπενθυμίσω ότι το χαρακτηριστικό μας "Πίνακας τιμών" είναι τύπου "Πίνακας εγγράφου", γιατί διαφορετικά δεν θα βλέπουμε τα αποτελέσματά μας σε λειτουργία χρήστη. Η απόδοση των δεδομένων σε πίνακα στον χρήστη γίνεται πάντα είτε από ένα Πίνακας Έγγραφο είτε από μια Διάταξη. , δυστυχώς, ένας πίνακας τιμών είναι μόνο ένα εργαλείο που χρειάζεται ένας προγραμματιστής, δεν μπορείτε να εμφανίσετε δεδομένα στην οθόνη χρησιμοποιώντας τον...

Ας ρίξουμε μια πιο προσεκτική ματιά στο τι είναι ένα έγγραφο υπολογιστικού φύλλου - είναι σαν ένα φύλλο Excel - μπορείτε να φτάσετε σε μια εγγραφή σε ένα συγκεκριμένο κελί μόνο χρησιμοποιώντας κελιά πίνακα, εδώ τα ονομάζουμε περιοχή, αλλά εμείς οι ίδιοι μπορούμε να επιλέξουμε το εύρος αυτής της περιοχής σε ένα συγκεκριμένο κελί:

Έτσι, καταλάβαμε τι είναι ένα έγγραφο υπολογιστικού φύλλου και αποφασίσαμε μόνοι μας ότι θα χρειαστεί να ορίσουμε τα δεδομένα από το ερώτημά μας σε ένα συγκεκριμένο κελί αυτού του εγγράφου υπολογιστικού φύλλου. Αλλά ας σκεφτούμε: ποιο είναι το «Αποτέλεσμα ερωτήματος» που δημιούργησε τόσο γρήγορα ο σχεδιαστής για εμάς; Ανοίξτε τη βοήθεια - Το αποτέλεσμα του ερωτήματος είναι ένας πίνακας που έχει τις κατάλληλες ιδιότητες! βλέπε εικ.

Και αν τώρα γράφουμε μετά την έκφραση Query Result = Query.Execute( (δημιουργήθηκε από τον κατασκευαστή), εδώ είναι ένας τόσο απλός κύκλος για τις Συλλογές:

Για κάθε ColumnName From Query Result.Columns Αναφορά βρόχου(ColumnName.Name); EndCycle;

Μετά από αυτόν τον κύκλο, σημειώστε προς το παρόν όλες τις εκφράσεις που δημιουργούνται αυτόματα από τον κατασκευαστή. Και εκτελέστε το 1C:Enterprise8 κάτω από το παχύ πρόγραμμα-πελάτη Δημιουργήστε οποιοδήποτε απλό ερώτημα (Μπορείτε να χρησιμοποιήσετε το Εργαλείο δημιουργίας ερωτημάτων - λειτουργεί ήδη για εμάς) και κάντε κλικ στο κουμπί "Εκτέλεση ερωτήματος".

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

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

Για κάθε ColumnName From Query Result.Columns Loop Cell=Object.QueryTable.Area(1,QueryResult.Columns.Index(ColumnName)+1); Cell.Text=ColumnName.Name; EndCycle;

Για να εμφανίσουμε τις λεπτομέρειες των δεδομένων ερωτήματος, ας αναλύσουμε τις εκφράσεις που δημιουργήθηκαν αυτόματα από τον σχεδιαστή και ας εισαγάγουμε στον βρόχο ταξινόμησης "SelectionDetailedRecords" του ίδιου του ερωτήματος ακριβώς τον ίδιο βρόχο που χρησιμοποιούσαμε για την εμφάνιση των ονομάτων των στηλών, μόνο που τώρα πρέπει να μεταφέρουμε Όχι τα δεδομένα από τον πίνακα "Αποτέλεσμα ερωτήματος" στο κείμενο του κελιού και τα δεδομένα της ίδιας της Επιλογής, ας δούμε στη βοήθεια πώς μπορείτε να αποκτήσετε πρόσβαση στο πεδίο Λεπτομερής επιλογής του αιτήματος:

SelectionDetailRecords = QueryResult.Select(); Ενώ το SelectionDetailedRecords.Next() Loop //στην πρώτη γραμμή έχουμε ήδη γραμμένα τα ονόματα των στηλών του πίνακα, επομένως φορτώνουμε τα δεδομένα κάτω από το πρώτο lineDocRowNumber=Object.QueryTable.TableHeight+1; Για κάθε ColumnName From Query Result.Columns Cycle Cell=Object.QueryTable.Area(DocRowNumber,QueryResult.Columns.Index(ColumnName)+1); Cell.Text = SelectionDetailedRecords[ColumnName.Name]; EndCycle; EndCycle;

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

Ωραία, όλα λειτουργούν!!!

Είναι πολύ βολικό όταν, όταν ανοίγουμε/κλείνουμε την Κονσόλα ερωτημάτων μας, το κείμενο ερωτήματός μας, με το οποίο δουλέψαμε πριν κλείσουμε την κονσόλα, γράφεται ξανά στο πεδίο "Κείμενο ερωτήματος". Για να το κάνετε αυτό, απλά πρέπει να ενεργοποιήσετε την ιδιότητα φόρμας = Αυτόματη αποθήκευση, βλ.

Αυτό είναι όλο, η κονσόλα μας λειτουργεί. Για να μπορούμε να γράφουμε πιο σύνθετα ερωτήματα με παραμέτρους που καθορίζονται σε αυτά, πρέπει να δημιουργήσουμε ένα άλλο κουμπί "Εύρεση παραμέτρων", καθώς και τον κωδικό για το κουμπί "Εκτέλεση ερωτήματος" - θα εκτελεστεί ο κωδικός για το κουμπί "Εύρεση παραμέτρων" στον πελάτη και στον διακομιστή. Στη συνέχεια, στη διαδικασία διακομιστή, εκκινούμε το αίτημα με τον ίδιο ακριβώς τρόπο με το κείμενο που του έχει περάσει από το παράθυρο "Αίτηση κειμένου", χρησιμοποιώντας την έκφραση "Request.FindParameters()" βρίσκουμε τις παραμέτρους που πέρασαν και απλώς τις εισάγουμε στο ένα βρόχο στο τμήμα πίνακα της φόρμας "Παράμετροι αιτήματος". Μην ξεχάσετε να τις μεταφέρετε στη συνέχεια από τον συμπληρωμένο πίνακα παραμέτρων στη διαδικασία "Εκτέλεση ερωτήματος".

Μπορείτε επίσης να προσθέσετε μερικά κουμπιά στην Κονσόλα μας που θα διαγράψουν το παράθυρο Parameters και το παράθυρο Request Text στη λειτουργία χρήστη.

Η Query Console είναι έτοιμη για χρήση, σας εύχομαι επιτυχημένες δημιουργικές λύσεις χρησιμοποιώντας ένα τόσο απλό και ισχυρό εργαλείο όπως η Query Console!

Αυτή η επεξεργασία είναι γραμμένη στην πλατφόρμα 1c8.3 (διαχειριζόμενες φόρμες) και εκτελείται κάτω από έναν πυκνό πελάτη. Μπορεί επίσης να γραφτεί στην πλατφόρμα 1c8.2, τόσο σε κανονικές όσο και σε διαχειριζόμενες φόρμες.

Η λήψη περιέχει ένα δείγμα της Query Console που μόλις δημιουργήσαμε.

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Αναβάθμιση Query Console:

1) Τώρα η σπιτική μας Κονσόλα ερωτημάτων με ενσωματωμένο Εργαλείο δόμησης ερωτημάτων θα εκτελείται κάτω από οποιονδήποτε πελάτη: κάτω από ένα μεγάλο πρόγραμμα-πελάτη με κανονικές και διαχειριζόμενες φόρμες και κάτω από ένα λεπτό και web-πελάτη.

p.s Η μορφή και η εμφάνιση του ενσωματωμένου Εργαλείου δόμησης ερωτημάτων είναι διαφορετική - ανάλογα με τον πελάτη που εκκινήσαμε την Κονσόλα μας (προσωπικά είμαι πιο εξοικειωμένος με τη μορφή του Εργαλείου δόμησης ερωτημάτων)

&Στο Client Procedure Query Constructor (εντολή) //η κλήση του τυπικού Query Constructor είναι δυνατή μόνο σε έναν παχύ πελάτη #If ThickClientManagedApplication ή ThickClientNormalApplication Then Constructor=New Query Constructor; Αν όχι EmptyString(Object.QueryText) Τότε Constructor.Text = Object.QueryText; τέλος εαν;

If Constructor.OpenModal()=True Τότε Object.RequestText=Constructor.Text; τέλος εαν;

// #Else // Report("Η κλήση του Εργαλείου δόμησης ερωτημάτων είναι δυνατή μόνο με έναν μεγάλο πελάτη"); // ΕΠΙΣΤΡΟΦΗ; //# EndIf #Else Report("Εκτελείτε το Query Builder κάτω από έναν thin client - διαφέρει ελαφρώς ως προς τη μορφή και την ταχύτητα απόδοσης!"); Constructor = New QueryConstructor(); Αν όχι EmptyString(Object.QueryText) Τότε Constructor.Text = Object.QueryText; τέλος εαν;

Constructor Alert = New AlertDescription("RunAfterClosingConstructor", ThisForm); Constructor.Show(Constructor Alert); # EndIf Τέλος διαδικασίας &Στη διαδικασία πελάτη ExecuteAfterClosingConstructor(Result, ConstructorParameters) Εξαγωγή //Result=text, εάν το Constructor έκλεισε χρησιμοποιώντας το κουμπί ok Object.RequestText = AbbreviatedLP(Result); //έργα!!! Διαδικασία λήξης

SELECT ExternalData.Product, ExternalData.Quantity PLACE ExternalData FROM &ExternalData AS ExternalData; ////////////////////////////////////////////////////////////////// ////////////////////////// SELECT ExternalData.Product, ExternalData.Quantity, ISNULL(RemainingProductRemaining.QuantityRemaining, 0) AS Field1, ISNULL(Remaining ProductsRemainings.QuantityRemainings .Προϊόν = RemainingProductRemaining Product

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

Έτσι, στον σχεδιαστή ερωτήματος, δημιουργήσαμε το παραπάνω ερώτημα, κλείνοντας τον Κατασκευαστή - το κείμενο του ερωτήματος θα πάει στο πεδίο της κονσόλας "Κείμενο ερωτήματος", κάντε κλικ στο κουμπί "Εύρεση παραμέτρων", βλέπουμε ότι στον πίνακα "Παράμετροι" μια γραμμή έχει εμφανίστηκε = "Εξωτερικά δεδομένα", Τύπος τιμής = "Πίνακας τιμών" ,βλ.

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

Σημειώστε εδώ ότι σε αυτήν την περίπτωση, στη σελίδα "TimeTables" στο κάτω μέρος στο πεδίο "Temporary table name in parameters", θα εμφανιστεί το όνομα του προσωρινού μας πίνακα (αντιγράφεται από τον πίνακα Parameters).

Μέχρι στιγμής, στη σελίδα "Πίνακες χρόνου" βλέπουμε μόνο έναν κενό πίνακα - αυτός είναι ο πίνακας Τύποι του μελλοντικού προσωρινού μας πίνακα Χρησιμοποιώντας το κουμπί "Προσθήκη", θα προσθέσουμε το όνομα του χαρακτηριστικού και του τύπου του μελλοντικού πίνακα . Να είστε προσεκτικοί - το όνομα και ο τύπος πρέπει να ταιριάζουν με αυτό που καθορίσαμε στο αίτημα για &ExternalData:

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

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

p.s. Εάν κάνατε λάθος κατά την πληκτρολόγηση του ονόματος των στοιχείων και των τύπων τους (στον πρώτο πίνακα) - απλώς κλείστε την Κονσόλα και ανοίξτε την ξανά - ο προσωρινός πίνακας δεδομένων θα διαγραφεί - και ο πίνακας Τύποι μπορεί να επεξεργαστεί ξανά και ένα μπορεί να δημιουργηθεί ξανά νέος πίνακας δεδομένων.

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

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Δουλεύω συνεχώς με την Query Console μου και πρόσφατα συνάντησα ένα πολύ ενδιαφέρον ερώτημα στο οποίο οι προσωρινοί πίνακες δεν ήταν στο πρώτο πακέτο ερωτημάτων, αλλά στα επόμενα - και εδώ η κονσόλα μου έπεσε λίγο σε κατάθλιψη... Έπρεπε να κάνω άλλη αναβάθμιση.

Έτσι, ο Διαχειριστής προσωρινών πινάκων σε ένα ερώτημα δεν καταλαβαίνει πάντα ότι εργάζεται μαζί του)) Επομένως, πρέπει να ορίσετε ρητά αυτόν τον ίδιο τον Διαχειριστή προσωρινών πινάκων:

&Στον διακομιστή Διαδικασία Εκτέλεση ερωτήματος στον διακομιστή () //upgrade2 - ρητός ορισμός του διαχειριστή προσωρινών πινάκων! ManagerVT=New TemporaryTablesManager; Request = New Request; //upgrade2 - ρητός ορισμός της διαχείρισης προσωρινού πίνακα! Query.TemporaryTableManager = VTManager; Request.Text = Object.RequestText;

Αυτή η έκδοση της κονσόλας βρίσκεται στην τρίτη λήψη.

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

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

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

Καρτέλα Πίνακες και Πεδία

Αυτή η καρτέλα καθορίζει την προέλευση δεδομένων και τα πεδία που πρέπει να εμφανίζονται στην αναφορά. Ουσιαστικά, αυτό περιγράφει τις κατασκευές SELECT... FROM.

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

Στο μενού περιβάλλοντος των εικονικών πινάκων, μπορείτε να ορίσετε τις παραμέτρους αυτών των πινάκων:

Καρτέλα Συνδέσεις

Η καρτέλα χρησιμοποιείται για να περιγράψει συνδέσεις πολλών πινάκων και δημιουργεί κατασκευές με τη λέξη ΣΥΝΔΕΣΗ.

Καρτέλα Ομαδοποίηση

Σε αυτήν την καρτέλα, το σύστημα σάς επιτρέπει να ομαδοποιήσετε και να συνοψίσετε τα απαιτούμενα πεδία του αποτελέσματος του πίνακα. Περιγράφει τη χρήση των κατασκευών GROUP BY, SUM, MINIMUM, AVERAGE, MAXIMUM, QUANTITY, NUMBER OF DIFFERENT.

Λάβετε 267 μαθήματα βίντεο στο 1C δωρεάν:

Καρτέλα Προϋποθέσεων

Υπεύθυνος για οτιδήποτε μπαίνει στο κείμενο αιτήματος μετά την κατασκευή WHERE, δηλ. για όλους τους όρους που επιβάλλονται στα δεδομένα που λαμβάνονται.

Καρτέλα για προχωρημένους

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

Ομαδοποίηση Επιλογή εγγραφών:

  • Πρώτα ο Ν— μια παράμετρος που επιστρέφει μόνο N εγγραφές στο ερώτημα (ο τελεστής FIRST)
  • Χωρίς διπλότυπα— διασφαλίζει τη μοναδικότητα των ληφθέντων εγγραφών (χειριστήςΔΙΑΦΟΡΑ )
  • Επιτρέπεται— σας επιτρέπει να επιλέξετε μόνο εκείνες τις εγγραφές που το σύστημα σας επιτρέπει να επιλέξετε, λαμβάνοντας υπόψη(Σχέδιο ΕΠΙΤΡΕΠΕΤΑΙ)

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

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

Καρτέλα Συμμετοχές/Ψευδώνυμα

Αυτή η καρτέλα του σχεδιαστή ερωτήματος ορίζει τη δυνατότητα σύνδεσης διαφορετικών πινάκων και ψευδωνύμων (η κατασκευή HOW). Οι πίνακες υποδεικνύονται στην αριστερή πλευρά, εάν ορίσετε τις σημαίες απέναντι από τον πίνακα, θα χρησιμοποιηθούν οι κατασκευές UNITE, διαφορετικά - UNITE ALL (διαφορές μεταξύ των δύο μεθόδων). Στη δεξιά πλευρά, υποδεικνύεται η αντιστοιχία των πεδίων σε διαφορετικούς πίνακες, εάν η αντιστοιχία δεν έχει καθοριστεί, το ερώτημα θα επιστρέψει NULL.

Καρτέλα παραγγελίας

Αυτό καθορίζει τη σειρά με την οποία ταξινομούνται οι τιμές (ORDER BY) - φθίνουσα (DESC) ή αύξουσα (ASC).

Υπάρχει επίσης μια ενδιαφέρουσα σημαία - Αυτόματη παραγγελία(στο αίτημα - ΑΥΤΟΜΑΤΗ ΠΑΡΑΓΓΕΛΙΑ). Από προεπιλογή, το σύστημα 1C 8.3 εμφανίζει δεδομένα με «χαοτική» σειρά. Εάν ορίσετε αυτήν τη σημαία, το σύστημα θα ταξινομήσει τα δεδομένα κατά εσωτερικά δεδομένα.

Καρτέλα Παρτίδα ερωτήματος

Στην καρτέλα σχεδιαστή ερωτήματος, μπορείτε επίσης να το χρησιμοποιήσετε ως πλοήγηση. Στο κείμενο της αίτησης, τα πακέτα διαχωρίζονται με το σύμβολο ";"

Κουμπί ερωτήματος στο Εργαλείο δημιουργίας ερωτημάτων

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

Σε αυτό το παράθυρο, μπορείτε να κάνετε προσαρμογές στο αίτημα και να το εκτελέσετε.

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

Μπορείτε να βρείτε πολλές διαφορετικές κονσόλες στο Διαδίκτυο. Για κανονικές και διαχειριζόμενες φόρμες, αυτές είναι συνήθως εντελώς διαφορετικές κονσόλες. Χρησιμοποιώντας αυτό, μπορείτε να κάνετε λήψη της γενικής κονσόλας ερωτημάτων 1C 8.3 και 8.2, η οποία θα λειτουργεί και στις δύο περιπτώσεις. Απλώς έχετε κατά νου ότι η κονσόλα στη διαχειριζόμενη διεπαφή θα ανοίξει μόνο στο παχύ πρόγραμμα-πελάτη.

Εργασία με το Query Console

Στο πρόγραμμα 1C, η κονσόλα ερωτήματος ανοίγει με τον ίδιο τρόπο όπως οποιαδήποτε εξωτερική επεξεργασία: μενού "Αρχείο" - "Άνοιγμα" ή χρησιμοποιώντας το συνδυασμό πλήκτρων πρόσβασης "Ctrl + O". Εάν χρησιμοποιείται συχνά, μπορεί να προστεθεί στην εξωτερική επεξεργασία της ίδιας της βάσης πληροφοριών.

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

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

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

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

Στα δεξιά υπάρχουν πολύ χρήσιμα κουμπιά που θα σας βοηθήσουν αν χρησιμοποιήσετε αυτό το αίτημα κατά την ανάπτυξη λύσεων σε 1C.

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

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

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

Η λειτουργία προβολής καθορίζει πώς θα εμφανίζεται το αποτέλεσμα του ερωτήματος: ως λίστα, ιεραρχική λίστα ή δέντρο.

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

Πολύ συχνά, οι χρήστες ζητούν να επιλέξουν κάποια δεδομένα και να τα αποθηκεύσουν στο Excel. Μπορεί να χρειαστείτε και αυτό. Για να ολοκληρώσετε την εργασία, πρέπει απλώς να επιλέξετε "Λίστα εμφάνισης" στο μενού "Περισσότερα". Το πρόγραμμα θα σας ζητήσει να επισημάνετε τις απαιτούμενες στήλες.

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

Στο παράδειγμά μας, εμφανίσαμε όλα τα δεδομένα αποτελέσματος ερωτήματος. Μπορείτε να τα αποθηκεύσετε σε ένα εξωτερικό αρχείο αντιγράφοντάς τα από το ανοιχτό έγγραφο υπολογιστικού φύλλου ή χρησιμοποιώντας το συνδυασμό πλήκτρων πρόσβασης "Ctrl+O". Υπάρχουν πολλές επιλογές για αποθήκευση μορφών που επιλέξαμε "*. xlsx".

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

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

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

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

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

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

1. "Πίνακες και πεδία" - υπάρχουν τρεις ιεραρχικές λίστες στην καρτέλα:
ένα. "Βάση δεδομένων" - παραθέτει όλα τα διαθέσιμα αντικείμενα στα οποία μπορεί να γίνει ένα ερώτημα. Επίσης κουμπί "Εμφάνιση πινάκων αλλαγής", με το οποίο μπορείτε να αποκτήσετε πρόσβαση σε πίνακες αλλαγών σε αντικείμενα ασφάλειας πληροφοριών εάν είναι εγγεγραμμένα σε οποιοδήποτε πρόγραμμα ανταλλαγής.
σι. "Πίνακες" - μια λίστα επιλεγμένων πινάκων στους οποίους θα εκτελεστεί το ερώτημα. Επίσης σε αυτό το παράθυρο μπορείτε να διαγράψετε έναν πίνακα, να μετονομάσετε ή να αντικαταστήσετε έναν πίνακα και να προσθέσετε ένα εσωτερικό ερώτημα.

Μπορείτε να εκχωρήσετε παραμέτρους για εικονικούς πίνακες κάνοντας κλικ στο κουμπί «Παράμετροι εικονικών πινάκων»:

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

Στα αριστερά υπάρχει ένα παράθυρο με τα πεδία που είναι διαθέσιμα στην έκφραση. Στα δεξιά υπάρχει μια υπόδειξη των λειτουργιών που χρησιμοποιούνται. Παρακάτω είναι μια κατασκευαστή αυθαίρετη έκφραση. Μπορείτε να χρησιμοποιήσετε εξωτερικές παραμέτρους σε εκφράσεις που υποδηλώνονται με το σύμβολο "&", για παράδειγμα: &Period, &StartDate
Πρέπει να είστε προσεκτικοί, εάν στο παράθυρο πληκτρολογηθεί μια μεγάλη και πολύπλοκη έκφραση, η οποία περιέχει ένα μικρό συντακτικό σφάλμα, τότε αφού κάνετε κλικ στο κουμπί "OK", το σύστημα θα εκδώσει μια προειδοποίηση και θα κλείσει το παράθυρο. Όλος ο πληκτρολογημένος κώδικας θα χαθεί, γι' αυτό σας συνιστώ αν δεν είστε βέβαιοι για την ορθότητα της έκφρασης, να αποθηκεύετε πάντα τα περιεχόμενα στο πρόχειρο (Ctrl-C) πριν κλείσετε τον κατασκευαστή.

2. "Σχέσεις" - στην καρτέλα, υποδεικνύονται οι συνδέσεις μεταξύ των πινάκων.

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

3. "Ομαδοποίηση" - η καρτέλα υποδεικνύει ποια πεδία ομαδοποιούνται και ποια συγκεντρώνονται (συνοψίζονται).

4. Καρτέλα "Προϋποθέσεις" - παραθέτει τις προϋποθέσεις που επιβάλλονται στο αίτημα.
Σε συνθήκες, μπορείτε επίσης να γράψετε σύνθετες εκφράσεις χρησιμοποιώντας τον κατασκευαστή απλής έκφρασης και χρησιμοποιώντας εξωτερικές μεταβλητές:

5. "Για προχωρημένους"
Πρόσθετες παράμετροι που επιβάλλονται στο αίτημα

6. «Σύλλογοι και ψευδώνυμα»
Σε αυτήν την καρτέλα μπορείτε να εκχωρήσετε ψευδώνυμα για πεδία, καθώς και να διαχειριστείτε ερωτήματα που συνδέονται μέσω των δομών "UNITE" ή "UNITE ALL".

7. "Παραγγελία"
Με ποια σειρά θα εμφανίζονται τα αποτελέσματα του ερωτήματος;

Προσοχή! Στο κάτω μέρος του σελιδοδείκτη μπορείτε να δείτε ένα σημάδι επιλογής "Αυτόματη παραγγελία"- στην τρέχουσα έκδοση του 1C 8.1 στο ACS, είναι άχρηστο, επιπλέον, όταν είναι επιλεγμένο το πλαίσιο ελέγχου, κατά την εγγραφή, το ACS δίνει ένα σφάλμα, επομένως δεν πρέπει να το χρησιμοποιήσετε.

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

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

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

9. «Χαρακτηριστικά»
Ένας σελιδοδείκτης που δεν έχει ανάλογο στον συνήθη κατασκευαστή φόρμας εξόδου.

Αυτή η καρτέλα σάς επιτρέπει να επεκτείνετε την εργασία των ερωτημάτων με χαρακτηριστικά. Ο πίνακας στην καρτέλα αποτελείται από πολλά πεδία:
ένα. "Τύπος τιμής" - ο τύπος για τον οποίο θα επιλεγούν τα χαρακτηριστικά. Για παράδειγμα, εάν καθορίσετε "DirectoryLink.Nomenclature", τότε όλα τα χαρακτηριστικά για την ονοματολογία θα επιλεγούν στο ερώτημα.
σι. "Πηγή" - η πηγή για ιδιότητες χαρακτηριστικών τύπων, μπορεί να είναι ένα ερώτημα ή ένας πίνακας. Σε αυτό το πεδίο μπορούμε να γράψουμε ένα αίτημα για να επιλέξουμε μόνο εκείνες τις ιδιότητες που χρειαζόμαστε.
ντο. "Λίστα χαρακτηριστικών" - ένα πεδίο στο οποίο αναφέρεται η πηγή για τις ιδιότητες των χαρακτηριστικών. Τις περισσότερες φορές αυτό είναι ένα σχέδιο χαρακτηριστικών τύπων ή ένα αίτημα. Πρέπει επίσης να καθορίσετε τα πεδία που είναι υπεύθυνα για το «Αναγνωριστικό», «Όνομα» και «Τύπος» της ιδιοκτησίας.
ρε. Το "Source" είναι το επόμενο πεδίο στο οποίο υποδεικνύουμε την πηγή των χαρακτηριστικών τιμών, η οποία μπορεί επίσης να είναι είτε πίνακας είτε ερώτημα.
μι. Η "Χαρακτηριστική τιμή" είναι ένας πίνακας ή ένα ερώτημα που λαμβάνει χαρακτηριστικές τιμές. Για παράδειγμα, ο καταχωρητής πληροφοριών "ObjectPropertyValues" μπορεί να χρησιμεύσει ως πίνακας τιμών χαρακτηριστικών. Πρέπει επίσης να υποδείξουμε εκείνα τα πεδία από τον πίνακα (ή το ερώτημα) που είναι υπεύθυνα για το «Αντικείμενο», «Ιδιότητα» και «Τιμή» του χαρακτηριστικού.
Μετά την επεξεργασία του αιτήματος, το κείμενο του αιτήματος μπορεί να εμφανιστεί στο παράθυρο κάτω από τη λίστα των πεδίων. Παρακάτω, με το πλαίσιο ελέγχου «Αυτόματη συμπλήρωση», μπορούμε να ρυθμίσουμε τη συμπλήρωση πρόσθετων παραμέτρων για τα πεδία που καθορίζονται στο αίτημα. Λάβετε υπόψη ότι η σύνθεση των πεδίων καθορίζεται μόνο στο ίδιο το αίτημα.

Πληροφορίες που λαμβάνονται από τον ιστότοπο