ABAP
sap abap malzeme ana verisindeki ekleri listeleme (list material master attachments)
sap’de mm03 ile malzeme anaverisine girip malzemenin üzerinde gördüğümüz eklerin listesini program ile çekmek için aşağıdaki kodu kullanabilirsiniz. ‘BUS1001006’ malzeme ana verisine ait anahtardır. isterseniz kendi ek mekanizmanızı SWO1 işlem kodundan z’li bir business object oluşturarak yaratabilirsiniz. eğer bu yöntemi uygularsanız ‘BUS1001006’ yerine oluşturduğunuz z’li kodu yazmanız gerekir. PARAMETERS: p\matnr TYPE maramatnr. DATA: lv\resimobj TYPE borident, lv\document\id TYPE sofolenti1doc\id, lv\deg\tarihi LIKE soodchdat, lv\resim\adi LIKE soodobjdes, lv\resim\uzanti LIKE soodfile\ext. DATA: ls\return …
sap’de mm03 ile malzeme anaverisine girip malzemenin üzerinde gördüğümüz eklerin listesini program ile çekmek için aşağıdaki kodu kullanabilirsiniz. ‘BUS1001006’ malzeme ana verisine ait anahtardır. isterseniz kendi ek mekanizmanızı SWO1 işlem kodundan z’li bir business object oluşturarak yaratabilirsiniz. eğer bu yöntemi uygularsanız ‘BUS1001006’ yerine oluşturduğunuz z’li kodu yazmanız gerekir.
PARAMETERS: p_matnr TYPE mara-matnr.
DATA: lv_resimobj TYPE borident,
lv_document_id TYPE sofolenti1-doc_id,
lv_deg_tarihi LIKE sood-chdat,
lv_resim_adi LIKE sood-objdes,
lv_resim_uzanti LIKE sood-file_ext.
DATA: ls_return TYPE bapiret2,
ls_listofrelations TYPE bapirellk,
lt_listofrelations TYPE TABLE OF bapirellk.
DATA: BEGIN OF lt_malzresim OCCURS 0,
matnr LIKE mara-matnr,
resimadi TYPE text255,
END OF lt_malzresim.
CLEAR lv_resimobj.
lv_resimobj-objkey = p_matnr.
lv_resimobj-objtype = 'BUS1001006'. "Malzeme ana verisi
CALL FUNCTION 'OWN_LOGICAL_SYSTEM_GET'
IMPORTING
own_logical_system = lv_resimobj-logsys
EXCEPTIONS
own_logical_system_not_defined = 0.
CLEAR: lt_listofrelations[].
CALL FUNCTION 'BAPI_REL_GETRELATIONS'
EXPORTING
objectid = lv_resimobj
relation = 'ATTA'
IMPORTING
return = ls_return
TABLES
listofrelations = lt_listofrelations.
* DELETE lt_listofrelations WHERE relationid IS INITIAL.
LOOP AT lt_listofrelations INTO ls_listofrelations.
MOVE ls_listofrelations-objkey_b TO lv_document_id.
SELECT SINGLE objdes chdat file_ext
INTO (lv_resim_adi , lv_deg_tarihi , lv_resim_uzanti)
FROM sood
WHERE objtp = lv_document_id+17(3) AND
objyr = lv_document_id+20(2) AND
objno = lv_document_id+22(12).
IF sy-subrc EQ 0.
CLEAR lt_malzresim.
lt_malzresim-matnr = p_matnr.
CONCATENATE lv_resim_adi '.' lv_resim_uzanti INTO
lt_malzresim-resimadi.
APPEND lt_malzresim.
ENDIF.
ENDLOOP.
