[GELÖST] Export nach Excel (mehrere Tabellen als Grundlage)

18. November 2010 11:26

Hallo liebe Experten,


da ich relativ neu in NAV bin, habe ich noch einige Fragen, die euch sicherlich etwas simpel erscheinen mögen.

Ich muss dazu sagen, dass ich noch keinen Lehrgang oder Ähnliches besucht habe, weshalb auch eine Dinge näherer Erklärung bedürfen :(

Zu meinem Problem:

Ich möchte Daten aus einer Table (zum Üben nehme ich Customer) in eine Excel-Tabelle exportieren.

Dazu nutze ich einen Report, der wiederum auf den Excelbuffer zurückgreift, um die Daten zu exportieren(Wie im Tutorial beschrieben)

Bisher läuft es ohne Probleme, nur würde ich gern wissen, ob es möglich ist, Daten aus mehreren Tabellen in eine Excel-Tabelle zu exportieren? (Ich denke es sollte möglich sein, nur komm ich irgentwie nicht dahinter)

Ich habe es mit der Deklaration einer globales Variable versucht, aber leider funktioniert das nicht so recht.

Auch der Umgang mit einem Dataport ist mir recht fremd(habe nur ein paar Daten in ein txt.-file geschrieben und weiß nicht, wie ich einen Dataport dazu bekomme, die Daten in eine Excel-Tabelle zu schreiben)

Wenn ihr mir ein paar Tipps geben könntet, wäre ich sehr zufrieden :-D

*NAV 5 oder NAV09[Classic]*
Zuletzt geändert von sweikelt am 19. November 2010 11:09, insgesamt 1-mal geändert.

Re: Export nach Excel (mehrere Tabellen als Grundlage)

19. November 2010 10:08

Meine Lösung sieht so aus:

Ich habe eine "Generaltabelle" mit ca. 20 Spalten.
Diese Generaltabelle fülle ich über Codeunit oder Report oder Form mit Daten.
Diese Daten können aus beliebigen Tabellen stammen.

Dann habe ich einen Report "Excel Export Generaltabelle".
Dieser exportiert dann nach Excel.

In einer weiteren Tabelle kann ich einrichten, wie die Spaltenüberschiften aussehen sollen. Darauf greift dieser Report zu.

Mit dem Dataport kannst du .csv - Dateien erstellen, indem du die Datensätze mit ; trennst. das kann Excel dann direkt öffnen.

Re: Export nach Excel (mehrere Tabellen als Grundlage)

19. November 2010 10:11

Und wieso schreibst du nicht alles gleich in den Excelbuffer? :roll:

Re: Export nach Excel (mehrere Tabellen als Grundlage)

19. November 2010 10:30

ahh vielen dank für den hinweis....hätte ich auch selber draufkommen können^^

ich werd das gleich mal in die tat umsetzen!

McClane hat geschrieben:Und wieso schreibst du nicht alles gleich in den Excelbuffer? :roll:


ich weiß leider nicht, wie du das meinst - aus meiner sicht schreibe ich das doch direkt in den excelbuffer -> ich rufe den report auf, der als dataitem die zu exportierende table hat und die gewünschten spalten werden dann in den excelbuffer geschrieben, welcher mir doch eine excel-tabelle erstellt.

Re: Export nach Excel (mehrere Tabellen als Grundlage)

19. November 2010 10:32

sweikelt hat geschrieben:ich weiß leider nicht, wie du das meinst

Och, das geht mir meistens genauso :wink:

Nein, das war auf den Beitrag von rallnus bezogen.

Re: Export nach Excel (mehrere Tabellen als Grundlage)

19. November 2010 10:42

McClane hat geschrieben:
sweikelt hat geschrieben:ich weiß leider nicht, wie du das meinst

Och, das geht mir meistens genauso :wink:

Nein, das war auf den Beitrag von rallnus bezogen.


ok, wenn dein beitrag auf den von rallnus bezogen war, dann wäre ich ja wieder bei dem problem, daten aus mehreren tabellen in den excelbuffer zu schreiben, was ich leider nicht weiß, wie das funktioniert (ich habe mich beim export an das tutorial gehalten (http://www.navision24.de/tutorials/echt ... eugen.html )

Re: Export nach Excel (mehrere Tabellen als Grundlage)

19. November 2010 10:44

Naja, du suchst dir per Code die Daten aus den Tabellen zusammen, schreibst sie nacheinander in den Excel Buffer oder speicherst sie zwischen und schreibst den Buffer danach voll .. ich versteh die Frage nicht recht, glaube ich. Wo ist denn das Problem?

Re: Export nach Excel (mehrere Tabellen als Grundlage)

19. November 2010 10:51

naja ich müsste diese wohl wirklich zwischenspeichern (möglicherweise in eine temp-table), damit der buffer dann drauf zugreifen kann.

so wie ich das bisher verstanden habe, kann ich mit meinem report nur daten aus einer table exportieren ... jedenfalls werden keine daten aus anderen tables exportiert.

tut mir leid, wenn ich mich unverständlich ausdrücke

Re: Export nach Excel (mehrere Tabellen als Grundlage)

19. November 2010 10:52

ja, klar das mit dem Excel-Buffer ist gut, wenn man nur einen Excel-Export betreiben möchte.

Meine Generaltabelle ist verwende ich zum allgemeinen Datenmanagement.
- Im-/Export
- Modifizerungen
- Auswertungen
- Data Item für spezielle Reports
etc.

Im Excel Buffer würde ich hier den Überblick verlieren.

Re: Export nach Excel (mehrere Tabellen als Grundlage)

19. November 2010 11:07

rallnus hat geschrieben:ja, klar das mit dem Excel-Buffer ist gut, wenn man nur einen Excel-Export betreiben möchte.

Import geht mE genauso gut, und man ist in der Spaltenzahl nicht limitiert.

Aber nichts gegen deine eigene Lösung. Klar ist man allein durch die Gewohnheit damit viel schneller :)

Re: Export nach Excel (mehrere Tabellen als Grundlage)

19. November 2010 11:11

sweikelt hat geschrieben:naja ich müsste diese wohl wirklich zwischenspeichern (möglicherweise in eine temp-table), damit der buffer dann drauf zugreifen kann.

so wie ich das bisher verstanden habe, kann ich mit meinem report nur daten aus einer table exportieren ... jedenfalls werden keine daten aus anderen tables exportiert.

Den Excelbuffer sollte man allerdings auch nur temporär verwenden. Du kannst dir das Chaos sicher vorstellen, wenn zwei Leute gleichzeitig in die Tabelle der DB schreiben.

Ok, du hast also nun einen Report mit mehreren DataItems, und Daten aus allen sollen exportiert werden, stimmt's?

Re: [GELÖST] Export nach Excel (mehrere Tabellen als Grundla

19. November 2010 11:19

McClane hat geschrieben:
sweikelt hat geschrieben:naja ich müsste diese wohl wirklich zwischenspeichern (möglicherweise in eine temp-table), damit der buffer dann drauf zugreifen kann.

so wie ich das bisher verstanden habe, kann ich mit meinem report nur daten aus einer table exportieren ... jedenfalls werden keine daten aus anderen tables exportiert.

Den Excelbuffer sollte man allerdings auch nur temporär verwenden. Du kannst dir das Chaos sicher vorstellen, wenn zwei Leute gleichzeitig in die Tabelle der DB schreiben.

Ok, du hast also nun einen Report mit mehreren DataItems, und Daten aus allen sollen exportiert werden, stimmt's?


genau, nur wenn ich mehrere dataitems anlege, erscheint dann beim run des forms eine weitere registrierkarte mit dem namen dieses neuen dataitems....deswegen wollt ich das alles in einem dataitem machen....
desweiteren weiß ich dann immernoch noch nicht, wie ich den buffer dazu bekomme, das zweite data-item auch in dieselbe excel-tabelle wie das erste zu schreiben!

Re: [GELÖST] Export nach Excel (mehrere Tabellen als Grundla

19. November 2010 11:45

sweikelt hat geschrieben:genau, nur wenn ich mehrere dataitems anlege, erscheint dann beim run des forms eine weitere registrierkarte mit dem namen dieses neuen dataitems....deswegen wollt ich das alles in einem dataitem machen....

Trag einfach bei dem neuen DataItem einen Schlüssel ein, dann verschwindet der neue Reiter.

sweikelt hat geschrieben:desweiteren weiß ich dann immernoch noch nicht, wie ich den buffer dazu bekomme, das zweite data-item auch in dieselbe excel-tabelle wie das erste zu schreiben!

Hm. Wieso nicht? Du hast im Report eine globale (temporäre) Variable ExcelBuffer, und die schreibst du zeilen- und spaltenweise voll.

So als Beispiel, ob ich das richtig verstehe:
Report läuft über Verkaufsköpfe und die zugehörigen Zeilen. Ich möchte die Zeilen nach Excel exportieren, aber auch auf Daten aus dem Kopf zugreifen. Dann schreibe ich je gefundene VK-Zeile eine Zeile in den ExcelBuffer und ergänze die Kopfdaten durch einfachen Zugriff auf das DataItem "Sales Header".

Re: [GELÖST] Export nach Excel (mehrere Tabellen als Grundla

19. November 2010 12:06

ich danke dir!....hab nen kleinen aber entscheidenden denkfehler gehabt :/

jetzt funktioniert alles so, wie es soll!

tausend dank nochmal! :-D