Advertisement
Guest User

Untitled

a guest
Jul 4th, 2019
179
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
ABAP 5.29 KB | None | 0 0
  1. *& Report ZOTC_R_SALESORDERUPLOADTOOL
  2.  
  3. REPORT zotc_r_salesorderuploadtool.
  4. DATA:
  5.       ##NEEDED gwa_i_gkn_tab    TYPE zotc_tt_salesorder_gkn,
  6.       ##NEEDED gwa_i_air_tab    TYPE zotc_tt_salesorder_airbus,
  7.       ##NEEDED gwa_i_bae_tab    TYPE zotc_tt_salesorder_bae,
  8.       ##NEEDED gwa_i_bapi_tab   TYPE zotc_tt_salesorder_sapfields,
  9.       ##NEEDED gwa_it_alv_final TYPE STANDARD TABLE OF zotc_s_salesupload_sapfields,
  10.       ##NEEDED gwa_alv_final TYPE zotc_s_salesupload_sapfields,
  11.                gwa_salesorder_header TYPE zotc_s_salesorder_header,
  12.                gv_file TYPE string,
  13.                gwa_layout TYPE slis_layout_alv,
  14.                gt_fieldcat_prep TYPE slis_t_fieldcat_alv.
  15.  
  16. "Parameters for upload and radio buttons
  17. PARAMETERS: p_sorg   TYPE zotc_s_salesorder_header-salesorg,
  18.             p_div    TYPE zotc_s_salesorder_header-division,
  19.             p_dchan  TYPE zotc_s_salesorder_header-distchan,
  20.             p_file   TYPE  rlgrap-filename,
  21.             cb_gkn   RADIOBUTTON GROUP clnt,
  22.             cb_airbs RADIOBUTTON GROUP clnt,
  23.             cb_bae   RADIOBUTTON GROUP clnt.
  24. "Select file to upload
  25.  
  26. AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
  27.   CALL FUNCTION 'F4_FILENAME'
  28.     EXPORTING
  29.       field_name = 'P_FILE'
  30.     IMPORTING
  31.       file_name  = p_file.
  32. *--------------------------------------------------------------------*
  33. START-OF-SELECTION.
  34.   gwa_salesorder_header-salesorg = p_sorg.
  35.   gwa_salesorder_header-division = p_div.
  36.   gwa_salesorder_header-distchan = p_dchan.
  37.  
  38.   IF cb_gkn = 'X'.
  39.     gv_file = p_file."Added by hkundoor on 05/06/2019
  40.  
  41.     CALL METHOD zotc_cl_salesorderupload=>upload_gkn
  42.       EXPORTING
  43.         i_file                 = gv_file "Added by hkundoor on 05/06/2019
  44.       IMPORTING
  45.         e_i_converted_data_tab = gwa_i_gkn_tab
  46.       EXCEPTIONS
  47.         conversion_failed      = 1
  48.         empty_data             = 2
  49.         OTHERS                 = 3.
  50.  
  51.     IF sy-subrc <> 0.
  52.       MESSAGE e010(zotc).
  53.     ENDIF.
  54.  
  55.     CALL METHOD zotc_cl_salesorderupload=>gkn_bapi_input
  56.       EXPORTING
  57.         i_in_tab     = gwa_i_gkn_tab
  58.       IMPORTING
  59.         e_out_tab    = gwa_i_bapi_tab
  60.       EXCEPTIONS
  61.         length_error = 1
  62.         OTHERS       = 2.
  63.  
  64.     IF sy-subrc <> 0 ##SUBRC_OK.
  65.       MESSAGE e011(zotc).
  66.     ENDIF.
  67. *--------------------------------------------------------------------*
  68.   ELSEIF cb_airbs = 'X'.
  69.     gv_file = p_file.
  70.     CALL METHOD zotc_cl_salesorderupload=>upload_airbus
  71.       EXPORTING
  72.         i_file                      = gv_file
  73.       IMPORTING
  74.         e_i_converted_data_tab      = gwa_i_air_tab
  75.       EXCEPTIONS
  76.         file_open_error_err         = 1
  77.         file_read_error_err         = 2
  78.         no_batch_err                = 3
  79.         gui_refuse_filetransfer_err = 4
  80.         invalid_type_err            = 5
  81.         no_authority_err            = 6
  82.         unknown_error_err           = 7
  83.         bad_data_format_err         = 8
  84.         header_not_allowed_err      = 9
  85.         separator_not_allowed_err   = 10
  86.         header_too_long_err         = 11
  87.         unknown_dp_error_err        = 12
  88.         access_denied_err           = 13
  89.         dp_out_of_memory_err        = 14
  90.         disk_full_err               = 15
  91.         dp_timeout_err              = 16
  92.         empty_data                  = 17
  93.         OTHERS                      = 18.
  94.     IF sy-subrc <> 0.
  95.       MESSAGE e012(zotc).
  96.     ENDIF.
  97.     CALL METHOD zotc_cl_salesorderupload=>airbus_bapi_input
  98.       EXPORTING
  99.         i_in_tab      = gwa_i_air_tab
  100.       IMPORTING
  101.         e_out_tab     = gwa_i_bapi_tab
  102.       EXCEPTIONS
  103.         length_error  = 1
  104.         custnum_empty = 2
  105.         OTHERS        = 3.
  106.     IF sy-subrc <> 0.
  107.       MESSAGE e013(zotc).
  108.     ENDIF.
  109.  
  110. *--------------------------------------------------------------------*
  111. ELSEIF cb_bae = 'X'.
  112. gv_file = p_file.
  113.  
  114.   CALL METHOD zotc_cl_salesorderupload=>upload_bae
  115.       EXPORTING
  116.         i_file                   = gv_file
  117.       IMPORTING
  118.         e_i_converted_data_tab   = gwa_i_bae_tab
  119.       .
  120.   IF sy-subrc <> 0.
  121.     "Message
  122.     ENDIF.
  123.  
  124.  
  125.     CALL METHOD zotc_cl_salesorderupload=>bae_bapi_input
  126.       EXPORTING
  127.         i_in_tab  = gwa_i_bae_tab
  128.       IMPORTING
  129.         e_out_tab = gwa_i_bapi_tab
  130.         .
  131.  
  132.  
  133.   ENDIF.
  134. *--------------------------------------------------------------------*
  135.   CALL METHOD zotc_cl_salesorderupload=>create_bapi
  136.     EXPORTING
  137.       i_lt_i_tab          = gwa_i_bapi_tab
  138.       i_salesorder_header = gwa_salesorder_header
  139.     IMPORTING
  140.       e_it_alv_final      = gwa_it_alv_final
  141.     EXCEPTIONS
  142.       doctype_empty       = 1
  143.       OTHERS              = 2.
  144.   IF sy-subrc <> 0.
  145.     MESSAGE e014(zotc).
  146.   ENDIF.
  147.  
  148.   "**********************************************************************
  149.   CALL METHOD zotc_cl_salesorderupload=>prepare_alv
  150.     IMPORTING
  151.       gt_fieldcat = gt_fieldcat_prep.
  152.   "**********************************************************************
  153.   CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
  154.     EXPORTING
  155.       i_callback_program = sy-repid
  156.       is_layout          = gwa_layout
  157.       it_fieldcat        = gt_fieldcat_prep
  158.     TABLES
  159.       t_outtab           = gwa_it_alv_final
  160.     EXCEPTIONS
  161.       program_error      = 1
  162.       OTHERS             = 2.
  163.   IF sy-subrc <> 0.
  164.     MESSAGE e015(zotc).
  165.   ENDIF.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement