Hi Jian,
play with the following annotations in ADT:
@AbapCatalog.sqlViewName: 'ZSUNAMETEST'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: 'Uname Test'
@ObjectModel.compositionRoot: true
@ObjectModel.writeEnabled: true
@ObjectModel.createEnabled: true
@ObjectModel.updateEnabled: true
@ObjectModel.writeActivePersistence: 'usr02'
@OData.publish: true
This will create a BOPF object which the can further refined by implementation classes