[Gelöst] - [RTC] - Reports konvertieren von CC nach RTC

7. Mai 2013 10:39

Hi,

ich hab versucht mit den Links aus der FAQ weiter zu kommen, aber ich finde nicht so richtig den Einstieg in das Thema.

Ich soll eine FUnktion erstellen welche über ein WebService auffrufbar ist und mittels SaveAsPDF eine PDF abglegt.
Das Funktioniert gut, nur ist es so das SaveAsPDF nur mit RTC Reports funktioniert.

Also muss ich den betroffenen Report ein RDLC Layout verpassen. Das will nicht so klappen.

Mit Create Layout Suggestion funktioniert das eher nicht.

Dann habe ich mal versucht mir die Standard Reports anzuschauen, dort wird mit code.GetData, code.SetData gearbeitet, habe hier im Forum auch schon darüber gelesen, aber so richtig verständlich, bzw. übersichtlich finde ich das nicht.

Dann gibt es Reports mit ReportItems! (wahrscheinlich jene die über Creat Layout Suggestion) erstellt wurden?

Bei den reports welche im Kopf mit getData/SetData arbeiten wird mir der Textkörper nicht in der Vorschau gezeigt, bei jene die ReportItems! im Kopf haben, wird mir der Textkörper in der Vorschau angezeigt, nicht aber der Kopf.

Der Versuch aus beiden Reports einen zu machen, weil ja bei dem ein das eine funktioniert, und bei dem anderen das andere, ist auch gescheitert.

Ich weiß nicht so recht wie ich an die Sache ran gehen soll.

Am liebsten wäre mir den CC Report so zu gestalten, das dieser per Create Suggestion was brauchbares vorschlägt.
Aber das kann ich wohl vergessen. Gibt es auch noch irgendwelche Deutschen Doku's? Oder sollte ich mich für eine Schulung anmelden?
Ich versuch jetzt seit 3-4 Tagen da irgendwie den Einstieg zu finden, aber drehe mich im Kreis .

Danke.
Zuletzt geändert von elTorito am 8. Mai 2013 14:44, insgesamt 1-mal geändert.

Re: [RTC] - Reports konvertieren von CC nach RTC

7. Mai 2013 11:54

elTorito hat geschrieben:Ich soll eine FUnktion erstellen welche über ein WebService auffrufbar ist und mittels SaveAsPDF eine PDF abglegt.
Das Funktioniert gut, nur ist es so das SaveAsPDF nur mit RTC Reports funktioniert.

So ist es. Wäre es nicht möglich, einen CC-Bericht zu verwenden und den mittels eines PDF-Druckers zu drucken?

Mit Create Layout Suggestion funktioniert das eher nicht.
[...]
Am liebsten wäre mir den CC Report so zu gestalten, das dieser per Create Suggestion was brauchbares vorschlägt.

Die Funktion ist nur dann einigermaßen hilfreich, wenn dein Report aus maximal 2 DataItems besteht und das zweite dem ersten untergordnet ist. In den Sections sollten keine besonderen "Spielereien" enthalten sein - und erst recht kein C/AL-Code!, nur einfache Felder mit ihren Labels.

Dann habe ich mal versucht mir die Standard Reports anzuschauen, dort wird mit code.GetData, code.SetData gearbeitet, habe hier im Forum auch schon darüber gelesen, aber so richtig verständlich, bzw. übersichtlich finde ich das nicht.

Das ist auch gerade für den Einstieg das falsche Thema. Warum glaubst du, müsstest du damit arbeiten?

Dann gibt es Reports mit ReportItems! (wahrscheinlich jene die über Creat Layout Suggestion) erstellt wurden?

Die Funktion erstellt tatsächlich ReportItems!..., aber das kannst du genauso gut manuell machen. Es kommt immer darauf an, was du eigentlich erreichen willst ...

Bei den reports welche im Kopf mit getData/SetData arbeiten wird mir der Textkörper nicht in der Vorschau gezeigt, bei jene die ReportItems! im Kopf haben, wird mir der Textkörper in der Vorschau angezeigt, nicht aber der Kopf.

1. RTC-Reports niemals in der bloßen Vorschau testen, sondern in der Vorschau oben auf "Drucklayout" klicken.
2. Ist dir der Unterschied zu CC bekannt? Die Aufteilung Kopf/Textkörper/Fuß in Visual Studio hat NICHTS mit mit unseren Section-Header, -Bodies und -Fotter gemeinsam. Nur Daten, welche auf jeder Seite gleich gedruckt werden solle, gehören in den VS-Header/Footer, der ganze Rest in den Textkörper.

Der Versuch aus beiden Reports einen zu machen, weil ja bei dem ein das eine funktioniert, und bei dem anderen das andere, ist auch gescheitert.
Versteh ich nicht. Was genau hast du versucht?

Aber das kann ich wohl vergessen. Gibt es auch noch irgendwelche Deutschen Doku's? Oder sollte ich mich für eine Schulung anmelden?

Es gibt keine deutschen Unterlagen, wohl aber englische Schulungsunterlagen.
Hast du Zugriff zur CustomerSource? Dann such dort mal nach Training 80146 Report Design.
Eine Klassentraining halte ich aber für sinnvoller, denn du wirst beim Lesen/Ausprobieren auf viele Fragen oder Probleme stoßen ...

Re: [RTC] - Reports konvertieren von CC nach RTC

7. Mai 2013 12:30

Natalie hat geschrieben:
elTorito hat geschrieben:Ich soll eine FUnktion erstellen welche über ein WebService auffrufbar ist und mittels SaveAsPDF eine PDF abglegt.
Das Funktioniert gut, nur ist es so das SaveAsPDF nur mit RTC Reports funktioniert.

So ist es. Wäre es nicht möglich, einen CC-Bericht zu verwenden und den mittels eines PDF-Druckers zu drucken?


Hmm. Ich denke Nein. Der WebService ruft die veröffentlichte FUnktion einer Codeunit auf, "GetPDFDokument()", der C/AL COde erstellt mittels SaveAsPDF die PDF Datei, und gibt den Dateinamen an den WebClient zurück, der Client hat nun den DokumentName, weiß wo das PDF liegt, und soll damit machen was er möchte.

Natalie hat geschrieben:
Mit Create Layout Suggestion funktioniert das eher nicht.
[...]
Am liebsten wäre mir den CC Report so zu gestalten, das dieser per Create Suggestion was brauchbares vorschlägt.

Die Funktion ist nur dann einigermaßen hilfreich, wenn dein Report aus maximal 2 DataItems besteht und das zweite dem ersten untergordnet ist. In den Sections sollten keine besonderen "Spielereien" enthalten sein - und erst recht kein C/AL-Code!, nur einfache Felder mit ihren Labels.


Ok. Den Eindruck hatte ich auch, weil die "einfachen" Beispiele (Customer Top Ten oder so) aus dem MSDN damit einwandfrei funktionierten.

Natalie hat geschrieben:
Dann habe ich mal versucht mir die Standard Reports anzuschauen, dort wird mit code.GetData, code.SetData gearbeitet, habe hier im Forum auch schon darüber gelesen, aber so richtig verständlich, bzw. übersichtlich finde ich das nicht.

Das ist auch gerade für den Einstieg das falsche Thema. Warum glaubst du, müsstest du damit arbeiten?


Na, der Gedanke: "Wenns im Standard Report so vorkommt, dann muss das richtig sein" hat mich Glauben lassen ich müsste das so machen.

Natalie hat geschrieben:
Dann gibt es Reports mit ReportItems! (wahrscheinlich jene die über Creat Layout Suggestion) erstellt wurden?

Die Funktion erstellt tatsächlich ReportItems!..., aber das kannst du genauso gut manuell machen. Es kommt immer darauf an, was du eigentlich erreichen willst ...


Derzeit nur eine Auftragsbestätigung abbilden.

Natalie hat geschrieben:
Bei den reports welche im Kopf mit getData/SetData arbeiten wird mir der Textkörper nicht in der Vorschau gezeigt, bei jene die ReportItems! im Kopf haben, wird mir der Textkörper in der Vorschau angezeigt, nicht aber der Kopf.

1. RTC-Reports niemals in der bloßen Vorschau testen, sondern in der Vorschau oben auf "Drucklayout" klicken.
2. Ist dir der Unterschied zu CC bekannt? Die Aufteilung Kopf/Textkörper/Fuß in Visual Studio hat NICHTS mit mit unseren Section-Header, -Bodies und -Fotter gemeinsam. Nur Daten, welche auf jeder Seite gleich gedruckt werden solle, gehören in den VS-Header/Footer, der ganze Rest in den Textkörper.


Ok. Danke. Der DruckLayout Button ist bei mir in der Vorschau nicht verfügbar. Habe aber schon gelesen das man diesen Verfügbar machen kann.
Zum Testen Rufe ich den Report derzeit so auf:

Code:
dynamicsnav:////runreport?report=50000&filter="Sales Header"."No.":AU1001380


Zu 2. Ich denke ich hab den Unterschied verstanden zum CC , es gibt für das neue Report Layout, Kopf, Körper, Fuß, Kopf und Fuss für die Sachen die sich wiederholen, im Körper wird dann alles andere abgebildet , meinetwegen gepackt in Tabellen, und wird dann per Code gesteuert was davon später gedruckt wird oder nicht.


Natalie hat geschrieben:
Der Versuch aus beiden Reports einen zu machen, weil ja bei dem ein das eine funktioniert, und bei dem anderen das andere, ist auch gescheitert.

Versteh ich nicht. Was genau hast du versucht?


:oops: :oops: Copy/Paste ,.. bitte nicht schlagen... :oops:


Natalie hat geschrieben:
Aber das kann ich wohl vergessen. Gibt es auch noch irgendwelche Deutschen Doku's? Oder sollte ich mich für eine Schulung anmelden?

Es gibt keine deutschen Unterlagen, wohl aber englische Schulungsunterlagen.
Hast du Zugriff zur CustomerSource? Dann such dort mal nach Training 80146 Report Design.
Eine Klassentraining halte ich aber für sinnvoller, denn du wirst beim Lesen/Ausprobieren auf viele Fragen oder Probleme stoßen ...


Hab gestern nach 80146B gesucht (wurde hier erwaehnt, neben der SetData,GetData, Geschichte), und fand nichts, habe nun die Unterlagen imCustomerSource gefunden, ich schaue mal wie weit ich damit komme, und wenns immer noch nicht klappen will werd ich mich mal für ein Kurs anmelden.

Dankeschön.

Re: [RTC] - Reports konvertieren von CC nach RTC

7. Mai 2013 12:50

Ist es wirklich die Auftragsbestätigung, die du als PDF ablegen möchtest?
Der Standardbericht 205 hat ein Layout, aber das wurde bei euch gelöscht?

Ganz ehrlich, das Thema RDLC-Reportdesign ist viel zu komplex, um von jetzt auf gleich einzusteigen. Empfehlenswert wäre es, wenn du erst ein Grundverständnis entwickelst, wie RDLC funktioniert und was es mit den ganzen Gruppierungen, dem großen redundanten DataSet usw. auf sich hat.
Erst wenn du das alles verstehst, kannst du dich mit GetData/SetData herumschlagen, äh, auseinandersetzen :mrgreen:
Wenn die Neugier aber größer ist, findest du immerhin schöne (englische) Artikel, die GetData/SetData gut beschreiben:
http://dynamicsuser.net/blogs/alexchow/ ... ision.aspx

Aber auch die Onlinehilfe bietet viel, nur eben keine problemorientierte Schulung. Beispiele:
http://msdn.microsoft.com/en-us/library/bb934329.aspx
http://msdn.microsoft.com/en-us/library/dd301162.aspx
http://msdn.microsoft.com/en-us/library/ms157328.aspx

PS:
Der WebService ruft die veröffentlichte FUnktion einer Codeunit auf, "GetPDFDokument()", der C/AL COde erstellt mittels SaveAsPDF die PDF Datei, und gibt den Dateinamen an den WebClient zurück, der Client hat nun den DokumentName, weiß wo das PDF liegt, und soll damit machen was er möchte.

Kann dem WebService nicht völlig egal sein, auf welchem Wege das PDF abgelegt worden ist? Es zählt doch nur der PDF-Dateipfad. Den kannst du auch mit einigen PDF-Druckern bestimmen.

Re: [RTC] - Reports konvertieren von CC nach RTC

7. Mai 2013 13:11

Natalie hat geschrieben:Ist es wirklich die Auftragsbestätigung, die du als PDF ablegen möchtest?
Der Standardbericht 205 hat ein Layout, aber das wurde bei euch gelöscht?


Ja, genau :)
War auch mein erster Gedanke, einfach den Standard Report nehmen, kopieren, und irgendwie das Layout anpassen.
Aber Layout ist halt weg, vermutlich durch "Layout vorschlagen" überschrieben worden , müsste ich aber in irgendeiner Datensicherung wiederfinden.

Ganz ehrlich, das Thema RDLC-Reportdesign ist viel zu komplex, um von jetzt auf gleich einzusteigen. Empfehlenswert wäre es, wenn du erst ein Grundverständnis entwickelst, wie RDLC funktioniert und was es mit den ganzen Gruppierungen, dem großen redundanten DataSet usw. auf sich hat.
Erst wenn du das alles verstehst, kannst du dich mit GetData/SetData herumschlagen, äh, auseinandersetzen :mrgreen:
Wenn die Neugier aber größer ist, findest du immerhin schöne (englische) Artikel, die GetData/SetData gut beschreiben:
http://dynamicsuser.net/blogs/alexchow/ ... ision.aspx

Aber auch die Onlinehilfe bietet viel, nur eben keine problemorientierte Schulung. Beispiele:
http://msdn.microsoft.com/en-us/library/bb934329.aspx
http://msdn.microsoft.com/en-us/library/dd301162.aspx
http://msdn.microsoft.com/en-us/library/ms157328.aspx


Hmm. Okay, ich hatte gedacht (ich denke zu viel ...), das ich in RDLC reinfinde wenn ich es über Navision Reporting angehe, weil es dort ja eh erforderlich ist, und mal gemacht werden muss, woanders finden bei uns Reports keinen Einsatz.

PS:
Der WebService ruft die veröffentlichte FUnktion einer Codeunit auf, "GetPDFDokument()", der C/AL COde erstellt mittels SaveAsPDF die PDF Datei, und gibt den Dateinamen an den WebClient zurück, der Client hat nun den DokumentName, weiß wo das PDF liegt, und soll damit machen was er möchte.

Kann dem WebService nicht völlig egal sein, auf welchem Wege das PDF abgelegt worden ist? Es zählt doch nur der PDF-Dateipfad. Den kannst du auch mit einigen PDF-Druckern bestimmen.[/quote]

Naja, aber ich wüsste grad nicht wie ich mittels Webservice den PDF Drucker ansprechen könnte, dem WebService kann es egal sein auf welchen Wege das PDF abgelegt wurde, schon klar, nur wenn der WebService das Dokument anfragt, und nach der erstellung des Dokument den Dokument Name zurückbekommt, weiß der Client immerhin das das Dokument auch Bereit liegt. Anders müsste man da erst wieder abfragen...

Die Lösung ist schon ok.

Würde ein PDF Drucker einen CC Report drucken und irgendwo ablegen, damit würde ich das Thema RDLC Reports ja wieder nur aufschieben, und irgendwann muss ich da ja auch mal reinfinden, man weiß ja nie, vielleicht updaten wir ja doch mal auf 2009 RTC, oder 2013 , oder ich wechsle den Job...

Re: [Gelöst] - [RTC] - Reports konvertieren von CC nach RTC

8. Mai 2013 14:48

Natalie hat geschrieben:Hast du Zugriff zur CustomerSource? Dann such dort mal nach Training 80146 Report Design


Die Unterlagen haben mir bisher schon sehr geholfen.
Glaube die Basics jetzt verstanden zu haben und daher gelöst.

Jetzt macht es auf einmal schon Spaß die neue Reports zu Layouten :mrgreen: , bzw. ich bin ja noch am Testen und Experimentieren,
da bedauere ich ja das wir keinen RTC einsetzen.

Re: [Gelöst] - [RTC] - Reports konvertieren von CC nach RTC

8. Mai 2013 15:51

elTorito hat geschrieben:Die Unterlagen haben mir bisher schon sehr geholfen.
Glaube die Basics jetzt verstanden zu haben und daher gelöst.

Freut mich zu hören!

Jetzt macht es auf einmal schon Spaß die neue Reports zu Layouten :mrgreen: , [...]
da bedauere ich ja das wir keinen RTC einsetzen.

Wow, Sätze die ich hier sehr, sehr, sehr selten gehört habe :mrgreen: :mrgreen:

Re: [RTC] - Reports konvertieren von CC nach RTC

11. Juni 2013 09:59

Natalie hat geschrieben:Kann dem WebService nicht völlig egal sein, auf welchem Wege das PDF abgelegt worden ist? Es zählt doch nur der PDF-Dateipfad. Den kannst du auch mit einigen PDF-Druckern bestimmen.


Puh... Ich wieder... Nachdem ich jetzut einen tollen Einstieg in RDLC Reporting hatte, und es auch ganz interessant finde, kam nun von oben der Wunsch ein PDF zu erstellen anhand von einem Blanko PDF (Briefpapier Vorgabe). Das müsste man auch ohne RDLC Report hinbekommen?

Ich müsste dann mit C/AL den Drucker automatisch ansprechen und den generierten Dateiname an den Webservice weitergeben? Geht das überhaupt?

Ich stelle mir das gerade nicht einfach vor umzusetzen. Sauberer finde ich die SAVEASPDF Lösung. Weils ja von NAV Selber kommt, und ich möchte so wenig 3t Anbieter Tools im Boot haben wie nötig, weil zusätzliche Schritte bedeuten immer zusätzliche Fehlerquellen.

Danke :cry:

Re: [Gelöst] - [RTC] - Reports konvertieren von CC nach RTC

11. Juni 2013 10:08

Ich müsste dann mit C/AL den Drucker automatisch ansprechen


Tabelle 78

Es gibt diverse 3rd- Party- Lösungen die es ermöglichen einen PDF- Drucker bereitzustellen (Freepdf, PDFCreator, Bullzip, Broadgun,Adobe!?...) Diese Lösungen können meist auch auf irgendwelchen Kanälen (Registry, eingebettete Kommandos) ferngesteuert werden.

Gruß, Fiddi

Re: [Gelöst] - [RTC] - Reports konvertieren von CC nach RTC

11. Juni 2013 11:04

Nachdem ich nun der Doofe bin, weil ich nur Hintergrundbilder im Report einbinden kann, der Kollege aber dem fertigen PDF (mittels PHP oder JS) ein PDF als Wasserzeichen drüber bügeln kann, das Argument gegen die Bilder im RDLC Report (DIe Originale könnten sich ja ändern),ja und? Dafür kann man externe einbinden,half nicht, es wird nun aber ein Blanko PDF erst auf dem Webserver kopiert und dann mein NAV Report damit geschmückt, und wenn sich die Blanko PDF Vorlage mal ändert? Wo soll da jetzt der große Vorteil sein? Also Manchmal ,... boah... ********

Demnach ist die Aufgabe für mich erledigt.

Danke euch allen nochmal für eure Antworten.

Re: [Gelöst] - [RTC] - Reports konvertieren von CC nach RTC

11. Juni 2013 11:42

Die oben aufgeführten PDF- Drucker können auch Wasserzeichen.
Damit könnte man- korrekte Einrichtung vorausgesetzt - das PDF gleich passend ausdrucken (mit unterschiedlicher 1. und 2. er Seite) und auch gleich archivieren für den späteren Nachweis, oder wenn der Kunde die Rechnung aus dem Webshop noch einmal gesendet haben möchte :wink:


Gruß, Fiddi

Re: [Gelöst] - [RTC] - Reports konvertieren von CC nach RTC

11. Juni 2013 11:57

Naja, wir haben momentan QVPDF im Einsatz für unsere Citrix Terminals.
Der Plan war eigentlich den PDF Drucker abzuschaffen, sofern wir mal ganz auf RTC gehen sollten.

Ich denke unsere Kommunikation ist zu Chaotisch um ein Vernünftiges Ergebnis zu erzielen. Wir haben den QVPDF, der eine Briefpapier.pdf benötigt, dann haben wir unser Print Briefpapier, nun haben wir den WebClient der den vom RTC erstellten PDF auch nochmal ein Briefpapier verpasst.. Falls sich am Briefpapier Layout mal was ändern sollte, sind 3 Stellen betroffen, und wenn die Kommunikation nicht klappt fragt man sich dann nach nem Jahr warum die WebShop AB noch mit alten Briefpapier als PDF gedruckt wird... Alles wird mal eben Online gesetzt ohne wirklich was durchzutesten, so kam das RTC PDF mit SaveAsPDF (und eingebette Grafiken) mit 3 Seiten auf 140 KB, nachdem der Kollege dem PDF den Rohling aufzieht, hat das EndKunde PDF auf einmal 570 KB ...

Einfach mal alle Parteien an ein Tisch setzen und das ganze mal ausdiskutieren , so zwischen Tür und Angel kann nur Murks bei rauskommen.