Hi Samrat,
What I can suggest you is take the data processing logic from the driver program. There might be standard function modules and subroutines, which are used to fetch the required data.
Since you want to create a new custom program and form, you can always the use the same processing logic in the custom driver program and design the smartform accordingly.
Attach the driver program and form name to the output type in NACE and it will trigger your program.
Thanks,
Sumit