Spool PDF Download


  DATAlv_spool LIKE tsp01-rqident.
 

* Submit Report


  SUBMIT zreport
          WITH p_matnr i_matnr
          TO SAP-SPOOL
              WITHOUT SPOOL DYNPRO
                      DESTINATION space
                      NEW LIST IDENTIFICATION 'X'
                      IMMEDIATELY space
                      WITH p_pdf 'X'
                      AND RETURN.
  IMPORT lv_spool FROM MEMORY ID 'ZMEMORY'.
  FREE MEMORY ID 'ZMEMORY'.



* Spool to PDF conversions
  DATAgd_spool_nr LIKE tsp01-rqident,
        gd_destination LIKE rlgrap-filename,
        gd_bytecount LIKE tst01-dsize,
        gd_buffer TYPE string.
  DATAgd_subject   LIKE sodocchgi1-obj_descr,
        it_mess_bod LIKE solisti1 OCCURS WITH HEADER LINE,
        it_mess_att LIKE solisti1 OCCURS WITH HEADER LINE,
        gd_sender_type     LIKE soextreci1-adr_typ,
        gd_attachment_desc TYPE so_obj_nam,
        gd_attachment_name TYPE so_obj_des.
* Binary store for PDF
  DATABEGIN OF it_pdf_output OCCURS 0.
          INCLUDE STRUCTURE tline.
  DATAEND OF it_pdf_output.




  CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
  EXPORTING
       src_spoolid              lv_spool
       no_dialog                ''
       dst_device               ''
  IMPORTING
       pdf_bytecount            gd_bytecount
  TABLES
       pdf                      it_pdf_output
  EXCEPTIONS
       err_no_abap_spooljob     1
       err_no_spooljob          2
       err_no_permission        3
       err_conv_not_possible    4
       err_bad_destdevice       5
       user_cancelled           6
       err_spoolerror           7
       err_temseerror           8
       err_btcjob_open_failed   9
       err_btcjob_submit_failed 10
       err_btcjob_close_failed  11
       OTHERS                   12.

  CHECK sy-subrc 0.

datafilename like  RLGRAP-FILENAME .

  CONCATENATE 'C:\Users\Kaan Ozdogan\Desktop\'
       i_matnr '.pdf'  INTO filename .

  CALL FUNCTION 'WS_DOWNLOAD'
     EXPORTING
       bin_filesize gd_bytecount
       filename     filename
       filetype     'BIN'
     TABLES
       data_tab     it_pdf_output.

ABAP İki Tarih Arası Gün Hesaplama

Girilen iki tarih arasında gün hesaplama fonksiyonu.

CALL FUNCTION 'FIMA_DAYS_AND_MONTHS_AND_YEARS'
  EXPORTING
    i_date_from          lv_erdat
*   I_KEY_DAY_FROM       =
    i_date_to            sy-datum
*   I_KEY_DAY_TO         =
*   I_FLG_SEPARATE       = ' '
 IMPORTING
   E_DAYS               lv_no_day
*   E_MONTHS             =
*   E_YEARS              =
          .


Request Download/ Upload

Sistemler arası requestleri taşımak için mevcut  request download edilip taşımak istediğiniz sisteme upload edilir.


AL11 ile dir_trans dosya yolu alınır.




Request download işlemi CG3Y transaction ile indirilir.
(AL11 den aldığımız yola \cofiles\K + request number + .SID )




CG3Z ile aynı yollara aynı dosyalar geri yüklenip request import edilir.

(\data\R + request number + .SID indirilir.)



SAP ABAP üzerinden Google Api Kullanımı ve HTML Output

Abap üzerinden Google Geolocation API kullanım örneğidir. API Key selection screenden almaktadır. Bu kısmı isterseniz kodunuza da gömebilirsiniz.

REPORT zkaan_google_api NO STANDARD PAGE HEADING
                                   LINE-COUNT 132.

TYPE-POOLS:abap.
DATA:
  http_client TYPE REF TO if_http_client,
  content     TYPE string.



PARAMETERS p_lat  TYPE LENGTH 50 DEFAULT '38.369035'.
PARAMETERS p_lon TYPE LENGTH 50  DEFAULT '27.196334'.
PARAMETERS p_api TYPE LENGTH 50
 DEFAULT 'GOOGLE_API_KEY'.


START-OF-SELECTION.

  DATAlv_http_url TYPE string.

* Prepare the url of the address
  CONCATENATE
  'https://maps.googleapis.com/maps/api/geocode/xml?key='
  'GOOGLE_API_KEY'
  '&latlng='
  p_lat
  ','
  p_lon
  INTO lv_http_url .

  CALL METHOD cl_http_client=>create_by_url
    EXPORTING
      url                lv_http_url
    IMPORTING
      client             http_client
    EXCEPTIONS
      argument_not_found 1
      plugin_not_active  2
      internal_error     3
      OTHERS             4.

  IF sy-subrc 0.

    http_client->request->set_header_fieldname '~request_method' value 'GET' ).
    http_client->send).
*    http_client->receive( ).
*    content = http_client->response->get_data( ).

    CALL METHOD http_client->receive
      EXCEPTIONS
        http_communication_failure 1
        http_invalid_state         2
        http_processing_failed     3
        OTHERS                     4.
    content http_client->response->get_cdata).



    http_client->close).

  ENDIF.








  DATA:
    v_crlf TYPE char2"CRLF
    v_cr   TYPE char1"CR
    v_lf   TYPE char1"LF

  v_crlf cl_abap_char_utilities=>cr_lf.

  v_cr cl_abap_char_utilities=>cr_lf.

  v_lf cl_abap_char_utilities=>newline.
  DATAlf_uz TYPE i.
  DATAlf_pos TYPE i.
  DATAlf_content TYPE string.
  datalf_ek type i.
  DO.
    lf_uz strlencontent ).
    IF content ''.
      EXIT.
    ENDIF.
    SEARCH content FOR v_crlf .
    IF sy-subrc 0.lf_ek 2.
      lf_pos sy-fdpos .
    ELSE.
      SEARCH content FOR v_cr .
      IF sy-subrc 0.lf_ek 1.
        lf_pos sy-fdpos .
      ELSE.
        SEARCH content FOR v_lf .
        IF sy-subrc 0.lf_ek 1.
          lf_pos sy-fdpos .
        ELSE.

          lf_pos lf_uz.
        ENDIF.
      ENDIF.
    ENDIF.
    lf_content content+0(lf_pos).
    WRITE:/ lf_content.
    ADD lf_ek TO lf_pos.
    IF lf_pos GT lf_uz.
      EXIT.
    ENDIF.
    content content+lf_pos.
  ENDDO.

Basit ALV Raporu ()


REPORT z_guncelle_log.


TABLESzmm_guncelle_log.
DATA gt_log TYPE TABLE OF zmm_guncelle_log .

DATA gs_field  TYPE  slis_t_fieldcat_alv WITH HEADER LINE.



SELECT-OPTIONS 
s_matnr FOR zmm_guncelle_log-matnr,
s_alan FOR zmm_guncelle_log-alan,
s_uname FOR zmm_guncelle_log-uname,
s_tarih FOR zmm_guncelle_log-tarih,
s_saat FOR zmm_guncelle_log-saat.

START-OF-SELECTION .
  PERFORM get_log_data .

  PERFORM fieldcat.
  PERFORM disp_log_alv .

*&---------------------------------------------------------------------*
*&      Form  GET_MARA_DATA
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM get_log_data .
  SELECT FROM zmm_guncelle_log
      INTO TABLE gt_log
      WHERE 
            matnrIN s_matnr AND
            alan IN s_alan AND
            uname IN s_uname AND
            tarih IN s_tarih AND
            saat IN s_saat .






ENDFORM.                    " GET__MARA_DATA
*&---------------------------------------------------------------------*
*&      Form  DISP_MARA_ALV
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM disp_log_alv .


  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
     EXPORTING
        i_callback_program      'ZDI_GUNCELLE_LOG'
       it_fieldcat              gs_field[]

      i_callback_user_command  'USER_COMMAND'
            i_save 'X'
     TABLES
       t_outtab                 gt_log
     EXCEPTIONS
       program_error            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.


ENDFORM.                    " DISP_MARA_ALV
*&---------------------------------------------------------------------*
*&      Form  FIELDCAT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM fieldcat .



  gs_field-fieldname 'MATNR'.
  gs_field-ref_tabname 'ZDI_GUNCELLE_LOG'.
  gs_field-col_pos 0.
  gs_field-reptext_ddic  'Ürünkodu'.
  APPEND gs_field.
  CLEAR gs_field.


  gs_field-fieldname 'ALAN'.
  gs_field-ref_tabname 'ZDI_GUNCELLE_LOG'.
  gs_field-reptext_ddic  'İşlem'.
  gs_field-col_pos 0.
  APPEND gs_field.
  CLEAR gs_field.

  gs_field-fieldname 'UNAME'.
  gs_field-ref_tabname 'ZDI_GUNCELLE_LOG'.
  gs_field-reptext_ddic  'Kullanıcı'.
  gs_field-col_pos 0.
  APPEND gs_field.
  CLEAR gs_field.

  gs_field-fieldname 'TARIH'.
  gs_field-ref_tabname 'ZDI_GUNCELLE_LOG'.
  gs_field-reptext_ddic  'Tarih'.
  gs_field-col_pos 0.
  APPEND gs_field.
  CLEAR gs_field.

  gs_field-fieldname 'SAAT'.
  gs_field-ref_tabname 'ZDI_GUNCELLE_LOG'.
  gs_field-reptext_ddic  'Saat'.
  gs_field-col_pos 0.
  APPEND gs_field.
  CLEAR gs_field.


ENDFORM.                    " FIELDCAT