[SAP ABAP] - Get GL Balance

FUNCTION ZFM_GET_GL_BALANCE.
*"----------------------------------------------------------------------
*"*"Local Interface:
*"  IMPORTING
*"     VALUE(KTOPL) TYPE  KTOPL OPTIONAL
*"     VALUE(BUKRS) TYPE  BUKRS OPTIONAL
*"     VALUE(GJAHR) TYPE  GJAHR OPTIONAL
*"     VALUE(MONATE_FROM) TYPE  MONAT OPTIONAL
*"     VALUE(MONATE_TO) TYPE  MONAT OPTIONAL
*"  TABLES
*"      LI_DATA STRUCTURE  ZST_GL_BALANCE OPTIONAL
*"----------------------------------------------------------------------

TYPES BEGIN OF ty_line,
            line(2000),
          END OF ty_line.

  DATA : li_list_tab  TYPE TABLE OF          abaplist,
         li_list_asci TYPE STANDARD TABLE OF ty_line WITH HEADER LINE,
         lw_curr      LIKE                   bapi1090_1,
         xfactor      TYPE                   i.

  RANGES : lr_monat FOR bkpf-monat.
  lr_monat-sign = 'I'.
  lr_monat-option = 'BT'.
  lr_monat-low = monate_from.
  lr_monat-high = monate_to.
  APPEND lr_monat.

  SUBMIT rfssld00
  EXPORTING LIST TO MEMORY
*  via SELECTION-SCREEN
    WITH sd_ktopl-low = ktopl
    WITH sd_bukrs-low = bukrs
    WITH sd_gjahr-low = gjahr
    WITH b_monate IN lr_monat
    AND RETURN.

  CALL FUNCTION 'LIST_FROM_MEMORY'
    TABLES
      listobject = li_list_tab
    EXCEPTIONS
      not_found  = 1
      OTHERS     2.

  CALL FUNCTION 'LIST_TO_ASCI'
* EXPORTING
*   LIST_INDEX               = -1
*   WITH_LINE_BREAK          = ' '
* IMPORTING
*   LIST_STRING_ASCII        =
*   LIST_DYN_ASCII           =
    TABLES
      listasci   = li_list_asci
      listobject = li_list_tab
* EXCEPTIONS
*     EMPTY_LIST = 1
*     LIST_INDEX_INVALID       = 2
*     OTHERS     = 3
    .

  IF sy-subrc <> 0.
* Implement suitable error handling here
  ENDIF.

  DATA : lv_bukrs LIKE bukrs.

  LOOP AT li_list_asci.
    IF li_list_asci(1) EQ '|' AND li_list_asci+7(10) IS NOT INITIAL.
      lv_bukrs = li_list_asci+2(4).
      IF lv_bukrs = bukrs.
        li_data-saknr = li_list_asci+7(10).
        li_data-waers = li_list_asci+39(5).
        li_data-amount_char = li_list_asci+149(25).
        APPEND li_data.
      ENDIF.
    ENDIF.
  ENDLOOP.

  DELETE li_data WHERE waers EQ '0'.

  CLEAR li_data.
  LOOP AT li_data.
    IF li_data-amount_char+19(1) EQ '-'.
      li_data-bschl = '50'.
    ELSE.
      li_data-bschl = '40'.
    ENDIF.
    CONDENSE li_data-amount_char.
    MODIFY li_data FROM li_data INDEX sy-tabix TRANSPORTING bschl amount_char.
  ENDLOOP.


  LOOP AT li_data.
    IF li_data-amount_char NE ''.

      CALL FUNCTION 'MOVE_CHAR_TO_NUM'
        EXPORTING
          chr             = li_data-amount_char
        IMPORTING
          num             = li_data-amount
        EXCEPTIONS
          convt_no_number = 1
          convt_overflow  = 2
          OTHERS          3.
*      IF sy-subrc <> 0.
*      ENDIF.

      CALL FUNCTION 'BAPI_CURRENCY_GETDECIMALS'
        EXPORTING
          currency          = li_data-waers
        IMPORTING
          currency_decimals = lw_curr
*         RETURN            =
        .

      IF sy-subrc = 0.
        CASE lw_curr-curdecimals.
          WHEN 0.
            xfactor = 100.
          WHEN 1.
            xfactor = 10.
          WHEN 2.
            xfactor = 1.
        ENDCASE.
      ELSE.
        xfactor = 1.
      ENDIF.

      li_data-amount = li_data-amount / xfactor.

      MODIFY li_data FROM li_data INDEX sy-tabix TRANSPORTING amount.
    ENDIF.
  ENDLOOP.



ENDFUNCTION.

=========================================================
Structure

 

Comments

Bpk Baktiar said…
KAMI SEKELUARGA TAK LUPA MENGUCAPKAN PUJI SYUKUR KEPADA ALLAH S,W,T
dan terima kasih banyak kepada AKI atas nomor togel.nya yang AKI
berikan 4 angka [3927] alhamdulillah ternyata itu benar2 tembus AKI.
dan alhamdulillah sekarang saya bisa melunasi semua utan2 saya yang
ada sama tetangga.dan juga BANK BRI dan bukan hanya itu AKI. insya
allah saya akan coba untuk membuka usaha sendiri demi mencukupi
kebutuhan keluarga saya sehari-hari itu semua berkat bantuan AKI..
sekali lagi makasih banyak ya AKI… bagi saudara yang suka main togel
yang ingin merubah nasib seperti saya silahkan hubungi KI JAYA WARSITO,,di no (((085-342-064-735)))
insya allah anda bisa seperti saya…menang togel 870 JUTA , wassalam.


dijamin 100% jebol saya sudah buktikan...sendiri....







Apakah anda termasuk dalam kategori di bawah ini !!!!


1"Dikejar-kejar hutang

2"Selaluh kalah dalam bermain togel

3"Barang berharga anda udah habis terjual Buat judi togel


4"Anda udah kemana-mana tapi tidak menghasilkan solusi yg tepat


5"Udah banyak Dukun togel yang kamu tempati minta angka jitunya
tapi tidak ada satupun yang berhasil..







Solusi yang tepat jangan anda putus asah... KI JAYA WARSITO akan membantu
anda semua dengan Angka ritual/GHOIB:
butuh angka togel 2D ,3D, 4D SGP / HKG / MALAYSIA / TOTO MAGNUM / dijamin
100% jebol
Apabila ada waktu
silahkan Hub: KI JAYA WARSITO DI NO: [[[085-342-064-735]]]


ANGKA RITUAL: TOTO/MAGNUM 4D/5D/6D


ANGKA RITUAL: HONGKONG 2D/3D/4D/



ANGKA RITUAL; KUDA LARI 2D/3D/4D/



ANGKA RITUAL; SINGAPUR 2D/3D/4D/



ANGKA RITUAL; TAIWAN,THAILAND



ANGKA RITUAL: SIDNEY 2D/3D/4D



DAN PESUGIHAN TUYUL