Zum Inhalt springen

Elemente von Wiederholungsgruppen im Bericht gruppieren


Gehe zur Lösung Gelöst von Moritz Münzenmaier,

Empfohlene Beiträge

Hallo zusammen,

Ich stehe vor einem Problem mit meiner Smap. In der Wiederholungsgruppe muss die Art eines Produktes angegeben werden, und das funktioniert einwandfrei. Hier ist ein Beispielbild:

image.png.3e351c69fc9ce43994c885a4b7aafb6d.png

Jetzt möchte ich jedoch, dass basierend auf der ausgewählten Art verschiedene Tabellen generiert werden.

Um dies zu erreichen, habe ich Folgendes versucht:
image.png.cf7e529d235f9c7ddbd4f6195ca1b197.png

Hier erkennt er jedoch "art" nicht, was logisch ist, da es sich innerhalb der Wiederholungsgruppe befindet. Wenn ich jedoch beide Methoden/Bedingungen umdrehe, erstellt er für jedes Produkt immer eine komplett neue Tabelle. Hier ist ein Beispielbild:
image.png.6461cfe110b556fdc8775fb589c9901f.png
 

Ich habe auch versucht, alles in einer einzigen FOREACH-Schleife zu erledigen. Das Problem dabei ist jedoch, dass er auch dann leere Tabellen erstellt, wenn die Bedingung nicht erfüllt ist. Ich hoffe, es gibt eine Lösung für dieses Problem.

MfG,
Connor Jessen

Bearbeitet von Connor Jessen
Tippfehler
  • Like 1
  • Verwirrt 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich habe Schwierigkeiten zu erfassen, was genau dein Ziel ist. Vielleicht würde es helfen, wenn du einmal den Zielzustand skizzierst? Also was für Tabellen sollen in deinem Bericht sein und warum nicht alles in einer (wenn doch alles aus einer WDH-Gruppe kommt, richtig)? Vielleicht stehe ich auch nur auf'm Schlauch und jemand anders hat nicht nur das Problem verstanden sondern auch gleiche eine Idee parat? 😉

  • Like 1
  • Zustimmung 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

Okay, ich glaube jetzt habe ich es verstanden. Dein Ansatz, das filtern per IF art contains "Rohware" wirkt auf mich erstmal rchtig. Und auch deine Syntax wirkt grundsätzlich korrekt. Jedenfalls erzeugt eine automatisch generierte Berichtsvorlage ein ähnlich aussehendes Resultat:

image.png.2cd4470d23cdd7ef1ec7cd48a57c5454.png

 

Wenn ich aber ganz genau hinsehe, dann fallen mir zwei mögliche Fehlerquellen auf:

image.png.948ef3fee79c4ed71b1fb1d1540321a2.png

  1. Erstens ist ein großer schwarzer Balken/Rahmen unten an der Tabelle. Versuch es mal mit einer neuen, komplett "nackten" Tabelle. Wenn dann alles funktioniert würde ich mich an die Formatierung wagen. Allerdings vermute ich das Problem eher in Nümero zwo:
  2. Zweitens scheint mir eine Leerzeile zwischen dem Ende der Tabelle und dem {%ENDFOREACH%} zu stehen. Das wird natürlich in jeder Iteration der FOREACH-Schleife mit eingesetzt und wahrscheinlich startet die Tabelle deshalb neu. Zur Fehlersuche empfehle ich hier, die Steuerzeichen anzuzeigen...
    image.png.5e9a1d5588cf4f707fb300ed6afdad43.png
    ... damit kann man derartige "Schwachstellen" schneller identifizieren.
Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich habe das umgetauscht und deswegen macht er die Tabellen so, weil ich sonst an die Informationen von "Art" nicht herankomme, weil sich dieser Baustein auch in der Wiederholungsgruppe befindet.:
image.png.d5c7a054ca1575b72a94dbcebcde486f.png

Ich habe auch die fehlerquellen herausgenommen, jetzt sieht das Ergebnis folgendermaßen aus:
image.png.e1e3a3c8e8230df864c2c1dbb47396bc.png

Bearbeitet von Connor Jessen
Link zu diesem Kommentar
Auf anderen Seiten teilen

Magst du deine smap (ggf. reduziert/anonymisiert) hier einmal teilen*? Ich könnte mir vorstellen, dass das bei der Fehler- und Lösungssuche helfen könnte...

(* siehe https://faq.smapone.com/kb/guide/de/wie-kopiere-ich-eine-smap-o1p43CS7Aj/Steps/935833,935869,935867,935868 - einfach an die eigene Mailadresse senden und den dann per Mail erhaltenen Link hier posten...)

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • Lösung

Hi @Connor Jessen

Ich bin relativ sicher, dass ich die Anforderung verstanden habe 🙂

Du hast richtig festgestellt, dass du ein logisches Problem bekommst, wenn du eine Bedingung stellen willst, die sich auf einen Wert innerhalb der Wiederholungsgruppe (WDHG) bezieht. Die einfachste Variante ist es hier innerhalb der smap diesen Wert aus der WDHG herauszuholen. 

Ich mache es meistens so, dass ich dafür innerhalb der WDHG ein Zählerfeld (Zahlenergebnis mit id "zaehler_rohware") baue, dass bspw. für Rohware folgende Formel hat: 
IF(EQUALS({Art},"Rohware"),1,0)

Damit habe ich in der WDHG eine 1, wenn die Art "Rohware" ist. Diesen Zähler baue ich für jede Art, die ich im Bericht später individuell ausweisen möchte und blende die Felder in der smap aus. 

Außerhalb der Wiederholungsgruppe mache ich nun analog zu jedem Zählerfeld ein Summenfeld für die jeweiligen Arten - an unserem Beispiel wäre das einfach nur SUM({zaehler_rohware}). Dieses Feld bekommt die id "summe_rohware". Damit habe ich einen klaren Indikator, auf den ich mich beziehen kann, wenn ich im Bericht gewisse Tabellen komplett ein- oder ausblenden will. 

Im Bericht wird es nun ein wenig "spannend" 🙂 

Wir nutzen unser gebautes Feld, um darüber die allgemeine Steuerung der Kopfzeile abzubilden ({%IF bricks.summe_rohware > 0 %}) und machen dann eine Positionszeile pro Position, die sich auf ein Wertfeld innerhalb der Wiederholungsgruppe beziehen kann (

{%FOREACH bricks.position%}

{%IF art == “Rohware”%}

 

. Lange Rede, kurzer Sinn - das sieht dann so aus: 
image.thumb.png.614f51baff0bcebb66bb75c0db3eef99.png

Hier ist meine Lieblingsfunktion von Word extrem hilfreich, nämlich das Teilen einer Tabelle, das man oben über Tabellenlayout findet. 

image.thumb.png.7b49e1f2c7e50e96ea1a85c369b53385.png

 

Ich gehe nur davon aus, dass du mit dieser Logik deinen Index vergessen kannst, da diese Teiltabellen nicht jeweils neu indiziert werden, sondern die Zahlen dort wild hin und her springen werden. Das liegt daran, dass es immer noch ein gesamter Index für die gesamte Wiederholungsgruppe ist. 

 

Bearbeitet von Moritz Münzenmaier
  • Danke 2
Link zu diesem Kommentar
Auf anderen Seiten teilen

Na gut 🙂 - Dann bekommen du (und alle anderen Mitleser) es sicherheitshalber nochmal als Gesamtergebnis präsentiert 🙂 

Diese Berichtsvorlage...

image.thumb.png.7234ab031c1fc97e576a15f031d1a1ec.png

 

...erzeugt bei einer Eingabe dieser Art in die smap...
image.png.7729286515b2a75e946bed20536d2e4d.png

Dieses Ergebnis.
image.png.af8926ded79d48c4722abad1c89b414c.png

 

Es ist eine Crux mit den Zeilenumbrüchen und den Bedingungen, daher gibt es hier nochmal den Link zur smapkopie, falls jemand da Reverse Engineering betreiben möchte. 😄 

SMAP IMPORTIEREN

 

 

Bearbeitet von Moritz Münzenmaier
  • Like 2
  • Danke 2
Link zu diesem Kommentar
Auf anderen Seiten teilen

  • Moritz änderte den Titel in Elemente von Wiederholungsgruppen im Bericht gruppieren

Bitte melde Dich an, um einen Kommentar zu hinterlassen

Du kannst nach der Anmeldung einen Kommentar hinterlassen



Jetzt anmelden
×
×
  • Neu erstellen...