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 / 4271 / 213 / 1140 ) »
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 / 4271 / 213 / 1140 ) »
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.
608
Views
Eintrag an Datenbanktabelle anfügen
von L0w-RiDer » 06.08.2019 16:33 • Verfasst in ABAP® für Anfänger
2
Antw.
1704
Views
Neuer Eintrag im IT 2o1o
von mamba » 27.08.2007 16:57 • Verfasst in Human Resources
4
Antw.
7887
Views
Neues Eintrag im SPRO
von natallin » 24.04.2008 13:32 • Verfasst in SAP - Allgemeines
2
Antw.
2251
Views
Im Loop erst ab dem zweiten Eintrag
von ostpower » 21.05.2012 16:58 • Verfasst in ABAP® für Anfänger
3
Antw.
2323
Views
Tree: Eintrag als Standard definieren
von destroyer » 20.03.2006 15:47 • Verfasst in ABAP Objects®

Ü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