1c Anforderungswertpläne für Merkmalstypen. Zweck des Anwendungsobjekts „Merkmalstypenplan“

Wenn jemand dieses oder jenes Material beschreiben möchte, müssen wir ihm einen Mechanismus zur Verfügung stellen, der es ihm ermöglicht, beliebige Merkmale zu erstellen und, was am wichtigsten ist, anzugeben, welche Art von Wert diese Merkmale haben sollen. Beim Festlegen von Werten für eine bestimmte Materialeigenschaft kann der Benutzer dann Werte auswählen, die streng dem angegebenen Typ entsprechen.

Genau diese Fähigkeit zur Beschreibung von Merkmalen bietet das Konfigurationsobjekt. Plan der Merkmalstypen, mit dem wir uns jetzt vertraut machen werden.

Erstellen neuer Konfigurationsobjekte

1. Erstellen Sie ein Konfigurationsobjekt Verzeichnis Mit Namen OptionenNomenklaturen und geben Sie an, dass es dem Verzeichnis untergeordnet sein wird.

2. Erstellen wir ein weiteres Konfigurationsobjekt Verzeichnis Mit Namen.

3. Anschließend erstellen wir einen Konfigurationsobjektplan Arten von Merkmalen Mit Namen EigenschaftenNomenklatur. Die Art des Merkmalswertes wird wie folgt eingestellt:

  • Nummer, Länge 15, Genauigkeit 3;
  • Linie, Länge 25;
  • Datum;
  • Boolescher WertÖ;
  • ReferenceLink.AdditionalPropertiesNomenclature.

4. Verzeichnis ZusätzlicheEigenschaftenNomenklatur Geben Sie den Eigentümer an → Plan der Merkmalstypen EigenschaftenNomenklatur.

5. Auf dem Lesezeichen Formen Legen wir fest, dass es in der Liste bearbeitet werden soll.

6. Danach bestimmen wir das zusätzliche Statistikwerte Pläne für Merkmalstypen finden Sie im Verzeichnis Zusätzliche EigenschaftenNomenk-latura.

7. Auf dem Lesezeichen Formen Wir weisen darauf hin, dass dieser Plan der Merkmalstypen in der Liste bearbeitet wird.

8. Abschließend erstellen wir ein Konfigurationsobjekt Informationsregister Mit Namen Nomenklatur-Eigenschaftswerte.

9. Falländerungen:

  • Satz von Eigenschaften, führend , Typ ;
  • Eigenschaften anzeigen, Typ Plan der Merkmalstypen Link.

10. Ressource registrieren:

  • Bedeutung, Typ Merkmale.EigenschaftenNomenklatur.

Beachten Sie, dass wir den Typ eines Registerressourcenwerts als definieren können Charakteristisch.<имя> . Im Wesentlichen stellt diese Definition einen zusammengesetzten Datentyp dar, wie er im Werttyp des entsprechenden Merkmalstypplans definiert ist. Das heißt, eine Registerressource kann einen Wert eines beliebigen Typs haben, der im Werttyp des Merkmaltypplans beschrieben ist.

Fertigstellung des Nomenklatur-Nachschlagewerks

1. Zunächst müssen wir im Verzeichnis die Möglichkeit bereitstellen, eine Version des Materials zu bearbeiten. Dazu geben wir an, dass das Verzeichnis nun in beide Richtungen bearbeitet wird (auf der Registerkarte Bilden) → in der Liste und im Dialog.

2. Lass uns kreieren Grundform des Elements mit dem Konstruktor.

3. Erweitern wir das Formular leicht in Breite und Höhe und fügen ein Panel hinzu: Formular in†‘ Steuerelement in†‘ Panel einfügen(aus dem oberen Menü) oder über das untere Menüsymbol Panel. Mit dem Cursor, der sich in ein „Kreuz“ verwandelt, strecken wir das Panel und erhalten das folgende Bild und gleichzeitig ein Fenster mit einer Frage:

Wenn die Frage nicht sofort erscheint, erscheint sie, nachdem wir die Position eines der Panelränder leicht geändert haben.

4. Beantworten wir diese Frage mit „Ja“ und alle Steuerelemente werden in das hinzugefügte Bedienfeld verschoben:

5. Jetzt passen wir die Abmessungen des Panels an und fügen ihm eine neue Seite hinzu. Seite hinzufügen → Kontextmenü mit der rechten Maustaste auf das Formularfeld klicken → Seite hinzufügen.

6. Legen Sie den Namen und Titel der neuen Seite fest → Eigenschaften, und benennen Sie die erste Seite in um Basic und gib ihm den gleichen Titel. Namen und Titel werden in der Panel-Eigenschaftenpalette in der Eigenschaftengruppe festgelegt Aktuelle Seite:

7. Wählen Sie anschließend alle im Panel befindlichen Steuerelemente aus und führen Sie den Befehl aus Form in†’ Zentrierung in†’ Vertikal zentrieren.

8. Gehen wir nun zur Seite Eigenschaften und fügen Sie eine Beschriftung hinzu InschriftOptionenNomenklaturen mit Titel Nomenklaturoptionen:. Geben wir den Schriftstil dafür an Fettig.

9. Unter dieser Aufschrift platzieren wir ein Tabellenfeld mit einem Befehlsfeld. Geben wir dem Feld einen Namen Optionen und Typ DirectoryList.OptionsNomenclature.

10. Entfernen Sie die Spalte aus dem Tabellenfeld Code.

11. Für dieses Tabellenfeld Optionen Legen Sie die Eigenschaft fest Link nach Eigentümer → DirectoryObject.Link.

Durch das Setzen dieser Eigenschaft erhalten wir Folgendes: für die Datenquelle dieses Feldes → Formularattribut Optionen, mit Typ Verzeichnisliste.OptionsNomenklatur, - Der Wert der Auswahl durch den Eigentümer entspricht immer dem Link zum bearbeiteten Verzeichniselement. Mit anderen Worten, die im Formularattribut enthaltene Verzeichnisliste Satz von Eigenschaften enthält immer nur Elemente, die dem bearbeiteten Verzeichniselement untergeordnet sind. Und damit ist das Tabellenfeld gemeint Optionen, für das dieses Attribut eine Datenquelle ist, zeigt nur Elemente an, die dem bearbeiteten Verzeichniselement untergeordnet sind.

12. Unten werden wir auf die gleiche Weise eine weitere Inschrift platzieren → CaptionValuesProperties mit Titel Immobilienwerte: und Schriftstil Fettig.

13. Darunter platzieren wir ein Tabellenfeld mit einem Befehlsfeld. Geben wir dem Feld einen Namen Eigenschaften und Typ.

14. Für die Spalte Eigenschaftssatz Lasst uns die Flagge einholen Sichtweite, und für das Eingabefeld in der Spalte Bedeutung Stellen Sie eine Verbindung nach Typ her Formularelemente.Eigenschaften.AktuelleDaten. Eigenschaften anzeigen.

Eine Typbeziehung stellt sicher, dass wir die Art der in dieses Eingabefeld eingegebenen Werte nur auf die Art des im Feld ausgewählten Merkmals beschränken Art der Immobilie. Auf den in diesem Feld gespeicherten Wert selbst haben wir jedoch keinerlei Einfluss. Wenn Sie keine weiteren Maßnahmen ergreifen, dann beim Betreten des Feldes Bedeutung Es ist nicht möglich, die Art des Merkmals eines beliebigen Werts zu ändern.

Wenn Sie einen anderen Merkmalstyp auswählen, besteht eine Diskrepanz zwischen dem Typ des gespeicherten Werts und dem Typ, auf den die Eingabe im Steuerelement beschränkt ist. In diesem Fall werden Sie natürlich vom System aufgefordert, den Typ einzugeben, der den gespeicherten Wert enthält.

Um diese Situation zu vermeiden, wenn Sie den Wert im Feld ändern, Art der Immobilie Feldwert angeben Bedeutung abhängig von der im Feld ausgewählten Merkmalsart Art der Immobilie.

15. Daher für das Eingabefeld in der Spalte Art der Immobilie Lassen Sie uns einen Event-Handler erstellen Wenn es sich ändert:

16. Jetzt müssen wir das im Tabellenfeld sicherstellen Eigenschaften Es wurden Informationsregistereinträge angezeigt, die sich nur auf das im oberen Tabellenfeld ausgewählte Verzeichniselement bezogen OptionenNomenklaturen.

Daher für das Tabellenfeld Optionen: Erstellen Sie einen Ereignishandler für „Wenn eine Zeile aktiviert wird“.:

17. Um beim Öffnen des Formulars nicht das gesamte Register anzuzeigen, erstellen wir außerdem einen Formularereignishandler Beim Öffnen mit folgendem Text:

Finalisierung des Verzeichnisses OptionsNomenclatures

Jetzt müssen wir das Verzeichnis finalisieren OptionenNomenklaturen so dass der Benutzer nicht nur beim Bearbeiten des Materials selbst, sondern auch bei der Eingabe von Dokumenten die Möglichkeit hat, neue Materialeigenschaften zu erstellen, wenn im tabellarischen Teil eine Reihe von Eigenschaften ausgewählt wird.

1. Daher als Referenz OptionenNomenklaturen Geben wir an, dass es auf beide Arten bearbeitet wird (sowohl in der Liste als auch im Dialog).

2. Erstellen wir es mit dem Konstruktor Grundform des Elements .

3. Im Formular müssen wir platzieren Tabellenfeld , das vorhandene Einträge im Eigefür dieses Verzeichniselement anzeigen sollte.

Im Hauptformular des Elements platzieren wir ein Tabellenfeld mit dem Namen Eigenschaften, Typ Informationen RegisterList.Values ​​​​von Nomenklatureigenschaften und Befehlsfeld.

4. Für die Spalte Eigenschaftssatz Entfernen Sie die Sichtbarkeitsflagge.

5. Dann für das Eingabefeld in der Spalte Bedeutung, legen wir die Verbindung nach Typ fest Formularelemente.Properties.CurrentData.ViewProperties.

6. Für ein Eingabefeld, das sich in einer Spalte befindet Art der Immobilie, erstellen wir einen Event-Handler Wenn es sich ändert:

Jetzt müssen wir sicherstellen, dass beim Öffnen des Formulars die von uns benötigte Auswahl installiert ist. Außerdem muss sichergestellt werden, dass beim Hinzufügen eines neuen Verzeichniselements die Auswahl erst nach der Aufnahme des Elements erfolgt. Dazu nutzen wir die Zuweisungsmöglichkeit Ereignishandler für Datenänderungen , das Änderungen im Link zum bearbeiteten Verzeichniselement verfolgt.

7. Zunächst erstellen wir einen Event-Handler Beim Wechseln von Links, in dem wir die von uns benötigte Auswahl festlegen:

8. Fügen Sie dann einen Aufruf dieses Handlers zum Hauptteil des Formularmoduls hinzu:

9. Und abschließend muss die Möglichkeit vorgesehen werden, dass der Benutzer mit dem Festlegen neuer Eigenschaftswerte beginnen kann, ohne das Verzeichniselement selbst bereits aufgeschrieben zu haben Eigenschaftssätze. Erstellen wir daher einen Tabellenfeld-Ereignishandler BeforeBeginAdditions:

Fertigstellung des Restmaterialregisters

Um sicherzustellen, dass Materialien entsprechend ihrer Merkmalswerte bilanziert werden, ist eine Änderung der Struktur des Akkumulationsregisters erforderlich Verbleibende Materialien und fügen Sie ihm eine neue Dimension hinzu Satz von Eigenschaften mit Typ DirectoryLink.OptionsNomenclature.

Fertigstellung des Dokuments „Rechnung erhalten“.

Als letztes müssen wir noch das Dokument fertigstellen Kaufrechnung. Damit der Benutzer beim Wareneingang für jedes empfangene Material eine Reihe von Eigenschaften festlegen kann.

1. Fügen Sie dem tabellarischen Teil des Dokuments ein neues Attribut hinzu Satz von Eigenschaften mit Typ DirectoryLink.OptionsNomenclature:

2. Platzieren Sie dieses Attribut im Tabellenfeld des Dokumentformulars (rechte Maustaste →). Datenplatzierung):

3. Für ein Eingabefeld, das sich in einer Spalte befindet Satz von Eigenschaften, verwenden wir die Eigenschaft erneut Link vom Eigentümer →Form Elements.Materials.CurrentData.Ma-

terial. Wenn Sie nun in diesem Eingabefeld auswählen, öffnet sich immer eine Liste mit Verzeichniselementen OptionenNomenklaturen, dem in der Spalte ausgewählten Material untergeordnet Material.

4. Abschließend öffnen wir den Vorgang zur Bearbeitung der Buchung im Belegmodul und ergänzen die generierten Bewegungen um die Zuordnung eines Wertes zur Dimension Satz von Eigenschaften:

Jetzt starten wir 1C:Enterprise im Debugging-Modus und erstellen mehrere Eigenschaftensätze für unsere Materialien.

Erstellen von Eigenschaftssätzen

1. Öffnen Sie das Verzeichniselement Nomenklatur → Elektrokabel.

2. Gehen wir zum Lesezeichen Eigenschaften und erstellen Sie eine Reihe von Eigenschaften für dieses Element namens Weiß.

3. Anschließend erstellen wir eine Reihe von Eigenschaften für das Verzeichniselement Nomenklatur → Gummischlauch. Dieser Satz von Eigenschaften wird aufgerufen Polen und bestehen aus folgenden Merkmalen:

  • Farbe → Kette;
  • Hersteller → Fagumit.

4. Öffnen wir nun das Dokument Empfangsrechnung Nr.–2 und geben an, dass 2 weiße Elektrokabel und ein polnischer Gummischlauch gekauft wurden.

5. Kopieren Sie dann die erste Zeile des Dokuments und geben Sie an, dass auch 3 schwarze Elektrokabel gekauft wurden. Während des Eingabevorgangs müssen wir einen weiteren Satz Eigenschaften für das Elektrokabel erstellen → Schwarz, welcher:

  • Farbe → Schwarz;
  • Abschnitt → 2.5.

6. Lassen Sie uns das Dokument überprüfen und uns die Bewegungen des Dokuments im Register ansehen Verbleibende Materialien:

7. Schauen wir uns außerdem die im Informationsregister enthaltenen Einträge an Nomenklatur-Eigenschaftswerte:

Bericht über Materialreste nach Objekten

Um das Bild zu vervollständigen, erstellen wir einen Bericht, der uns die Verfügbarkeit von Materialien mit bestimmten Eigenschaften zeigt.

Bei der Erstellung dieses Berichts nutzen wir die Möglichkeiten, die uns das Datenkompositionssystem für die Arbeit mit Merkmalen bietet.

1. Erstellen Sie ein neues Konfigurationsobjekt Report mit dem Namen Verbleibende Materialien nach Eigenschaften.

2. Öffnen Sie den Datenkompositionsschema-Designer und fügen Sie ein neues hinzu Datensatz → Abfrage und beginnen wir mit der Erstellung der Anfrage.

3. Wählen Sie die virtuelle Tabelle des Akkumulationsregisters aus Überreste von Materialien. Über das Unternehmen.

4. Aus der virtuellen Tabelle des Akkumulationsregisters Verbleibende Materialien Wählen Sie die folgenden Felder aus:

  • Material;
  • PropertySet;
  • QuantityInitialRemaining;
  • MengeEingehend;
  • MengeVerbrauch;
  • QuantityFinalRemaining.

5. Danach auf der Registerkarte Gewerkschaften/Aliase Lassen Sie uns Aliase für numerische Felder ohne Wort festlegen Menge:

6. Beginnen wir mit der Beschreibung der Eigenschaften. Gehen Sie dazu auf das Lesezeichen Eigenschaften.

Klicken Sie auf die Schaltfläche Hinzufügen und beginnen wir mit der Beschreibung der Felder.

7. Das erste Feld, das beschrieben werden muss, ist Werttyp. Hier sollten wir den Typ des Feldes angeben, auf das sich unsere Merkmale beziehen. In unserem Fall ist ein solches Feld das Feld Satz von Eigenschaften registrieren Verbleibende Materialien. Daher wählen wir als Werttyp DirectoryLink.OptionsNomenclature.

8. Der nächste Schritt besteht darin, zu beschreiben, wo das Datenkompositionssystem die Liste der Merkmale erhalten soll. Dazu sollten Sie die Quelle der Merkmalsliste angeben und den Zweck bestimmter Felder dieser Quelle beschreiben.

Als Quelle kann das Datenkompositionssystem entweder eine vorhandene Quelldatentabelle oder das Ergebnis einer Abfrage in den Tabellen verwenden. In unserem Fall ist alles ganz einfach: Die Liste aller Merkmale ist nach Merkmalstypen hinterlegt EigenschaftenNomenklatur. Daher geben wir als Quelle an Tisch, und auf dem Feld Liste der Merkmale Lass uns aussuchen Plan der Merkmalstypen. EigenschaftenNomenklatur.

9. Als nächstes sollten Sie den Zweck der Felder der Quelle beschreiben, die die Liste der Merkmale „liefert“. Auf dem Feld Kennung Lass uns aussuchen Verknüpfung, auf dem Feld Name → Titel, und auf dem Feld Typ → Werttyp.

10. Kommen wir zur Beschreibung der Quelle der Kennwerte. In unserem Fall ist die Quelle der Kennwerte das Informationsregister Nomenklatur-Eigenschaftswerte, also im Feld Quelle wir wählen Tisch, und auf dem Feld EigenschaftswertInformationsregister.Werte von Nomenklatureigenschaften.

11. Als nächstes beschreiben wir den Zweck der Registerfelder. Auf dem Feld Ein Objekt Wählen Sie eine Dimension aus Satz von Eigenschaften, auf dem Feld Bezeichner → ViewProperties, und auf dem Feld Bedeutung→ Ressource registrieren Bedeutung:

12. Damit ist die Erstellung der Anfrage abgeschlossen. Klicken Sie auf „OK“ und sehen Sie sich den für das Datenzusammensetzungsschema generierten Anforderungstext an:

13. Bemerkenswert in dieser Abfrage ist der Abschnitt, der mit dem Schlüsselwort CHARACTERISTICS beginnt. Es beschreibt genau die Merkmale des Datenzusammensetzungssystems, das in diesem Bericht verwendet wird.

Der Text dieses Abschnitts ist beigefügt Zahnspange . Dies bedeutet, dass es sich nicht um einen Teil der Abfrage handelt, sondern vielmehr um eine Anweisung an das Datenkompositionssystem.

14. Beginnen wir mit der Bearbeitung des Datenlayoutdiagramms. Zunächst einmal auf der Registerkarte Ressourcen Wählen Sie alle verfügbaren Ressourcen aus:

15. Gehen wir zum Lesezeichen Einstellungen. Lassen Sie uns eine Berichtsstruktur erstellen → eine Gruppierung hinzufügen Detaillierte Einträge.

16. Dann auf das Lesezeichen Ausgewählte Felder Wählen wir die Felder aus, die im Bericht angezeigt werden:

  • Material;
  • PropertySet;
  • InitialRemaining;
  • Kommen;
  • Verbrauch;
  • FinalRemaining.

17. Kommen wir abschließend zum Lesezeichen Andere Einstellungen und legen Sie den Berichtstitel fest → .

18. Damit ist die Erstellung des Berichts abgeschlossen. Lassen Sie uns 1C:Enterprise im Debug-Modus starten und sehen, welche Ergebnisse mit unserem Bericht erzielt werden können. Öffnen wir den Bericht Verbleibende Materialien nach Eigenschaften.

19. Schauen wir uns zunächst an, welche Materialien wir mit einem Querschnitt von 2,5 mm2 haben. Klicken Sie dazu auf Einstellungen, gehen wir zum Lesezeichen Auswahl und den Thread öffnen Eigenschaftssatz.

Bitte beachten Sie, dass die Felder im Verzeichnis vorhanden sind OptionenNomenk-Latura Das Datenzusammensetzungssystem fügte alle Merkmale hinzu, die wir für die verschiedenen Eigenschaftssätze in der Datenbank definiert hatten: Hersteller, Farbe und Abschnitt. Somit ist die Auswahl in einem Bericht basierend auf den Werten beliebiger Merkmale recht einfach und intuitiv.

20. Um herauszufinden, welche Materialien wir mit einem Querschnitt von 2,5 mm2 haben, wählen Sie einfach das Feld Querschnitt, mm2 aus und stellen Sie die Gleichheitsbedingung dafür auf 2,5 ein.

21. Wenn der Bericht fertig ist, erhalten wir das folgende Ergebnis:

22. Dann schauen wir uns an, welche schwarzen Materialien wir haben:

23. Und schließlich, um sicherzustellen, dass der Bericht korrekt funktioniert, schauen wir uns an, wie viele schwarze Elektrokabel wir haben:

Sie sind also davon überzeugt, dass wir mit diesem logischen Diagramm nun die Möglichkeit haben, den Überblick über Materialien in einer beliebigen Anzahl von Eigenschaftsabschnitten und deren Werte zu behalten.

Es ist zu beachten, dass das von uns betrachtete Beispiel keine vollständige Lösung für diese Konfiguration darstellt. Wir haben gerade die Möglichkeit demonstriert, solche Aufzeichnungen zu führen. Damit unsere Konfiguration die Materialeigenschaften vollständig nutzen kann, ist es notwendig, entsprechende Änderungen an den übrigen Registern, Dokumenten und einigen Berichten vorzunehmen.


Sie finden uns: Plan der Merkmalstypen, Abrufen von Daten aus einem charakteristischen Typplan, 1C So kopieren Sie einen Satz charakteristischer Werte und ändern sie dann, finden die Wertepläne der charakteristischen Typen, 1c 8 3 ändern den Typ der charakteristischen Werte, Pläne der 1c charakteristischen Typen, 1c 8 verwenden die Daten der charakteristischen Typen, gkfy dbljd ”und ein neues Abfrage-Designer-Fenster wird geöffnet.

Geben Sie dort die folgende Abfrage ein:

WÄHLEN
Objekteigenschaften.Ref.
Objekteigenschaften. Name + „(Eigenschaft)“ AS-Name,
Objekteigenschaften.TypeValues
AUS
Plan der Merkmalstypen
WO
Objekteigenschaften. Zweck der Eigenschaften = VALUE (Plan der Merkmalstypen. Zweck der Eigenschaften von Objektkategorien. Verzeichnisnomenklatur)
UND (NICHT ObjectProperties.DeletionMark)
UND (NICHT ObjectProperties.Category)

In Spalten Schlüsselfeld, Namensfeld Und Feld „Werttyp“., wählen Sie die entsprechenden Auswahlfelder aus: Verknüpfung, Name Und Typwert. Es wird so ausgehen:

Wenn wir nun mit dem Einrichten des Berichts fortfahren, ändert sich das Bild in der Liste der Nomenklaturdetails:

Das Produkt verfügt nun nur noch über die Eigenschaften, die ihm zugeordnet sind, zudem unterscheiden sie sich dank des Postscripts nun deutlich von den üblichen Details (Eigentum), den wir in der Anfrage zum Eigenschaftsnamen hinzugefügt haben.

Das ist alles, aber viele könnten verwirrt sein, weil es unmöglich ist, es im Konfigurator einzurichten. Daran ist wirklich nichts auszusetzen. Es reicht aus, die Einstellung (oder die gesamte Schaltung) in einer Datei zu speichern und im Konfigurator wiederherzustellen.

Der Konfigurator zeigt Details, die er nicht versteht, mit roten Kreuzen als nicht verfügbar an:

Dies ist jedoch nicht mehr beängstigend, da ein Bericht mit solchen Einstellungen in der Konfiguration gespeichert werden kann und beim Öffnen durch den Benutzer korrekt funktioniert.

In diesem Artikel werden die Zusammenhänge zwischen dem Merkmalstypenplan, dem untergeordneten Verzeichnis der Zusatzmerkmale und dem Informationsregister, in dem Merkmalswerte gespeichert werden, beschrieben.
Ich studiere 1C 8.2. Im Audiokurs erreichte Gileva den Plan der Merkmalstypen. Davor habe ich in mehreren Quellen über PVC gelesen. Alles scheint klar zu sein, aber da ich noch nicht in 1C 8 programmiere, gerät die Theorie mit der Zeit in Vergessenheit und jedes Mal, wenn ein Thema über den Plan von Merkmalstypen auftaucht, muss ich mich schmerzhaft erinnern und ein Diagramm in meinem Kopf erstellen . Nun kam eine konkrete Frage auf, alles schwamm in meinem Kopf und es wurde klar, dass wieder nichts klar war. Deshalb mussten wir uns von Anfang an eingehend damit befassen. Ich habe beschlossen, es für die Zukunft selbst aufzuschreiben, aber vielleicht ist es für jemand anderen nützlich.
Eigentlich die Frage: Ich konnte die Bedeutung der Eigenschaft „Links von Auswahlparametern“ im Informationsregister Ressource nicht verstehen, in dem die Werte von Artikelmerkmalen gespeichert sind (Registerstruktur: Dimensionen – Artikel- und Eigenschaftstyp, Ressource – Wert). )
Der 2. Teil von Gilevs Videokurs kann beispielsweise hier heruntergeladen werden http://turbobit.net/8ztu277cf9t9/Gil_Base_02.rar.html. Dort gibt es auch eine Datenbankdatei. In diesem Artikel verwende ich die Kapitel 404-409 dieses Videokurses

Plan der Merkmalstypen

Die Elemente dieses Objekts speichern Arten von Eigenschaften von etwas. Der Plan selbst legt nicht fest, worauf sich diese Eigenschaften beziehen. Dies kann sich natürlich im Namen des Plans widerspiegeln (der Plan wird beispielsweise „Arten von Artikeleigenschaften“ heißen), aber in der Konfiguration wird dies nur beim Erstellen eines Informationsregisters zum Speichern von Eigenschaftswerten festgelegt (in einer der Registerdimensionen). Tatsächlich können in einem Plan die Arten von Eigenschaften verschiedener Objekte – Waren, Gegenparteien usw. – bestimmt werden. Aber wahrscheinlich häufiger wird für verschiedene Objekte ein eigenes PVC erstellt.

Der Plan speichert also die Arten von Eigenschaften von etwas.

Der Eigenschaftstyp ist beispielsweise Farbe, die Eigenschaftstypwerte sind Blau und Gelb. Eigenschaftstyp – Material, Eigenschaftstypwerte – Leder, Ersatz.

In der Eigenschaft „Merkmalswerttypen“ werden TYPEN angegeben (nicht die Typen selbst) Werte Arten von Eigenschaften (Arten von Merkmalen). Die Namen der Merkmale (Eigenschaften) selbst werden entweder vom Benutzer oder vom Entwickler wie im Konfigurator vordefiniert vorgegeben.

Die Eigenschaft „Zusätzliche Eigenschaftswerte“ gibt den NAMEN (nicht den Link) des Verzeichnisses an, in dem die Eigenschaftswerte gespeichert werden. Der Eigentümer dieses Verzeichnisses ist PVC.

Diese. Wenn Sie sich dieses Verzeichnis ansehen, ohne nach Eigentümer auszuwählen, finden Sie dort genau die Werte aller Arten von Merkmalen.

Öffnen wir das Formular dieses Verzeichnisses:

Hier sehen Sie, dass die Werte verschiedener Eigenschaften, Farben und Materialien hinterlegt sind. Aber jeder Wert hat einen Besitzer – eine Eigenschaftsart, oder mit anderen Worten, ein Element des Plans der Merkmalsarten, d.h. hier stimmt alles.

Es erscheint mir sinnvoller, diese Eigenschaft „Werttyp zusätzlicher Merkmale“ zu nennen und nicht wie üblich einen Namen, sondern einen Link zum Nachschlagewerk anzugeben. Weil Wenn der Benutzer beim Erstellen eines neuen Eigenschaftstyps im Planformular auswählt, dass der Wert dieses Typs ein Element dieses Verzeichnisses sein soll, bedeutet dies, dass der Werttyp ein Verzeichnis ist.

Öffnen wir die Form des Merkmalplans der Typen selbst:

Hier können Sie sehen, dass der Benutzer neue Eigenschaftstypen erstellt und deren Typ aus der bereitgestellten Typenliste auswählt. Die Liste der Typen wird, wie bereits erwähnt, in der Eigenschaft „Merkmalswerttypen“ festgelegt.

Eigenschaftstyp – Erscheinungsdatum, Werttyp – Datum

Immobilientyp - Lagerhalter, Werttyp - Link zum Verzeichnis „Privatpersonen“

Wenn der Benutzer einen Eigenschaftstyp „Farbe“ erstellt hat, befindet sich im Formular zum Erstellen eines Planelements auf der rechten Seite ein Link zu einem dem Plan untergeordneten Nachschlagewerk, in dem der Benutzer Farbwerte erstellen muss. Das Verzeichnisformular öffnet sich mit der Auswahl durch den Eigentümer automatisch, d. h. In Form einer Liste gibt es nur Farben und nicht die Werte aller Eigenschaften, wie im ersten Bild.


Reis. 4


Als nächstes wird das Informationsregister erstellt und warum es benötigt wird. Es speichert Eigenschaftstypen, Eigenschaftswerte und worauf sich diese Eigenschaften beziehen. Diese. keine Eigenschaften an sich, sondern in Verbindung mit einem Objekt. Zum Beispiel das Informationsregister „Werte von Produkteigenschaften“ (ich würde es „Artikeleigenschaften“ nennen). Diese. dass ein bestimmtes Produkt „Computertisch“ eine Farbe – „Blau“ und ein Material – „Eiche“ hat. Dies sind 2 Informationsregistereinträge:

Reis. 5


Registerstruktur:

Messungen- Nomenklatur und Art der Immobilie (Typ – Link zum Plan).

Ressource- Wert (der Merkmalstyp ist ein virtueller Typ, der alle Typen aus dem Plan umfasst).

Wir kommen also zu der Frage: Was ist diese Eigenschaft „Auswahlparameter-Links“ in der Informationsregisterressource? Dort haben wir Selection.Owner(PropertyType). Ich konnte nicht verstehen, worauf sich die Auswahl bezieht und was für ein Eigentümer ist der Eigentümer von was? Wir wissen nicht, welchen Typ der Wert haben wird.

Gehen wir der Reihe nach vor: Ich denke, dass die Auswahl eine Eigenschaft der Listenform des Verzeichnisses „Benutzereigenschaften“ ist

Die Syntaxhilfe sagt, dass die Verzeichnisliste eine „selection“-Eigenschaft vom Typ „selection“ hat (einige Eigenschaften in der Syntaxhilfe stehen in dreieckigen Klammern; sie werden im Artikel nicht angezeigt):

CatalogList.Directory-Name (CatalogList.Directory-Name)
Filter

Typauswahl:

Filter
Sammlungsgegenstände:
Auswahlelement
Für ein Objekt ist es möglich, die Sammlung mit dem Operator For every... From... Loop zu durchlaufen. Beim Crawl werden Auswahlelemente ausgewählt.
Der Zugriff auf das Auswahlelement ist über den Operator [...] möglich. Als Argument wird der Index des Elements (Nummerierung ab 0) übergeben.
Eigenschaften:
Name des Filterelements

Und die Auswahl hat auch die Eigenschaft „Name des Auswahlelements“

Diese. In diesem Fall lautet der Name des Auswahlelements „Owner“.

Der Eigentümer ist jedoch nur für Datensätze sinnvoll, die das Verzeichniselement „Benutzermerkmale“ als Ressource haben. Daraus schließe ich, dass diese Eigenschaft nur für solche Aufzeichnungen gilt. Diese. Für Datensätze mit den Eigenschaftstypen „Datum des Erscheinens“ und „Ladenbesitzer“ ist dies einfach nicht sinnvoll. Dann passt alles zusammen.

Es öffnet sich beispielsweise ein Informationsregister-Eintragsformular mit einem benutzerdefinierten Merkmal:

Reis. 6

Wenn wir zur Listenform des Nachschlagewerks „Custom Characteristics“ gehen, um eine Farbe auszuwählen, dann gibt es mit dem angegebenen Wert der Eigenschaft „Selection Parameter Links“ Selection.Owner(Property Type) nur Farben

Diese. Es werden nur die Eigenschaftswerte ausgewählt, deren Eigenschaftstyp Farbe ist. (Werte mit Besitzer „Farbe“ statt „Material“ zum Beispiel)

Diese. Die Form ist die gleiche wie im dritten Bild.

Die Schlussfolgerung, dass die Eigenschaft „Auswahlparameter-Links“ nur für zusätzliche Merkmalswerte gilt, wird durch die Tatsache bestätigt, dass, wenn wir diese Eigenschaft löschen, sie nur Datensätze mit zusätzlichen Eigenschaftstypen betrifft, und zum Beispiel bei der Auswahl eines Lagerhalters, Es öffnet sich immer, wie erwartet, ein Verzeichnis von Personen.

Mithilfe eines Plans von Merkmalstypen können Sie die Speicherung von Objekteigenschaften organisieren, die zum Zeitpunkt der Konfigurationsentwicklung noch nicht bekannt sind. Diese. Der Benutzer kann selbstständig neue Eigenschaften eingeben, zum Beispiel Farbe, Größe, Abmessungen, Leistung. Jede Produktgruppe kann ihre eigenen Eigenschaften haben: für Kühlschränke – das Volumen des Gefrierfachs, die Anzahl der Kompressoren, der Geräuschpegel; für Computer - die Größe des Arbeitsspeichers, die Größe der Festplatte; für Kleidung – Größe, Größe, Farbe usw. Basierend auf diesen Merkmalen können Sie dann Berichte erstellen, das Verkaufsvolumen analysieren und wertvolle Informationen für die Entscheidungsfindung erhalten.

Ein wichtiges Merkmal des Merkmalstypplans, das ihn von anderen Objekten unterscheidet, ist seine Eigenschaft „Werttyp“. Mit dieser Eigenschaft können Sie eine Liste möglicher Datentypen definieren, die für Merkmalstypen verwendet werden. Diese. Normalerweise wird ein zusammengesetzter Datentyp verwendet, und Sie können sowohl primitive Datentypen (Zahl, Zeichenfolge, Datum, boolescher Wert) als auch Referenzdatentypen (DirectoryLink, DocumentLink usw.) angeben. Für jeden Merkmalstyp wird der Wertetyp aus der Liste der ausgewählten Typen angegeben. Wählen Sie beispielsweise für das Merkmal Lieferant DirectoryLink.Counterparties aus. Der Benutzer kann im „Enterprise“-Modus neue Merkmale eingeben und für diese einen Wertetyp aus der Liste der im Konfigurator für den Merkmalstypenplan angegebenen Typen festlegen.

Eine weitere wichtige Eigenschaft des Plans der Merkmalstypen ist die Eigenschaft „Zusätzliche Merkmalswerte“, die ein untergeordnetes Verzeichnis, z. B. ObjectPropertyValues, mit möglichen Merkmalswerten angibt. Typischerweise wird dieses Nachschlagewerk vom Benutzer im „Enterprise“-Modus bei der Eingabe neuer Merkmalstypen verwendet, für die es in der Konfiguration keine passenden Nachschlagewerke gibt, dann kann der Benutzer im Nachschlagewerk ObjectPropertiesValues ​​​​eine Liste möglicher eintragen Werte für jede Art von Merkmal.

Als Beispiel können Sie sehen, wie der Eigenschaftenmechanismus in der Standardkonfiguration „Trade Management“ implementiert ist. Hierzu werden folgende Objekte verwendet:
- Plan der Arten von Eigenschaften von Objekten, das einen zusammengesetzten Datentyp als charakteristischen Werttyp verwendet, der primitive Datentypen (Zahl, Zeichenfolge, Datum, Boolescher Wert) und Links zu verschiedenen Anwendungsobjekten umfasst: Verzeichnisse, Dokumente, Aufzählungen.
- Referenzwerte von Objekteigenschaften, dem Plan der Merkmalstypen der Objekteigenschaften untergeordnet. Diese Referenz enthält eine Liste möglicher Werte für eine bestimmte Eigenschaft, beispielsweise eine Liste aller Farben für die Color-Eigenschaft: Rot, Grün, Weiß usw.
- Informationsregister ObjectPropertyValues, die über die Dimensionen Objekt (Verzeichnisverknüpfung, Dokumentverknüpfung) und Eigenschaft (Plan der Merkmalstypen, Verknüpfung. Objekteigenschaften) sowie eine Wertressource verfügt, die den Wert einer bestimmten Eigenschaft für ein bestimmtes Objekt enthält.

Notiz. Um das Verständnis zu vereinfachen, wird hier nicht auf den Mechanismus zur Zuweisung von Objekteigenschaften eingegangen. Dieser Mechanismus nutzt das Planattribut von Merkmalstypen und ein weiteres Informationsregister.

Eine weitere wichtige Anwendung des Merkmalsartenplans ist die analytische Bilanzierung von Unterkonten im Rechnungswesen. Hinsichtlich der Merkmalstypen werden vordefinierte Arten von Unterkonten erstellt, beispielsweise Gegenparteien, Artikel, Verträge usw. Diese Unterkontoarten werden dann dem im Kontenplan hinterlegten Konto zugeordnet. Der Benutzer im „Enterprise“-Modus kann auch neue Arten von Subcontos in den Plan der Merkmalstypen eintragen.

Betrachten Sie beispielsweise die Implementierung der Unterkontenbuchhaltung in der Demokonfiguration „Buchhaltung“, die auf der ITS-Festplatte bereitgestellt wird. Folgende Objekte werden verwendet:
- Plan der Arten von Merkmalen TypesSubconto. Als Werttypen werden Referenzdatentypen verwendet. Es wird dringend davon abgeraten, primitive Datentypen für die Unterkontobuchhaltung zu verwenden; dies würde die Systemleistung beeinträchtigen.
- Kontenplan Haupt, in dem dieser Merkmalsplantyp als Quelle von Unterkontotypen angegeben ist
- Subconto-Verzeichnis, dem Plan der Merkmalstypen untergeordnet.

...Die Detailabrechnung erfolgt im Kontext von Merkmalen und Eigenschaften und muss anhand eines Merkmalsartenplans umgesetzt werden. Eine Reihe von Eigenschaften definiert ein Merkmal. Ein Teil kann mehrere unterschiedliche Eigenschaften haben...

Lösung

Im Wesentlichen muss Folgendes implementiert werden: Erstellen Sie im Verzeichnis „Nomenklatur“ ein untergeordnetes Verzeichnis „Nomenklaturmerkmale“ und organisieren Sie die Möglichkeit, dass letzteres die Werte der Eigenschaften speichert, die das Merkmal definieren.

1. Fügen Sie das Verzeichnis „Item Characteristics“ zur Konfiguration hinzu und unterordnen Sie es dem Verzeichnis „Nomenclature“.

2. Für den Plan der Merkmalstypen „Eigenschaften von Objekten“ definieren wir die „Wertart von Merkmalen“. Muss alle Arten von Werten enthalten, die verschiedene Eigenschaften annehmen können.

3. Um Eigenschaftswerte zu speichern, erstellen wir ein Informationsregister „Objekteigenschaftswerte“.
Messungen:

  • Objekt, Typ „Directory.CharacteristicsNomenclature“ (Sie können andere Typen hinzufügen; ein Verzeichnis reicht aus, um dieses Problem zu lösen);
  • Eigenschaft, Typ „Plan der Arten von Merkmalen.Eigenschaften von Objekten“;
  • Wert, Typ „Merkmal.Eigenschaften von Objekten“, der durch den Plan der Merkmalstypen „Eigenschaften von Objekten“ definiert wird.

AUFMERKSAMKEIT!!! Hier müssen Sie nicht den Typ „Plan der Typen von MerkmalenLink.Eigenschaften von Objekten“ auswählen, sondern den Typ „Merkmale.Eigenschaften von Objekten“.

4. Um den Typ des Attributs „Wert“ abhängig vom Typ des ausgewählten Werts des Attributs „Eigenschaft“ zu bestimmen, füllen Sie die Eigenschaft „Beziehung nach Typ“ aus, indem Sie das Attribut „Eigenschaft“ angeben.

Endeffekt

Das Problem ist gelöst; bei der Lösung des Problems wird die Schaffung von Schönheit nicht berücksichtigt (Angeben der Überschriften von Formen verschiedener Entitäten, Aufteilen von Objekten in Subsysteme, Erstellen von Formen, Überprüfen von Daten auf Richtigkeit, Bilden des Namens eines Merkmals in Abhängigkeit von den Eigenschaftswerten). .

Nach dem Start der entwickelten Anwendungslösung und der Eingabe der Daten erhalten wir die erforderliche Funktionalität