How to view a visualforce page on a Skuid detail page

Try using three curly braces {{{Id}}} instead of two {{Id}}. Also see if it helps to add on the beginning of the URL. Or try “&id=” instead of “?id=”. Or try unchecking  “Do not run template on each row”. I was debugging this today :slight_smile: .

Nick - that error message most likely means you have the template component tied to a model that doesn’t have opportunities in it. A nice hack for your troubleshooting is to put the merge fields you are trying to pass as URL parameters outslde the HTML code in your template. In this case it might be:

ID = {{{Id}}}
<iframe src="<a target="_blank" rel="nofollow" href="https://apex/YOURURL?id={{{Id}}}&amp;isdtp=mn%22" title="Link httpsccs15visualforcecomapexSpringCM_OpportunityidIdisdtpmn">/apex/YOURURL?id={{{Id}}}&amp;isdtp=mn"</a> width="70%" height="800px" frameborder="false"></iframe>

This way you can make sure your data merges are good before you go on to make sure your VF code is good.

K. Well. Learned a thing or two about putting cirrus into a template.

I think that you must the entire URL as there is a namespace prefix for the visualforce page. Basically means that the default site URL would not work as it is missing the namespace prefix. ie. IGD.na17.visual.force.com


The second thing is that header and footer shows up in the template. Anyway to force the page not to do this?



Check this out : http://www.ca-peterson.com/2011/11/magic-isdtp-param.html. There is a (officially unsupported) parameter you can add to the end of your URL: “&isdtp=mn” which will make the header and sidebar disappear!

Woot woot!

BUT! Use &isdtp=nv

<iframe src="<a target="_blank" rel="nofollow" href="https://igd.na17.visual.force.com/apex/Opportunities_Component?id={{{Id}}}&amp;isdtp=nv%22" title="Link httpsigdna17visualforcecomapexOpportunities_ComponentidIdisdtpnv">https://igd.na17.visual.force.com/apex/Opportunities_Component?id={{{Id}}}&amp;isdtp=nv"</a>; width="100%" height="600px"></iframe>

Disclaimer: Total newbie here. I am also trying to include a 3rd party app in my Skuid page (Account Detail page and 3rd party app is FirstRain). We currently have this in our standard page layout as a VF section. I tried adding this in my Skuid page with a template component but am getting the same error that Nic was getting: Id value is not valid for the Account standard controller. When I swap out the {{Id}} or {{{Id}}} for the Id of an Account the page preview works, but it always shows the same Account FirstRain VF section no matter what Account I am previewing. Here is the HTML code I tried:

Code versions mentioned above (starting with<iframe src="/apex...) did not work for me. I got a URL no longer exists error. Any suggestions? Is there any other info I can provide to help trouble shoot? Any advice is greatly appreciated. Thank you!

Have you tried the other options for isdtp? vw is for the service cloud console. nv is what I used to get my Cirrus Files visualforce to work in my Skuid page.
http://www.ca-peterson.com/2011/11/magic-isdtp-param.html

Bridget; here are few ideas. 
1. Your template compoent is connected to a model. Is this model set on the account object? If it on some other ojbect (say contacts) then the Id field will not be correct.  You’d want to pass  AccountId into the merge syntax. 
2. Is the Id field (or AccountId as the case may be) in your model? 
3. Preview the page and put your cursor over the section where you are getting the error message.  Right Click and select “inspect element” from the menu (Hopefully you are using Chrome…)  Look at the URL that is actually getting passed in the iFrame.  Here you can see what is actually getting sent. 

Hopefully this helps… 

Thanks guys! I got this to work in Preview (using triple curly brackets around the merge field ‘Id’) but oddly enough it still shows the error in the Page Builder screen. Is that expected behavior?

I got the following variations all to work in preview. Is there a recommended variation? nv, vw or mn?

I appreciate all your help! This was such a thrill to get this working!

Generally these pages do not show in the page builder, because you are not passing any real model data into the template in the builder preview.  But you really only care about the previewed page… right? 

Really good point Rob!  Rookie mistake :)  I guess I thought it would show the framework of the page or at least no error.  I’ll let the team know of this nuance.  Thanks so much for the help on this one!

One more suggestion.  If you uncheck the “Allow Html” box in the template properties,  it won’t try to render the iframe code in the builder.  You willl just see the HTML code,  but at least you won’t see the error message.


 

How can we make this iframe solution work with “/apex/pagename”? I can’t get it to work for any page due to the name space being skuid , I have to include the full url https and everything and this is bad because sandbox vs production this is going to break.

You can use the syntax “/apex/c__pagename”  and salesforce will automatically append the right namespace in front of your VF page.  For more details see this Stackexchange post 

WOW Thats awesome and it worked! thanks Rob

I just wanted to chime in that this thread was great. The end code worked perfectly. I also use Cirrus Files and wanted to add it to my Skuid pages. My only regret was that it took me an hour of searching to find this thread. You should think about building some basic tutorials for this kind of thing and for managing custom buttons. Most of us use third party applications (like Cirrus Files, DocuSign and LOOP) in our Salesforce instances, but your documentation has very little on how to add the buttons and VF pages that those third party apps incorporate.

Yes John,  totally get you there.  We are working to improve our documentation.  Just a wee bit behind… 

I used this for Box.com installed package. Replace “Contact” with your object name.

Worked like a charm.

In my case it can be unmanaged package or managed package in production or sandbox. I wanted to use URLFOR in skuid. Is there any way to do that? I want to get instance url dynamically in skuid. Or is there any way i can pass parameters to skuid page from VF page in which it is included. 

Hi,
I am completely new to skuid. But, I want to use PandaDoc an installed package on opportunity object. So my skuid page should have a PandaDoc section.

The iframe i used is

But i am getting an error saying “page PandaDoc does not exist”

Can anyone help me out with this issue?

Thanks.