Fehler bei Hintergrundverarbeitung

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Getting started ... Alles für einen gelungenen Start.
14 Beiträge • Seite 1 von 1
14 Beiträge Seite 1 von 1

Fehler bei Hintergrundverarbeitung

Beitrag von Melanie_P ( / / 0 / 3 ) »
Hallo liebe Experten,

ich habe einen Report, der mittels SELECT-Anweisung einige Daten aus diversen Datenbanktabellen ausliest und diese dann in eine Textdatei schreibt. Nun sollte dieser Report als Job automatisch einmal am Tag ablaufen.

Ich habe allerdings das Problem, dass der Report, wenn ich ihn über die Hintergrundverarbeitung laufen lasse, grundsätzlich die falschen Daten in meinem Textfile speichert. Komisch ist außerdem, dass, egal was ich in der WHERE-Klausel schreibe, immer dieselben Daten im Textfile stehen und dieses auch immer dieselbe Größe hat. Lasse ich das Programm im ABAP-Editor über F8 laufen, werden jedoch die richtigen Daten ins Textfile übertragen.

Hat irgendjemand eine Ahnung, woran das liegen könnte? Müssen noch bestimmte Dinge bei der Hintergrundverarbeitung beachtet werden?

Vielen Dank für die Hilfe!

Gruß
Melanie

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Beitrag von Haubi (Expert / 625 / 20 / 30 ) »
Moinsen.

Poste doch mal bitte Deinen SELECT. Und: hat der Report Eingabeparameter auf dem Selektionsbild?

Gruss,
Haubi
Das ABAP Kochbuch ab sofort bei Amazon...

I'd rather write code that writes code than write code...

Re: Fehler bei Hintergrundverarbeitung

Beitrag von Melanie_P ( / / 0 / 3 ) »
Hallo Haubi,

hier mein Select-Statement:

Code: Alles auswählen.

SELECT ekko~lifnr ekpo~matnr eket~eindt ekpo~menge ekbe~budat
 ekbe~menge ekpo~ebelp ekko~ebeln
  FROM ekko JOIN ekpo
    ON ekko~ebeln EQ ekpo~ebeln
    LEFT JOIN ekbe
      ON ekpo~ebeln EQ ekbe~ebeln
      AND ekpo~ebelp EQ ekbe~ebelp
    LEFT JOIN eket
      ON ekpo~ebeln EQ eket~ebeln
      AND ekpo~ebelp EQ eket~ebelp
  INTO TABLE tab_records
  WHERE ekko~bstyp EQ 'F'
*    AND ekko~ebeln = '4500000020'
  ORDER BY ekpo~matnr eket~eindt ekko~lifnr.
DELETE ADJACENT DUPLICATES
  FROM tab_records
  COMPARING ebelp.
Es gibt gar kein Selektionsbild, also auch keine Eingabeparameter. Das Teil sollte im Optimalfall nur die neuesten bzw. bearbeitete Bestellungen auslesen, was allerdings noch nicht funktioniert.

Gruß
Melanie

Beitrag von Haubi (Expert / 625 / 20 / 30 ) »
Moinsen.

Auffällig ist erstmal, dass Du die Einträge nach Materialnummer (usw.) sortierst (ORDER BY), anschließend aber benachbarte Einträge mit gleicher EBELP löschst. Was bezweckst Du hier?

Das Phänomen mit "Ergebnis Online ungleich Ergebnis Batch" erklärt das allerdings noch nicht... :?

Gruss,
Haubi
Das ABAP Kochbuch ab sofort bei Amazon...

I'd rather write code that writes code than write code...

Beitrag von Gast ( / / 0 / 3 ) »
Naja, wenn's ein Hintergrundjob ist, wird's wohl nichts mit schreiben einer Textfile am local PC.

:roll:

Natürlich schreibt das Programm beim Debuggen dann die richtigen Daten weg :roll:


Es gibt bei solchen Sachen: PROTOKOLLE....

Re: Fehler bei Hintergrundverarbeitung

Beitrag von Melanie_P ( / / 0 / 3 ) »
Nun ja, ich dachte ich müsste doppelte Einträge löschen, da ja immer alles mit allem mit dem Join verbunden wird. Allerdings bin ich mir da dank deines Hinweises nicht mehr so sicher. Ist auch das erste Mal, dass ich sowas mit Open SQL mache, da bin ich für jede Hilfe dankbar!

Zurück zum eigentlichen Problem. Ich habe gerade festgestellt, dass das Problem auch besteht, wenn ich innerhalb der Hintergrundausführung sage "sofort ausführen". Bisher hatte ich immer "einplanen" gewählt. Das Textfile hat unabhängig vom Select-Statement immer die Länge 2.990 und es stehen auch immer dieselben Daten drin. Bin für jeden Hinweis dankbar!

Re: Fehler bei Hintergrundverarbeitung

Beitrag von Melanie_P ( / / 0 / 3 ) »
Hallo Gast,
ich speichere ja nicht auf dem lokalen PC sondern auf dem Applikationsserver in SAP.

Beitrag von Asaph (Expert / 580 / 6 / 1 ) »
Hallo Melanie,

wo führst du denn deinen report aus - auf einem testsystem ?
wenn ja, erfasse mal ein paar Bestellungen (me21)und schaue, ob dein Report immer noch denselben output hat



lg Andreas

Re: Fehler bei Hintergrundverarbeitung

Beitrag von Gast ( / / 0 / 3 ) »
Melanie_P hat geschrieben:Nun ja, ich dachte ich müsste doppelte Einträge löschen, da ja immer alles mit allem mit dem Join verbunden wird. Allerdings bin ich mir da dank deines Hinweises nicht mehr so sicher. Ist auch das erste Mal, dass ich sowas mit Open SQL mache, da bin ich für jede Hilfe dankbar!

Zurück zum eigentlichen Problem. Ich habe gerade festgestellt, dass das Problem auch besteht, wenn ich innerhalb der Hintergrundausführung sage "sofort ausführen". Bisher hatte ich immer "einplanen" gewählt. Das Textfile hat unabhängig vom Select-Statement immer die Länge 2.990 und es stehen auch immer dieselben Daten drin. Bin für jeden Hinweis dankbar!
Open SQL :shock:

Wenn immer das gleiche selektiert wird, ist es völlig normal, dass auch immer das gleiche in der Datei steht. Alles andere würde mich wundern :roll:

Re: Fehler bei Hintergrundverarbeitung

Beitrag von Gast ( / / 0 / 3 ) »
Melanie_P hat geschrieben:Nun ja, ich dachte ich müsste doppelte Einträge löschen, da ja immer alles mit allem mit dem Join verbunden wird. Allerdings bin ich mir da dank deines Hinweises nicht mehr so sicher. Ist auch das erste Mal, dass ich sowas mit Open SQL mache, da bin ich für jede Hilfe dankbar!

Zurück zum eigentlichen Problem. Ich habe gerade festgestellt, dass das Problem auch besteht, wenn ich innerhalb der Hintergrundausführung sage "sofort ausführen". Bisher hatte ich immer "einplanen" gewählt. Das Textfile hat unabhängig vom Select-Statement immer die Länge 2.990 und es stehen auch immer dieselben Daten drin. Bin für jeden Hinweis dankbar!
Open SQL :shock:

Wenn immer das gleiche selektiert wird, ist es völlig normal, dass auch immer das gleiche in der Datei steht. Alles andere würde mich wundern :roll:

Re: Fehler bei Hintergrundverarbeitung

Beitrag von Melanie_P ( / / 0 / 3 ) »
Wenn immer das gleiche selektiert wird, ist es völlig normal, dass auch immer das gleiche in der Datei steht. Alles andere würde mich wundern
Selbstverständlich selektiere ich nicht immer das Gleiche! Bei Hintergrundverarbeitung hat die Datei, egal ob ich nun alle Bestellungen auslese oder nur eine EBELN, immer die Länge 2.990 und es stehen immer die gleichen Daten drin. Wenn ich mit F8 innerhalb des ABAP-Editors ausführe, ändert sich selbstverständlich bei verschiedenen WHERE-Bedingungen die Länge der Datei und auch die Daten. Bei der Hintergrundverarbeitung nicht!

Warum übrigens dieses :shock: bei der Erwähnung von Open SQL? Geht es auch anders in ABAP? Ich mache das erst seit 2 Monaten, bin also absoluter Neuling was das betrifft!

Re: Fehler bei Hintergrundverarbeitung

Beitrag von Haubi (Expert / 625 / 20 / 30 ) »
Melanie_P hat geschrieben:Nun ja, ich dachte ich müsste doppelte Einträge löschen, da ja immer alles mit allem mit dem Join verbunden wird.
Du bekommt alle Positionen aller Bestellungen. Die Left-Joins sorgen ja nur dafür, dass die Daten angereichert werden, zusätzliche Zeilen entstehen dadurch nicht. Ich vermute mal, dass durch den DELETE die Datenmenge extrem schrumpft, was aber wahrscheinlich in diesem Fall nicht im Sinne des Erfinders ist. ;)
Zurück zum eigentlichen Problem. Ich habe gerade festgestellt, dass das Problem auch besteht, wenn ich innerhalb der Hintergrundausführung sage "sofort ausführen". Bisher hatte ich immer "einplanen" gewählt.
Hmm, das Ergebnis von Online und Batch sollten eigentlich übereinstimmen, da gibt es keinen Unterschied, der mir einfallen würde...
Das Textfile hat unabhängig vom Select-Statement immer die Länge 2.990 und es stehen auch immer dieselben Daten drin. Bin für jeden Hinweis dankbar!
Was heisst "unabhängig von Select-Statement"? Das Statement liefert in jedem Lauf des Reports exakt die gleichen Zeilen zurück (es sei denn jemand erfasst Bestellungen oder schmeisst sie weg). Der Select wird in Deinem Fall ja nicht "von aussen" beeinflusst, z.B. über Parameter.
Oder änderst Du das Coding zwischendurch? Dann solltest Du darauf achten, dass Du Deinen Report nicht nur speicherst sondern aktivierst. Ich halte es für möglich, dass ansonsten im Batch nicht die aktuelle Load-Version gezogen wird sondern eine alte... :?

Gruss,
Haubi

Re: Fehler bei Hintergrundverarbeitung

Beitrag von Melanie_P ( / / 0 / 3 ) »
Puh, natürlich! Ich hatte doch glatt (ironischerweise seit ich die Hintergrundverarbeitung ausprobiere) die Aktivierung vergessen! Ich wusste ja, es muss ein ganz dummer Fehler sein!

Vielen Dank an Haubi :D

Beitrag von Haubi (Expert / 625 / 20 / 30 ) »
Hehe, als ich's geschrieben hab war ich mir schon fast sicher... :lol:

Gruss,
Haubi
Das ABAP Kochbuch ab sofort bei Amazon...

I'd rather write code that writes code than write code...

Seite 1 von 1

Vergleichbare Themen

4
Antw.
2003
Views
Hintergrundverarbeitung
von Hagbard » 13.09.2005 14:28 • Verfasst in ABAP® für Anfänger
2
Antw.
2117
Views
Hintergrundverarbeitung im Dialogprogramm?
von eschi78 » 16.11.2006 16:30 • Verfasst in Dialogprogrammierung
6
Antw.
2278
Views
Hochkommata für Hintergrundverarbeitung
von Tobias82 » 30.07.2013 11:49 • Verfasst in ABAP® Core
4
Antw.
2290
Views
Report-Hintergrundverarbeitung
von Charadin » 22.09.2005 13:23 • Verfasst in ABAP® Core
1
Antw.
857
Views
Table Control und Hintergrundverarbeitung
von Obelix1 » 28.04.2014 10:44 • Verfasst in ABAP® Core

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 4 Tagen von Lucyalison 1 / 71
Group Items auf einer Filterbar
vor einer Woche von Bright4.5 1 / 111
tRFC Transaktionen SM58
vor 4 Wochen von A6272 1 / 141