Page 1 of 1

ABAP EXEC SQL

PostPosted: Fri Nov 24, 2017 2:09 pm
by Patricia2728
Hallo zusammen,

möchte einen Insert aus SAP (abap Report) auf ein anderes System/DB machen.
Hier stellt sich das Problem, das der Tabellenname bzw. die DB im Namen ein
Leerzeichen hat.
Eingefügt zwischen EXEC SQL und ENDEXEC funktioniert das so leider nicht...
Wie kann ich das lösen?

Danke & Gruß

Re: ABAP EXEC SQL

PostPosted: Thu Dec 07, 2017 7:40 pm
by Tron
Moin.
Es gibt im SAP den Report ADBC_QUERY, mit dem kann man die neuen Klassen für SQL Aktionen ausprobieren.

Beispiel:
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. CLASS cl_sql_statement DEFINITION LOAD.
  2.  
  3. DATA: g_sql TYPE REF TO cl_sql_statement.
  4.  
  5. DATA t TYPE TABLE OF tab512 WITH HEADER LINE.
  6.  
  7. CONSTANTS crlf(2) VALUE %_cr_lf.
  8.  
  9. sql_statement TYPE string,
  10. sql_stmt_length TYPE i,
  11. sql_error_text(300),
  12. sql_error_number LIKE sy-tabix,
  13. record_count LIKE jctab-counter,
  14. lt_error_codes TYPE STANDARD TABLE OF i.
  15.  
  16.  
  17.  
  18. CREATE OBJECT g_sql.
  19.  
  20. * Hier die SQL Abfrage
  21. APPEND 'SELECT * FROM T003' TO t.
  22.  :
  23.  :
  24.  
  25. LOOP AT t.
  26.   CONCATENATE sql_statement t-wa INTO sql_statement
  27.   SEPARATED BY crlf+1(1).
  28. SHIFT sql_statement LEFT BY 1 PLACES.
  29.  
  30.  g_sql->execute_ddl( statement = sql_statement ).
  31. * hier die Methode EXECUTE_QUERY verwenden !!!!
  32.   CATCH cx_sql_exception .
  33.  
  34. FREE g_sql.
  35.  
  36.  
GeSHi ©

gruß Jens

Re: ABAP EXEC SQL

PostPosted: Wed Jan 31, 2018 3:03 pm
by Patricia2728
Danke für die Infos!