Beiträge mit dem Schlagwort „Layouts“. StavAnalit. Kontaktinformationen Gestaltung des Berichtskopfes im SD-Layout 8.2

wie Sie Ihr eigenes Layout in einem Datenkompositionssystem (DCS) erstellen.

Wir schulen die Konfiguration „Trade Management 11“.

Aufgabe. Es ist notwendig, die Rechnung in folgender Form auszudrucken:

1. Lassen Sie uns einen externen Bericht erstellen. Lassen Sie uns ein grundlegendes Datenzusammensetzungsschema (SDS) erstellen. Ich werde weglassen, wie man eine Anfrage erstellt, Parameter und Ressourcen definiert. In den Einstellungen werden wir 3 Gruppen definieren.

2. Legen wir Namen für alle Gruppen fest: Kopfzeile, TCHProducts (Tabelle), Fußzeile.

3. Um ein festes Layout zu definieren, gehen Sie auf die Registerkarte „Layouts“.

4. Lassen Sie uns ein Design-Layout für die Gruppierung „Hut“ erstellen. Die Kopfgruppierung umfasst die folgenden Felder: Nummer, Datum, Versender, Empfänger.

Wählen Sie den Punkt „Gruppierungslayout hinzufügen“. Wählen Sie im sich öffnenden Dialog den Gruppennamen „Kopfzeile“ und den Layouttyp „Kopfzeile“ aus.

Im rechten Fenster konfigurieren wir wie bei einem normalen gedruckten Formularlayout die Eigenschaften der Zellen, in denen sich der Dokumentkopf befindet, und legen die Grenzen des Gruppendesign-Layoutbereichs „Kopfzeile“ fest. Standardmäßig versucht die Plattform, Ausdrücke für alle Parameter zuzuweisen, die in den Ausgabebereich fallen.

5. Um den tabellarischen Teil anzuzeigen, müssen Sie drei Design-Layouts erstellen:

Layout-Gruppierungsüberschriften – zur Anzeige der Tabellenüberschrift
Gruppierungslayout – zum Anzeigen von Tabellenzeilen
Gruppierungslayout – zur Anzeige der Gesamtsumme für die Tabelle.

Fügen wir ein Gruppierungskopflayout hinzu, um den Gruppierungskopf (Tabellenkopf) anzuzeigen. Wählen Sie im sich öffnenden Dialog den Gruppennamen „TCProducts“ und den Layouttyp „Header“ aus. Im rechten Fenster konfigurieren wir die Zelleigenschaften.

Fügen wir ein Gruppierungslayout hinzu, um Gruppierungswerte anzuzeigen. Wählen Sie im sich öffnenden Dialog den Gruppennamen „TCProducts“ und den Layouttyp „Header“ aus. Im rechten Fenster konfigurieren wir die Zelleigenschaften.

Fügen wir ein Gruppierungslayout hinzu, um Gruppierungsergebnisse anzuzeigen. Wählen Sie im sich öffnenden Dialog den Gruppierungsnamen „TCProducts“ und den Layouttyp „Gesamtkopf“ aus. Im rechten Fenster konfigurieren wir die Zelleigenschaften.

6. Fügen wir ein Gruppierungslayout hinzu, um die Fußzeile unseres Ausdrucks anzuzeigen. Wählen Sie im sich öffnenden Dialog den Gruppennamen „Fußzeile“ und den Layouttyp „Kopfzeile“ aus.

7. Um zu verhindern, dass allgemeine Layouts unser erstelltes Layout beeinflussen, müssen Sie das Design-Layout auf der Registerkarte „Andere Einstellungen“ auf „Kein Design“ setzen.

Das ist alles. Das Endergebnis wird so aussehen:

In diesem Artikel möchte ich über die Nuancen sprechen, auf die ich bei der Entwicklung eines Berichts über ein Zutrittskontrollsystem gestoßen bin, genauer gesagt bei der Verwaltung des Erscheinungsbilds des Berichtslayouts, und über die Lösungen, die ich darauf angewendet habe.

Ich weiß, dass das Layout im ACS durch Codierung direkt im Berichtsformular ersetzt (geändert) werden kann, aber für mich war es grundsätzlich wichtig, Änderungen im ACS vorzunehmen, ohne auf Codierung zurückzugreifen.

Der Abfragetext im Bericht lautete wie folgt:

Menüpunkt wählen. Name, Nomenklatur. Code, Nomenklatur. Grundmaßeinheit, Nomenklatur. MaßeinheitOrt, Nomenklatur. Einheit der Rückstandslagerung, Nomenklatur. UnitForReports, Nomenklatur. Kommentar, Nomenklatur. Artikel, Nomenklatur. Verknüpfen Sie die WIE-Nomenklatur mit dem Verzeichnis. Nomenklatur ALS Nomenklatur, WO NICHT Nomenklatur. Diese Gruppe

Punkt 1. Beliebige Berichts- und Spaltenüberschriften.


Standardmäßig verfügt das ACS über die Möglichkeit, beliebigen Titeltext anzuzeigen. Dies geschieht in den ACS-Einstellungen:

am Ausgang erhalten wir:

Wenn die Berichts- und Spaltenüberschriften jedoch willkürlich sein müssen, ist diese Option nicht geeignet. Also habe ich Folgendes gemacht:

Für detaillierte Datensätze wurde ein Name angegeben:


Ich habe das Layout, das ich brauchte, in SKD gezeichnet

Dort habe ich auf der Registerkarte „Layout“ die Grenzen des Gruppenkopf-Layouts skizziert:

und gab den Gruppennamen an:

Dann habe ich den Layoutbereich festgelegt, der im Berichtskopf angezeigt werden soll:

Wenn Sie einen Bericht erstellen, dann:

nicht genau das, was ich bekommen wollte. Für mich selbst habe ich einen Weg gefunden, dieses Problem zu lösen – ich habe die Hintergrundfarbe und den Rahmen des Layoutbereichs, der die Kopfzeile des Berichts darstellt, weiß gemacht:

und die Ausgabe ist der gewünschte Berichtstyp:

Punkt 2. Kostenlose Dekodierung von Berichtsfeldern.

Die Aufgabe ist wie folgt: Wenn Sie auf das Feld „Artikel“ doppelklicken, sollte es möglich sein, die Artikelkarte zu öffnen, die diese Zeile generiert hat.

Wenn Sie im obigen Bericht auf ein beliebiges Feld doppelklicken, können Sie die Artikelkarte nicht öffnen:

Wenn Sie beispielsweise auf das Feld „Artikel“ klicken, erhalten wir Folgendes:

Die Lösung ist:

Feldlayout hinzufügen:

Geben Sie das Feld (Artikel) an. Wenn Sie darauf klicken, sollte sich die Artikelkarte öffnen:

Füllen Sie im Layout ein beliebiges leeres Feld mit dem Text „Artikel“, geben Sie in den Eigenschaften Folgendes an: Füllung = „Parameter“, Entschlüsselungsparameter = „Nomenklaturdekodierung“:

und geben Sie das Feldlayout dieses Feldbereichs an:

Danach sollten die Layoutoptionen erscheinen:

In diesen Parametern geben wir den Ausdruck für „Decoding Nomenclature“ an, in meinem Fall ist das ein Link zur Nomenklatur:


Wir erhalten die Möglichkeit, die Produktkarte zu öffnen, indem wir auf das Feld „Artikel“ klicken:

Ich denke, es wird Entwickler geben, die auf ähnliche Nuancen gestoßen sind und sie auf andere Weise gelöst haben, aber das ist ein anderer Artikel ...

Der Bericht basiert auf realen Ereignissen; das Erscheinungsbild, der Abfragetext und die Spaltennamen wurden zugunsten des Artikels geändert.

Das Schwierigste bei der Verwendung von Layouts ist das Ausfüllen der Spalte „Layout“ auf der Registerkarte „Layouts“ im ACS-Designer.

Zu diesem Thema gibt es in der Natur gute Informationen. Es hilft Ihnen, die Grundprinzipien zu verstehen. Dennoch muss man jedes Mal mit verschiedenen Layouttypen experimentieren, um zu verstehen, ob ein bestimmtes Problem mit diesem Tool gelöst werden kann oder nicht. Daher kam ich auf die Idee, die Ergebnisse der Experimente in Form eines Artikels zu veröffentlichen, damit ich später darauf zurückgreifen und in Zukunft Zeit sparen kann. Sie müssen nicht den Text lesen, sondern nur einen kurzen Blick auf die Screenshots werfen, um die Art des Layouts auszuwählen, die für die jeweilige Aufgabe am besten geeignet ist
Im Artikel werde ich den erwähnten Verweis ein wenig wiederholen, um einige wichtige Details in einer verständlicheren und spezifischeren Sprache darzustellen.

Ich habe Experimente mit der folgenden Art von Bericht durchgeführt.

Feldlayout

Dieses Layout gilt für eine bestimmte Zelle, im Gegensatz zu den Gruppierungs- und Gruppierungskopfzeilen-Layouts, die für die gesamte Zeile gelten.
Es kann auf Gruppierungsfelder und Ressourcenfelder angewendet werden


Gruppierungs-Header-Layout

Diese Art von Layout wird, wie oben erwähnt, auf die gesamte Kopfzeile angewendet.

Einstellungen

Wenn Sie es der obersten Gruppierung zuweisen, wird es auf die gesamte Kopfzeile der Berichtstabelle angewendet. Wie Sie in der Abbildung sehen können, sind die Überschriften der verbleibenden Gruppierungen sowie die Ressourcenüberschriften ausgeblendet. Daher müssen diese Überschriften manuell ausgefüllt werden. Manchmal ist dies erforderlich, beispielsweise um Zellen in einer Kopfzeile zusammenzufassen

Einstellungen

Normalerweise macht es keinen Sinn, dieses Layout für Gruppierungen der zweiten und unteren Ebene zu verwenden, weil Das erzielte Ergebnis kann an wenigen Stellen angewendet werden

Einstellungen

Wenn Sie einer Layoutzeile jedoch eine Höhe von 1 zuweisen, können Sie die Gruppierungsüberschriften der aktuellen und nächsten Ebene ausblenden. In der Abbildung unten sind die Überschriften „Titel“ und „Mitarbeiter“ ausgeblendet.

Bemerkenswert ist auch die Verwendung des Layouttyps Footer, beispielsweise zur Darstellung von Unterzeichnern.

Einstellungen

Verwenden von Typen Gesamtsumme Soweit ich weiß, haben sie keinen Einfluss. Ich konnte mit diesen Typen keine Einstellung erstellen, damit sie angewendet werden konnte


Gruppenlayout

Dieses Layout gilt für die gesamte Gruppierungszeile. Es kann für einige typische Aufgaben verwendet werden, obwohl es nicht einfach ist, herauszufinden, wie man es benutzt

Wenn Sie dieses Layout auf die oberste Gruppierung mit dem Typ „Überschrift“ anwenden, wird die Tabellenüberschrift unter jeder Gruppierung wiederholt. Dieses Layout ist dann sinnvoll, wenn Sie beispielsweise vor jeder Gruppierung Seitenumbrüche einfügen müssen

Einstellungen

Wenn wir dieses Schema anwenden, um die untere Ebene zu gruppieren, erhalten wir Folgendes:

Oder wenn Sie die Spalten vervollständigen, sieht es so aus

Wenn die Aufgabe besteht, die Fußzeile mit Summen zu ändern, müssen Sie dieses Layout mit dem Typ verwenden Großartiger Gesamtkeller oder Gesamtsummen-Kopfzeile. Soweit ich weiß, bewirken diese beiden Layouttypen dasselbe

Einstellungen

Ressourcenlayout

Das Layout wird nur für TABLE verwendet. Es wird am Schnittpunkt der in den Einstellungen angegebenen Gruppierungen angewendet

Einstellungen


Layoutbeschränkungen

  1. In vielen Fällen geht bei der Verwendung von Layouts die Möglichkeit des Benutzers verloren, den Bericht anzupassen. Er kann die Reihenfolge der Ressourcen und Gruppierungen nicht ändern oder Ressourcen und Gruppierungen deaktivieren, weil in diesem Fall nimmt der Bericht eine unverständliche Form an. Dieser Fehler betrifft nicht nur die Feldaufteilung.
  2. Es gibt keine Möglichkeit, mithilfe des Layouts NUR den Titel der gewünschten Ressource (oder Gruppe von Ressourcen) zu entwerfen. Wenn Sie beispielsweise Ressourcentitel zentrieren müssen. Sie müssen den gesamten Tabellenkopf vollständig ausfüllen und die Einschränkung aus Schritt 1 erhalten
  3. Es ist nicht möglich, NUR die Kopfzeile der Ergebnisse zu gestalten. Beispielsweise war es mehrmals notwendig, das Wort „Total“ durch das Wort „Total“ zu ersetzen. In diesem Fall müssen Sie die gesamte Summenreihe zeichnen und die Einschränkung aus Schritt 1 übernehmen oder sich etwas anderes einfallen lassen.

Dateien

Alle oben beschriebenen Beispiele sind dem Artikel als herunterladbare Datei beigefügt. Es enthält eine ACS-Konsole mit einer Reihe von Schaltkreisen (eingebaut). Die Abfragen im Beispiel greifen nicht auf Datenbanktabellen zu, sodass die Beispiele auf jeder Konfiguration im verwalteten Anwendungsmodus ausgeführt werden.


IN

In diesem Artikel gehen wir kurz alle Registerkarten des Datenkompositionsschema-Designers durch.

Datensätze

Auf dieser Registerkarte können Sie eine unbegrenzte Anzahl von Datensätzen erstellen. Ein Datensatz ist eine Datenquelle.

Es gibt verschiedene Arten von Datensätzen:

  • Anfrage;
  • Ein Objekt;
  • Einen Verband.

Bei der Anfrage handelt es sich um eine reguläre 1C-Anfrage, lediglich die Anfragesprache ist leicht erweitert. Der Einfachheit halber können Sie den Abfragekonstruktor verwenden.

Ein Objekt ist ein externer Datensatz, beispielsweise eine Wertetabelle.

Union – Kombination mehrerer Datensätze von Abfrage- und Objekttypen.

In diesem Artikel gehen wir kurz alle Registerkarten des Datenkompositionsschema-Designers durch. Datensätze Auf dieser Registerkarte können Sie eine unbegrenzte Anzahl von Datensätzen erstellen. Ein Datensatz ist eine Datenquelle. Es gibt verschiedene Arten von Datensätzen: Abfrage; Ein Objekt; Einen Verband. Bei der Anfrage handelt es sich um eine reguläre 1C-Anfrage, lediglich die Anfragesprache ist leicht erweitert. Der Einfachheit halber können Sie den Abfragekonstruktor verwenden. Ein Objekt ist ein externer Datensatz, beispielsweise eine Wertetabelle. Union – Kombination mehrerer Datensätze von Abfrage- und Objekttypen. Datensatzbeziehungen Auf dieser Registerkarte werden die Beziehungen zwischen Datensätzen beschrieben. Hier können Sie festlegen, welche Datensätze mit welchen Feldern und mit welchen Parametern verknüpft werden sollen. Das Wichtigste, das Sie beachten sollten: Im Datenkompositionsschema wird beim Verknüpfen von Sätzen immer ein Left-Join verwendet! Berechnete Felder Auf dieser Registerkarte können Sie zusätzliche Felder erstellen, die nicht auf der Registerkarte „Datensätze“ beschrieben werden. Als Ausdrücke für Berechnungen können Sie die Ausdruckssprache für die Datenzusammensetzung, Felder aus den Hauptdatensätzen sowie Funktionen nicht globaler gemeinsamer Module verwenden. Ressourcen Ressourcen sind die zusammenfassenden Daten für Gruppierungen. Auf der Registerkarte können Sie Felder aus Datensätzen sowie berechnete Felder als Ressource zuweisen. Außerdem wird für Ressourcen der Ausdruck angegeben, nach dem sie berechnet werden, und es ist möglich, die Gruppierung anzugeben, nach der der Ausdruck für Ressourcen berechnet wird. Basierend auf den Ressourcenwerten werden auch Berichtssummen berechnet. Parameter Datenparameter werden normalerweise in einer Datensatzabfrage verwendet. Alle in der Anfrage beschriebenen Parameter werden auf der Registerkarte Optionen angezeigt. Auf dieser Registerkarte können Sie den Titel, verfügbare Typen, verfügbare Werte und einige andere Dinge angeben. Mehr Details zu den Parametern etwas später. Layouts Standardmäßig wird das Layout des generierten Berichts automatisch vom Datenkompositionssystem generiert. Das System ermöglicht dem Entwickler aber auch die Gestaltung einzelner Berichtsbereiche (Felder, Gruppierungen, Ressourcen...). Alle auf dieser Registerkarte erstellten individuellen Bereichslayouts sind nur mit dem aktuellen Bericht verknüpft. Verschachtelte Schemata Verschachtelte Schemata werden in Fällen verwendet, in denen Daten aus einem Bericht in einem anderen verwendet werden müssen. Mit anderen Worten: Wir „betten“ ein Datenlayoutschema in ein anderes ein und weisen so auf eine Verbindung über ein gemeinsames Feld hin. Ein Beispiel für die Verwendung verschachtelter Schemata finden Sie in diesem Artikel. Einstellungen Auf dieser Registerkarte erstellt der Entwickler Standardeinstellungen für die Berichtserstellung. Die hierarchische Struktur wird oben im Fenster angegeben. Die Berichtsgenerierungsstruktur kann aus folgenden Elementen bestehen: Gruppierung; Tisch; Diagramm; Geschachteltes Diagramm Im unteren Teil des Fensters werden Einstellungen für den gesamten Bericht und für jedes Element der Berichtsstruktur vorgenommen. Kurz gesagt in den Einstellungsregisterkarten: Ausgewählte Felder – Liste der im Bericht angezeigten Felder; Auswahl – alle möglichen Auswahlen von Berichtsdatensätzen; Reihenfolge – Sortierung der Datensätze im Bericht; Datenparameter – der Wert der Berichtsparameter; Benutzerdefinierte Felder – zusätzliche vom Benutzer erstellte Berichtsfelder; Bedingte Formatierung – legt die bedingte Formatierung von Berichtsdatensätzen fest; Andere Einstellungen – alle möglichen zusätzlichen Einstellungen wie: Berichtstitel, Design-Layout, Feldlayout usw....

Heute werden wir uns mit der Lösung eines interessanten Problems befassen - Bilder in einem Bericht anzeigen.

Wozu kann das nützlich sein?

Hier ein paar Beispiele:

  • Preisliste mit Produktbildern und Logo in der Kopfzeile
  • Mitarbeiterprofile mit Fotos
  • Abgleich der Berechnungen mit Stempel und Unterschrift im Keller
  • Berichte/gedruckte Formulare mit gescanntem Ausdruck

Im Video diskutieren wir auch Programmgestaltung dem SKD melden. Diese Methode zur Erstellung von Berichten wird verwendet in Standardkonfigurationen– das ist ein weiterer Grund, es aufmerksam anzusehen :)

Vordefinierte Layouts in ACS

Mithilfe vordefinierter Layouts können Sie das Standardberichtslayout überschreiben.

In dieser Lektion werden wir neben der Problemstellung auch Folgendes berücksichtigen:

  • Speichern von Binärdaten in einer Modellkonfiguration
  • Möglichkeit der Verwendung von ACS-Layouts zur Anzeige von Bildern

Programmgesteuerte Erstellung eines Berichts über das Zutrittskontrollsystem

Um das Problem der Anzeige von Bildern in einem Bericht über das Zutrittskontrollsystem zu lösen, ist es notwendig, diesen programmgesteuert zu generieren.

Bei der programmgesteuerten Generierung eines Berichts ist es möglich, auf Binärdaten zuzugreifen.

In dieser Lektion werden wir Folgendes tun:

  • Ausgabe des Layout-Ergebnisses in ein Tabellendokument
  • Verwendung des Decryption Data-Objekts
  • Abrufen von Binärdaten aus der Datenbank
  • Programmgesteuerte Erstellung von Zeichnungen in einem Tabellenkalkulationsdokument

Ein Bild im ACS-Bericht anzeigen

In dieser Lektion führen wir die letzten Schritte durch: Wir zeigen die zuvor erhaltenen Binärdaten in einem Bericht an.

Dazu wird eine Zeichnung zu einem Tabellenkalkulationsdokument hinzugefügt und anschließend im Bericht angezeigt.

Die Vielseitigkeit des Bildausgabealgorithmus

Der entwickelte Bildausgabealgorithmus ist universell – der Algorithmus funktioniert unabhängig von Änderungen in der Berichtsstruktur weiter.

Genau das werden wir in dieser Lektion beweisen.

Darüber hinaus betrachten wir die Funktion der Hintergrundberichterstellung im Zutrittskontrollsystem (Erstellung eines Berichts anhand von Routineaufgaben).

Anzeige eines Bildes im Berichtskopf

Oftmals müssen Sie in der Kopf- oder Fußzeile eines Berichts ein statisches Bild anzeigen.

Es scheint eine einfache Aufgabe zu sein, aber im Fall von ACS müssen Sie wissen, wie Sie sie lösen können:

  • Schritt 1. Erstellen Sie programmgesteuert einen Bericht
  • Schritt 2. Erstellen Sie ein separates Layout mit der gewünschten Kopf- oder Fußzeile
  • Schritt 3. Bevor Sie den ACS-Bericht ausfüllen, zeigen Sie einen Abschnitt mit den erforderlichen Daten an.

Dieses Video zeigt anschaulich die Lösung des Problems.

Genieße das Zusehen! :) :)

In den letzten Tagen haben wir Materialien zu ACS veröffentlicht.

Was passiert, wenn der 1C-Programmierer/Implementierer das Zugangskontrollsystem nicht kennt? Vielleicht ist es wirklich nicht so wichtig?

Ok, schauen wir uns an, was einen Spezialisten erwartet, der Berichte „auf dem Knie“ schreibt (z. B. mithilfe der manuellen Ausgabe in ein Tabellenkalkulationsdokument).

Schießen Sie nicht auf den Pianisten, er spielt so gut er kann.

Berichte sind praktisch in allen Standardkonfigurationen basierend auf SKD.

Für einen Spezialisten ohne CDS-Kenntnisse wird die Fertigstellung von Standardberichten zu einer Lotterie – warum und wie diese oder jene Zahl im Bericht angezeigt wird, wie man neue Quellen hinzufügt, wo man die berechneten Zahlen im Code bearbeitet …

SKD – Meldestandard in Standardkonfigurationen, und 1C schreibt keine Kommentare basierend auf denen, die die Standards noch nicht studiert haben :)

Verdammte Zeit...

Ohne ein Zugangskontrollsystem erfolgt die Berichtserstellung größtenteils manuell.

Es ist natürlich cool, wie Rambaud mit einem Schraubenzieher in den Zähnen rauszugehen und es irgendwie mit jedem zu machen :)

Ergebend - hohe Arbeitskosten für die Berichtsentwicklung und das Debuggen. Und das wird jeden Manager/Kunden zumindest alarmieren: „Seltsam, aber versteht er das wirklich?“

Und wenn es um die nachträgliche Überarbeitung des Berichts geht, bereitet das oft Kopfzerbrechen (vor allem, wenn es sich um den Bericht einer anderen Person handelt) …

Entwicklungsreisen zu Kunden, um die Gruppierung im Bericht zu ändern

SKD ermöglicht Ihnen den Empfang Qualitätsberichte ohne Programmierung. Das Skelett wird gerade fertig für ein paar Minuten, dann – verbeugt sich.

Und Benutzer können solche Berichte anpassen ohne einen Programmierer einzubinden, generieren Sie mehrere Präsentationsoptionen – Diagramme, Grafiken, Listen, Tabellen.

Um eine solche Vielseitigkeit in programmatisch erstellten Berichten zu erreichen, innerhalb einer angemessenen Frist nicht möglich.

Deshalb - anrufen, Straßenbahn, los geht's... Das ist so eine berufliche Weiterentwicklung für einen 1C-Spitznamen...

„Hast du nicht das gleiche, aber mit Perlmuttknöpfen? „Leider nein…“ (c)

Was ist, wenn einige Daten von einem anderen System abgerufen werden müssen – von einer anderen 1C-Datenbank oder gar nicht von 1C?

Mit dem Zugangskontrollsystem können Sie einen Bericht erstellen, der mit aktuellen Informationssicherheitsdaten arbeitet und Daten aus einer anderen Quelle empfängt – keine Programmierung erforderlich.

Ohne Zugangskontrollsysteme werden externe Daten programmgesteuert und nicht auf die trivialste Weise abgerufen.

Wenn Sie wollen ACS professionell beherrschen und täglich in Ihrer Arbeit anwenden, melden Sie sich für den Kurs an:

Unterstützung - 2 Monate. Kursumfang – 34 Unterrichtsstunden.

Verzögern Sie Ihr Studium nicht!

gastroguru 2017