Write The Dynamic Query in Salesforce and bind in page block table with filter conditions
Class Code public class ClassName { public product2 objProduct {get;set;} public string StrCourseName {get;set;} public string UserName {get;set;} public id AccountId {get;set;} public List<PricebookEntry> lstpbe ; public List<WrapProductSelect> lstWrapProductSelect{get;set;} public list<opportunity> lstOpportunityToInsert {get;set;} public list<Offer_Item__c> lstofofferItem{get;set;} public list<OpportunityLineItem> lstofOppLI; public boolean isSelectedProduct; public list<product2> lstProductSearched {get;set;} public integer totalPageNumber{get;set;} public integer intNumRecord{get;set;} public Integer pageNumber{get;set;} public Integer pageSize{get;set;} public Integer intTotalCount{get;...