Hi Ronit,
You could use some code like this:
TYPES:
BEGIN OF ty_data,
kunnr TYPE kunnr,
last_date TYPE budat,
END OF ty_data.
PARAMETERS:
p_cutoff TYPE dats.
DATA:
lt_with_open TYPE HASHED TABLE OF kunnr WITH UNIQUE KEY table_line,
lt_data TYPE STANDARD TABLE OF ty_data.
FIELD-SYMBOLS:
<data> TYPE ty_data.
* Customers whose last sales order is older than cutoff:
SELECT kunnr MAX( erdat ) INTO TABLE lt_data
FROM vbak
GROUP BY kunnr
HAVING MAX( erdat ) < p_cutoff.
* Which of those customers have any open items:
SELECT DISTINCT kunnr INTO TABLE lt_with_open
FROM bsid
FOR ALL ENTRIES IN lt_data
WHERE kunnr = lt_data-kunnr.
LOOP AT lt_data ASSIGNING <data>.
READ TABLE lt_with_open TRANSPORTING NO FIELDS
WITH TABLE KEY table_line = <data>-kunnr.
IF sy-subrc <> 0.
WRITE: / 'Customer', <data>-kunnr.
ENDIF.
ENDLOOP.