Daten aus temporärer Tabelle

25. August 2010 10:47

Hallo,

ich habe aus einem Bericht Datensätze in einer temporären Tabelle geschrieben und das funktioniert auch: die Tabelle wird mit Daten gefüllt!
Jetzt möchte ich aus der temporären Tabelle bestimmte Information in meinem Ausgangs-Bericht zurückschreiben (andrucken)!

Ich habe leider nicht den richtigen Ansatz gefunden um dies zu tun oder sauber abzubilden! Könnt Ihr vielleicht helfen…

Danke im Voraus
Zuletzt geändert von amouslih am 3. September 2010 10:11, insgesamt 1-mal geändert.

Re: Daten aus temporären Tabelle

25. August 2010 10:50

Als Beispiel könnte dir der Report 206, DataItem SalesShipmentBuffer, helfen :)

Re: Daten aus temporärer Tabelle

25. August 2010 11:15

Ich steige leider da nicht durch! Wie soll ich vorgehen? Integer und dann... Was muss man bei Integer beachten?
Zuletzt geändert von amouslih am 3. September 2010 10:11, insgesamt 1-mal geändert.

Re: Daten aus temporären Tabelle

25. August 2010 11:20

Integer bzw. Ganzzahl zählt einfach nur positive Zahlen durch. Wenn man allein daraus einen Report baut und im Report das Feld "Number" druckt, stehen da nur die Zahlen Eins bis xx untereinander. Man kann so ein Dataitem aber super für deinen Fall benutzen, wenn man nämlich ein Record nicht als normales DataItem ansprechen kann.

Im einfachen Fall weißt du vorher, wieviele deiner temporären Datensätze du andrucken willst. Dann kannst du im OnPreDataItem eines Integer-DIs schon mal bequem per SetRange festlegen, dass genau so viele Durchläufe gemacht werden. Im OnAfterGetRecord machst du dann ein TempRecord.next (außer beim ersten Durchlauf), und in der Section des Integers kannst du die Daten des temporären Records andrucken.

Re: Daten aus temporären Tabelle

25. August 2010 11:56

amouslih hat geschrieben:ich habe aus einem Bericht Datensätze in einer temporären Tabelle geschrieben und das funktioniert auch: die Tabelle wird mit Daten gefüllt!

Was heißt das genau? Hast du eine Tabelle angelegt und diese über einen bestimmten Report (anderen als den Ausgabe-Report) gefüllt? Wie hast du geprüft, ob die "temporäre Tabelle" auch mit Daten gefüllt wird?

Re: Daten aus temporärer Tabelle

25. August 2010 12:19

Danke McClane!
Ich möchte eigentlich mit dem Feldinhalt eines Feldes in meinem Ursprungsdataitem weiter berechnen! Wie kann ich das machen?

Ich habe es jetzt so gemacht:

Code:
Integer – OnPreDataItem()

NoOfLoops := TempTabelle.Count + 1;
message(Format(noofloops));
IF NoOfLoops <= 0 THEN
  NoOfLoops := 1;
SETRANGE(Number,1,NoOfLoops);

Integer OnAfterGetRecord()

IF Number = 1 THEN
  TempTabelle.FIND('-')
ELSE
  TempTabelle.NEXT;

TempTabelle.RESET;
TempTabelle.SETRANGE(Reklamationscode,"Return Reason".Code);
IF ((TotalQ[1] > 0) AND (TotalQ[2] > 0)) THEN
  IF TempTabelle.FINDFIRST THEN BEGIN
    TempTabelle.CALCFIELDS("Menge gesamt","Anz. Reklamationen gesamt");
    TotalQ[3] := (TotalQ[2]/TempTabelle."Menge gesamt") * 100;
    TotalQ[4] := (TotalQ[2]/TempTabelle."Anz. Reklamationen gesamt") * 100;
  END;



Funktioniert leider nicht! Hast Du noch eine Empfehlung wie ich das machen kann!
Zuletzt geändert von amouslih am 3. September 2010 10:11, insgesamt 1-mal geändert.

Re: Daten aus temporärer Tabelle

25. August 2010 12:23

HattrickHorst hat geschrieben:
amouslih hat geschrieben:ich habe aus einem Bericht Datensätze in einer temporären Tabelle geschrieben und das funktioniert auch: die Tabelle wird mit Daten gefüllt!

Was heißt das genau? Hast du eine Tabelle angelegt und diese über einen bestimmten Report (anderen als den Ausgabe-Report) gefüllt? Wie hast du geprüft, ob die "temporäre Tabelle" auch mit Daten gefüllt wird?


ich habe einen Bericht eingerichtet aus dem ich bestimmte Datensätze in einer temporären Tabelle schreibe! Ich habe die Eigenschaft "temporary" auf Nein gesetzt und somit könnte ich prüfen, ob die Datensätze in der TempTabelle geschrieben werden -- funktioniert!

Danke.
Zuletzt geändert von amouslih am 3. September 2010 10:12, insgesamt 1-mal geändert.

Re: Daten aus temporären Tabelle

25. August 2010 12:30

amouslih hat geschrieben:Ich möchte eigentlich mit dem Feldinhalt eines Feldes in meinem Ursprungsdataitem weiter berechnen! Wie kann ich das machen?

Achso. Na, dann machst du im OnAfterGetRecord des Ursprungsdataitems einen Zugriff auf die temporäre Tabelle und holst dir die Daten.

Re: Daten aus temporärer Tabelle

25. August 2010 12:42

Das habe ich auch schon mal probiert!
Ich möchte die Summe über mehrere Zeilen haben und OnAfterGetRecord der Ursprungstabelle bekomme ich nur so viel wie er geschafft hat! Je nach dem wo sich der lauf gerade befindet und erst beim letzten Datensatz von der Temptabelle habe ich die gewünschte Summe!
Zuletzt geändert von amouslih am 3. September 2010 10:12, insgesamt 1-mal geändert.

Re: Daten aus temporären Tabelle

25. August 2010 12:48

Was meinst du mit "wieviel er geschafft hat"?¿ Wird die Temptabelle erst während des Durchlaufs mit den nötigen Daten gefüllt? Dann musst du das natürlich vorher machen. Entweder im OnPreDataItem oder du hängst ein zweites DataItem vom selben Subtype zuvor.