Hi Madhukar,
If I understood your requirement correctly, you can attain this with the following approach:
1) Implement ORDER_SAVE BADI == CHECK_BEFORE_SAVE, and write below mentioned code.
2) Call the FM: CRM_STATUS_CHECK, and check if the status of the Lead is "OPEN".
3) If Yes, Call the FM: CRM_STATUS_MAINTAIN_OW, to change the Status from "OPEN" to "VIEWED".
Note: Please make sure that this BADI gets triggered only for "Lead", by keeping the first check in the BADI as : CRMD_ORDERADM_H-OBJECT_TYPE = BUS2000108
Hope this helps. Please let me know if you need any further information.
Thanks,
Sandeep