Professional Documents
Culture Documents
of GK001.
*Fetching Plants from Tvarvc
SELECT SINGLE low
FROM tvarvc
INTO @DATA(lw_eumdr_plants)
WHERE name = @lc_frs247_eumdr_plant
AND low = @caufvd-werks.
IF sy-subrc = 0 AND lw_eumdr_plants IS NOT INITIAL.
*Converting material into actual Sap material number
CALL FUNCTION 'CONVERSION_EXIT_ZMATI_INPUT'
EXPORTING
input = caufvd-matnr
IMPORTING
output = caufvd-matnr.
IF caufvd-matnr IS NOT INITIAL.
*Fetching Batch managed indicator
SELECT SINGLE xchpf
FROM mara
INTO @DATA(lw_btch_mng)
WHERE matnr = @caufvd-matnr.
IF sy-subrc = 0 AND lw_btch_mng = abap_true.
*Fetching Serial numbers if Material is batch managed
SELECT sernp
FROM marc
INTO TABLE @DATA(lt_slno)
WHERE matnr = @caufvd-matnr.
IF sy-subrc = 0 AND lt_slno IS NOT INITIAL.
*If material is both batch managed and serial managed then fetching Defined
DOM
CALL FUNCTION 'BAPI_BATCH_GET_DETAIL'
EXPORTING
material = caufvd-matnr
batch = afpod-charg
plant = caufvd-werks
IMPORTING
batchattributes = lwa_batchdet.
IF sy-subrc = 0 AND lwa_batchdet-free_date1 IS NOT INITIAL.
*Populating Defined DOM and DOM text into output parameters
CALL FUNCTION 'CONVERT_DATE_TO_EXTERNAL'
EXPORTING
date_internal = lwa_batchdet-free_date1
IMPORTING
date_external = w_def_dom
EXCEPTIONS
date_internal_is_invalid = 1
OTHERS = 2.
IF sy-subrc EQ 0.
w_dom_text = lc_def_dom.
ENDIF.
ENDIF.
ENDIF.
ELSE. "IF sy-subrc = 0 AND lw_btch_mng = abap_true.
* if material is not batch managed then fetching Object key
CALL FUNCTION 'QMSP_MATERIAL_BATCH_CLASS_READ'
EXPORTING
i_matnr = caufvd-matnr
i_mara_level = lw_mara_level
IMPORTING
e_objec = lw_objkey
EXCEPTIONS
no_class = 1
internal_error_classif = 2
no_change_service = 3
OTHERS = 4.
IF sy-subrc EQ 0 AND lw_objkey IS NOT INITIAL.
*If object key is found then fetching Material class characteristics values
CALL FUNCTION 'BAPI_OBJCL_GETDETAIL'
EXPORTING
objectkey = lw_objkey
objecttable = lc_mara
classnum = lc_defined_dom
classtype = lc_001
TABLES
allocvaluesnum = lt_num_values
allocvalueschar = lt_char_values
allocvaluescurr = lt_curr_values
return = lt_return.
IF lt_char_values[] IS NOT INITIAL.
*If Characteristics values is present then checking DEFINED_DOM_OPTION chara
cteristics
READ TABLE lt_char_values ASSIGNING FIELD-SYMBOL(<lfs_char_values>)
WITH KEY charact = lc_dom_opt.
IF sy-subrc EQ 0 AND <lfs_char_values>-value_neutral EQ lc_s.
* If value is S then passing Production order Strat date as Defined DOM nd
DOM text
CALL FUNCTION 'CONVERT_DATE_TO_EXTERNAL'
EXPORTING
date_internal = caufvd-gstrp
IMPORTING
date_external = w_def_dom
EXCEPTIONS
date_internal_is_invalid = 1
OTHERS = 2.
IF sy-subrc EQ 0.
w_dom_text = lc_def_dom.
ENDIF.
ENDIF."IF sy-subrc EQ 0 AND <lfs_char_values>-value_neutral EQ lc_
s.
ENDIF."IF lt_char_values[] IS NOT INITIAL.
ENDIF. "IF sy-subrc eq 0 and lw_objkey is NOT INITIAL.
ENDIF."IF sy-subrc = 0 AND lw_btch_mng = abap_true.
ENDIF."IF caufvd-matnr IS NOT INITIAL.
ENDIF."IF sy-subrc = 0 AND lw_eumdr_plants IS NOT INITIAL.
*End of GK001.