Insert löscht bestehende Zeile aus dbtab

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

Insert löscht bestehende Zeile aus dbtab

Beitrag von Notion (ForumUser / 2 / 0 / 0 ) »
Hallo zusammen, ich bin neu in diesem Forum.

Ich habe das oben genannte Problem, dass meine Daten die ich meiner Datenbank hinzufüge die alten Daten aus der Tabelle löschen. Das ist natürlich so nicht geplant!

Kurzgefasst: Ich ziehe Daten als JSON-String über eine REST-API und speichere diese in einer itab. Ich loope anschließend über die itab und move die Werte in die korrespondierenden Felder meiner dbtab. Abschließend folgt das insert-Statement.

Das Programm zieht jeweils nur die Daten für eine gewünschte Komponente. Sobald ich das Programm erneut ausführe, für eine Andere, wird die erste Komponete aus dbtab gelöscht.

Code: Alles auswählen.

IF itab[] IS NOT INITIAL.

 LOOP AT itab.

  MOVE itab-field1 TO dbtab-field1.
  MOVE itab-field2 TO dbtab-field2.

  INSERT dbtab.

 ENDLOOP.

ENDIF.
Liegt mein Problem eventuell an einer Konfiguration meiner dbtab? Ich bin überfragt!

Vielen Dank für eure Hilfe!


Re: Insert löscht bestehende Zeile aus dbtab

Beitrag von a-dead-trousers (Top Expert / 3639 / 125 / 947 ) »
Ins Blaue hinein geraten, ohne dass du uns mehr Informationen zur DB-Tabelle oder deinem Programm verrätst, würde ich darauf tippen, dass die Daten gar nie auf die Datenbank gespeichert wurden, weil dein Programm in einem Kontext läuft der am Ende ein COMMIT WORK benötigt.

Insert kann nämlich keine Daten überschreiben. Wenn es einen Eintrag mit demselben Schlüssel findet wird nichts gespeichert und entweder der sy-subrc gesetzt oder eine Exception ausgelöst.
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.07
Basis: 7.40

Re: Insert löscht bestehende Zeile aus dbtab

Beitrag von DeathAndPain (Top Expert / 1523 / 171 / 339 ) »
Ich sehe das genauso wie adt. Für mehr Details würden wir das vollständige Programm benötigen, nicht nur dieses doch etwas - sorry - primitiv anmutende Codefragment.

Re: Insert löscht bestehende Zeile aus dbtab

Beitrag von Notion (ForumUser / 2 / 0 / 0 ) »
Also die Daten aus der Datenbanktabelle lassen sich auslesen. Ich habe das Problem inzwischen gelöst indem ich ein Nummernkreisobjekt hinzugefügt habe. Der Codeschnipsel war natürlich nur spärlich.

Seite 1 von 1

Über diesen Beitrag



Unterstütze die Community und teile den Beitrag für mehr Leser und besseren Inhalt:

Aktuelle Forenbeiträge

JSON parsen in Node-Table
vor 11 Stunden von ralf.wenzel 3 / 49
Inlcudes in SapScripts
vor 15 Stunden von Tron 5 / 61

Vergleichbare Themen

bestehende Exceldadei aus Sap öffnen
von Amin » 24.08.2005 09:58
BSP in bestehende Web-Anwendungen integrieren ?
von Gast » 19.10.2004 09:07
*dbtab als Workarea
von Robertli » 12.07.2005 09:45
DELETE * FROM DBTAB
von Timo7 » 27.10.2006 11:36
ALV - neue Einträge hinzufügen, bestehende ändern
von LosPablos » 10.08.2005 17:04