16.09.2024
Heim / Anweisungen / 1s benutzerdefinierte SKD-Felder. Ausdruckssprache des Datenkompositionssystems (1Cv8). Vorgang zum Überprüfen eines Werts auf NULL-Ungleichheit

1s benutzerdefinierte SKD-Felder. Ausdruckssprache des Datenkompositionssystems (1Cv8). Vorgang zum Überprüfen eines Werts auf NULL-Ungleichheit

Wir haben die Einstellungen der Berichte, die auf der Grundlage des Zutrittskontrollsystems implementiert wurden, eingehend untersucht. Schauen wir uns nun die subtileren und detaillierte Einstellungen Berichtsoptionen. Das Fenster für „erweiterte“ Einstellungen der Berichtsoption wird über den Befehl „Mehr“ – „Sonstiges“ – „Berichtsoption ändern“ aufgerufen.

Das Fenster zum Ändern der Berichtsversion ist in zwei Teile unterteilt:

1. Berichtsstruktur.

2. Berichtseinstellungen.


Der Abschnitt „Struktur“ der Berichtsoptionen ähnelt der Registerkarte „Struktur“ der Standardberichtseinstellungen. Der Zweck und die Konfiguration von Gruppierungen werden in Teil 1 des Artikels ausführlich erläutert.

Die Strukturtabelle der Berichtsvarianten enthält neben der eigentlichen Spalte mit Gruppierungen mehrere zusätzliche Spalten:

Der Abschnitt mit den Berichtsoptionseinstellungen bietet dem Benutzer zahlreiche Möglichkeiten, den Bericht entsprechend seinen Anforderungen zu konfigurieren. Es stimmt fast vollständig mit den in Teil 1 besprochenen Standardberichtseinstellungen überein. Schauen wir uns alle Registerkarten des Abschnitts an und beachten Sie die Unterschiede.

Der Einstellungsbereich besteht aus den folgenden Registerkarten:

1. Parameter. Enthält ACS-Parameter, die dem Benutzer zur Verfügung stehen.

Der SKD-Parameter ist ein Wert, der zum Abrufen von Berichtsdaten verwendet wird. Dies kann ein Bedingungswert zur Auswahl oder Überprüfung von Daten sein, aber auch ein Hilfswert.


Die Parametertabelle wird im Format „Parameter“ – „Wert“ dargestellt. Bei Bedarf können Sie die Parameterwerte ändern. Durch Klicken auf die Schaltfläche „Elementeigenschaften für benutzerdefinierte Einstellungen“ werden die benutzerdefinierten Einstellungen des Elements geöffnet.


In diesem Fenster können Sie auswählen, ob das Element in die Benutzereinstellungen aufgenommen werden soll (d. h. für den Benutzer beim Einrichten des Berichts sichtbar ist), den Präsentations- und Bearbeitungsmodus des Elements festlegen (Schnellzugriff im Berichtskopf, normal im). Berichtseinstellungen und nicht zugänglich).

Die Eigenschaften von benutzerdefinierten Einstellungselementen verfügen außerdem über gruppierbare Felder, Ränder, Auswahlmöglichkeiten und bedingte Darstellungselemente.

2. Benutzerdefinierte Felder. Enthält Felder, die vom Benutzer selbst basierend auf den vom Bericht ausgewählten Daten generiert werden.


Der Benutzer kann zwei Arten von Feldern hinzufügen:

  • Neues Auswahlfeld...
  • Neues Ausdrucksfeld...

Mit Auswahlfeldern können Sie einen Wert basierend auf einer bestimmten Bedingung berechnen. Das Auswahlfeld-Bearbeitungsfenster enthält einen Feldtitel und eine Tabelle, in der Auswahl, Wert und Darstellung des Feldes angegeben werden. Die Auswahl ist eine Bedingung, abhängig davon, welcher Wert durch den gewünschten Wert ersetzt wird.


Lassen Sie uns beispielsweise eine Schätzung der Anzahl der Verkäufe berechnen. Wir gehen davon aus, dass wir wenig verkauft haben, wenn weniger als 10 Einheiten eines Produkts verkauft wurden, und wenn mehr als 10 Einheiten verkauft wurden, haben wir viel verkauft. Dazu legen wir 2 Werte des berechneten Feldes fest: Der erste wird mit der Auswahl „Anzahl der Waren kleiner oder gleich „10““ sein, der zweite mit der Auswahl „Anzahl der Waren größer als „10“. „“.

Mit Ausdrucksfeldern können Sie einen Wert mithilfe beliebiger Algorithmen berechnen. Sie können die Funktionen der Abfragesprache und der integrierten 1C-Programmiersprache nutzen. Das Bearbeitungsfenster für Ausdrucksfelder enthält zwei Felder für Ausdrücke von Detail- und Zusammenfassungsdatensätzen. Gesamtdatensätze sind im Bereich „Berichtsstruktur“ konfigurierte Gruppierungen; sie müssen Aggregatfunktionen („Summe“, „Minimum“, „Maximum“, „Menge“) verwenden.

Berechnen wir zum Beispiel den durchschnittlichen Rabattprozentsatz. Der durchschnittliche Rabattprozentsatz wird anhand der Formel berechnet: [Verkaufsbetrag ohne Rabatt] – [Verkaufsbetrag mit Rabatt] / [Verkaufsbetrag ohne Rabatt]. Es ist wichtig zu bedenken, dass der Verkaufsbetrag ohne Rabatt Null sein kann, daher verwenden wir zur Überprüfung den SELECT-Operator. Wir erhalten die folgenden Ausdrücke:

· Für detaillierte Einträge:

Auswahl

Wenn [Verkaufsbetrag ohne Rabatt] = 0

Dann 0

Ansonsten [Umsatzbetrag ohne Rabatt] - [Umsatzbetrag mit Rabatt] / [Umsatzbetrag ohne Rabatt]

Ende

· Für zusammenfassende Aufzeichnungen:

Auswahl

Wenn Betrag([Verkaufsbetrag ohne Rabatt]) = 0

Dann 0

Ansonsten Summe([Verkaufsbetrag ohne Rabatt]) - Summe([Verkaufsbetrag mit Rabatt]) / Summe([Verkaufsbetrag ohne Rabatt])

Ende

Wie bereits erwähnt, verwenden wir im Ausdruck der Gesamtdatensätze die Aggregatfunktion „Summe“.

3. Gruppierbare Felder. Enthält Felder, nach denen die Ergebnisse der Berichtsvariante gruppiert werden. Gruppierte Felder werden für jede Gruppierung separat konfiguriert. Sie können jedoch allgemeine gruppierte Felder für eine Berichtsoption festlegen, wenn Sie im Strukturbaum den Stamm „Bericht“ auswählen. Sie können ein Feld aus dem Berichtsergebnis oder ein benutzerdefiniertes Feld hinzufügen oder ein automatisches Feld auswählen. Das System wählt die Felder dann automatisch aus. Auf dieser Registerkarte können Sie auch die Reihenfolge der gruppierten Felder ändern.


4. Felder. Enthält die Felder, die als Ergebnis der Reportvariante ausgegeben werden. Felder werden für jede Gruppierung separat konfiguriert. Sie können jedoch gemeinsame Felder für eine Berichtsoption festlegen, wenn Sie im Strukturbaum den Stamm „Bericht“ auswählen. Sie können ein Feld aus dem Berichtsergebnis oder ein benutzerdefiniertes Feld hinzufügen oder ein automatisches Feld auswählen. Das System wählt die Felder dann automatisch aus. Auf dieser Registerkarte können Sie auch die Reihenfolge der Felder ändern.

Felder können gruppiert werden, um jeden Teil des Berichts logisch hervorzuheben oder eine spezielle Spaltenanordnung festzulegen. Beim Hinzufügen einer Gruppe wird die Spalte „Standort“ aktiv und ermöglicht Ihnen die Auswahl einer der Standortoptionen:

  • Auto – das System platziert Felder automatisch;
  • Horizontal – Felder werden horizontal positioniert;
  • Vertikal – Felder sind vertikal angeordnet;
  • In einer separaten Spalte – Felder befinden sich in verschiedenen Spalten;
  • Zusammen – die Felder befinden sich in einer Spalte.


5. Auswahl. Enthält Auswahlen, die in der Berichtsvariante verwendet werden. Das Einrichten von Auswahlen wurde in Teil 1 dieses Artikels ausführlich besprochen. Filter werden für jede Gruppierung separat konfiguriert. Sie können jedoch allgemeine Filter für eine Berichtsoption festlegen, wenn Sie im Strukturbaum den Stamm „Bericht“ auswählen.


6. Sortieren. Enthält die in der Reportvariante verwendeten Sortierfelder. Das Einrichten von Sortierfeldern wurde in Teil 1 dieses Artikels ausführlich besprochen. Die Sortierung wird für jede Gruppierung separat konfiguriert. Sie können jedoch allgemeine Sortierfelder für eine Berichtsoption festlegen, wenn Sie im Strukturbaum die Wurzel „Bericht“ auswählen.


7. Bedingte Registrierung. Enthält bedingte Designelemente, die in der Berichtsvariante verwendet werden. Das Einrichten einer bedingten Darstellung wurde in Teil 1 dieses Artikels ausführlich besprochen. Das bedingte Erscheinungsbild wird für jede Gruppierung separat konfiguriert. Sie können jedoch allgemeine Elemente des bedingten Erscheinungsbilds für eine Berichtsoption festlegen, wenn Sie im Strukturbaum den Stamm „Bericht“ auswählen.


8. Zusätzliche Einstellungen. Enthält zusätzliche Einstellungen Erstellung des Berichts. Ermöglicht die Auswahl einer gemeinsamen Option Aussehen Bericht, Position von Feldern, Gruppierungen, Details, Ressourcen, Summen, Diagrammeinstellungen festlegen, Anzeige von Titel, Parametern und Auswahl steuern, Position von Ressourcen bestimmen und Kopf- und Gruppierungsspalten der Berichtsversion festlegen.


Abschließend möchte ich darauf hinweisen, dass Berichtseinstellungen nicht nur als Berichtsoption gespeichert, sondern auch in eine Datei hochgeladen werden können (Menü „Mehr“ – „Einstellungen speichern“). Zum Herunterladen müssen Sie „Einstellungen laden“ auswählen und die gespeicherte Datei auswählen. Somit können wir Berichtsvarianteneinstellungen zwischen verschiedenen Datenbanken übertragen, die die gleiche Konfiguration haben.


Auf dieser Grundlage können wir zusammenfassen, dass der Benutzer den Bericht nicht nur selbstständig an seine Bedürfnisse anpassen, sondern auch seine Einstellungen speichern und bei Bedarf in Zukunft verwenden kann.

Berichte über Datenkompositionssystem(SKD) in modernen 1C-Konfigurationen sind zum Standard geworden. Sie sind praktisch, weil Benutzer die Einstellungen selbst bearbeiten können, ohne die Hilfe von Programmierern. Dies wird weiter besprochen.

Die geänderte Version des Berichts lässt sich problemlos in der Datenbank speichern und parallel zum Original verwenden. Wenn etwas schief geht, können Sie gleichzeitig zu den Standardeinstellungen zurückkehren. Im benutzerdefinierten Modus können Sie jedem Bericht im Zutrittskontrollsystem ein zusätzliches Feld hinzufügen und darauf basierend Auswahl, Gruppierung, Sortierung oder bedingte Formatierung konfigurieren.

Sehen wir uns das Hinzufügen eines benutzerdefinierten Felds am Beispiel eines Standardberichts an. Fluktuationsrate der Mitarbeiter in der Konfiguration 1C: Gehälter und Personalmanagement 3.1.

Die Fluktuationsrate im Bericht kann entweder für die gesamte Organisation oder pro Position berechnet werden. Angenommen, wir müssen die Fluktuationsrate für eine Personalkategorie ermitteln, bei der es sich um eine Liste von Positionen handelt.

Aufmerksamkeit! In älteren Konfigurationen würde dies das Hinzufügen zusätzlicher Requisiten erfordern Kategorie zum Verzeichnis Positionen, und entwickeln Sie dann Ihre eigene Version des Berichts, die diese Daten berücksichtigt.

Aber mit SKD ist alles viel einfacher geworden.

1. Speichern wir zunächst über die Schaltfläche eine neue Version des Berichts Wählen Sie eine Berichtsoption aus oder speichern Sie eine neue – Option „Bericht speichern“.:

Geben Sie im sich öffnenden Fenster den Namen der neuen Berichtsversion ein und klicken Sie dann auf die Schaltfläche Speichern. Benutzer mit Rechten Administrator Sie können die Einstellung für alle Benutzer speichern.

2. Jetzt fügen wir unser Feld hinzu. Gehen Sie zum Menü Alle Aktionen(oder Mehr in der 1C 8.3-Schnittstelle) – Sonstiges – Berichtsversion ändern.

Gehen Sie dann zur Registerkarte Benutzerdefinierte Felder Klicken Sie unten im Optionsbearbeitungsformular auf die Schaltfläche Hinzufügen – Neues Auswahlfeld:

Wir geben den Namen unseres Fachgebiets ein und gehen zum Ende des Formulars, wo wir die Positionen in die von uns benötigten Kategorien einteilen. Klicken Hinzufügen, geben Sie den Feldwert und seine Darstellung ein und fahren Sie dann mit der Bearbeitung der Auswahl fort, indem Sie in der Spalte auf „…“ klicken Auswahl:

Wählen Sie das Feld auf der linken Seite des Fensters aus Berufsbezeichnung, doppelklicken oder ziehen Sie, um es in die rechte Tabelle zu verschieben. Auswahl der Vergleichsart Auf der Liste, und fahren Sie dann mit der Bearbeitung der Liste fort, indem Sie in der Spalte auf die Schaltfläche „…“ klicken Bedeutung:

Wir füllen die Liste manuell oder per Button mit den benötigten Positionen Auswahl. Zum Beispiel in der Kategorie Administrativ Lassen Sie uns die Position zuweisen Direktor Und Administrator, zur Kategorie Linear -Verkäufer und Buchhalter, und zur Kategorie Sicherheit -Chef der Sicherheitund Sicherheitsbeamter.

Aufmerksamkeit! T Listenwerttyp - Nummer, und wir geben den Namen der Kategorie in das Feld ein Leistung. Wenn die Listenwerte sofort dem Typ zugewiesen werden Linie, können wir in Zukunft keine korrekte Auswahl nach diesem Feld einrichten. Die Auswahl nach Zeichenfolgenfeldern wird nur nach dem Prinzip „Gefüllt/Nicht gefüllt“ konfiguriert.

3. Jetzt richten wir die Auswahl ein. Gehen Sie zur Registerkarte Auswahl. Wir suchen am Ende der Liste links nach einem Ordner Benutzerdefinierte Felder, und darin ist ein Feld Personalkategorie, verschieben Sie es auf die rechte Seite.

Klicken Sie dann mit der rechten Maustaste auf die Auswahlzeile und wählen Sie aus Eigenschaften des benutzerdefinierten Einstellungselements.

Setzen der Flagge In Benutzereinstellungen einbeziehen und wählen Sie den Bearbeitungsmodus - Schneller Zugriff. Dadurch können Sie die Selektionseinstellungen nach Personalkategorie direkt im Berichtskopf verwalten.

4. Fügen wir nun die Gruppierung nach benutzerdefiniertem Feld hinzu. Gehen Sie dazu nach der Gruppierung nach Feldern vor Organisation Und Entstehungszeit Wir fügen eine Gruppierung nach Personalkategorie hinzu und übertragen die Gruppierung nach Position darauf. Wählen Sie dann die Gruppierung aus Kategorie Mitarbeiter und gehen Sie zur Registerkarte Zusätzliche Einstellungen . Setzen der Flagge Das aktuelle Element verfügt über eigene zusätzliche Einstellungen, suchen Sie in der unteren Liste nach dem Parameter Vertikale Anordnung der Gesamtsummen und setzen Sie den Wert auf Ende.

5. Versuchen wir, einen Bericht zu erstellen:

Der Bericht ist als Ganzes fertig, kann aber bei Bedarf noch ein wenig verbessert werden.

6. Die Gruppierung nach Personalkategorie erfolgt auf die gleiche Weise wie in der zuvor ausgefüllten Liste. Wenn Sie anders sortieren möchten, aber zum Beispiel absteigend, können wir auf den Reiter gehen Sortierung, fügen Sie der Feldliste die Personalkategorie hinzu und konfigurieren Sie sie wie folgt:

Bitte beachten Sie, dass benutzerdefinierte Felder nach Wert und nicht nach Ansicht sortiert werden.

7. Sie können die bedingte Darstellung von Berichtsfeldern konfigurieren. Gehen Sie dazu auf die Registerkarte Bedingtes Design und fügen Sie der Liste ein neues Element hinzu. Wählen Sie eine Registerkarte aus Zustand, fügen Sie das erforderliche Feld auf der rechten Seite hinzu und konfigurieren Sie es:

Auf der Registerkarte Anmeldung Wir legen das erforderliche Design für Felder fest, die die Bedingung erfüllen. Zum Beispiel rote Schriftfarbe. Speichern wir unsere Einstellungen:

Der Bericht sieht nun so aus:

Für ein kompetentes Management benötigt jede Handelsorganisation den zeitnahen Erhalt von Informationen über den aktuellen Waren-, Umsatz- und Gewinnzustand. Wenn wir jedoch bedenken, dass Organisationen häufig mit einem breiten Warenspektrum und einer großen Anzahl von Gegenparteien arbeiten, dann spielt das Anpassungstool für Analyseberichte eine wichtige Rolle bei der Beschaffung der erforderlichen Informationen. Werfen wir einen genaueren Blick auf die Arbeit mit benutzerdefinierten Feldern in Standardprogrammberichten (Rev. 11).

Die Entwicklung der 1C: Enterprise 8-Plattform bietet Nutzern immer mehr Möglichkeiten. Beispielsweise wurden Berichte in Version 8.2 flexibler, sodass sie ohne die Hilfe qualifizierter Programmierer an verschiedene Anforderungen angepasst werden können.

Berichtseinstellungen ändern

Um Berichtseinstellungen anzuzeigen oder zu ändern, gehen Sie zum Menü „Alle Aktionen“ und wählen Sie den Befehl „Option ändern“. Danach öffnet sich vor dem Benutzer ein Fenster mit Einstellungen für den geöffneten Bericht.

Im oberen Teil des Einstellungsfensters sehen Sie die Berichtsstruktur, die nichts anderes als eine visuelle Widerspiegelung der Berichtsspalten und der Gruppierung ihrer Zeilen ist und es im Wesentlichen ermöglicht, sich die Reihenfolge vorzustellen, in der die Analysedaten darin angezeigt werden Bericht.

Am unteren Rand des Einstellungsfensters werden die tatsächlichen Informationen und Feldeinstellungen angezeigt, die sich entweder auf den Bericht oder auf die Elemente seiner Struktur (Spalten und Zeilengruppierungen) beziehen.

Benutzerdefinierte Felder

Im Programm 1C: Handelsmanagement 8 Die Berichtseinstellungen der Edition 11 bieten Benutzern mehr Optionen bei der Erstellung.

Im Fenster zum Bearbeiten von Einstellungen und Berichtsstruktur möchten wir die Benutzer besonders auf die Registerkarte „Benutzerdefinierte Felder“ aufmerksam machen, mit der Sie eigene Felder erstellen und dem Bericht hinzufügen können. Es sei daran erinnert, dass der Benutzer bisher nur die Felder verwenden konnte, die vom Entwickler implementiert wurden.

Schauen wir uns die Verwendung dieser Funktion anhand eines Beispiels an.

Nehmen wir an, der Leiter eines Handelsunternehmens, das Waren in Moskau und den Regionen verkauft, möchte den Bericht „Verkaufshistorie“ an seine Bedürfnisse anpassen und darin Daten zum Verkauf von Produkten in Moskau und den Regionen im Allgemeinen anzeigen sowie an Partner. Dies ist mit benutzerdefinierten Feldern sehr einfach zu bewerkstelligen.

Somit zeigt ein anschauliches Beispiel, dass flexible Einstellungen für benutzerdefinierte Felder in einem Standardprogramm möglich sind 1C: Handelsmanagement 8 Bieten Sie dem Benutzer zahlreiche Möglichkeiten zur individuellen Anpassung von Berichten, sodass er schnell und in bequemer Form die erforderlichen Informationen erhalten kann.

Hinzufügen eigener Spalten zu vorgefertigten Berichten.
In Berichten, die mit dem „Data Composition Scheme“ im Benutzermodus erstellt wurden, können Sie Ihre eigenen Felder hinzufügen, die während der Generierung angezeigt werden.
In diesen Feldern können Sie arithmetische Operationen verwenden.

Vor langer Zeit habe ich einen Bericht „Warenverkäufe per Sendung“ geschrieben http://infostart.ru/public/16477/. In dieser Veröffentlichung werden wir nicht auf seine Relevanz und Vorteile eingehen. Dieser Bericht wird als Vorlage für Experimente und Modifikationen verwendet. Darüber hinaus fragten sie in den Kommentaren, wie man Felder hinzufügt.

Öffnen Sie „Einstellungen…“ und gehen Sie zur Registerkarte „Benutzerdefinierte Einstellungen“.

2. Fügen Sie einen „Neuen Feldausdruck“ hinzu

Beim Hinzufügen von Feldern werden arithmetische Operationen zwischen den verfügbaren Feldern geschrieben (diese können mit einem grünen Quadrat markiert werden). Auch eine Funktion: Wenn der Name eines solchen Feldes aus zwei oder mehr Wörtern besteht, muss er eingeschlossen werden eckige Klammern. Es wird so aussehen: [Verkaufsbetrag].

Nach dem Speichern steht dieses Feld zur Auswahl zur Verfügung:

Mit einfachen Handgriffen erhalten Sie den Wert, den Sie benötigen. Mit dieser Funktion können Sie die erforderlichen Felder hinzufügen. In solchen Berechnungsoptionen, wie Sie benötigen. Rentabilität, Effizienz und andere Werte werden in Ihrer arithmetischen Berechnungslogik berücksichtigt.

In diesem Fall geht Ihre Arbeit nicht verloren und Sie können sie beim nächsten Öffnen des Berichts verwenden.

Beim Schreiben von Feldern verwendete Funktionen.

  • Die Arithmetik „+, -, *, /“ ist verständlich, ich denke, es besteht keine Notwendigkeit, das Funktionsprinzip zu erklären.
  • Logische Ausdrücke werden verwendet, um Auswahlen zu bestimmen. « > ,< , = , >= , <= , <>, UND, ODER, NICHT.“ Diese Ausdrücke werden mit der Auswahloperation verwendet.
  • Auswahloperationen. Wird verwendet, um einen der möglichen Werte gemäß den angegebenen Bedingungen zu erhalten

AUSWAHL
WANN< Операция выбора >DANN<Выражение>
ANSONSTEN<Выражение>
ENDE
Beispiel:
AUSWAHL
WENN Menge > 0 und Menge > 0, DANN „Richtig“
ELSE „Fehler“
ENDE

Dies wird wie folgt entschlüsselt: Sofern die Menge größer als Null ist und die Beträge größer als Null sind, wird der Text „Richtig“ angezeigt, und wenn mindestens eine der Bedingungen nicht erfüllt ist, wird „Fehler“ angezeigt.

  • Mit einer integrierten Funktion können Sie bestimmte Transformationen mit Feldern durchführen.

SUB-STRING („Ausdruck“, „Startposition“, „Endposition“) – wählt den Teil des „Ausdrucks“ aus, der durch die Frames „Start...“ und „Ende...“ begrenzt wird.
Wie passiert das, wenn der Nomenklaturwert „Schokoladenpaste“ lautet? Die Formel „Substring(Nomenclature,1,5)“ zeigt den Wert „Paste“ an.

Um mit dem Datum zu arbeiten, verwenden Sie die Funktionen

JAHR(<Дата>), QUARTAL(<Дата>), MONAT(<Дата>), TAGESJAHR(<Дата>), TAG(<Дата>), WOCHE(<Дата>), WOCHENTAG(<Дата>),STUNDE(<Дата>), MINUTE(<Дата>), ZWEITE(<Дата>)

Der dem Funktionsnamen entsprechende Wert wird angezeigt.

ZEITBEGINN („Datum“, „Schichtzeitraum“), ZEITRAUMENDE („Datum“, „Schichtzeitraum“). Bei Funktionsdaten liegt der Wert des Datumsausdrucks am Anfang oder Ende des angegebenen Datums.

ADDCDATE („Datum“, „Verschiebungszeitraum“, „Betrag, um den Sie das Datum erhöhen möchten“) – Mit der Funktion können Sie das Datum um einen bestimmten Wert erhöhen oder verringern.

DATUMSDIFFERENZ („Datum1“, „Datum2“, „Schichtzeitraum“) – Die Funktion dient dazu, die Differenz zwischen zwei Datumsangaben zu ermitteln.

„Schichtperiode“ ist eine von „Minute, Stunde, Tag, Woche, Monat, Quartal, Jahr, Jahrzehnt, Halbjahr“.

5. Aggregationsfunktionen der Abfragesprache werden bei der Gruppierung von Ergebnissen und der Berechnung von Summen verwendet

SUMME (<>) die arithmetische Summe aller in der Stichprobe enthaltenen Werte.
DURCHSCHNITT (<>) berechnet den Durchschnittswert aller in der Stichprobe enthaltenen Werte
MINDESTENS (<>) berechnet Mindestwert aus allen in der Stichprobe enthaltenen Werten
MAXIMAL (<>) berechnet den Maximalwert aus allen in der Stichprobe enthaltenen Werten
MENGE (<>) zählt die Anzahl der in der Stichprobe enthaltenen Parameterwerte. Mit dieser Funktion stehen Ihnen Optionen zur Nutzung zur Verfügung. COUNT(*) – ermöglicht Ihnen, die Anzahl der Zeilen im Ergebnis zu zählen. QUANTITY(DIFFERENT „Expression“) – ermöglicht Ihnen, die Anzahl der verschiedenen Werte des angegebenen Feldes zu zählen.

Betrag(Auswahl
Wenn Teilzeichenfolge (Nomenklatur, 1, 5) = „Einfügen“
Dann Menge *0,2
Ansonsten Menge *0,35
Ende)

Das Ergebnis ist die Summe der Werte; wenn „Einfügen“ am Anfang des Nomenklaturnamens steht, erhöht sich die Menge in diesem Fall um 0,2, wenn nicht, erhöht sie sich um 0,35.

Jahr([Dokument.Datum])

Es wird das Jahr angezeigt, in dem das Dokument erfasst/verbucht wurde.

Ein komplexeres Beispiel ohne Dekodierung.

Auswahl
Wenn Quarter([Document.Date]) = 1 AND Substring(Nomenclature, 1, 5) = „Paste“
Dann ist Menge * 0,2
Ansonsten Wahl
Wenn Quarter([Document.Date]) = 2
Dann ist Menge * 0,3
Ansonsten Wahl
Wenn Quarter([Document.Date]) = 3
Dann ist Menge * 0,4
Ansonsten Wahl
Wenn Quarter([Document.Date]) = 4
Dann Menge * 0,5
Ende
Ende
Ende
Ende

Der Bericht erhält die Warenbestände in den Lagern in verschiedenen Abschnitten (Merkmale, Serien, Maßeinheiten usw.). Um das Beispiel nicht zu verkomplizieren, belassen wir es bei der Gruppierung nach Posten und der Anzeige nur des Endsaldos zum Stichtag. In der Abschlusstabelle werden die Salden des Artikels in den Lagern angezeigt.

Doch dann meldete der Benutzer, dass er zwei zusätzliche Felder hinzufügen musste:

  1. Mengenalarm. Wenn die Menge kleiner oder gleich 5 ist, lautet die Warnung „Unzureichend“. Wenn die Menge größer als 5 und dann kleiner oder gleich 10 ist, lautet die Warnung „Normal“. Wenn die Menge mehr als 10 beträgt, dann „Overabundance“.
  2. Formel zur Berechnung des Endsaldos. In der zusätzlichen Spalte möchte der Benutzer sehen, welche Aktionen das Programm durchgeführt hat, um den endgültigen Saldowert zu erhalten. Das heißt, die Formel „ Eröffnungsbilanz+ Umsatz = Endsaldo“, wobei die entsprechenden Werte ersetzt werden.

Natürlich könnte hier ein Programmierer eingreifen und die Anforderungs- und Berichtseinstellungen für das Datenzusammensetzungsschema ändern, aber wir werden die Aufgabe im Benutzermodus erledigen, ohne den Bericht im Konfiguratormodus zu ändern.

Zusätzliche Felder

Also, fangen wir an. Gehen wir zu den Berichtsoptionseinstellungen:

Der Einstellungsdesigner für die ACS-Berichtsoption wird vor uns geöffnet. Indem wir zur Registerkarte „Benutzerdefinierte Felder“ gehen, beginnen wir mit der Erstellung.

Der Screenshot zeigt bereits zwei erstellte benutzerdefinierte Felder, deren Funktionalität oben beschrieben wurde. Schauen wir uns die jeweiligen Einstellungen an. Beginnen wir mit dem Feld „Benachrichtigung“.

In den Einstellungen müssen wir den Feldtitel festlegen, der im Bericht angezeigt wird, sowie Ausdrücke für die Generierung des Werts im Detaildatenfeld und in den Summen für dieses Feld festlegen. Da die Warnung nicht in den Gesamtsummen angezeigt werden muss, schreiben wir einen Ausdruck nur für detaillierte Datensätze.

Die Ausdruckssyntax ähnelt der 1C:Enterprise-Abfragesprache. Es gibt einige Unterschiede, auf die wir in diesem Artikel jedoch nicht näher eingehen. Der Ausdruck verwendet den Auswahloperator:

"„Wahl, wann, dann, sonst, das Ende“

ähnlich einem Operator in einer Abfragesprache. Felder in benutzerdefinierten Feldausdrücken werden durch ihre Darstellung angegeben. Damit die Plattform versteht, dass die eingegebene Ansicht ein bestimmtes Feld darstellt, wird der Ansichtsname in eckige Klammern „“ eingeschlossen. Wenn die Felddarstellung ein Wort ist, sind die eckigen Klammern optional. Im obigen Beispiel betrachten wir das Feld Endsaldo.

Die Einstellungen für das Feld „Formel zur Berechnung des Endsaldos“ werden auf die gleiche Weise vorgenommen:


Hier müssen einige Nuancen erwähnt werden:

  1. Wir können die Formel in einer Zelle nur als Linie anzeigen. Daher konvertieren wir alle numerischen Werte in einen String, indem wir die SKD-Ausdruckssprachenmethode „String()“ verwenden, die jeden Wert in einen String umwandelt. Dann führen wir eine String-Verkettung durch.
  2. Damit das Feld in den Berichtssummen angezeigt wird, fügen wir dem Ausdruck der Gesamtdatensätze eine ähnliche Formel hinzu. Sie müssen lediglich für jeden Wert entsprechend den Summen die Aggregationsfunktionen „SUM()“ hinzufügen.

Sie können jetzt Felder in Ihrem Bericht verwenden!

Einrichten und Erstellen eines Berichts

Fügen Sie das Feld „Formel zur Berechnung des Endsaldos“ zu den Ausgabefeldern des Berichts hinzu:

Wir werden den detaillierten Artikeldatensätzen den Ausdruck „Benachrichtigung“ hinzufügen. Fügen Sie dazu das Ausdrucksfeld „Benachrichtigung“ zur Gruppierung „Nomenklatur“ hinzu. Danach sieht die Berichtsstruktur wie folgt aus:

Die Berichtseinrichtung ist nun abgeschlossen. Bei Bedarf können die hinzugefügten Einstellungen zur Wiederverwendung gespeichert werden. Lassen Sie uns einen Bericht erstellen:

Wie wir sehen können, wurden dem Bericht entsprechend den Bedingungen der Aufgabe Felder hinzugefügt. Gleichzeitig war keine Änderung des Berichts im Konfiguratormodus erforderlich. Dies ist der Hauptvorteil von benutzerdefinierten Feldern! Ein darin geschulter Benutzer kann damit intern einen Bericht über seine Anforderungen erstellen, ohne die Hilfe eines Programmierers.

Glauben Sie mir, es ist möglich, ihm beizubringen, diese Funktionen zu nutzen, denn es ist viel einfacher, als Formeln in Excel-Tabellen zu schreiben.