REPORT ZPROD_LIST_NOT_ASSIGNED.
PARAMETERS: num TYPE i OBLIGATORY DEFAULT 100.
DATA: lv_prod_guid TYPE comm_product-product_guid,lt_item_tab TYPE STANDARD TABLE OF comm_product-product_guid,lt_product TYPE STANDARD TABLE OF comm_product.
START-OF-SELECTION.SELECT product_guid product_id object_family FROM comm_product INTO CORRESPONDING FIELDS OF TABLE lt_product.ASSERT lt_product IS NOT INITIAL.SELECT product INTO TABLE lt_item_tab FROM crmd_orderadm_iFOR ALL ENTRIES IN lt_product WHERE product = lt_product-product_guid.SELECT product_guid APPENDING TABLE lt_item_tab FROM CRMD_SRV_REFOBJFOR ALL ENTRIES IN lt_product WHERE product_guid = lt_product-product_guid.SELECT warranty APPENDING TABLE lt_item_tab FROM crmd_service_iFOR ALL ENTRIES IN lt_product WHERE warranty = lt_product-product_guid.SORT lt_item_tab.DELETE ADJACENT DUPLICATES FROM lt_item_tab.LOOP AT lt_product ASSIGNING FIELD-SYMBOL(<product>).READ TABLE lt_item_tab WITH KEY table_line = <product>-product_guid TRANSPORTING NO FIELDS.IF sy-subrc = 0.DELETE TABLE lt_product FROM <product>.ENDIF.ENDLOOP.DO num TIMES.READ TABLE lt_product ASSIGNING FIELD-SYMBOL(<result>) INDEX sy-index.IF sy-subrc = 0.IF <result>-object_family IS INITIAL.WRITE: / 'Product ID: ' , <result>-product_id COLOR COL_NEGATIVE.ELSE.WRITE: / 'Object ID: ' , <result>-product_id COLOR COL_NEGATIVE.ENDIF.ELSE.RETURN.ENDIF.ENDDO.