Χρήσιμα κόλπα για διαχειριζόμενες φόρμες. Χρήσιμα κόλπα για την επιλογή και ταξινόμηση διαχειριζόμενων φορμών

Για να λάβει έγκαιρες και σωστές αποφάσεις διαχείρισης, κάθε οργανισμός χρειάζεται επιχειρησιακές πληροφορίες σχετικά με τη διαθεσιμότητα των αγαθών στις αποθήκες, το κόστος τους και τις πωλήσεις. Οι εμπορικοί οργανισμοί συνεργάζονται με μεγάλο αριθμό αντικειμένων και αντισυμβαλλομένων, και αυτό απαιτεί καλή ρύθμιση της αναλυτικής λογιστικής και γρήγορη λήψη των απαιτούμενων πληροφοριών για τα δεδομένα τους. ΚΥΡΙΑ. Ο Paskova (ειδικός της εταιρείας Laerta) εξετάζει τις βασικές τεχνικές για την εργασία με τυπικές αναφορές σε μια τυπική λύση "1C: Trade Management 8" (αναθ. 11), που χτίστηκε με βάση ένα σύστημα σύνθεσης δεδομένων και δίνει χρήσιμες πρακτικές συμβουλές, το οποίο θα είναι χρήσιμο τόσο για αρχάριους χρήστες όσο και για όσους έχουν μεταβεί σε αυτό από προηγούμενες εκδόσεις.

Καθώς η πλατφόρμα 1C: Enterprise 8 αναπτύσσεται και νέα έκδοση 8.2, οι αναφορές στα συστήματα γίνονται όλο και πιο ευέλικτες και οι χρήστες έχουν όλο και περισσότερες ευκαιρίες να τις προσαρμόσουν ώστε να ταιριάζουν στις απαιτήσεις τους, χωρίς να καταφεύγουν στη βοήθεια προγραμματιστών 1C. Οι νέες δυνατότητες που παρέχονται από το σύστημα σύνθεσης δεδομένων (ACS) σας επιτρέπουν να εκμεταλλευτείτε τις νέες δυνατότητες στην αναφορά περισσότερο από ποτέ. Και, παρά το γεγονός ότι η διεπαφή των αναφορών έχει υποστεί σημαντικές αλλαγές (σε σύγκριση με την έκδοση 10.3 της διαμόρφωσης "Trade Management", που στο εξής θα αναφέρεται ως UT), οι ρυθμίσεις αναφοράς εξακολουθούν να είναι διαθέσιμες στον μέσο χρήστη. Ας δούμε μερικές από τις βασικές τεχνικές για να δουλέψετε μαζί τους.

"Γρήγορα τάκλιν"

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

Για παράδειγμα, πάρτε την αναφορά Ανάλυση της διαθεσιμότητας αγαθών στο UT. Αμέσως σημειώνουμε ότι ολόκληρη η επίδειξη των δυνατοτήτων των αναφορών στο UT 11 θα πραγματοποιηθεί στο παράδειγμα δύο αναφορών:

Η επιλογή από ορισμένα πεδία μπορεί να γίνει είτε απευθείας στη φόρμα αναφοράς είτε κάνοντας κλικ Προσαρμογή (εικ. 1).


Ρύζι. 1. Γρήγορη επιλογή

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

  • Ίσο - η αναφορά θα δημιουργηθεί μόνο για το επιλεγμένο στοιχείο.

  • Όχι ίσα - η αναφορά θα κατασκευαστεί για ολόκληρη την ονοματολογία, εκτός από την επιλεγμένη θέση.

  • Στη λίστα - η έκθεση θα βασίζεται στον κατάλογο των στοιχείων της ονοματολογίας·

  • Όχι στη λίστα - η αναφορά θα κατασκευαστεί για ολόκληρη την ονοματολογία, εκτός από τα επιλεγμένα στοιχεία.

  • Σε μια ομάδα - η αναφορά θα δημιουργηθεί για ολόκληρη την ονοματολογία που βρίσκεται στον επιλεγμένο φάκελο του καταλόγου Ονοματολογίας.

  • Όχι σε ομάδα - η αναφορά θα δημιουργηθεί για ολόκληρη την ονοματολογία, εκτός από τα στοιχεία που βρίσκονται στον επιλεγμένο φάκελο του καταλόγου Ονοματολογίας.

  • Σε μια ομάδα από τη λίστα - παρόμοια με σύγκριση Στη λίστα, μόνο οι φάκελοι στο βιβλίο αναφοράς Ονοματολογίας επιλέγονται ως τιμές λίστας.

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

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

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

Ένα παράδειγμα απλής αλλαγής των ρυθμίσεων αναφοράς

Για να δείτε/αλλάξετε τις ρυθμίσεις αναφοράς, μεταβείτε στο μενού Όλες οι ενέργειες / Αλλαγή παραλλαγής.


Εικόνα 2. Αλλαγή των ρυθμίσεων αναφοράς

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


Εικόνα 3. Παράθυρο ρυθμίσεων

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

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

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

Βήμα 1. Πρέπει να αφαιρέσουμε τα χαρακτηριστικά ομαδοποίησης ανά στοιχείο, αφήνοντας μόνο την ομαδοποίηση ανά στοιχείο. Για να το κάνετε αυτό, στο επάνω μέρος του παραθύρου ρυθμίσεων αναφοράς, κάντε κλικ στο πεδίο Ονοματολογία, χαρακτηριστικό ... Στο κάτω μέρος του παραθύρου, μεταβείτε στην καρτέλα Ομαδοποιήσεις (εικ. 4)


Εικόνα 4. Κατάργηση της ομαδοποίησης ανά Χαρακτηριστικά Αντικειμένου

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

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


Εικόνα 5. Αποτέλεσμα

Βήμα 2. Αφού διαγράψουμε το χαρακτηριστικό, το καθήκον μας, σύμφωνα με τις συνθήκες του παραδείγματος, θα είναι να προσθέσουμε μια ομάδα τιμών. Κατά την έννοια αυτής της ομαδοποίησης θα πρέπει να είναι ένα επίπεδο χαμηλότερο από την ομαδοποίηση ανά αποθήκη, αλλά ένα επίπεδο υψηλότερο από την ομαδοποίηση ανά είδος. Επομένως, στη δομή της αναφοράς, επιλέξτε την ομαδοποίηση Αποθήκη ... Κάνοντας κλικ σε αυτό με το δεξί κουμπί του ποντικιού, στο μενού περιβάλλοντος, επιλέξτε την εντολή Νέα ομαδοποίηση (εικ. 6.)


Εικόνα 6. Προσθήκη ομαδοποίησης ανά ομάδα τιμών

Στο ανοιχτό παράθυρο επεξεργασίας για το πεδίο ομαδοποίησης, επιλέξτε Ονοματολογία.Ομάδα τιμών (εικ. 7).

Εικόνα 7. Επεξεργασία πεδίου ομαδοποίησης

Ας κάνουμε κλικ στο κουμπί "OK". Όπως μπορείτε να δείτε από το σχήμα, μια νέα ομαδοποίηση έχει προστεθεί στην αναφορά, υποδεέστερη της ομαδοποίησης Αποθήκη .

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

Εικόνα 8. Η δομή της αναφοράς που προκύπτει

Το αποτέλεσμα της εκτέλεσης της αναφοράς:


Εικόνα 9. Αποτέλεσμα ρύθμισης της αναφοράς

Εργασία με προσαρμοσμένα πεδία

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

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

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

Βήμα 1. Ας ανοίξουμε την αναφορά. Ας πάμε στη φόρμα για τη ρύθμιση της δομής αναφοράς ( Όλες οι ενέργειες / Αλλαγή παραλλαγής ). Ας διαγράψουμε με τη σειρά όλες τις ομαδοποιήσεις που δημιουργήθηκαν προηγουμένως στην αναφορά - για να το κάνετε αυτό, επιλέξτε καθεμία από αυτές και κάντε κλικ στο κουμπί "Διαγραφή" στη γραμμή εντολών ή χρησιμοποιήστε το πλήκτρο "DEL".

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


Εικόνα 10. Νέα δομή αναφοράς

Βήμα 2. Ας δημιουργήσουμε ένα νέο προσαρμοσμένο πεδίο. Ας ανοίξουμε τον σελιδοδείκτη Προσαρμοσμένα πεδία και εκτελέστε την εντολή Προσθήκη / Νέο πεδίο επιλογής.

Εικόνα 11. Προσθήκη νέου πεδίου

Ας ονομάσουμε το νέο μας πεδίο - Γενικευμένη Περιοχή.


Εικόνα 12. Επεξεργασία νέου προσαρμοσμένου πεδίου

Κάντε κλικ στο κουμπί Προσθήκη (εικ. 12). V νέα γραμμήκάντε κλικ στο κουμπί στη στήλη Επιλογή ... Στη φόρμα επεξεργασίας επιλογής που εμφανίζεται, προσθέστε μια επιλογή ανά πεδίο Συνεργαζόμενη επιχειρηματική περιοχή ... Ας επιλέξουμε τον τύπο σύγκρισης Ίσο , τιμή - "Μόσχα" (Εικ. 13)


Εικόνα 13. Επεξεργασία επιλογής

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

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


Εικόνα 14. Επιλογή με τύπο σύγκρισης Μη ίση

Επιστροφή στο παράθυρο επεξεργασίας προσαρμοσμένου πεδίου, στη στήλη Εννοια ας γράψουμε «Άλλες περιοχές».


Εικόνα 15. Άλλες περιοχές

Ας κάνουμε κλικ στο κουμπί "OK". Το νέο μας πεδίο είναι έτοιμο.

Βήμα 3. Προσθέστε το νέο μας πεδίο στη δομή της αναφοράς. Επιλέγοντας το ανώτερο επίπεδο με το ποντίκι Κανω ΑΝΑΦΟΡΑ στη δομή, προσθέστε μια νέα ομαδοποίηση. Στα στηρίγματα Πεδίο επιλέξτε "Γενικοποιημένη περιοχή" (Εικ. 16).


Εικόνα 16. Επιλογή πεδίου

Σύρετε την ομαδοποίηση ανά συνεργάτη και τη δευτερεύουσα ομαδοποίηση κατά ονοματολογία μέσα στη νεοδημιουργηθείσα για να λάβετε την ακόλουθη δομή αναφοράς:


Εικόνα 17. Νέα δομή αναφοράς

Ας δημιουργήσουμε μια αναφορά και ας δούμε το αποτέλεσμα.


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

Επιλογή και ταξινόμηση

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


Εικόνα 19. Επιλογή, ταξινόμηση, σχεδιασμός υπό όρους

Εάν το ριζικό στοιχείο έχει επιλεγεί στη δομή της αναφοράς ( Κανω ΑΝΑΦΟΡΑ ), οι ρυθμίσεις που γίνονται σε αυτές τις καρτέλες θα ισχύουν για ολόκληρη την αναφορά στο σύνολό της. Εάν επιλεγεί κάποια ομαδοποίηση της αναφοράς ( Εταίρος , Ονοματολογία ) - τότε οι ρυθμίσεις θα επηρεάσουν μόνο αυτήν.

Παράδειγμα 3. Στην αναφορά Ιστορικό πωλήσεων (επιλογή αναφοράς Έσοδα και κόστος πωλήσεων ) προσθέστε την επιλογή ανά πεδίο Διευθυντής .

Κανω ΑΝΑΦΟΡΑ , μεταβείτε στον σελιδοδείκτη Επιλογή .

Διευθυντής ... Ορίστε τον τύπο σύγκρισης Ίσο , επιλέγουμε ως τιμή το "Ivanov Petr Fedorovich".


Εικόνα 20. Επιλογή από υπεύθυνο πεδίου

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

Παράδειγμα 4. Ας εμφανίσουμε τα δεδομένα σε φθίνουσα σειρά των εσόδων από τις πωλήσεις.

Ανοίξτε το παράθυρο ρυθμίσεων αναφοράς, επιλέξτε το ριζικό στοιχείο στη δομή της αναφοράς Κανω ΑΝΑΦΟΡΑ , μεταβείτε στον σελιδοδείκτη Ταξινόμηση .

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


Εικόνα 21. Ταξινόμηση

Το αποτέλεσμα της δημιουργίας της αναφοράς φαίνεται στο Σχήμα 22.


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

Αποθηκεύουμε τις αλλαγές που έγιναν

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

Εικόνα 23. Αποθήκευση παραλλαγής της αναφοράς

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

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


Εικόνα 24. Αποθήκευση νέας έκδοσης της αναφοράς

Για να επιλέξετε μια προηγούμενη αποθηκευμένη έκδοση της αναφοράς, πρέπει να εκτελέσετε την εντολή Όλες οι ενέργειες / Επιλογή επιλογής .

Εικόνα 25. Επιλογή αναφοράς

Έτσι, μέσω απλών αλλαγών, από μια τυπική αναφορά UT 11, μπορείτε να λάβετε ένα ολόκληρο σύνολο βολικών εργαλείων για την προβολή και την ανάλυση μιας μεγάλης ποικιλίας πληροφοριών.

συμπέρασμα

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

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

Γεια σε όλους όσους χρησιμοποίησαν πρόσφατα διαχειριζόμενες φόρμες 1C.

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


Πώς να αποκτήσετε τη διάταξη μιας εξωτερικής αναφοράς / επεξεργασίας;

ObjectТМП = AttributeFormVValue ("Αντικείμενο"); Layout = ObjectTMP.Get Layout ("My Layout");

Τι κάναμε με τις συναρτήσεις (χοντρό πελάτη)

Τώρα γίνεται έτσι (thin client / διαχειριζόμενες φόρμες):

StoreDynamicListsUserSettings.Save ("ParameterName", "SettingsName ", Value); Τιμή = StorageDynamicListsUserSettings.Load ("ParameterName", "SettingsName")

Αξίζει να εξηγήσουμε μερικές αποχρώσεις εδώ:

  1. Δίνεται ένα παράδειγμα για τη διαμόρφωση του Office of Trade 11.x. Το UT 11.x έχει πολλά τυπικά αποθετήρια. Τα τυπικά αποθετήρια δεν απαιτούν πρόσθετο κωδικό, π.χ. μπορείτε να χρησιμοποιήσετε το "ΩΣ ΕΧΕΙ". Η απόχρωση είναι ότι δεν θα κάνουν όλα αυτά τα αποθετήρια αυτό που χρειάζεστε 🙂 - απλώς επιλέξτε αυτό που θα λειτουργήσει:
    1. StorageUserSettingsDynamicLists
    2. FormSettingsDataStore
    3. Αποθήκευση γενικών ρυθμίσεων
    4. RepositoryUserSettingsReport
    5. Αποθήκευση ρυθμίσεων συστήματος
  2. Το UT 11 διαθέτει επίσης ένα τυπικό αποθετήριο για το ReportOptions Store - ένας ειδικός χειριστής έχει ήδη γραφτεί για αυτό στη διαμόρφωση, ο οποίος απαιτεί μια συγκεκριμένη δομή παραμέτρων. Εάν θέλετε, μπορείτε να τα αντιμετωπίσετε μόνοι σας.
  3. Υπάρχει επίσης ένα αντικείμενο SettingsStore - προορίζεται για την ανάπτυξη των δικών σας αποθετηρίων. Η απόχρωση εδώ είναι ότι αυτό το αντικείμενο δεν κάνει τίποτα από μόνο του, παρέχει πολλούς χειριστές (κενούς) στους οποίους πρέπει να γράψετε κώδικα για να αποθηκεύσετε τις τιμές που έχετε περάσει. Πού και πώς να κρατήσει ένα καθαρά προσωπικό θέμα, του καθενός που αποφάσισε να επικοινωνήσει με αυτό.


Τυχαία επιλογή σε ελεγχόμενες φόρμες.

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

  1. Ορίζουμε το χαρακτηριστικό φόρμας του τύπου DataCompositionSettingsSettingsComposer (ή του χαρακτηριστικού επεξεργασίας, όπως θέλετε) - ας το ονομάσουμε NewSelection (για παράδειγμα)
  2. Εάν επεκτείνετε το NewSelection με ένα σταυρό, τότε μέσα θα δούμε την ιδιότητα Ρυθμίσεις και μέσα στις Ρυθμίσεις θα δούμε Επιλογή - πιάστε την επιλογή με το ποντίκι και σύρετέ την στη φόρμα - ως αποτέλεσμα, θα δούμε την τυπική φόρμα επιλογής ως στα παλιά καλά...
  3. Αρχικοποίηση επιλογής - μόνο η συμπλήρωση της επιλογής με στοιχεία δεν θα λειτουργήσει. Για να το κάνετε αυτό, πρέπει να κάνετε δύο βήματα.
    1. Δημιουργήστε μια διάταξη κυκλώματος (παράδειγμα) - για όσους ξέρουν πώς να φτιάχνουν κυκλώματα ACS, θα εξηγήσω μια απλή αρχή (για όσους δεν γνωρίζουν - δείτε ένα παράδειγμα): Κάνουμε ένα στοιχειώδες αίτημα (στο κύκλωμα ACS) του φόρμα SELECT Ονοματολογία Σύνδεσμος AS Ονοματολογία, Ονοματολογία Κατασκευαστής AS Κατασκευαστής , Αποθήκες.Σύνδεση AS Warehouse FROM Directory.Nomenclature, Directory.Warehouses

      Κατόπιν αιτήματος, το ACS θα καθορίσει τα πεδία που είναι διαθέσιμα για επιλογή. Εάν θέλουμε κάποια πεδία να προστεθούν αυτόματα στην επιλογή, μεταβείτε στην καρτέλα Ρυθμίσεις (στο ACS) -> Επιλογή και προσθέστε πεδία εκεί στην αριστερή πλευρά (μην ξεχάσετε να ορίσετε τις προεπιλεγμένες τιμές). Εάν δεν είναι ξεκάθαρο - δείτε ένα παράδειγμα.
      Προσθέτουμε το σχήμα στις διατάξεις επεξεργασίας/αναφοράς.

    2. Εκτελέστε τον κώδικα (στον διακομιστή - μια συνάρτηση με τον τροποποιητή & OnServer): // Λήψη του σχήματος από την επεξεργασία ObjectТМП = Form AttributeValue ("Object"); LayoutScheme = ObjectTMP.GetLayout ("MySettingsCompositionSchema"); // Το σχήμα σας μπορεί να ονομαστεί όπως θέλετε // Πάρτε τις προεπιλεγμένες ρυθμίσεις από τη διάταξη LayoutSettings = LayoutComposition.Default Settings; // Αρχικοποίηση της επιλογής μας Address = New UniqueIdentifier (); Διεύθυνση URL σχήματος = PlaceTemporaryStorage (LayoutSchema, Address); SettingsSource = NewSource of AvailableDataCompositionSections (Διεύθυνση URL σχήματος). NewSelection.Initialize (SettingsSource); NewSelection.LoadSettings (LayoutSettings);

      Ο κώδικας μπορεί να ωθηθεί, για παράδειγμα, στη συνάρτηση OnCreateAtServer (Refuse, StandardProcessing)

  4. Χρήση επιλογής - Όλα τα στοιχεία επιλογής βρίσκονται εδώ: NewSelection.Settings.Selection.Elements

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

    Για κάθε Item FROM NewSelection.Settings.Selecting.Elements Cycle //Row(Element.LeftValue) είναι αυτό που βρίσκεται στα αριστερά στην επιλογή (για παράδειγμα, Item ή Warehouse.Name) // Item.RightValue είναι μια τιμή επιλογής (για παράδειγμα, μια πραγματική ομάδα ενός είδους ή αποθήκης) //Element.Usage - True - εάν υπάρχει ένα πλαίσιο ελέγχου στη γραμμή επιλογής //Element.Comparison type - ένα πεδίο του τύπου ComparisonView (για παράδειγμαComparisonView.Equal) Τέλος κύκλου ;

Υ.Γ Το άρθρο γράφτηκε για απλούς προγραμματιστές για να κάνουν τη ζωή τους πιο εύκολη. Όποιος έχει εύκολη ζωή - ζηλεύω.
Θα υπάρξουν περισσότερα ψωμάκια - θα προσθέσω στο άρθρο.

Οι ρυθμίσεις χρήστη στο 1C συνήθως χωρίζονται σε τρία μέρη.

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

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

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

Πού να αποθηκεύσετε όλες αυτές τις ρυθμίσεις στο 1C;

Πώς αποθηκεύτηκαν οι ρυθμίσεις 1C πριν

Η πλατφόρμα προσέφερε την ακόλουθη τυπική επιλογή:

  • Όταν πρέπει να θυμάστε τη ρύθμιση 1C, ο προγραμματιστής χρησιμοποιεί τη λειτουργία
    SaveValue ("SettingsName", Value);
  • Για να διαβάσετε τη ρύθμιση 1C, χρησιμοποιήστε τη λειτουργία
    Value = RestoreValue ("SettingName", Value);

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

Ως τιμή, μπορείτε να χρησιμοποιήσετε όχι μόνο έναν αριθμό ή μια συμβολοσειρά, αλλά επίσης, για παράδειγμα, μια Δομή - έναν τύπο που σας επιτρέπει να αποθηκεύσετε ένα σύνολο τιμών με τα ονόματά τους, για παράδειγμα:
Ρυθμίσεις = Νέα δομή ();
Ρυθμίσεις.Εισαγωγή ("SettingsName", Τιμή);
Τιμή = Ρυθμίσεις Όνομα ρυθμίσεων.

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

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

V τυπικές διαμορφώσειςΟι ρυθμίσεις αναφοράς 1C αποθηκεύτηκαν στο μητρώο πληροφοριών. Και οι ρυθμίσεις των αναφορών 1C ACS μπορούν να αποθηκευτούν σε ένα αρχείο XML.

Τυπική αποθήκευση ρυθμίσεων 1C

Όλα αυτά τα χαρακτηριστικά παρέμειναν στη νέα πλατφόρμα 8.2, αλλά τελικά ένα συγκεκριμένο " τυπική μέθοδος»Αποθήκευση ρυθμίσεων - Αποθήκευση ρυθμίσεων 1C.

Ο μηχανισμός χωρίζεται σε δύο μέρη - τυπική και προσαρμοσμένη αποθήκευση ρυθμίσεων 1C. Το πρότυπο υλοποιείται στην πλατφόρμα 1C, το custom είναι ένα αντικείμενο 1C που δημιουργεί και προγραμματίζει ο προγραμματιστής.

Η τυπική αποθήκευση των ρυθμίσεων 1C χρησιμοποιείται από την πλατφόρμα από προεπιλογή στο thin client για αποθήκευση των ρυθμίσεων 1C του χρήστη στους ακόλουθους μηχανισμούς πλατφόρμας:

  • Διεπαφή που βασίζεται σε εντολές
  • Φόρμες
  • Ρυθμίσεις και επιλογές αναφοράς.

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

  • Όταν θέλετε να θυμηθείτε μια ρύθμιση
    GeneralSettings Store.Save ("ObjectName", "SettingsName", Value);
  • Για να διαβάσετε τη ρύθμιση
    Τιμή = GeneralSettingsStore.Load ("ObjectName", "SettingsName", Τιμή);
  • Για να λάβετε μια λίστα ρυθμίσεων
    List = GeneralSettingsStore.GetList ("ObjectName");

Οι ρυθμίσεις 1C αποθηκεύονται απευθείας στη βάση δεδομένων, σε ειδικούς πίνακες.

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

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

Υπάρχουν τα ακόλουθα τυπικά καταστήματα ρυθμίσεων 1C:

  • Αποθήκευση ρυθμίσεων συστήματος
  • Αποθήκευση γενικών ρυθμίσεων
  • FormSettingsDataStore
  • StorageUserSettingsReport και StorageVariantsReports.

Αποθήκευση ρυθμίσεων 1C

Ο προγραμματιστής μπορεί να δημιουργήσει τα δικά του καταστήματα ρυθμίσεων - στον διαμορφωτή.

Αυτό υποτίθεται ότι γίνεται στις ακόλουθες περιπτώσεις:

  • Έλεγχος αναφοράς κατά την αποθήκευση ρυθμίσεων 1C
  • Μετεγκατάσταση των ρυθμίσεων 1C κατά τη χρήση
  • Ειδική δομή ρυθμίσεων 1C (για αυτόματη συμμόρφωση)
  • Υπερισχύουσες τυπικές αποθήκες.

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

Μπορείτε να παρακάμψετε τις τυπικές αποθήκες ρυθμίσεων 1C που χρησιμοποιούνται από την πλατφόρμα στις ιδιότητες διαμόρφωσης (ο κλάδος διαμόρφωσης ρίζας, τον οποίο οι προγραμματιστές συνήθως αποκαλούν Root ή Head).

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

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


Σε έναν παχύ πελάτη, για χρήση, απαιτείται να γράψετε μια απευθείας κλήση για να αποθηκεύσετε τις ρυθμίσεις 1C στον κωδικό γλώσσας 1C:
Repositories.Settings.Name.Save ();

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

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

8
Όταν χρησιμοποιείτε μια δυναμική λίστα και ένα αυθαίρετο ερώτημα για την εμφάνιση δεδομένων, υπάρχουν περιπτώσεις που πρέπει να καθορίσετε την παράμετρο που χρησιμοποιείται σε αυτό το ερώτημα. Παρακάτω είναι ένα παράδειγμα εμφάνισης δεδομένων μητρώου πληροφοριών σε μια κάρτα ... 6
Εάν, έχοντας ανοίξει μια φόρμα αναφοράς ή εγγράφου, εκτελέσατε κάποια ενέργεια, ο κώδικας θα πρέπει να αλλάξει την κατάσταση των δεδομένων σε δυναμικές λίστες ή την τιμή του χαρακτηριστικού. Τα δεδομένα άλλαξαν, αλλά σε ανοιχτή μορφή ... 4
Βρέθηκε στο Διαδίκτυο αλλά το λένε από τον δίσκο ITS. 3
Στο 1C, θεωρείται ότι εμφανίζονται τα Μηνύματα Χρήστη για να ενημερώνεται ο χρήστης για σφάλματα. Και για να ενημερώσετε σχετικά με την εκτελεσθείσα ενέργεια, συνιστάται η χρήση της μεθόδου ενσωματωμένης γλώσσας ... 2
Συχνά προκύπτει το καθήκον να εμφανιστούν μόνο οι απαραίτητες σειρές στην ενότητα πίνακα ενός εγγράφου ή βιβλίου αναφοράς (ή άλλου αντικειμένου). Για να το κάνετε αυτό, μπορείτε να χρησιμοποιήσετε μια υπέροχη ιδιότητα: σε μια κανονική εφαρμογή, η παράμετρος για ...