• ABAP
  • ABAP hata gidermek ayıklamak için duraksatma noktası kullanıcısı belirleme adımları (ABAP set berakpoint user definition steps for debugging)

    ABAP kodunda hata gidermek, ayıklamak, ABAP kodunu adım adım çalıştırmak için duraksatma noktası belirlemeniz ve bu duraksatma noktalarının hangi kullanıcı için gözönüne alınacağını aşağıdaki adımlarda olduğu gibi belirleyebilirsiniz. SAP GUI-> Utilities-> Settings-> ABAP Editor-> Debugging-> User: MyConnectionUserName sonrasında ise duraklatmak istediğiniz kod satırına tıkladıktan sonra External Breakpoint ikonuna tıklamalısınız ve bu işlemden sonra pencerenin alt […]

  • ABAP
  • ABAP Dinamik parametre ile fonksiyon çağırma kodu kullanımı örneği (ABAP Call function with Dynamic parameter(s) code usage example)

    *&———————————————————————*
    *& Report  ZFIASB_DYNAMIC_PARAMETERS
    *&
    *&———————————————————————*
    *& Bu program DATE_GET_WEEK fonksiyonu ile yapılabilecek işlemin
    *& parametereler dinamik olarak gonderilerek nasıl yapılabileceğini
    *& gostermek için yazılmıstır.
    *&
    *& Bu sekilde optional parametreleri olan bir fonskiyonu duruma
    *& gore farklı parametreler ile run etmek için kullanabiliriz
    *& a. Sadece export parametresini gonderip sy-subrc kontrol edebiliriz.
    *& b. Export parametresi gonderip import parametresi
    *&    ile sonucu alabiliriz.
    *& Burada dikkat edilmesi gereken ptab_line olusturulurken
    *& KIND parametresiyle parametrenin import/export/table/change oldugu dogru
    *& tanımlanmalıdır
    *( Bununla ilgili kullanılacak değerler ABAP type pool dan bulunabilir )
    *& abap_func_exporting/abap_func_importing/abap_func_tables/abap_func_changing
    *&
    *&CALL FUNCTION ‘DATE_GET_WEEK’
    *&  EXPORTING
    *&    date               = sy-datum
    *& IMPORTING
    *&   WEEK               = aweek
    *& EXCEPTIONS
    *&   DATE_INVALID       = 1
    *&   OTHERS             = 2
              .
    *&IF sy-subrc <> 0.
    *& MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *&        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    *&ENDIF.
    *&———————————————————————*

              REPORT  zfiasb_dynamic_parameters.

              TYPE-POOLS abap.

              DATA: func TYPE string,
                    aweek TYPE scal-week,
                    date TYPE sy-datum,
                    ptab TYPE abap_func_parmbind_tab,
                    ptab_line TYPE abap_func_parmbind,
                    etab TYPE abap_func_excpbind_tab,
                    etab_line TYPE abap_func_excpbind.

              func = ‘DATE_GET_WEEK’.
    *&a+&b Export parameters
              date = sy-datum.
              ptab_line-name = ‘DATE’.
              ptab_line-kind = abap_func_exporting." !!!!!! onemli
              GET REFERENCE OF date INTO ptab_line-value.
              INSERT ptab_line INTO TABLE ptab.
    *only &b Import parameters
              ptab_line-name = ‘WEEK’.
              ptab_line-kind = abap_func_importing." !!!!!! önemli
              GET REFERENCE OF aweek INTO ptab_line-value.
              INSERT ptab_line INTO TABLE ptab.
    * exception table
              etab_line-name = ‘DATE_INVALID’.
              etab_line-value = 1.
              INSERT etab_line INTO TABLE etab.
              etab_line-name = ‘OTHERS’.
              etab_line-value = 2.
              INSERT etab_line INTO TABLE etab.

              CALL FUNCTION func
                PARAMETER-TABLE
                  ptab
                EXCEPTION-TABLE
                  etab.

    IF sy-subrc <> 0.
     MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.

    ** Burada eğer gecersiz bir tarih girilirse
    ** aweek = 000000 sy-subrc = 1 donecektir
              WRITE :/ date,aweek,sy-subrc.

    Share on FacebookTweet about this on TwitterShare on Google+Share on StumbleUponShare on Reddit
  • ABAP
  • ABAP Dinamik SQL programlama ile Veri Karşılaştırma kodu kullanımı örneği (ABAP Dynamic SQL programming & Data Comparing code usage example)

    Bu örnek kodda ABAP içinde dinamik SQL programlama (Dynamic SQL Programming) ve field-symbols kullanımları için örnek kod vardır. Program özellikle yeni açılan ana verilerde (master data) ortaya çıkan problemlerde hataya sebep olan farklılıkları bulabilmek için yazılmıştır. Ekranda girilecek maksimum 5 adet tabloyu, verilen alan adlarında (field name) için değer1 (value1) ve değer2 (value2) değerleri için […]