Belajar ABAP Programming Dasar 2

Belajar Programming ABAP Dasar 2

Salam ABAP HR Indonesia !

Nah untuk pelajaran yang ke dua kita akan coba bikin inputan periode sebelum program di jalankan dan data akan di proses sesuai dengan periode yang di input tersebut.


Step:
1. Edit program dan tambahkan paramater untuk inputan tanggal mulai dan tanggal akhir.
* patameter untuk user input tanggal mulai dan akhir
PARAMETERS: ZBEGDA LIKE SY-DATUM,
ZENDDA LIKE SYDATUM.

















2. Edit program dan tambahkan di bawah INITIALIZATION nilai awal Zbegda dan Zendda.
* nilai awal periode
ZBEGDA = SY-DATUM.
ZENDDA = SY-DATUM.

3. Edit program dan ganti line :
LOOP AT ITAB_PA0002 WHERE GBDAT > '19693112' AND GBDAT < '19710101'. Menjadi : LOOP AT ITAB_PA0002 WHERE GBDAT >= ZBEGDA AND GBDAT <= ZENDDA.

4. Untuk lebih informatif ganti tampilan inputan menjadi “Tanggal Mulai” dan “Tanggal Akhir”. Click Goto > Text Elements > Selection Texts
















5. Masukan Textnya. Kemudian click tombol Activate untuk di aktifkan. Click tombol Back kembali ke source code.




















Nah sekarang user bias input tanggal mulai dan akhir yang nantinya akan di seleksi di program untuk tanggal lahir berdasarkan range tersebut.
















untuk code secara lengkapnya sbb:



REPORT ZPRG1 .

* Define internal table untuk PA0002 dengan strukture disamakan
DATA: ITAB_PA0002 LIKE PA0002 OCCURS 0 WITH HEADER LINE.
* Define variable Tampungan dengan type integer
DATA: ZJML_LAHIR TYPE I.

* patameter untuk user input tanggal mulai dan akhir
PARAMETERS: ZBEGDA LIKE SY-DATUM,
            ZENDDA LIKE SY-DATUM.

* tempat untuk inisialisasi variable / parameter
INITIALIZATION.
* nilai awal periode
  ZBEGDA = SY-DATUM.
  ZENDDA = SY-DATUM.

* Awal program proses akan di jalankan
START-OF-SELECTION.

* baca list PA0002 ke internal table
  SELECT * FROM PA0002 INTO TABLE ITAB_PA0002.

* hitung jumlah Employee yang lahir tahun 1970
  LOOP AT ITAB_PA0002 WHERE GBDAT >= ZBEGDA AND GBDAT <= ZENDDA.
    ZJML_LAHIR = ZJML_LAHIR + 1.
    WRITE : / ITAB_PA0002-PERNR, ITAB_PA0002-CNAME.
  ENDLOOP.

  WRITE : / 'JUMLAH : ', ZJML_LAHIR.

* akhir program proses
END-OF-SELECTION.

semoga berhasil

[ Read More..... Baca Selengkapnya Click disini ]

Belajar ABAP Programming Dasar 1.

Belajar Programming ABAP Dasar 1.
Salam ABAP HR Indonesia !

Sebagai dasar dari pemrogramman di SAP kita akan coba belajar nge-ABAP seperti apa ?. kita coba dari yang mudah dulu semoga gak ada kendala. kita akan bikin list report untuk Employee yang lahir di tahun 1970 dan dihitung ada berapa orang. ikuti langkah langkahnya.


1. Ketik tcode SE38 pada command field dan tekan enter.










2. Ketik nama program yang akan kita buat. Kemudian click Create.














3. Masukan Titile program yang kita buat. Tentukan Type dari atrribute program yang kita buat. Kemudian cliak save.



















4. Click Tombol “Local Object” jika program tidak untuk di transport ke Server Production. Jika akan di transport maka isi Development Class kemudian Click Save. Untuk belajar kali ini kita pilih tombol “Local Object”
















5. Ketik Code nya seperti dibawah ini.


REPORT ZPRG1 .

* Define internal table untuk PA0002 dengan strukture disamakan
DATA: ITAB_PA0002 LIKE PA0002 OCCURS 0 WITH HEADER LINE.
* Define variable Tampungan dengan type integer
DATA: ZJML_LAHIR TYPE I.

* tempat untuk inisialisasi variable / parameter
INITIALIZATION.


* Awal program proses akan di jalankan
START-OF-SELECTION.

* baca list PA0002 ke internal table
  SELECT * FROM PA0002 INTO TABLE ITAB_PA0002.

* hitung jumlah Employee yang lahir tahun 1970
  LOOP AT ITAB_PA0002 WHERE GBDAT > '19693112' AND GBDAT < '19710101'.
    ZJML_LAHIR = ZJML_LAHIR + 1.
    WRITE : / ITAB_PA0002-PERNR, ITAB_PA0002-CNAME.
  ENDLOOP.

  WRITE : / 'JUMLAH : ', ZJML_LAHIR.

* akhir program proses
END-OF-SELECTION.




6. Click Tombol Activate untuk mengaktivasi program yang sudah di edit / diketik.











7. Click Tombol Test (F8) untuk menjalankan program.










Nah selesai deh tinggal liat hasilnya.
program akan menampilkan nomor karaywan dan nama. serta dibaris terakhir akan di cetak jumlah Employee yang lahir tahun 1970 tersebut.
[ Read More..... Baca Selengkapnya Click disini ]

SELECT A DIRECTORY / FOLDER

ABAP - SELECT A DIRECTORY / FOLDER
Salam ABAP HR Indonesia !

suatu waktu ada request user untuk download file di folder tertentu, atau membaca fiel di folder tertentu dari PC mereka. pada saat program jalan kemudian memilih folder / Directory maka diperlukan code dibawah ini.

REPORT ZTEST NO STANDARD PAGE HEADING LINE-SIZE 255.

* Select Directory / Folder in Local Computer
TYPE-POOLS SSCR.
DATA: STRINGPATH TYPE STRING.
DATA RESTRICT TYPE SSCR_RESTRICT.

PARAMETERS: P_PATH LIKE RLGRAP-FILENAME.

INITIALIZATION.
* set default value 
  CALL FUNCTION 'SELECT_OPTIONS_RESTRICT'
       EXPORTING
            RESTRICTION = RESTRICT.
  IF SY-BATCH IS INITIAL.
    CALL FUNCTION 'WS_ULDL_PATH'
         IMPORTING
              DOWNLOAD_PATH = P_PATH.
  ENDIF.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_PATH.
  STRINGPATH = P_PATH.
  CALL METHOD CL_GUI_FRONTEND_SERVICES=>DIRECTORY_BROWSE
     EXPORTING
       INITIAL_FOLDER  = STRINGPATH
    CHANGING
      SELECTED_FOLDER = STRINGPATH.
  CALL METHOD CL_GUI_CFW=>FLUSH.
  P_PATH = STRINGPATH.


START-OF-SELECTION.

* your code here ....


END-OF-SELECTION.


hasilnya [ Read More..... Baca Selengkapnya Click disini ]