1c 8 Periodisches Register der Informationsänderung nach Dokument. Messungen, Ressourcen und Requisiten

Es gibt verschiedene Arten von Registern in 1C:

  • Akkumulationen, in denen Salden oder Umsätze in numerischer Form gespeichert sind;
  • Berechnungen, in denen Berechnungstypen und die Berechnungen selbst gespeichert sind, werden normalerweise für die Lohn- und Gehaltsabrechnung verwendet.
  • Buchhaltungsabteilungen mit Daten zu Buchhaltungsberechnungen in Form von Dt-Kt;
  • Informationsregister.

Wir werden uns näher mit letzterem befassen, da Sie damit Daten aus einer Datenbank in Bezug auf Dimensionen zusammenstellen können. Beispielsweise speichert "Nomenklaturpreise" Daten für einen bestimmten Artikel und Merkmale für einen bestimmten Preistyp.

Abb. 1 Register "Preisnomenklatur"

Eigenschaften

Das Register kann sowohl periodisch als auch nicht periodisch sein, wenn es nicht erforderlich ist, eine Folge von Änderungen beizubehalten. Wenn Sie es dennoch speichern müssen, wird festgelegt, innerhalb welcher Zeitspanne das Programm die Kontrolle über die Eindeutigkeit von Datensätzen festlegt: pro Sekunde, pro Tag, Monat, Quartal und Jahr.


Abb. 2 Frequenz- und Aufnahmemodus

Wenn Sie versuchen, zwei Datensätze innerhalb desselben Zeitraums zu erstellen, gibt das Programm den Fehler "Ein Datensatz mit solchen Schlüsselfeldern existiert!" Aus. und erlaubt kein Schreiben in die Datenbank.

Sie können auch den Aufnahmemodus festlegen. Die erste mit "Einreichung beim Registrar", in der die Aufzeichnungen mit Dokumenten registriert werden und jede von ihnen den Dokumentregistrar enthält. Wenn Sie den zweiten unabhängigen Modus wählen, werden die Daten nicht vom Registrar registriert, sondern beispielsweise direkt aus der Liste oder als Verarbeitung hinzugefügt.


Abb. 3 Aufnahmemodi

Die Besonderheit des periodischen Registers besteht darin, dass Sie ein Stück extremer oder erster verwenden können, um vorgefertigte Werte aus der Datenbank über den letzten / ersten eingestellten Wert für ein bestimmtes Datum abzurufen.

Schreiben in das 1C-Informationsregister

Zeilen in einem Register mit einem Punkt und einem Registrar, der Informationen zu Ressourcen im Kontext von Dimensionen enthält, werden als Datensätze bezeichnet.

Um einen Datensatz zum Register hinzuzufügen, wird entweder der Datensatzmanager oder das Recordset verwendet. Wenn die Einträge im Register einen gemeinsamen Schlüssel haben, muss RecordSet verwendet werden. Und um einen einzelnen Datensatz zu schreiben, müssen Sie den Datensatz-Manager verwenden, wenn alle Datensätze im Register eindeutig sind.

Ein Beispiel für einen Datensatz bei Verwendung des InformationRegisterRecordSet-Objekts.

Verwenden des Datensatzmanagers:

NewRecord \u003d Informationsregister.Währungskurse.CreateRecordsManager (); NewRecord.Currency \u003d Directories.Currency.FindByDescription ("USD"); NewRecord.Period \u003d Date (31,12,2016); NewRecord.Course \u003d 100; NewRecord. Multiplizität \u003d 1; NewWrite.Write ();

Mit einem Recordset und der Write-Methode wird in das Recordset-Informationsregister geschrieben. In diesem Fall kann sowohl das einfache Hinzufügen von Leitungen als auch das Ersetzen vorhandener Leitungen im Register erfolgen. Bei unabhängigen Registern werden ohne Festlegen einer Auswahl alle Datensätze im Register gelöscht und durch hinzugefügte Datensätze ersetzt.

Wenn Sie Daten ohne Auswahl in das Unterregister schreiben, tritt ein Fehler auf.

Ein Beispiel für einen Eintrag unter Verwendung einer Reihe von Datensätzen in das Informationsregister, das den Registrar-Preisen untergeordnet ist

NewRecordSet \u003d Datasheet.NomenclaturePrices.CreateRecordSet (); NewRecordSet.Selection.Registrator.Install (Link); NewRecordSet \u003d NewRecordSet.Add (); NewSetRecord.Period \u003d Reference.Date; NewSetRecord.Nomenclature \u003d Reference.Nomenclature; NewRecordSet.Price \u003d Link.Price; NewRecordSet.Write ();

Ein Beispiel für die Aufnahme über den Aufnahmemanager:

Record \u003d Information Registers.Currency Rates.CreateRecordsManager (); Record.Period \u003d Date; Record.Course \u003d Kurs; Record.Currency \u003d Währung; Write.Write ();

Durchsuchen und Lesen des Informationsregisters

Sie benötigen Hilfe bei Fragen, um einen Eintrag im Informationsregister zu finden und zu lesen. Zum Beispiel müssen wir die Preise von einem bestimmten Registrar veröffentlichen lassen:

SELECT PricesNomenclatures.Nomenclature, PricesNomenclatures.Price FROM Data Register.PricesNomenclatures AS PricesNomenclatures WHERE PricesNomenclatures.Registrar \u003d & Registrar

Datensätze ändern und löschen

Verwenden Sie den folgenden Code, um einen Informationsregistereintrag zu löschen, z. B. alle EUR-Wechselkurse:

Auswahlstruktur \u003d neue Struktur ("Währung", Verzeichnisse.Währungen.FindByDesign ("EUR")); Selection \u003d Information Registers.Currency Rates.Choose (, SelectionStructure); Während Fetch.Next () LoopRecordManager \u003d Fetch.GetRecordManager (); Selection.GetRecordManager (). Delete (); Ende des Zyklus;

Um das Register schnell und vollständig zu löschen, können Sie den folgenden Code verwenden:

NewRecord \u003d Information Registers.TestRegister.CreateRecordSet (); NewWrite.Write ();

Sie können eine generische Verarbeitung schreiben, um den Fall anzupassen und zu ändern, und das Register schnell mit Daten füllen.

Es wird in Form einer Reihe aufgezeichneter Funktionen ausgeführt. Sie müssen den auf der Plattform akzeptierten Parametern (Messarten) entsprechen. Wo und wie werden sie gespeichert und wie kann ein Eintrag im 1C-Informationsregister hinzugefügt oder gelöscht werden?

Was ist Information?

Die Zusammensetzung der vom Entwickler verwendeten Objekte ist fest an die Plattform selbst gebunden und kann nicht geändert werden. Es ist auch nicht verfügbar, eigene Objekte zu erstellen. Sie können nur mit dem bereits auf der Plattform verfügbaren Set arbeiten.

Durch diese Anordnung kann der Prozess standardisiert werden. Dies ermöglicht es andererseits anderen Spezialisten, die erhaltenen Lösungen zu modifizieren.

Die Standardkonfigurationsobjekte umfassen das Informationsregister (Register). Seine Funktion besteht darin, beliebige Daten im Rahmen von Messungen zu speichern.

Zum Beispiel Wechselkurse - im Kontext von Währungen, Preisen - im Kontext von Preisarten oder in Übereinstimmung mit der Nomenklatur usw.

Struktur

Daten in 1C werden in Form von Aufzeichnungen (Registrierung, Englisch) gespeichert. Jede von ihnen enthält eine Art von Messungen (Abschnitte) und die entsprechenden Ressourcenwerte.

Beispielsweise kann das Register "Warenpreise" die Abmessungen (Aspekte) "Waren" und "Art der Preise" enthalten, und die Ressourcen können den Wert "Preis" enthalten. So nimmt seine Struktur Gestalt an:

Und die Aufzeichnungen über die Preise der Waren selbst werden wie folgt aussehen:

Um zusätzliche Informationen zu jeder Registrierung zu speichern, werden "Voraussetzungen" verwendet.

Periodizität

Um Änderungen der statischen Daten im Laufe der Zeit zu verfolgen, verfügt die Registrierung über ein Feld "Periode". Dies ist auch ein zusätzlicher Abschnitt für die Analyse. Der Frequenzwert kann ausgewählt werden:

Auswahl des Periodizitätswerts

Das Schreiben in das Informationsregister in 1C (deren Änderungen) kann manuell eingegeben werden. Sie ändern sich auch automatisch, wenn Dokumente erstellt werden.

Im letzteren Fall wird jede Registrierung mit einem speziellen Feld aktualisiert, um ein solches Formulardokument zu reparieren.

Es gibt eine Auswahl an Modi. Beispielsweise bewirkt der Modus "Übermittlung an den Registrar" eine starre Bindung an die Formulardokumente.

Um beispielsweise Preise zu ändern, muss ein spezielles Dokument erstellt werden - "Preisänderung".

Einzigartigkeit der Aufzeichnungen

Um Konflikte zu vermeiden, ist jeder Datensatz eindeutig. Sie wird durch einen vom System automatisch generierten Schlüssel bestimmt. Dieser Schlüssel hängt von den in die Felder geschriebenen Werten und von dem Registertyp ab, in den die Daten geschrieben werden.

Um es zu erstellen, werden drei Werte verwendet - der Wert des Rekorders (Slave oder Nicht-Slave), der Wert der Periode (periodisch oder nicht periodisch) und der Wert der Messung.

Bearbeitung

Es gibt (standardmäßig) integrierte Formulare für die Darstellung von Daten (obwohl der Entwickler seine eigenen erstellen kann). Zum Beispiel ein Listenformular:

Dank dessen kann der Benutzer Daten anzeigen, suchen, löschen / hinzufügen und auch das 1C-Informationsregister löschen.

Anmelden und arbeiten mit separater Eintrag Es gibt ein Formular für die Präsentation:

Bearbeiten des Wechselkurses in 1C

Von diesen Formularen an den Entwickler delegierte Funktionen:

  • Löschen, ändern, einen Eintrag zum Register in 1C hinzufügen;
  • Vielseitige vielseitige Sortierung nach Messungen in Zeitintervallen und nach Registraren.

In dieser Veröffentlichung haben Sie sich ausführlich mit den verschiedenen 1C-Registern vertraut gemacht und gelernt, wie Informationen in diesen verarbeitet werden.

Das Informationsregister 1C 8 ist ein Metadatenobjekt, das zum Speichern von Referenzinformationen im Kontext von vom Entwickler bestimmten Messungen ausgelegt ist.

Ein typisches Beispiel für die Verwendung eines Informationsregisters ist das Speichern von Informationen über den Wechselkurs im Kontext von Währung und Periode.

Schauen wir uns die Eigenschaften und Einstellungen des Informationsregisters genauer an.

Die zwei Haupteigenschaften eines Rollup-Registers sind - Periodizität und Aufnahmemodus.

Dies sind eindeutige Eigenschaften des Informationsregisters, über die kein anderes Metadatenobjekt verfügt. Betrachten wir sie genauer.

Mit dieser Eigenschaft können Sie der Liste der Dimensionen eine zusätzliche Dimension hinzufügen - Zeitraum... Es kann verwendet werden, um zu lösen große Menge Aufgaben: Speichern von Informationen in einer Datenbank unter Berücksichtigung der Relevanz für ein bestimmtes Datum. Es gibt viele angewandte Beispiele für die Verwendung von Zeiträumen: Speichern des Werts einer Währung für jeden Tag, Speichern des Preises eines Artikels usw.

Die Frequenz kann folgende Werte annehmen:

  • Nicht periodisch
  • Innerhalb einer Sekunde
  • Innerhalb eines Tages
  • Innerhalb eines Monats
  • Innerhalb eines Blocks
  • Innerhalb eines Jahres

Holen Sie sich 267 1C Video-Tutorials kostenlos:

Wenn Sie eine andere Frequenz als die Option Nicht periodisch auswählen, steuert das System die Eindeutigkeit von Datensätzen innerhalb eines bestimmten Zeitraums. Wenn der Datensatz nicht eindeutig ist, gibt das 1C-System eine Nachricht aus und lässt Sie nicht in die Datenbank schreiben.

Und eines der Hauptmerkmale des periodischen Informationsregisters ist die Fähigkeit, vorgefertigte Werte für den "Schnitt des Ersten" und den "Schnitt des Letzten" zu erhalten. Mit diesen Informationen können Sie sehr schnell aus der Datenbank Informationen über den letzten (ersten) eingestellten Wert für ein bestimmtes Datum abrufen.

Schreibmodus für Informationsregister

In 1C 8.2 und 8.3 kann diese Eigenschaft entweder den Wert "Unabhängig" oder - "Übermittlung an den Registrar" haben. Im ersten Fall können Einträge sowohl programmgesteuert als auch aus der Listenform des Informationsregisters vorgenommen werden. Im zweiten Fall ist die Angabe des Dokumentenregisters der Aufzeichnung obligatorisch. Dies bringt gewisse Einschränkungen mit sich, eröffnet aber gleichzeitig neue Möglichkeiten.

Dimensionseigenschaften des Informationsregisters

Beachten Sie auch die Palette der Messeigenschaften des Informationsregisters 1C 8.3. Speziell für Flaggen Leading und Main Selection:

  • Führen - eine Eigenschaft einer Dimension, die impliziert, dass der Registersatz ohne den Wert dieser Dimension bedeutungslos ist. Tatsächlich bedeutet dies, dass das System beim Löschen eines Werts aus einer Messung auch den Registerdatensatz mit der "führenden" Messung löscht. Es kann nur eine Dimension festgelegt werden.
  • Hauptauswahl - Wenn das Register unabhängig ist, werden diese Messungen verwendet, um die Registrierung von Änderungen für den Austauschplan zu erstellen. Ähnlich mit Hauptauswahl nach Zeitraumenthält eine grundlegende Auswahl für einen Zeitraum für periodische Ledger.

Software-Schreiben in das 1C-Informationsregister

Es gibt zwei Möglichkeiten, neue Datensätze zum Detail-Ledger hinzuzufügen - mithilfe des Datensatz-Managers und des Recordset. Der erste Fall eignet sich für eine einzelne Aufnahme, der zweite für zwei oder mehr Aufnahmen.

Verwenden des Datensatzmanagers:

NewRecord \u003d Information Registers.Currency Rates.CreateRecordManager ();
NewRecord.Currency \u003d Directories.Currency.FindByDesign ("USD");
NewRecord.Period \u003d Date (31,12,2016);
NewRecord.Course \u003d 100;
NewRecord. Multiplizität \u003d 1;
NewWrite.Write ();

Verwenden eines Satzes von 1C-Informationsregisterdatensätzen:

NewRecordSet \u003d Informationsregister.Währungskurse.CreateRecordSet ();
// Wenn Sie den Filter nicht einstellen, werden alle Datensätze des Informationsregisters gelöscht
NewRecordSet.Currency.Currency.Set (Dollar, True);
NewRecordSet.Selection.Period.Set (Date (31,12,2016), True);
// den Set-Datensatz direkt bilden
NewRecordSet \u003d NewRecordSet.Add ();
NewSettings.Currency \u003d Directories.Currencies.FindByDesign ("USD");
NewSetRecord.Period \u003d Date (31,12,2016);
NewSetup.Course \u003d 100;
NewRecordSet. Multiplicity \u003d 1;
NewRecordSet.Write ();