[Gelöst] RDLC Reports mit Unterschiedlichen Headern

3. September 2018 13:39

Hi,

ich habe mal wieder ein Reportproblem.

Unsere Reports sind aktuell CC-Report die Wie folgt aufgebaut sind

1. Seite:

1. TABLIX1
_______________________________________________
Rechnungs Nr.12123213412 Rechnungsdatum 01.07.2018
_______________________________________________
2. TABLIX2
_______________________________________________
Einige Kopfdaten
_______________________________________________
3. TABLIX 3
_______________________________________________
Lieferadresse
_______________________________________________

4. TABLIX 4
_______________________________________________
Pos. Art.Nr Beschreibung Menge Einheit Preos Zeilenpreis
_______________________________________________
ZEILE
ZEILE
ZEILE

2. Seite :
_______________________________________________
Rechnungs Nr.12123213412 Rechnungsdatum 01.07.2018
_______________________________________________
Pos. Art.Nr Beschreibung Menge Einheit Preos Zeilenpreis
_______________________________________________
ZEILE
ZEILE
ZEILE

3. Seite
_______________________________________________
Rechnungs Nr.12123213412 Rechnungsdatum 01.07.2018
_______________________________________________
Pos. Art.Nr Beschreibung Menge Einheit Preos Zeilenpreis
_______________________________________________
ZEILE
ZEILE
ZEILE

Wie man hoffentlich sieht stehen ab der 2. Seite die Daten die nun in TABLIX1 und die Kopfzeile von TABLIX immer untereinander


Kann man mit irgendwelchen Tricks dies im RDLC abbilden ?
Ich hab schon versucht die Zeilen von TABLIX1 über den Kopfzeilen von TABLIX4 mit in das TABLIX4 zu setzen und über einen Boolean die Zeilen auf der 1. Seite auszublenden um dann auf den folgenden Seiten den Boolean umzusetzen um die Zeilen azuzeigen.
Aber allen Anschein nach macht der TABLIX Schalter 'Kopfzeile auf jeder Seite wiederholen' genau das und zwar auch den Hiddenstatus.
Oder kann man das über irgendein Property einstellen ?

Gruß Frank
Zuletzt geändert von FrausDo am 4. September 2018 14:19, insgesamt 1-mal geändert.

Re: RDLC Reports

3. September 2018 14:30

FrausDo hat geschrieben:Wie man hoffentlich sieht stehen ab der 2. Seite die Daten die nun in TABLIX1 und die Kopfzeile von TABLIX immer untereinander

Uff, ich fände hier einen Screenshot hilfreich, entweder von den CC-Sections, oder von einem Beispielausdruck mit Erklärungen. Zumindest habe ich nicht nicht Zeit, um mich sonst näher damit zu befassen. Eventuell jemand anderes?

Re: RDLC Reports

3. September 2018 14:57

Hallo Nathalie,

OK ich probiers mal, ich hoffe es hilft.

2018-09-03_14-48-08_LI.jpg


Auf Seite 2 dann..

2018-09-03_14-49-37.jpg


Ich hoffe es ist nun klar geworden.

Aus dem CC Report der Ausschnitt
2018-09-03_14-56-34.jpg


Gruß Frank
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Re: RDLC Reports

3. September 2018 15:08

Ja, das hilft (mir) :-)

Grundsätzlich kanns du das mit RDLC abbilden. Das kannst du dir aus den Standardreports (z.B. 205) abgucken.
Zuerst brauchst du ein Listenelement, darin eingebettet Felder (wahlweise eine gefilterten Tablix) des Kopfes.
Für die Zeilen (inkl. Überschrift) verwendest du einen separaten Tablix, ebenfalls eingebunden im o.g. Listenelement.

Ansonsten schau mal hier: viewtopic.php?f=19&t=12763#p64202, besonders unter "Aufgaben".

Re: RDLC Reports

3. September 2018 15:20

Hallo Natalie,

Abgebildet habe ich das wie folgt:
(Unterschiedliche Farbe am Rand ist anderes Tablix, ggf. mit Filter)
2018-09-03_15-15-02.jpg


Mein Problem ist auf Seite 2 Das Tablix oben (ROT), das Tablix gelb(mitte) und das Tablix unten (braun) anzuzeigen.
Das Tablix oben und mitte wird nicht mehr angezeigt, das die Renderung ? nur noch ab dem Tablix braun passiert

Gruß Frank
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Re: RDLC Reports

3. September 2018 15:23

was mir auf die schnelle einfaellt was du machen koenntest:

Du nummerierst dir deine Rechnungen durch und blendest die Zeilen für Kopfdaten und Lieferadresse bei Rechnung 1 ein.
So ca:
rdlc_layout.png
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Re: RDLC Reports

3. September 2018 15:32

Mit einem nicht ganz so aufwendigen Formular habe ich sowas mal probiert (falls du mit "Zeige wenn rechung 1" meinst wenn Seite = 1

Die Kopfwiederholung im Tablix wiederholt tatsächlich den Kopf von der 1. Seite. Hidden Attribut wird nicht neu ausgewertet.
Ich habe mir eine Variable in den Ausdruck des Striches unter TxTPos gesetzt und die in der Kopfzeilen ausgewertet.

Aber ich habe in deinen Links oben etwas gefunden mit Platz im Header sparen, dass ich mal probieren werde.
Vllt. klappt das ja


Gruß Frank

Re: RDLC Reports

3. September 2018 15:42

FrausDo hat geschrieben:falls du mit "Zeige wenn rechung 1" meinst wenn Seite = 1


Nein, ich wuerde mir im DataSet eine Integer Variable hinzufügen welche ich "Header - OnAfterGetRecord" hochzaehle. (und beim Customer wechsel auf 0 zuruecksetze)
Wenn ich mich richtig erinnere darf die Seitennummer nur im Kopf benutzt werden.

Re: RDLC Reports

3. September 2018 23:30

Hallo,

wenn ich das richtig verstehe möchtest du eine 1. Seite mit vollständigem Kopf, und eine 2. und folgende Seite(n) mit reduziertem Kopf. (mir fehlt da noch die Anschrift!?)

Wie so ein Layout aussehen könnte, habe ich hierhttp://www.msdynamics.de/viewtopic.php?f=64&t=34066#p129073 schon mal dargestellt.

Wenn man das Prinzip erstmal verstanden hat, ist es eigentlich ganz einfach, aber benötigt schon einen Tag Schulung. :mrgreen:

Der Haken bei der Sache ist, das der Header im RDLC eine feste Höhe hat, was verhindert, dass man auf der ersten Seite mal eben einen größeren Kopf darstellen kann.
Will man jetzt außerdem den Übertrag - den man nur Header lesen kann - unter die Tabellenüberschrift haben, muss man auch die Tabellenüberschrift der Folgeseiten in den Header kopieren.

Das Ganze funktioniert indem man im Header zwei Rechtecke die exakt unten mit dem Header abschließen platziert. In die Rechtecke fügt man man jeweils die Header- Felder der ersten und der Folgeseiten ein. Angezeigt werden die Rechtecke jetzt wenn Seite = 1 oder eben Seite <> 1.
Der Header des RDLC wird jetzt so groß dimensioniert, dass er für die zweite Seite ausreicht. Das kann jetzt aber dazu führen, dass die z.B. Adresse des Belegs zum Teil im Header und zum Teil im Tablix steht.

Der Master- Tablix gruppiert nach (Belgart)/Belegnr/Kopienr. und setzt mit jeder neuen Gruppe die Seitenzahl zurück (geht ab NAV 2015, dann benötigt man den Seitenzähler nicht mehr).
Der Tabellenteil besteht im oberen Teil aus dem Belegkopf, der nicht mehr in den Header passte, der eigentlichen Tabelle und dem Belegfuß. Zu guter Letzt kommt dann noch der Footer, der wieder den Übertrag und weitere Informationen enthält.

Ein kleiner Tipp noch: NAV beherrscht Textfelder ohne Längenbegrenzung und RDLC beherrscht automatisch vergrößernde Felder und ein eingeschränktes HTML. Das sollte man nutzen, indem man mehrzeilige Texte wie Textbausteine oder Adressen schon im C/AL aufbereitet, und als ein Textfeld übergibt. Das macht das Layout einfacher und übersichtlicher, und macht z.B. auch HTML-formatierte Belegtexte möglich.

Gruß Fiddi

Re: RDLC Reports

4. September 2018 07:36

Hallo Fiddi,

ich hatte sogar 2 Tage Schulung ;)

Aber ich seh schon das es sich nicht so gut beschreiben lässt.
Hier einmal die Seite 1 und Seite 2 einer alten Rechnung die ich schon mit RDLC angepasst habe.
Nun hätte ich nur noch gerne die auf Seite 1 Rot markierte Stelle über den Spaltenüberschriften auf Seite 2
Seite 1
2018-09-04_07-27-24_LI.jpg


Seite 2
2018-09-04_07-27-58.jpg



Im RDLC Design ist (auch wegen des verschwendeten Platzes) nur die Seitenzahl der Rest befindet sich im Body des Formulars.
Wir drucken die Anschrift immer nur auf der 1. Seite.
Ich hoffe nun ist das Problem klar geworden.

Gruß Frank
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Re: RDLC Reports

4. September 2018 07:44

Ok ganz so klein ist der Kopf doch nicht.

Im Kopf und im Fuß ist noch das Firmenemblem falls PDF gedruckt wird und der Übertrag im Fuß

Gruß Frank

Re: RDLC Reports

4. September 2018 08:36

Hallo,

ich hatte sogar 2 Tage Schulung ;)

Wenn du damit die Grundschulung meinst, die meinte ich nicht. Damit du sowas wie dein Layout machen kannst, benötigst du schon die "Advanced Reporting"- Schulung, und evtl. auch etwas mehr. :wink:

Der Trick bei meiner Lösung ist, dass nicht nur das Logo im Header gedruckt wird, sondern auch der Platz für den Kopf der zweiten Seite. Dazu muss man einen Teil des Kopfes der ersten Seite im Header ausgeben, und auch den Kopf der zweiten Seite.
Hier das Layout des Belegs:
Layout1.jpg


Hier der Headerbereich noch mal auseinander gezogen:
Layout3.jpg


Ich hoffe das macht es etwas klarer.

Gruß Fiddi
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Re: RDLC Reports

4. September 2018 09:04

Oh, man

wenn ich das richtig sehe lege ich da 2 Tablix übereinander,
Tablix Seite 1 und Seite > 1
Somit ist es Praktisch kaum noch wartbar.
Aber interessant ist die Lösung schon.
Leider muss ich das in seiner Menge Formulare einbauen *seufz*

Ich werde das mal testen.
Besten Dank erstmal.

*Manchmal bekommt man Antworten die man nicht hören (lesen) will *

solche Fragen sollte man nicht stellen ;)


Gruß Frank

Re: RDLC Reports

4. September 2018 09:54

Hallo,

wenn ich das richtig sehe lege ich da 2 Tablix übereinander,


Nein. das sind nur zwei Rechtecke im Header in die die Felder eingefügt werden. Für den eigentlichen Beleg gibt es nach wie vor nur einen Tablix der von oben nach unten abgearbeitet wird (die Tabellenüberschrift wird übrigens dort nicht auf jeder Seite wiederholt.

Leider muss ich das in seiner Menge Formulare einbauen

Wenn du ein wenig nachdenkst, und daran denkst im RDLC nach jeder Expression ein Kommentarzeichen "'" einzufügen (Reportbuilder und Visualstudio haben eine Macke, dass man Elemente nicht kopieren kann, wenn Expressions vorhanden sind und kein Kommentarzeichen am Ende steht), dann kannst du die Layoutelemente sogar kopieren. (Man kann einen "Sales Header" im Report ja auch "DocHeader" nennen :mrgreen: ).
Eventuell ist es sogar sinnvoll erst einmal nur einen Report fertig zu bauen, und diesen Report dann zu kopieren. Ein Angebot unterscheidet sich von einem Auftrag normalerweise wenig bis gar nicht. Ebenso unterscheidet sich eine Bestellung im Layout nicht sehr von einem Verkaufsauftrag (mal abgesehen von den Feldnamen, aber die kann man ja vorher vereinheitlichen).

Gruß Fiddi

Re: RDLC Reports

4. September 2018 09:57

fiddi hat geschrieben:Wenn du ein wenig nachdenkst, und daran denkst im RDLC nach jeder Expression ein Kommentarzeichen "'" einzufügen (Reportbuilder und Visualstudio haben eine Macke, dass man Elemente nicht kopieren kann, wenn Expressions vorhanden sind und kein Kommentarzeichen am Ende steht), dann kannst du die Layoutelemente sogar kopieren.
Danke, den kannte ich nicht!!

Re: RDLC Reports

4. September 2018 14:18

Das mit dem Kommentarzeichen war mir auch neu und klappt bestens :)

Nach einigen hin und her weiß ich nun wie und dass es funktioniert.
Dolle ist das Handling nicht da ich das Rechteck anschließend nur noch per Drag & Drop verschieben kann sonst sind die Textboxen auf einmal weg. Aber es liefert zumindest das Erhoffte Ergebnis.
Vielen Dank

Frank