In addition to a previous post regarding getting classification information for objects of type Material or Batch and thanks to additional info and feedback that I received from our MM specialist Ms Marilena Svolaki, I will be able to provide an example of how to do the same thing with documents.
Master information about documents is found in the DRAW table. (This is short for German Dokumentinformationssatz). The key fields for each document are displayed in the following image :
Creating the object key for BAPI_OBJCL_GETCLASSES
is performed by concatenating the document type (field DRAW-DOKAR), the document number (field DRAW-DOKNR), the document version (field DRAW-DOKVR) and the document part (field DRAW-DOKTL). In code this can be expressed as follows
DATA wa_draw TYPE draw, cur_bapi_objectkey LIKE inob-objek, class_list TYPE STANDARD TABLE OF bapi1003_alloc_list, valueschar TYPE STANDARD TABLE OF bapi1003_alloc_values_char, valuescurr TYPE STANDARD TABLE OF bapi1003_alloc_values_curr, valuesnum TYPE STANDARD TABLE OF bapi1003_alloc_values_num, return TYPE STANDARD TABLE OF bapiret2. * Make wa_draw somehow correspond to a valid document entry .... CONCATENATE wa_draw-dokar wa_draw-doknr wa_draw-dokvr wa_draw-doktl INTO cur_bapi_objectkey. * Call BAPI to get the list of characteristics CALL FUNCTION 'BAPI_OBJCL_GETCLASSES' EXPORTING objectkey_imp = cur_bapi_objectkey objecttable_imp = 'DRAW' classtype_imp = '017' read_valuations = 'X' keydate = sy-datum * language = 'E' TABLES alloclist = class_list allocvalueschar = valueschar allocvaluescurr = valuescurr allocvaluesnum = valuesnum return = return. READ TABLE return INDEX 1 ASSIGNING <ret>. * Check that object allocations exist IF sy-subrc = 0 AND <ret>-id = 'CL' AND <ret>-number = 741. * Read characteristic values ... ENDIF
No comments :
Post a Comment