I have written a new opportunity page but I am using native(standard) Edit functionality of the opportunity object. The scenario is I shared an opportunity with a user X, using apex code and granted him "Edit" right on a opportunity, lets say Y.
Now if i run below query on
OpportunityShare object, i get "Edit"
OpportunityAccessLevel on the opportunity Y for user X.
select OpportunityAccessLevel from OpportunityShare WHERE UserOrGroupId ='X' AND OpportunityId ='Y'
The Edit button is not visible for user X and if he tries to save the opportunity record he gets "Insufficient Access".
I am not able to understand what is wrong in this. Am i missing something?