Advertisement
Guest User

Untitled

a guest
Nov 20th, 2018
143
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
ABAP 2.42 KB | None | 0 0
  1. FUNCTION zhm_art_extend_lgort.
  2. *"----------------------------------------------------------------------
  3. *"*"Lokalny interfejs:
  4. *"  IMPORTING
  5. *"     REFERENCE(IV_MATNR) TYPE  MATNR
  6. *"     REFERENCE(IT_MARD) TYPE  MARD_TAB
  7. *"     REFERENCE(IT_T001L) TYPE  WRF_SIT_TT001L
  8. *"  EXPORTING
  9. *"     REFERENCE(ES_RETURN) TYPE  BAPIRETURN1
  10. *"----------------------------------------------------------------------
  11.  
  12.   DATA: ls_sto_loc    TYPE bapie1mardrt,
  13.         ls_sto_locx   TYPE bapie1mardrtx,
  14.         ls_mard_final TYPE mard,
  15.         lt_sto_loc    TYPE TABLE OF bapie1mardrt,
  16.         lt_sto_locx   TYPE TABLE OF bapie1mardrtx,
  17.         ls_return     TYPE bapireturn1,
  18.         ls_mara_var   TYPE mara,
  19.         ls_headdata   TYPE bapie1mathead.
  20.  
  21.   " Naglowek
  22.   CALL FUNCTION 'MARA_SINGLE_READ'
  23.     EXPORTING
  24.       matnr             = iv_matnr
  25.     IMPORTING
  26.       wmara             = ls_mara_var
  27.     EXCEPTIONS
  28.       lock_on_material  = 1
  29.       lock_system_error = 2
  30.       wrong_call        = 3
  31.       not_found         = 4
  32.       OTHERS            = 5.
  33.  
  34.   ls_headdata-function   = '005'.
  35.   ls_headdata-material   = ls_mara_var-matnr.
  36.   ls_headdata-matl_type  = ls_mara_var-mtart.
  37.   ls_headdata-matl_group = ls_mara_var-matkl.
  38.   ls_headdata-matl_cat   = ls_mara_var-attyp.
  39.   ls_headdata-logdc_view = 'X'.
  40.  
  41.   LOOP AT it_t001l INTO DATA(ls_lgort).
  42.  
  43.     AT NEW werks.
  44.       DATA(ls_mard) = it_mard[ werks = ls_lgort-werks ].
  45.     ENDAT.
  46.  
  47.     "Pomijamy, jeśli ten skład już istnieje
  48.     IF line_exists( it_mard[ werks = ls_lgort-werks lgort = ls_lgort-lgort ] ).
  49.       CONTINUE.
  50.     ENDIF.
  51.  
  52.     CLEAR ls_mard_final.
  53.  
  54.     MOVE-CORRESPONDING ls_mard TO ls_mard_final.
  55.  
  56.     ls_mard_final-lgort = ls_lgort-lgort.
  57.  
  58.     CALL FUNCTION 'MAP2E_MARD_TO_BAPIE1MARDRT'
  59.       EXPORTING
  60.         mard         = ls_mard_final
  61.       CHANGING
  62.         bapie1mardrt = ls_sto_loc.
  63.  
  64.     ls_sto_loc-function = '005'.
  65.     ls_sto_loc-material = iv_matnr.
  66.  
  67.     APPEND ls_sto_loc TO lt_sto_loc.
  68.  
  69.     MOVE-CORRESPONDING ls_sto_loc TO ls_sto_locx.
  70.  
  71.     APPEND ls_sto_locx TO lt_sto_locx.
  72.  
  73.   ENDLOOP.
  74.   IF lines( lt_sto_loc ) > 0.
  75.  
  76.     CALL FUNCTION 'BAPI_MATERIAL_MAINTAINDATA_RT'
  77.       EXPORTING
  78.         headdata             = ls_headdata
  79.       IMPORTING
  80.         return               = es_return
  81.       TABLES
  82.         storagelocationdata  = lt_sto_loc
  83.         storagelocationdatax = lt_sto_locx.
  84.  
  85.   ENDIF.
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93. ENDFUNCTION.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement