Skip to main content

SAP ABAP - Call AMDP With Select-Option

AMDP Code

CLASS zcl_amdp_acdoca DEFINITION
  PUBLIC
  FINAL
  CREATE PUBLIC .

  PUBLIC SECTION.
  INTERFACESif_amdp_marker_hdb.
  TYPES:
        BEGIN OF ty_acdoca,
            RCLNT  type acdoca-RCLNT,
            rbukrs type acdoca-rbukrs,
            belnr type acdoca-belnr,
            gjahr type acdoca-gjahr,
            DOCLN type acdoca-DOCLN,
            racct type acdoca-racct,
            budat type acdoca-budat,
        END OF ty_acdoca.

  TYPESzz_acdoca TYPE STANDARD TABLE OF ty_acdoca.

  class-METHODS:
    get_acdoca
      IMPORTING
        VALUE(lv_whereTYPE string
      EXPORTING
        VALUE(et_acdocaTYPE zz_acdoca.
  PROTECTED SECTION.
  PRIVATE SECTION.
ENDCLASS.



CLASS ZCL_AMDP_ACDOCA IMPLEMENTATION.


* <SIGNATURE>---------------------------------------------------------------------------------------+
* | Static Public Method ZCL_AMDP_ACDOCA=>GET_ACDOCA
* +-------------------------------------------------------------------------------------------------+
* | [--->] LV_WHERE                       TYPE        STRING
* | [<---] ET_ACDOCA                      TYPE        ZZ_ACDOCA
* +--------------------------------------------------------------------------------------</SIGNATURE>
    METHOD get_acdoca
        by DATABASE PROCEDURE FOR HDB LANGUAGE SQLSCRIPT
        OPTIONS READ-ONLY USING ACDOCA.

        ITAB select DISTINCT RCLNTrbukrsbelnrgjahrDOCLNracctbudat FROM ACDOCA WHERE RLDNR '0L';

        et_acdoca APPLY_FILTER :ITAB:lv_where );
    endmethod.
ENDCLASS.


ABAP Code

*&---------------------------------------------------------------------*
*& Report YCALL_AMDP_WITH_SEL
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT ycall_amdp_with_sel.
TABLES:
  acdoca.

TYPES:
  BEGIN OF ty_acdoca,
    RCLNT  type acdoca-RCLNT,
    rbukrs TYPE acdoca-rbukrs,
    belnr  TYPE acdoca-belnr,
    gjahr  TYPE acdoca-gjahr,
    docln  TYPE acdoca-docln,
    racct  TYPE acdoca-racct,
    budat  TYPE acdoca-budat,
  END OF ty_acdoca.

DATAlt_acdoca TYPE STANDARD TABLE OF ty_acdoca.

SELECT-OPTIONS:
  s_bukrs FOR acdoca-rbukrs,
  s_belnr FOR acdoca-belnr,
  s_gjahr FOR acdoca-gjahr.

START-OF-SELECTION.

  DATA(lv_wherecl_shdb_seltab=>combine_seltabs(
    it_named_seltabs VALUE #(
      name 'RBUKRS' dref REF #s_bukrs[] )
      name 'BELNR'  dref REF #s_belnr[] )
      name 'GJAHR'  dref REF #s_gjahr[] )
    )
    iv_client_field 'RCLNT'
  ).
  zcl_amdp_acdoca=>get_acdoca(
    EXPORTING
      lv_where lv_where
    IMPORTING
      et_acdoca lt_acdoca[]
  ).

  SORT lt_acdoca[] BY rbukrs belnr gjahr docln.

  cl_demo_output=>display_data(
    EXPORTING
      value lt_acdoca[]
  ).

Output






Comments

Popular posts from this blog

PHP MySql CRUD Dengan Konsep MVC

Pada postingan kali ini saya akan sharing cara membuat CRUD dengan php menggunakan konsep MVC, ok langsung saja buka code editor (saya menggunakan sublime text) dan buat folder baru dengan nama phpmvc didalam folder htdocs kalian dan tambah folder seperti berikut :  Setelah itu kita siapkan database di mysql, buat database dengan nama phpmvc dan tablenya seperti gambar berikut : tambahkan file config.php didalam folder app/config : <?php define('BASEURL', 'http://localhost:8181/phpmvc/public'); define('DB_HOST', 'localhost'); define('DB_USER', 'root'); define('DB_PASS', ''); define('DB_NAME', 'phpmvc'); kemudian tambahkan 3 file controller didalam folder app/controllers, yaitu Home, About, dan Mahasiswa : Home.php <?php class Home extends Controller { public function index() { $data['nama'] = $this->model('User_model')->getUser()...

Cara Sederhana Multi Insert Data Dengan PHP - MySQL

Pada postingan kali ini saya akan share cara melakukan insert lebih dari satu data dengan menggunaka PHP- Jquery dan MySQL. Pertama buat database di MySQL dan table, disini saya membuat database dengan nama db_latihan dan table dengan nama t_barang dengan struktur table seperti berikut : Setelah membuat database dan table selanjutnya membuat project PHP, project PHP nya saya buat dengan nama multi-insert, lalu didalam folder ini saya membuat dua file yaitu index.php dan insert.php . Source code index.php seperti berikut : <! doctype   html > < html   lang = "en" >    < head >      <!-- Required meta tags -->      < meta   charset = "utf-8" >      < meta   name = "viewport"   content = "width=device-width, initial-scale=1" >      <!-- Bootstrap CSS -->      < link ...

Laravel - Sistem Informasi Perpustakaan Sederhana Laravel

Postingan kali saya akan sharing membuat aplikasi perpustakaan sederhana menggunakan laravel 5.8, dimana terdapan menu Anggota, Kategori Buku, Daftar Buku dan Transaksi (Peminjaman/Pengembalian Buku). ok langsung saja kita buat project laravel dengan nama perpus : composer create-project --prefer-dist laravel/laravel perpus setelah create project laravel-nya selesai kita buat database melalui localhost/phpmyadmin dengan nama db_perpus, lalu kita buka project laravel dengan code editor disini saya menggunakan visual studio code. Setelah project kita buka dengan code editor, pertama kita atur koneksi database yang ada di file .env, kita rubah menjadi seperti berikut : note : untuk db_username dan db_password di sesuiakan dengan configurasi masing-masing. Selanjutnya kita tambahkan 4 buah data migration yaitu : table_anggota, table_kategori, table_buku, table_transaksi, kita buka terminal dan jalankan command berikut :  php artisan make:migration crea...