XML Tree depth greater than 50

  • 1
  • Question
  • Updated 2 years ago
  • Answered
How do I resolve this? 

This is not good.

Photo of ns

ns

  • 1,822 Points 1k badge 2x thumb

Posted 2 years ago

  • 1
Photo of Christine Jessen

Christine Jessen

  • 670 Points 500 badge 2x thumb
Hi!  Check out this explanation of the XML tree depth from our engineer, JD.

https://community.skuid.com/skuid/topics/xml-tree-depth-greater-than-50

Essentially you're going to want to revert to your last known good version and pinpoint the portion of your XML that's exceeding this Salesforce limit.  Once you've identified the issue, you will need to reorganize your page to avoid this conflict.

Good luck!
Christine
Photo of mB Pat Vachon

mB Pat Vachon, Champion

  • 42,714 Points 20k badge 2x thumb
I suggest that you make use of a page include or two.
Photo of Skuidward Tentacles (Raymond)

Skuidward Tentacles (Raymond), Champion

  • 17,224 Points 10k badge 2x thumb
I have found that if you put components in components in components (like a Field editor in a wrapper in a responsive grid within a wrapper) you are maxed out at 10 of these layers. As Pat suggests, you can get around this by using page includes which count as separate pages so you can have more layers.
Photo of ns

ns

  • 1,822 Points 1k badge 2x thumb
I created a page include but fields on the page were blank. This is the Query used: showheader=false&id={{Param.id}}
Photo of Skuidward Tentacles (Raymond)

Skuidward Tentacles (Raymond), Champion

  • 17,224 Points 10k badge 2x thumb
There is a page setting for showing or not showing header so you shouldn't need that as a parameter in your query. Also, I don't think URL parameters from the parent frame can pass into the the inline this way. You probably need a model on your parent page to receive the URL parameter then set the page include query to something like &id={{$MyModel.data.0.Id}}
Photo of ns

ns

  • 1,822 Points 1k badge 2x thumb
The Query string used: 

&id={{Lead.data.0.Id}}

produced the same results, blank fields. 

The fields do show up but no data in them. 

I'm using the Drawer Action Type and wondering if this has anything to do with it?

Photo of ns

ns

  • 1,822 Points 1k badge 2x thumb
My page include Condition is set as: 

Photo of Skuidward Tentacles (Raymond)

Skuidward Tentacles (Raymond), Champion

  • 17,224 Points 10k badge 2x thumb
Your page include parameter has a lower case i and your condition parameter has an upper case i in "id". Parameters are case sensitive.
Photo of ns

ns

  • 1,822 Points 1k badge 2x thumb
I've tried various strings and still no luck :(


&id={{Lead.data.0.id}}

&Id={{Lead.data.0.id}}
Photo of Skuidward Tentacles (Raymond)

Skuidward Tentacles (Raymond), Champion

  • 17,224 Points 10k badge 2x thumb
Well, both I's need to be capitalized. The second Id needs to be capitalized because the field name is capitalized. The first Id needs to be capitalized because the condition on your page include is capitalized. Do you have the "load model data on page load" set on the model in your page include?
Photo of ns

ns

  • 1,822 Points 1k badge 2x thumb
Both I's captilalized no data....

and the Load Model data on page load is selected..
Photo of Skuidward Tentacles (Raymond)

Skuidward Tentacles (Raymond), Champion

  • 17,224 Points 10k badge 2x thumb
sorry. Your query should be &Id={{$Model.Lead.data.0.Id}}
(Edited)
Photo of ns

ns

  • 1,822 Points 1k badge 2x thumb
ok getting close, i think, cause at least I received an error shown below. Happy dance almost happened, but does this error mean I'm missing some field or? 

1. FirstName,LastName,Company,CreatedDate,LeadSource,Email,Status,Street,City,State,Country,Phone,MobilePhone,Title,IsConverted,LastModifiedById,LastModifiedBy.Name,LastModifiedDate,PostalCode,NumberOfEmployees,OwnerId,Owner.Name,CreatedById,CreatedBy.Name,Website,Industry,AnnualRevenue,
Address,Lead_Age__c,Willingness_to_work_again__c,Work_Details__c,Comments_Notes__c,Name,Id 
FROM Lead WHERE (Id = ' 00Q3600000QGM4EEAX') Error:invalid ID field: 00Q3600000QGM4EEAX


2. An error occurred while attempting to perform the following SOQL query: SELECT CampaignId,Campaign.Name,Status,HasResponded,CreatedDate,Id 
FROM CampaignMember WHERE (LeadId = ' 00Q3600000QGM4EEAX') LIMIT 101 Error:invalid ID field: 00Q3600000QGM4EEAX
Photo of ns

ns

  • 1,822 Points 1k badge 2x thumb
Hey Raymond, 

I was able to clear those errors, but my fields are still blank :(
Photo of Matt Sones

Matt Sones, Champion

  • 31,478 Points 20k badge 2x thumb
nirouges,

simple thing, but make sure that you don't have any models on your parent page and included page that have the same model name. more than one model with the same name will confuse the skuid.
Photo of Skuidward Tentacles (Raymond)

Skuidward Tentacles (Raymond), Champion

  • 17,224 Points 10k badge 2x thumb
Agree with Matt. You should also try putting {{$Model.Lead.data.0.Id}} into a rich text field on your parent page to see what Id number populates. Then see if that Id number corresponds to the Id of the record you are trying to pull up in your page include
Photo of Barry Schnell

Barry Schnell, Champion

  • 18,076 Points 10k badge 2x thumb
All - I just skimmed this thread (admit to not reading every piece of it) but if my skimming was accurate, you're attempting to use a page include from inside of a drawer.  If that is the case and unless something has changed with Skuid recently, this is not supported.  At a high level, the reason for this is the way page includes are "brought in" to the containing page and the fact that drawers require multiple instances of the same page include.  See https://community.skuid.com/skuid/topics/fields-with-rendering-conditions-not-displayed-in-a-drawer-....
Photo of Matt Sones

Matt Sones, Champion

  • 31,478 Points 20k badge 2x thumb
doh! Thanks for the reality check, Barry.
Photo of ns

ns

  • 1,822 Points 1k badge 2x thumb
Aaah, well, hmmm, what's the best way to redirect it? Using the Redirect to URL Action Type? 
Photo of Skuidward Tentacles (Raymond)

Skuidward Tentacles (Raymond), Champion

  • 17,224 Points 10k badge 2x thumb
You could redirect to a blank page which will open a new tab in browser, or USA a popup. Page includes work in pop ups
Photo of ns

ns

  • 1,822 Points 1k badge 2x thumb
YES! Happy DANCE!  The popup option will do the trick Ray! Thank you all for your help on this!