Neuer Eintrag in Datenbanktabelle mit Eingabeparametern

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

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

Neuer Eintrag in Datenbanktabelle mit Eingabeparametern

Beitrag von sazukii (ForumUser / 8 / 0 / 0 ) »
Hallo,

Es geht darum ein Buch anzulegen. Dazu habe ich eine Datenbanktabelle (/SAPLOM/LIB_BOOK) angelegt mit den Spalten:
BOOK_ID
BOOK_TITEL
BOOK_AUTHOR
BOOK_PUBL
BOOK_ISBN

Diese Tabelle soll mit Eingabeparametern gefüllt werden.

Code: Alles auswählen.

     
            PARAMETERS: r_b_crea TYPE c RADIOBUTTON GROUP rb1,       
            book_i TYPE i,
            book_ti TYPE /SAPLOM/LIB_BOOK_TITEL,
            book_au TYPE /SAPLOM/LIB_BOOK_AUTHOR,
            book_pu TYPE /SAPLOM/LIB_BOOK_PUBL,
            book_is TYPE /SAPLOM/LIB_BOOK_ISBN.
Wie ihr seht muss auf dem Eingabebildschirm der Radiobutton r_u_crea (Buch anlegen) ausgewählt und dann die einzelnen Felder ausgefüllt werden. Danach soll auf Ausführen geklickt werden und die ausgefüllten Eingabeparameter sollen als neuer Eintrag (Zeile) in der DB tabelle gespeichert werden.

Ich komme einfach nicht darauf wie ich das Programmieren soll... :(

Code: Alles auswählen.

START-OF-SELECTION.
  CASE 'X'.
    WHEN r_b_crea.
       
          ???????????

    WHEN r_b_del.
      DELETE FROM /saplom/lib_book WHERE book_id = bookd.
    WHEN r_u_crea.
    WHEN r_b_disp.
      SELECT * INTO CORRESPONDING FIELDS OF TABLE lt_showb
      FROM /saplom/lib_book.

* shows a table with all books
      WRITE AT: 1 text-005,
               21 text-006,
               31 text-007.
      ULINE.

      LOOP AT lt_showb INTO ls_showb.
        WRITE AT: 1 ls_showb-book_id.
*              21 ls_showb-werks,
*              31 showb-datum.
        NEW-LINE.

      ENDLOOP.

    WHEN r_ab_dis.

      SELECT * INTO CORRESPONDING FIELDS OF TABLE lt_showb
      FROM /saplom/lib_book
      WHERE BOOK_LENT_FLAKE = 'X'.
* shows a table with all books
      WRITE AT: 1 text-005,
               21 text-006,
               31 text-007.
      ULINE.

      LOOP AT lt_showb INTO ls_showb.
        WRITE AT: 1 ls_showb-book_id.
*              21 ls_showb-werks,
*              31 showb-datum.
        NEW-LINE.

      ENDLOOP.

  ENDCASE.

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


Re: Neuer Eintrag in Datenbanktabelle mit Eingabeparametern

Beitrag von a-dead-trousers (Top Expert / 4399 / 223 / 1182 ) »
Schau dir mal in der ABAP Hilfe folgende Befehle an:
MODIFY (Hinzufügen oder Ändern wenn vorhanden)
INSERT (Hinzufügen)
UPDATE (Ändern)
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.18
Basis: 7.50

Re: Neuer Eintrag in Datenbanktabelle mit Eingabeparametern

Beitrag von sazukii (ForumUser / 8 / 0 / 0 ) »
Hallo a-dead-trousers,

vielen Dank für den Hinweis. Das habe ich bereits, allerdings ist es mir ein Rätsel wie ich da die Eingabeparameter einbinden soll... Ich google bereits mehrere Stunden. Eine Erklärung oder ein Beispiel gibt es wohl dafür nicht :(

Re: Neuer Eintrag in Datenbanktabelle mit Eingabeparametern

Beitrag von a-dead-trousers (Top Expert / 4399 / 223 / 1182 ) »
Achso. Du brauchst eine sogenannte "Workarea" für die Datenbankoperationen.
Das ist nichts anderes als eine Variable vom selben Typ wie deine Datenbanktabelle.

Code: Alles auswählen.

data: ls_book type /saplom/lib_book.
Der weist du dann die ganzen Werte zu die in die Datenbanktabelle rein sollen.

Code: Alles auswählen.

ls_book-book_title = book_ti.
...
Und am Ende führst du dann die jeweilige Operation aus.

Code: Alles auswählen.

INSERT /saplom/lib_book FROM ls_book.
lg ADT
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.18
Basis: 7.50

Re: Neuer Eintrag in Datenbanktabelle mit Eingabeparametern

Beitrag von sazukii (ForumUser / 8 / 0 / 0 ) »
Super. Hat funktioniert. Vielen Dank! :-)

Seite 1 von 1

Vergleichbare Themen

3
Antw.
771
Views
Eintrag an Datenbanktabelle anfügen
von L0w-RiDer » 06.08.2019 16:33 • Verfasst in ABAP® für Anfänger
4
Antw.
8026
Views
Neues Eintrag im SPRO
von natallin » 24.04.2008 13:32 • Verfasst in SAP - Allgemeines
2
Antw.
1782
Views
Neuer Eintrag im IT 2o1o
von mamba » 27.08.2007 16:57 • Verfasst in Human Resources
3
Antw.
2380
Views
Tree: Eintrag als Standard definieren
von destroyer » 20.03.2006 15:47 • Verfasst in ABAP Objects®
4
Antw.
3297
Views
Abrechnungstreiber. Wie lösche ich einen RT-Eintrag?
von ginotico » 24.11.2006 08:47 • Verfasst in Human Resources

Ü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

Aktuelle Forenbeiträge

Regex in where
Gestern von tar 8 / 369
Daten an Tabelle binden
vor 2 Tagen von Bright4.5 3 / 1636
Programm anlegen mit Vorlage
vor 2 Tagen von DeathAndPain 2 / 288
IT0024 Qualifikationen CP-ID
vor 2 Tagen von DeathAndPain 2 / 529

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.

Aktuelle Forenbeiträge

Regex in where
Gestern von tar 8 / 369
Daten an Tabelle binden
vor 2 Tagen von Bright4.5 3 / 1636
Programm anlegen mit Vorlage
vor 2 Tagen von DeathAndPain 2 / 288
IT0024 Qualifikationen CP-ID
vor 2 Tagen von DeathAndPain 2 / 529

Unbeantwortete Forenbeiträge

BUSOBJEKT zu CMIS PHIO ermitteln
vor 2 Tagen von snooga87 1 / 221
aRFC im OO-Kontext
letzen Monat von ralf.wenzel 1 / 3403
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9953