Recientemente he construido en un SharePoint 2013 un formulario de petición de información, a través de una lista de SharePoint.
Tras crearlo, he ido a incluirlo en una página de la web del cliente, para sustituir el formulario que tenían, que sólo generaba un correo, por el formulario de nuevo elemento de nuestra lista.
Esto le permitirá explotar y tratar las solicitudes desde SharePoint.
Pero al ir a hacerlo por medio de la etiqueta correspondiente:
<iframe width="550" height="650" src="https://misitio/Lists/Solicitud/Nuevo.aspx?Source=/misitio/Paginas/Agradecimiento.aspx">
</iframe>
La sorpresa ha sido que al publicarlo, no nos ha mostrado el formulario, sino un mensaje de error. En el que nos indica que "Este contenido no se puede mostrar en un marco":
Tras buscar en Google, he encontrado un explicación de Microsoft:
https://blogs.msdn.microsoft.com/officeapps/2012/12/12/iframing-sharepoint-hosted-pages-in-apps/
Pero lo que nos interesa que es la solución, ha bastado con incluir en el código de la página deseada:
<WebPartPages:AllowFraming runat="server"/>
Y hay que incluirla dentro de ContentPlaceHolderID="PlaceHolderPageTitleInTitleArea".
Y solucionado:
Ahora ya vemos nuestro formulario. También tuve que repetir está operación en la página que vamos tras responder.