1s 8.3 Öffnen Sie die vom Verarbeitungsformular verwaltete Anwendung. Die externe Verarbeitung wird getrennt von der Infobase auf der Festplatte gespeichert

In diesem Artikel betrachten wir Schritt-für-Schritt-Anleitungen zum Erstellen einer externen Verarbeitung in 1C 8.3 im verwalteten Anwendungsmodus; dementsprechend werden wir verwaltete Formulare verwenden. Und vor allem lernen wir, wie wir es mit dem Mechanismus der „externen Verarbeitung“ von 1C-Konfigurationen verbinden, die auf einer Bibliothek von Standard-Subsystemen der Version 2.0 und neuer basieren.

Die Aufgabe besteht darin, die einfachste externe Verarbeitung zu erstellen, die eine Gruppenaktion für das Verzeichnis „Artikel“ ausführt, nämlich den ausgewählten Prozentsatz des Mehrwertsteuersatzes für die angegebene Artikelgruppe festzulegen.

Dazu werden wir sofort die notwendigen Einstellungen im Programm vornehmen (wir erwägen die 1C 8.3-Konfiguration: „Enterprise Accounting 3.0“ auf verwalteten Formularen).

Durch Aktivieren dieses Kontrollkästchens haben wir die Möglichkeit, eine externe Verarbeitung zu nutzen.

Erstellen einer neuen externen Verarbeitung in 1C 8.3 anhand eines Beispiels

Kommen wir nun zum Konfigurator. Wählen Sie im Menü „Datei“ den Eintrag „Neu…“. Es öffnet sich ein Fenster zur Auswahl des zu erstellenden Dateityps. Wählen Sie „Fremdverarbeitung“:

Es öffnet sich ein neues externes Bearbeitungsfenster. Geben wir ihr gleich einen Namen. Beim Speichern der Verarbeitung auf der Festplatte wird Folgendes angeboten:

Fügen wir ein neues Formular für die kontrollierte Verarbeitung hinzu. Wir weisen darauf hin, dass es sich hierbei um eine Form der Verarbeitung handelt, und zwar um die wichtigste:

Wir werden zwei Details auf dem Formular haben:

  • Nomenklaturgruppe – Link zum Verzeichnis „Nomenklatur“;
  • SelectVATRate – Link zur Übertragung des Mehrwertsteuersatzes.

Die Details erstellen wir in der Spalte „Eigenschaften“ im oberen rechten Fenster. Ziehen Sie sie mit der Maus in das obere linke Fenster. Die neuen Details sollten sofort im Formular unten erscheinen.

Die Reihenfolge der Details kann mit den Pfeilen „Auf“ – „Ab“ geändert werden:

Holen Sie sich 267 Video-Lektionen zu 1C kostenlos:

Jetzt muss nur noch die Schaltfläche „Installieren“ hinzugefügt werden. In verwalteten Formularen können Sie dem Formular nicht einfach eine Schaltfläche hinzufügen. Selbst wenn Sie es zur Struktur von Formularelementen hinzufügen, ist es im Formular selbst nicht sichtbar. Die Schaltfläche muss mit dem Befehl verknüpft sein, den sie ausführen soll. Gehen Sie zur Registerkarte „Befehle“ und fügen Sie den Befehl „Mehrwertsteuersatz festlegen“ hinzu. Erstellen Sie in den Befehlseigenschaften eine Aktion. Wählen Sie den Befehlshandler „Auf dem Client“ aus. Ein Befehl kann dem Formular auch hinzugefügt werden, indem man ihn einfach in den Abschnitt mit den Formularelementen zieht.

Im Formularmodul wird eine gleichnamige Prozedur erstellt. Darin rufen wir die Prozedur auf dem Server auf:

&OnClient

Vorgehensweise Mehrwertsteuersatz festlegen (Befehl)

SetVATRateOnServer();

Ende des Verfahrens

Im Verfahren auf dem Server schreiben wir eine kleine Anfrage und Aktionen im Zusammenhang mit der Festlegung des Mehrwertsteuersatzes:

&Auf dem Server

Prozedur SetVATRateOnServer()

Anfrage = Neue Anfrage;
Request.Text =
"WÄHLEN
| Nomenklatur.Link
|VON
| Verzeichnis.Nomenklatur AS-Nomenklatur
|WO
| Nomenclature.Link IN HIERARCHY (&Nomenclature Group)
| UND NICHT Nomenclature.MarkDeletion
| UND NICHT Nomenklatur. Dies ist eine Gruppe“;

Request.SetParameter("Item Group", Item Group);
ResRequest = Request.Execute();
SelectRecordDet = ResRequest.Select();

While SelectRecordDet.Next()-Schleife

Versuchen
SprNomObject.Write();
Ausnahme
Report("Fehler beim Schreiben des Objekts """ + SprNomObject + """!
|» + DescriptionError());
EndAttempt;

EndCycle;

Ende des Verfahrens

Wir kehren zur Registerkarte „Formular“ zurück, fügen dem Formular eine Schaltfläche hinzu und verknüpfen sie mit dem Befehl:

Somit ist unsere Verarbeitung einsatzbereit. Um es aufzurufen, müssen Sie im Modus „1C Enterprise“ zum Menü „Datei“ – „Öffnen“ gehen und die erstellte Datei auswählen.

Das Arbeiten in diesem Modus ist zwar für die Debugging-Verarbeitung praktisch, für den Benutzer jedoch nicht ganz geeignet. Benutzer sind es gewohnt, alles „zur Hand“ zu haben, also in der Datenbank selbst.

Hierzu dient der Abschnitt „Zusätzliche Berichte und Verarbeitung“.

Um unsere Verarbeitung dort hinzuzufügen, müssen wir ihr jedoch zunächst eine Beschreibung geben und dem Programm seine Eigenschaften mitteilen.

Beschreibung der Funktion „Informationen zur externen Verarbeitung“

Ich werde ein Beispiel für den Inhalt dieser Funktion geben. Es muss exportierbar sein und sich dementsprechend im Verarbeitungsmodul befinden:

Funktion InformationOnExternalProcessing() Exportieren

DataForReg = New Structure();
DataForReg.Insert("Name", "Einstellung des Mehrwertsteuersatzes");
DataForReg.Insert("SafeMode", True);
DataForReg.Insert("Version", "ver.: 1.001");
DataForReg.Insert("Information", "Verarbeitung zur Festlegung des Mehrwertsteuersatzes im Nomenklaturverzeichnis");
DataForReg.Insert("View", "AdditionalProcessing");

CommandTable = NewValueTable;
TabZnCommands.Columns.Add("Identifier");
TabZnCommands.Columns.Add("Usage");
TabZnCommands.Columns.Add("View");

NewRow = TabZnCommands.Add();
NewString.Identifier = "OpenProcessing";
NewRow.Use = "OpenForm";
NewRow.View = "Verarbeitung öffnen";
DataForReg.Insert("Commands", TabZnCommands);

Return DataForReg;

EndFunction

Um besser zu verstehen, welche Felder der Registrierungsdatenstruktur verwendet werden müssen, schauen wir uns die Details des Verzeichnisses „Zusätzliche Berichte und Verarbeitung“ an:

Wie Sie sehen, ist alles ganz einfach. Nur ein Attribut stimmt nicht überein: „Startoption“ – „Verwenden“. Wenn wir uns den Code eines der gemeinsamen Module ansehen, werden wir sehen, wie eine Reihe dieser Felder entstehen:

Um festzustellen, welche Felder einer Struktur erforderlich sind, können Sie diese zunächst nicht beschreiben, sondern einfach ein leeres Feld erstellen und dann den Debugger verwenden. Wenn Sie Module bei der Registrierung der Verarbeitung verfolgen, ist sofort klar, welche Felder erforderlich sind und welche nicht.

Anschließen der externen Verarbeitung in 1C 8.3

Für die Arbeit mit Fremdbearbeitung (und eine Fremddruckform ist auch eine Fremdbearbeitung) gibt es ein Objekt Externe Verarbeitung.

Betrachten wir zwei mögliche Fälle:

Die externe Verarbeitung wird getrennt von der Infobase auf der Festplatte gespeichert

Um die externe Verarbeitung in 1C programmgesteuert zu öffnen, müssen Sie die Adresse ihrer Datei kennen. Wenn Sie es wissen, können Sie entweder ein Verarbeitungsformular öffnen oder ein Verarbeitungsobjekt dazu bringen, weitere Aktionen damit durchzuführen (z. B. um Exportfunktionen aus einem Objektmodul aufzurufen).

Öffnen eines Fremdbearbeitungsformulars

Um ein externes Verarbeitungsformular in 1C programmgesteuert zu öffnen, verwenden Sie die Funktion GetForm() Objekt Externe Verarbeitung. Die Funktion verfügt über mehrere Parameter. Betrachten Sie ein einfaches Öffnen des Hauptverarbeitungsformulars:


Form = ExternalProcesses. GetForm(FileAddress) ;
Bilden. Offen();

Um ein geringfügiges externes Verarbeitungsformular zu öffnen, müssen Sie dessen Namen angeben.

//Die Variable FileAddress enthält den vollständigen Pfad zur externen Verarbeitungsdatei
Form = ExternalProcesses. GetForm(FileAddress, „MinorForm“) ;
Bilden. Offen();

Externe Verarbeitung als Objekt öffnen

Um eine externe Verarbeitung als Objekt zu erhalten, wird eine Funktion verwendet Erstellen() Objekt Externe Verarbeitung.

//Die Variable FileAddress enthält den vollständigen Pfad zur externen Verarbeitungsdatei
ProcessingObject = ExternalProcessing. Create(FileAddress) ;

Standardmäßig wird die gesamte Verarbeitung im abgesicherten Modus geöffnet. Um es zu deaktivieren, verwenden Sie die folgenden Optionen:

//Die Variable FileAddress enthält den vollständigen Pfad zur externen Verarbeitungsdatei

Externe Bearbeitungs- oder Druckform in der Infobase gespeichert

In vielen Konfigurationen ist es möglich, externe gedruckte Formulare und deren Bearbeitung direkt in der Infobase zu speichern. Hierzu dient das Nachschlagewerk. Externe Verarbeitung. Die externe Verarbeitung selbst wird als Binärdaten oder in Attributen gespeichert StorageExternalProcessing, oder im tabellarischen Bereich Zugehörigkeit in den Requisiten StorageExternalProcessing.

Um die externe Verarbeitung zu öffnen, benötigen Sie:

  1. Holen Sie es aus dem Lager.
  2. Speichern Sie die verarbeitete Datei auf der Festplatte.
  3. Öffnen Sie ein Formular oder rufen Sie ein Verarbeitungsobjekt ab.
  4. Wenn es sich um ein externes gedrucktes Formular handelt, können wir die Standarddetails ausfüllen Objektreferenz und rufen Sie die Exportfunktion auf Siegel.

//Die RefLink-Variable enthält einen Link zum Verzeichniselement ExternalProcessings
DvData = RefLink. Externer Verarbeitungsspeicher. Erhalten() ;
FileAddress = GetTemporaryFileName() ;
DvData. Write(FileAddress) ;
ProcessingObject = ExternalProcessing. Create(FileAddress, False) ;