1c ανοιχτή εξωτερική επεξεργασία μέσω προγραμματισμού. Η εξωτερική φόρμα επεξεργασίας ή εκτύπωσης αποθηκεύεται στη βάση πληροφοριών

Για εργασία με εξωτερική επεξεργασία (και εξωτερική έντυπη μορφήείναι και εξωτερική επεξεργασία) υπάρχει αντικείμενο Εξωτερική Επεξεργασία.

Ας εξετάσουμε δύο πιθανές περιπτώσεις:

Η εξωτερική επεξεργασία αποθηκεύεται στο δίσκο χωριστά από τη βάση πληροφοριών

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

Άνοιγμα εξωτερικής φόρμας επεξεργασίας

Για να ανοίξετε μέσω προγραμματισμού μια εξωτερική φόρμα επεξεργασίας σε 1C, χρησιμοποιήστε τη συνάρτηση GetForm()αντικείμενο Εξωτερική Επεξεργασία.Η συνάρτηση έχει πολλές παραμέτρους. Εξετάστε ένα απλό άνοιγμα της κύριας φόρμας επεξεργασίας:


Σχήμα= Εξωτερικές διεργασίες. GetForm(FileAddress) ;
Μορφή. Ανοιξε() ;

Για να ανοίξετε μια μη κύρια εξωτερική φόρμα επεξεργασίας, πρέπει να καθορίσετε το όνομά της.

//Η μεταβλητή AddressFile περιέχει πλήρης διαδρομήσε εξωτερικό αρχείο επεξεργασίας
Σχήμα= Εξωτερικές διεργασίες. GetForm(FileAddress, "MinorForm") ;
Μορφή. Ανοιξε() ;

Άνοιγμα εξωτερικής επεξεργασίας ως αντικείμενο

Για να ληφθεί εξωτερική επεξεργασία ως αντικείμενο, χρησιμοποιείται η συνάρτηση Δημιουργώ()αντικείμενο Εξωτερική Επεξεργασία.

//Η μεταβλητή FileAddress περιέχει την πλήρη διαδρομή προς το εξωτερικό αρχείο επεξεργασίας
ProcessingObject= Εξωτερικές Επεξεργασίες. Δημιουργία (Διεύθυνση αρχείου) ;

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

//Η μεταβλητή FileAddress περιέχει την πλήρη διαδρομή προς το εξωτερικό αρχείο επεξεργασίας

Η εξωτερική φόρμα επεξεργασίας ή εκτύπωσης αποθηκεύεται στη βάση πληροφοριών

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

Για να ανοίξετε εξωτερική επεξεργασία χρειάζεστε:

  1. Αποκτήστε το από την αποθήκευση.
  2. Αποθηκεύστε το επεξεργασμένο αρχείο στο δίσκο.
  3. Ανοίξτε μια φόρμα ή λάβετε ένα αντικείμενο επεξεργασίας.
  4. Εάν έχουμε να κάνουμε με εξωτερική φόρμα εκτύπωσης, τότε μπορείτε να συμπληρώσετε το τυπικό προαπαιτούμενο ReferenceToObjectκαι καλέστε τη συνάρτηση εξαγωγής Σφραγίδα.

Η μεταβλητή //ReferenceReference περιέχει μια αναφορά στο στοιχείο καταλόγου ExternalProcessing
dvData = Αναφορά. StorageExternal Processing. Get() ;
FileAddress= GetTemporaryFileName() ;
DvData. Write(FileAddress) ;
ProcessingObject= Εξωτερικές Επεξεργασίες. Create(FileAddress, False) ;

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

Η εργασία θα είναι η εξής: να δημιουργήσετε την απλούστερη εξωτερική επεξεργασία που θα εκτελέσει μια ομαδική ενέργεια στο βιβλίο αναφοράς "Ονοματολογία", δηλαδή να ορίσετε το επιλεγμένο ποσοστό του συντελεστή ΦΠΑ για την καθορισμένη ομάδα ειδών.

Για να γίνει αυτό, θα κάνουμε αμέσως τις απαραίτητες ρυθμίσεις στο πρόγραμμα (η διαμόρφωση 1C 8.3 θεωρείται: "Enterprise Accounting 3.0" στο διαχειριζόμενες φόρμες).

Η επιλογή αυτού του πλαισίου μας δίνει τη δυνατότητα να χρησιμοποιήσουμε εξωτερική επεξεργασία.

Δημιουργία νέας εξωτερικής επεξεργασίας στο 1C 8.3 με παράδειγμα

Τώρα ας πάμε στο διαμορφωτή. Επιλέξτε "Νέο..." από το μενού "Αρχείο". Θα ανοίξει ένα παράθυρο για την επιλογή του τύπου αρχείου που θα δημιουργηθεί. επιλέξτε " Εξωτερική επεξεργασία»:

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

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

Στη φόρμα θα έχουμε δύο στηρίγματα:

  • Ομάδα ονοματολογίας - σύνδεσμος προς το βιβλίο αναφοράς "Ονοματολογία".
  • SelectVAT Rate – ένας σύνδεσμος προς την καταχώριση του συντελεστή ΦΠΑ.

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

Η σειρά των λεπτομερειών μπορεί να αλλάξει με τα βέλη "Πάνω" - "Κάτω":

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

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

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

&AtClient

Διαδικασία Ρύθμιση συντελεστή ΦΠΑ (εντολή)

SetVATRAteOnServer();

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

Στη διαδικασία στον διακομιστή, θα γράψουμε ένα μικρό ερώτημα και ενέργειες που σχετίζονται με τον καθορισμό του συντελεστή ΦΠΑ:

&Στον διακομιστή

Διαδικασία SetVATRAteOnServer()

Request = Νέο αίτημα;
Αίτημα.Κείμενο =
"ΕΠΙΛΕΓΩ
| Ονοματολογία.Σύνδεσμος
| ΑΠΟ
| Κατάλογος Ονοματολογία AS Ονοματολογία
|ΠΟΥ
| Nomenclature.Reference IN HIERARCHY (&Ομάδα Ονοματολογίας)
| ΚΑΙ ΟΧΙ Ονοματολογία.Σήμα διαγραφής
| Και ΟΧΙ η Ονοματολογία. Αυτή είναι η Ομάδα ".

Query.SetParameter("Ομάδα Ονοματολογίας", Ομάδα Ονοματολογίας);
RequestRes = Request.Execute();
SelectDetRecords = ResRequest.Select();

Ενώ βρόχος SelectDetRecord.Next().

Απόπειρα
SprNo.Object.Write();
Εξαίρεση
Report("Σφάλμα κατά την εγγραφή του αντικειμένου """ + SprNoobObject + """!
|» + DescriptionError());
Τέλος απόπειρας;

EndCycle;

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

Επιστρέφουμε στην καρτέλα "Φόρμα", προσθέτουμε ένα κουμπί στη φόρμα και το συσχετίζουμε με την εντολή:

Ως εκ τούτου, η επεξεργασία μας είναι έτοιμη για χρήση. Για να το καλέσετε, στη λειτουργία "1C Enterprise", πρέπει να μεταβείτε στο μενού "Αρχείο" - "Άνοιγμα" και να επιλέξετε το αρχείο που δημιουργήθηκε.

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

Αυτό είναι το τμήμα " Πρόσθετες αναφορέςκαι επεξεργασία».

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

Περιγραφή των λεπτομερειών εξωτερικής επεξεργασίας

Θα δώσω ένα παράδειγμα των περιεχομένων αυτής της συνάρτησης. Πρέπει να είναι εξαγώγιμο και, κατά συνέπεια, να βρίσκεται στη μονάδα επεξεργασίας:

Λειτουργία DetailOnExternalProcessing() Εξαγωγή

DataForReg = Νέα Δομή();
DataForReg.Insert("Όνομα", "Ρύθμιση του συντελεστή ΦΠΑ");
DataForReg.Insert("SafeMode", True);
DataForReg.Insert("Version", "ver.: 1.001");
DataForReg.Insert("Πληροφορίες", "Επεξεργασία για τον καθορισμό του συντελεστή ΦΠΑ στον κατάλογο Ονοματολογίας");
DataForReg.Insert("View", "AdditionalProcessing");

TabZnCommands = Νέοι TableValues;
TabZnCommands.Columns.Add("Identifier");
TabZnCommands.Columns.Add("Χρήση");
TabZnCommands.Columns.Add("Προβολή");

NewLine = TabZnCommands.Add();
NewString.Identifier = "OpenProcessing";
NewLine.Usage = "FormOpen";
NewLine.View = "Άνοιγμα επεξεργασίας";
DataForReg.Insert("Commands", TabZnCommands);

Επιστροφή DataForReg;

EndFunctions

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

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

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

Σύνδεση εξωτερικής επεξεργασίας στο 1C 8.3



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