Hi Venkat,
In my opinion the coding should look as follows:
IF NOT SOURCE_FIELDS-ZMARG1 IS INITIAL AND
NOT SOURCE_FIELDS-ZMARG2 IS INITIAL AND
NOT SOURCE_FIELDs-ZMARG3 IS INITIAL.
READ TABLE IT_ZPUR WITH KEY MATERIAL = SOURCE_FIELDS-MATNR
INTO WA_ZPUR.
IF SY-SUBRC = 0.
RESULT = WA_PUR-/BIC/ZPUR_ZCHY1.
ENDIF.
ELSEIF.
RESULT = '0'.
ENDIF.
Best regards,
Sander