Neuer Eintrag in Datenbanktabelle mit Eingabeparametern Thema ist als GELÖST markiert

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 / 4486 / 231 / 1206 ) »
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 / 4486 / 231 / 1206 ) »
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

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Feldroutine ADSO Transformation
vor 2 Wochen von codemaster1 2 / 105353
Stücklisten
vor 3 Wochen von Selma.schwarz 1 / 107037

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.

Vergleichbare Themen

Eintrag an Datenbanktabelle anfügen
von L0w-RiDer » 06.08.2019 16:33
Neuer Eintrag im IT 2o1o
von mamba » 27.08.2007 16:57
Neues Eintrag im SPRO
von natallin » 24.04.2008 13:32
DB Eintrag (nicht MODIFY) und WindowPopUp
von vcelik » 30.05.2017 08:58
Benutzerauswahl auf Eintrag in DB prüfen - Pop-Up wenn ja
von vcelik » 30.06.2017 13:55

Aktuelle Forenbeiträge

Feldroutine ADSO Transformation
vor 2 Wochen von codemaster1 2 / 105353
Stücklisten
vor 3 Wochen von Selma.schwarz 1 / 107037

Unbeantwortete Forenbeiträge

Stücklisten
vor 3 Wochen von Selma.schwarz 1 / 107037
Belege
vor 3 Wochen von Selma.schwarz 1 / 104067