Skip to main content

SAP ABAP - ALV Average Field Value

 *&---------------------------------------------------------------------*

*& Report ZALV_AVG
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT zalv_avg.
TABLESekkoekpo.

TYPES:
  BEGIN OF ty_data,
    lifnr TYPE lifnr,
    matnr TYPE matnr,
    menge TYPE menge_d,
    meins TYPE meins,
  END OF ty_data.

DATA:
  lt_data TYPE TABLE OF ty_data.


DATA:
  lt_fieldcat TYPE slis_t_fieldcat_alv,
  ls_fieldcat TYPE slis_fieldcat_alv,
  is_layout   TYPE  slis_layout_alv,
  lt_sort     TYPE slis_t_sortinfo_alv,
  ls_sort     TYPE slis_sortinfo_alv.

PARAMETERS:
  p_bukrs TYPE bukrs.

SELECT-OPTIONS:
  s_matnr for ekpo-matnr,
  s_aedat FOR ekko-aedat.

START-OF-SELECTION.
  PERFORM get_data.
  PERFORM set_fieldcate.
  PERFORM display_data.

FORM get_data.
  REFRESH lt_data.
  SELECT ekko~lifnrekpo~matnrekpo~mengeekpo~meins
    FROM ekko INNER JOIN ekpo ON ekko~ebeln ekpo~ebeln
    INTO TABLE @lt_data
      WHERE ekko~bukrs @p_bukrs AND ekko~aedat IN @s_aedat and ekpo~matnr in @s_matnr.
ENDFORM.

FORM set_fieldcate.
  REFRESH lt_fieldcat.
  PERFORM :
        append_fieldcat USING 'LIFNR'    'Vendor Code' 'CHAR' '' '' '12' '' 'X' 'LT_DATA' '',
        append_fieldcat USING 'MATNR'    'Material' 'CHAR' '' '' '12' '' '' 'LT_DATA' '',
        append_fieldcat USING 'MENGE'    'Quantity' 'QUAN' 'MEINS' '' '12' 'C' '' 'LT_DATA' '',
        append_fieldcat USING 'MEINS'    'UoM' 'UNIT' '' '' '12' '' '' 'LT_DATA' ''.

  is_layout-colwidth_optimize 'X'.
  is_layout-info_fieldname    'LINECOLOR'.

  REFRESH lt_sort.
  CLEAR ls_sort.
  ls_sort-spos      1.
  ls_sort-fieldname 'LIFNR'.
  ls_sort-up        'X'.
  APPEND ls_sort TO lt_sort.

  CLEAR ls_sort.
  ls_sort-spos      2.
  ls_sort-fieldname 'MATNR'.
  ls_sort-subtot    'X'.
  ls_sort-up        'X'.
  APPEND ls_sort TO lt_sort.
ENDFORM.

FORM append_fieldcat USING p_fname p_fdesc p_dtype p_qfield p_cfield p_olen p_sum p_key p_tabname p_reftabname.
  DATA irows TYPE i.
  CLEAR irows.
  DESCRIBE TABLE lt_fieldcat LINES irows.
  irows irows + 1.
  CLEAR ls_fieldcat.
  ls_fieldcat-col_pos    irows.
  ls_fieldcat-key        p_key.
  ls_fieldcat-fieldname  p_fname.
  ls_fieldcat-seltext_l  p_fdesc.
  ls_fieldcat-seltext_m  p_fdesc.
  ls_fieldcat-seltext_s  p_fdesc.
  ls_fieldcat-datatype   p_dtype.
  ls_fieldcat-qfieldname p_qfield.
  ls_fieldcat-cfieldname p_cfield.
  ls_fieldcat-outputlen  p_olen.
  ls_fieldcat-do_sum     p_sum.
  ls_fieldcat-tabname    p_tabname.
  ls_fieldcat-ref_tabname p_reftabname.

  APPEND ls_fieldcat TO lt_fieldcat.
ENDFORM.

FORM display_data.
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      is_layout     is_layout
      it_fieldcat   lt_fieldcat
      it_sort       lt_sort
      i_save        'X'
    TABLES
      t_outtab      lt_data
    EXCEPTIONS
      program_error 1
      OTHERS        2.
ENDFORM.









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 ...

IT Asset Management Dengan PHP MySQL

Pada postingan kali saya akan share sebuah aplikasi IT Asset management yang fungsinya untuk memonitoring semua Asset khusus IT, contohnya : Laptop/komputer , Printer, Router, Hardisk, dll. Dalam aplkasi ini kita bisa mengetahui Asset IT posisinya dimana dan digunakan oleh siapa. untuk data-data yang dibutuhkan antara lain : 1. data kategori asset dalam menu ini kita bisa meng-input jenis2 kategory asset : tambah kategori asset : 2. data department 3. data karyawan 4. data department per karyawan 5. data asset location  6. data satuan asset dan untuk transaksi yang ada dalam aplikasi ini adalah,  1. create asset, pada menu create asset ini kita akan mengalokasikan sebuah asset ke karyawan/personnel tampilannya seperti berikut: setelah klik tombol save akan muncul seperti dibawah : untuk melihat detail asset yang sudah dibuat tadi, kita bisa pilih...