+ Start a Discussion
ColoradoMikeColoradoMike 

Ideas about what would cause DescribeSObjects to fail?

Hello --

In one of my applications that uses the partner wsdl, the system calls DescribeGlobal as a given user.  It's my understanding that DescribeGlobal will only return objects that the user has access to, right?

Anyway, I use the results of the DescribeGlobal (broken down into groups of not more than 100), in calling DescribeSObjects, but I'm getting a error for one user.  I don't the particulars of the error yet, but from the cursory glance, it looks like the same error that results if the user calls DescribeSObjects on an object to which he does not have access.

Is anyone aware of any special security caveats that I should be aware of when calling DescribeSObjects?

Message Edited by ColoradoMike on 05-15-2007 09:58 AM

SuperfellSuperfell
If the object was listed in the results of a describeGlobal call, then a describeSObject call for it should succeed (baring, the edge race condition where the admin changes this between the 2 calls).
ColoradoMikeColoradoMike
I have more details now.  As I mentioned, after calling describeGlobal() I pass the results to describeSObjects, which fails with:

INSUFFICIENT_ACCESS: insufficient access rights on cross-reference id

I'm guessing that perhaps there's some kind of field-level security somewhere.  Any suggestion on how to handle this?

ColoradoMikeColoradoMike
For what it's worth, it's something in the FiscalYearSettings table that's causing the problem.
SuperfellSuperfell
Should never get that on a describeSObject call. can you please log a case with support so we can start tracking it down.
jmasl7jmasl7
We are also getting this problem - and also on the FiscalYearSettings object.
 
Does anyone yet know what the cause is and/or how to fix it?
 
Regards
 
John
SuperfellSuperfell
Please log a case with customer support.
jmasl7jmasl7
It seems that (in our case at least) the solution to this problem is to give the Profile the Standard Object Permission 'Read' on the Opportunity object.

Apparently access to Opportunity, to FiscalYearSettings and also to Period, are linked together in some way.

Can anybody explain this further? Also, are there any other combinations of objects that are linked in this way?
SuperfellSuperfell
Can one of you who's running into this problem please go log a case with support so we can collect the additional info we need to track this one down.
SuperfellSuperfell
BTW, we tracked this one down, the problem occurs if you call describeSObject on FiscalYearSettings, but don't have crud access to opportunities. This'll be fixed in upcoming winter release.
ryanhca123ryanhca123

Simon, I know this thread is from way back in 2007, but I'm having the same issue with a Group Edition user with the "Campaign" object.

 

I have a client ID, so I'm able to get into the org with the API (version 24).

 

The describeGlobal returns Campaign object (and other campaign-related objects). This is the describe info I get back for Campaigns:

 

[activateable] =>
[createable] =>
[custom] =>
[customSetting] =>
[deletable] =>
[deprecatedAndHidden] =>
[feedEnabled] =>
[keyPrefix] => 701
[label] => Campaign
[labelPlural] => Campaigns
[layoutable] => 1
[mergeable] =>
[name] => Campaign
[queryable] => 1
[replicateable] => 1
[retrieveable] => 1
[searchable] => 1
[triggerable] =>
[undeletable] =>
[updateable] =>

 

But similarly, I get the same error when I do a describeSObject on campaign:

INSUFFICIENT_ACCESS: insufficient access rights on cross-reference

 

any ideas?

ryanhca123ryanhca123

Also, Campaign is also listed as a referenceable field on the Task object. When I create a new Task, "Campaign" is indeed listed in the "Related To" drop down. When I click the lookup icon (after selecting Campaign), I get an "Insufficient Priviledges" error):

 

http://www.screencast.com/t/GMDEJmufloO7