You need to sign in to do that
Don't have an account?

Compile Error: Method does not exist or incorrect signature: [String].isUpdateable()
public class checksobjectprofiles
{
public List<SelectOption> ListOfUser {public get; private set; }
public String selecteduserId { get; set; }
public string searchresult;
public Map <String, Schema.SObjectType> schemaMap = Schema.getGlobalDescribe();
public List <SelectOption> objectNames{public get; private set;}
public String selectedObject {get; set;}
public boolean updatecheck;
// public Boolean isUpdateable();
public checksobjectprofiles ()
{
objectNames = initObjNames();
ListOfUser= initListOfUser();
}
private List<SelectOption> initObjNames()
{
List<SelectOption> objNames = new List<SelectOption>();
List<String> entities = new List<String>(schemaMap.keySet());
entities.sort();
objNames.add(new SelectOption( ' ' ,'---Select---'));
for(String name : entities)
{
objNames.add(new SelectOption(name,name));
}
return objNames;
}
private List<SelectOption> initListOfUser()
{
// String uid = UserInfo.getUserId();
List<User> thisUser = [select id, Username, profile.name from User where IsActive=true];
List<SelectOption> Ulist = new List<SelectOption>();
Ulist.add(new SelectOption( ' ' ,'---Select---'));
for(User u : thisuser )
{
Ulist.add(new SelectOption(u.Username ,u.username));
}
return Ulist ;
}
public void checkFields()
{
//fields.clear();
system.debug('$$$$$' + selectedObject);
list<string> lstFields = new list<string>();
list<string> sobjectfields = new list<string>();
Map <String, Schema.SObjectField> fieldMap = schemaMap.get(selectedObject).getDescribe().fields.getMap();
for(Schema.SObjectField sfield : fieldMap.Values())
{
schema.describefieldresult fieldresult = sfield.getDescribe();
lstFields.add(fieldresult.getName());
// system.debug('#######' + lstFields );
}
// system.debug('@@@@@@@@@@@@@@@@@@@'+selectedObject);
Map<String,Schema.SObjectType> gd = Schema.getGlobalDescribe();
Schema.DescribeSObjectResult r = gd.get(selectedObject).getDescribe();
String tempName = r.getName();
system.debug('*************'+tempname);
system.debug('selecteduserid'+selecteduserId);
system.debug('%%%%%%%%%%%%%%'+lstFields);
searchresult= 'select' + lstFields +'from' + 'tempName' + ' WHERE ' + ' Id =: selecteduserId ';
system.debug('*************'+searchresult);
// return Database.query(searchresult);
system.runas(selecteduserid)
{
if(searchresult != NULL )
{
updatecheck=searchresult.isUpdateable(); ============> here, iam getting an error please hepl me, how to solve solve it ...just user have access fields means enable checkbox in visaulforce page
}
}
}
}
Hi...
Hope this will help :
http://salesforce.stackexchange.com/questions/10532/finding-if-a-custom-field-is-editable-using-apex-code
If this helps, please mark it as a solution, and give kudos (click on the star) if you think I deserve them.
Thnaks,
Cool Sfdc
Hi
while declaring " public Boolean isUpdateable()" is in commented state in your code. Just un comment it .
I hope you will not get error.
Regards
Sagarika Rout
SFDC Developer
The line
results in searchresult being a String. This does not run any query on the data.
What you want is probably something like: