<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://geeks.ms/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Alberto Diaz : SharePoint 2010</title><link>http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx</link><description>Etiquetas: SharePoint 2010</description><dc:language /><generator>CommunityServer 2008.5 SP1 (Build: 31106.3070)</generator><item><title>Roadshow Be the ‘Change Hero’ for Better Information Collaboration in your business</title><link>http://geeks.ms/blogs/adiazmartin/archive/2013/03/05/roadshow-be-the-change-hero-for-better-information-collaboration-in-your-business.aspx</link><pubDate>Tue, 05 Mar 2013 16:27:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:208784</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=208784</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2013/03/05/roadshow-be-the-change-hero-for-better-information-collaboration-in-your-business.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/_7B00_be5e386c_2D00_a385_2D00_4e44_2D00_af47_2D00_979cc2fc0bb6_7D005F00_SCEU_5F00_DIroadshow_5F00_landingpage_5F00_header_5F00_022013_5F00_800x420_5F00_rev.jpg"&gt;&lt;/a&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/behero.jpg"&gt;&lt;/a&gt;El 20 de marzo en Barcelona acompa&amp;ntilde;ar&amp;eacute; a los compa&amp;ntilde;eros de &lt;a href="http://www.k2.com/"&gt;K2&lt;/a&gt;, &lt;a href="http://www.knowledgelake.com"&gt;KnowledgeLake&lt;/a&gt; y &lt;a href="http://www.axceler.com"&gt;Axceler&lt;/a&gt; en un exclusivo seminario en el que os ense&amp;ntilde;aremos como sacar el mejor rendimiento a vuestro SharePoint. &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/behero.jpg"&gt;&lt;img src="http://geeks.ms/resized-image.ashx/__size/800x0/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/behero.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Os pod&amp;eacute;is registrar en &lt;a target="_parent" href="http://bit.ly/ZzTfmY"&gt;&lt;em&gt;http://bit.ly/ZzTfmY&lt;/em&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=208784" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+Online/default.aspx">SharePoint Online</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2013/default.aspx">SharePoint 2013</category></item><item><title>SharePoint 2013. Versión para Windows Phone 8 del Mobile Object Model</title><link>http://geeks.ms/blogs/adiazmartin/archive/2013/03/03/sharepoint-2013-versi-243-n-para-windows-phone-8-del-mobile-object-model.aspx</link><pubDate>Sun, 03 Mar 2013 19:05:15 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:208728</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=208728</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2013/03/03/sharepoint-2013-versi-243-n-para-windows-phone-8-del-mobile-object-model.aspx#comments</comments><description>&lt;p&gt;En un &lt;a href="http://geeks.ms/blogs/adiazmartin/archive/2013/02/03/sharepoint-2013-mobile-object-model-para-windows-phone.aspx"&gt;post anterior&lt;/a&gt; os hablaba sobre el Modelo de Objetos de Cliente para Windows Phone y que, aunque sólo teníamos la versión para Windows Phone 7.1, era totalmente funcional en Windows Phone 8. Para aquellos que hemos usado esa versión para las dos plataformas, ya tenemos la versión de Windows Phone 8, lista para descarga. Resumiendo:
&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Versión para Windows Phone 7.1. &lt;a href="http://www.microsoft.com/en-us/download/details.aspx?id=35475"&gt;http://www.microsoft.com/en-us/download/details.aspx?id=35475&lt;/a&gt;
		&lt;/li&gt;&lt;li&gt;Versión para Windows Phone 8. &lt;a href="http://www.microsoft.com/en-us/download/details.aspx?id=36818&amp;amp;WT.mc_id=rss_office_allproducts"&gt;http://www.microsoft.com/en-us/download/details.aspx?id=36818&amp;amp;WT.mc_id=rss_office_allproducts&lt;/a&gt;
			&lt;br /&gt;
		&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Saludos a todos…
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=208728" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2013/default.aspx">SharePoint 2013</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Windows+Phone/default.aspx">Windows Phone</category></item><item><title>Porque no todo es SharePoint 2013</title><link>http://geeks.ms/blogs/adiazmartin/archive/2013/02/14/porque-no-todo-es-sharepoint-2013.aspx</link><pubDate>Thu, 14 Feb 2013 11:33:28 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:208562</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=208562</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2013/02/14/porque-no-todo-es-sharepoint-2013.aspx#comments</comments><description>&lt;p&gt;Desde hace unos meses empezamos a trabajar con la nueva versión de SharePoint, la 2013, publicando artículos, webcast y demás sobre este. Cuando hablamos de tiempos de adopción en SharePoint, sabemos, y si no pues hay que tenerlo en cuenta, que las empresas no van a adoptar esta versión hasta que no hayan pasado más de 6 meses de su lanzamiento. A esto hay que sumarle aquellas que no necesitan más funcionalidades y están contentas con la versión 2010. Teniendo en cuenta esto, os voy a recomendar un par de libros de &lt;a href="http://www.ediciones-eni.com"&gt;Ediciones ENI&lt;/a&gt;. 
&lt;/p&gt;&lt;p&gt;&lt;strong&gt;SharePoint 2010. Desarrollo en .NET para personalizar SharePoint
&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Un libro con numerosos ejemplos de código que te adentrarán en el maravilloso &lt;span style="font-family:Wingdings;"&gt;J&lt;/span&gt; mundo del desarrollo para SharePoint. Desde el primer capítulo empieza la batalla introduciendo las páginas en SharePoint, pasando por la personalización, el manejo de datos y los workflows. Destacar un último capítulo que se encarga de enseñarnos como integrar SharePoint con tecnologías como jQuery, WCF o Silverlight. 
&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.ediciones-eni.com/libros/sharepoint-2010-desarrollo-en-net-para-personalizar-sharepoint/.8d49edf65ec69cd704a6b1a7f5a53540.html"&gt;http://www.ediciones-eni.com/libros/sharepoint-2010-desarrollo-en-net-para-personalizar-sharepoint/.8d49edf65ec69cd704a6b1a7f5a53540.html&lt;/a&gt;
	&lt;/p&gt;&lt;p&gt;&lt;strong&gt;SharePoint Foundation 2010. Construir una Intranet colaborativa para PYMES
&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Con este libro creo que han rellenado un hueco en la formación de SharePoint, nos lleva por el camino preciso para construir una intranet para PYMES usando SharePoint Foundation. Un camino bien construido basado en la instalación, implementación de estándares, copias de seguridad, integración con Office, y muchos más pasos que son necesarios para este tipo de proyectos. 
&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.ediciones-eni.com/libros/sharepoint-foundation-2010-construir-una-intranet-colaborativa-en-pymes/.7f1affaf999ecba996e5c416c2f91cd0.html"&gt;http://www.ediciones-eni.com/libros/sharepoint-foundation-2010-construir-una-intranet-colaborativa-en-pymes/.7f1affaf999ecba996e5c416c2f91cd0.html&lt;/a&gt;
	&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p&gt;Saludos a todos… &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=208562" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Formaci_F300_n/default.aspx">Formación</category></item><item><title>SharePoint 2013. Formación en la Microsoft Virtual Academy</title><link>http://geeks.ms/blogs/adiazmartin/archive/2013/02/11/sharepoint-2013-formaci-243-n-en-la-microsoft-virtual-academy.aspx</link><pubDate>Mon, 11 Feb 2013 09:14:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:208533</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=208533</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2013/02/11/sharepoint-2013-formaci-243-n-en-la-microsoft-virtual-academy.aspx#comments</comments><description>&lt;p&gt;&amp;nbsp;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/mva.jpg"&gt;&lt;img src="http://geeks.ms/resized-image.ashx/__size/800x0/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/mva.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.microsoftvirtualacademy.com/"&gt;MVA&lt;/a&gt; es una iniciativa de Microsoft que nos permite llegar a formaci&amp;oacute;n de calidad y gratuita. Encontraremos cursos sobre SharePoint, Windows Server, desarrollo .NET, Windows Azure, Windows Phone, etc. &lt;/p&gt;
&lt;p&gt;Recientemente se ha publicado el primer curso de &lt;a href="https://www.microsoftvirtualacademy.com/tracks/introduccion-a-sharepoint-server-2013"&gt;Introducci&amp;oacute;n a SharePoint 2013&lt;/a&gt;, que complementa el cat&amp;aacute;logo de otros cuatro cursos de SharePoint 2010 que ya se pod&amp;iacute;an cursar. &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/mva.sharepoint.jpg"&gt;&lt;img src="http://geeks.ms/resized-image.ashx/__size/800x0/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/mva.sharepoint.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;iquest;a qu&amp;eacute; esperas para formarte y empezar a conocer la nueva versi&amp;oacute;n de SharePoint? &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Saludos a todos&amp;hellip;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=208533" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2013/default.aspx">SharePoint 2013</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Formaci_26002300_243_3B00_n/default.aspx">Formaci&amp;#243;n</category></item><item><title>SharePoint 2010. Iniciar un flujo de trabajo en múltiples elementos de una lista</title><link>http://geeks.ms/blogs/adiazmartin/archive/2013/01/27/sharepoint-2010-iniciar-un-flujo-de-trabajo-en-m-250-ltiples-elementos-de-una-lista.aspx</link><pubDate>Sun, 27 Jan 2013 19:41:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:208393</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=208393</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2013/01/27/sharepoint-2010-iniciar-un-flujo-de-trabajo-en-m-250-ltiples-elementos-de-una-lista.aspx#comments</comments><description>&lt;p&gt;En SharePoint 2010 tenemos una opci&amp;oacute;n para seleccionar varios elementos en una lista pero cuando se seleccionan varios elementos, la ribbon s&amp;oacute;lo permite eliminar elementos y configurar el env&amp;iacute;o alertas, pero &amp;iquest;d&amp;oacute;nde est&amp;aacute; el comando de flujo de trabajo? &lt;/p&gt;
&lt;p&gt;Por definici&amp;oacute;n, para iniciar un flujo de trabajo en un elemento de lista, tienes que hacerlo a trav&amp;eacute;s de la p&amp;aacute;gina de inicio de flujo de trabajo y, si el workflow tiene un formulario de inicializaci&amp;oacute;n, tambi&amp;eacute;n tendr&amp;aacute;s que escribir estos par&amp;aacute;metros. Con estas limitaciones, SharePoint no permite a los usuarios iniciar un flujo de trabajo en m&amp;uacute;ltiples elementos, pero &amp;iquest;por qu&amp;eacute; no puedo hacerlo con un flujo de trabajo sin par&amp;aacute;metros? &lt;/p&gt;
&lt;p&gt;Creo que esto es una caracter&amp;iacute;stica que falta en SharePoint 2010 porque podr&amp;iacute;amos hacerlo usando la API de SharePoint o los servicios Web sin problemas. Y ahora &amp;iquest;qu&amp;eacute; podemos hacer para implementar esta funcionalidad? &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/spservices_2D00_workflow_2D00_1.png"&gt;&lt;img src="http://geeks.ms/resized-image.ashx/__size/800x0/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/spservices_2D00_workflow_2D00_1.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Primero tenemos que crear un comando de la ribbon mediante una acci&amp;oacute;n personalizada y en esta acci&amp;oacute;n, tenemos dos opciones para comenzar el flujo de trabajo, la primera de ellas es utilizando una p&amp;aacute;gina de aplicaci&amp;oacute;n, pasando los elementos seleccionados como par&amp;aacute;metros y utilizar el servidor api para iniciar el proceso y la segunda opci&amp;oacute;n, m&amp;aacute;s flexible y elegante, usando JavaScript y los servicios Web de SharePoint para iniciar el flujo en cada uno de los elementos seleccionados. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;SPServices al recates!!&lt;/strong&gt; &lt;/p&gt;
&lt;p&gt;Como bien saben, &lt;a target="_blank" href="http://spservices.codeplex.com/"&gt;SPServices&lt;/a&gt; en una librer&amp;iacute;a de jQuery que encapsula los servicios Web de SharePoint de forma que podamos utilizarlos con bastante sencillez. SPServices tiene un espacio de nombre para &lt;a href="http://spservices.codeplex.com/wikipage?title=Workflow"&gt;Workflow&lt;/a&gt; con operaciones que nos permiten iniciar un flujo (&lt;a href="http://spservices.codeplex.com/wikipage?title=StartWorkflow&amp;amp;referringTitle=Workflow"&gt;StartWorkflow&lt;/a&gt;), inclusive si este tuviera par&amp;aacute;metros. &lt;/p&gt;
&lt;p&gt;Es tan f&amp;aacute;cil de usar, s&amp;oacute;lo necesitamos la URL del elemento, el id de la plantilla de flujo de trabajo y, si fuera necesario, los par&amp;aacute;metros. &lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;$().SPServices({ &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;operation: &lt;span style="color:#a31515;"&gt;&amp;quot;StartWorkflow&amp;quot;&lt;span style="color:black;"&gt;, &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;item: currentItemURL, &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;templateId: workflowGUID, &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;workflowParameters: workflowParams, &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;async: &lt;span style="color:blue;"&gt;true&lt;span style="color:black;"&gt;, &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;completefunc: &lt;span style="color:blue;"&gt;function&lt;span style="color:black;"&gt; () { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;SP.UI.Notify.addNotification(&lt;span style="color:#a31515;"&gt;&amp;quot;Workflow process started on selected item.&amp;quot;&lt;span style="color:black;"&gt;, &lt;span style="color:blue;"&gt;false&lt;span style="color:black;"&gt;); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;} &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;}); &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style="background-color:white;"&gt;Para obtener el id de la plantilla, SPServices nos proporciona otra funci&amp;oacute;n (&lt;a href="http://spservices.codeplex.com/wikipage?title=GetTemplatesForItem&amp;amp;referringTitle=Workflow"&gt;GetTemplatesForItem&lt;/a&gt;) que nos devuelve todos los flujos asociados a un elemento. Todo lo que tenemos que hacer es obtener las plantillas y encontrar nuestro flujo por nombre. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;$().SPServices({ &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;operation: &lt;span style="color:#a31515;"&gt;&amp;quot;GetTemplatesForItem&amp;quot;&lt;span style="color:black;"&gt;, &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;item: itemURL, &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;async: &lt;span style="color:blue;"&gt;true&lt;span style="color:black;"&gt;, &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;completefunc: &lt;span style="color:blue;"&gt;function&lt;span style="color:black;"&gt; (xData, Status) { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; currentItemURL = &lt;span style="color:blue;"&gt;this&lt;span style="color:black;"&gt;.item; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;$(xData.responseXML).find(&lt;span style="color:#a31515;"&gt;&amp;quot;WorkflowTemplates &amp;gt; WorkflowTemplate&amp;quot;&lt;span style="color:black;"&gt;).each(&lt;span style="color:blue;"&gt;function&lt;span style="color:black;"&gt; (i, e) { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;if&lt;span style="color:black;"&gt; ($(&lt;span style="color:blue;"&gt;this&lt;span style="color:black;"&gt;).attr(&lt;span style="color:#a31515;"&gt;&amp;quot;Name&amp;quot;&lt;span style="color:black;"&gt;) == &lt;span style="color:#a31515;"&gt;&amp;quot;Invoice Approve&amp;quot;&lt;span style="color:black;"&gt;) { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; guid = $(&lt;span style="color:blue;"&gt;this&lt;span style="color:black;"&gt;).find(&lt;span style="color:#a31515;"&gt;&amp;quot;WorkflowTemplateIdSet&amp;quot;&lt;span style="color:black;"&gt;).attr(&lt;span style="color:#a31515;"&gt;&amp;quot;TemplateId&amp;quot;&lt;span style="color:black;"&gt;); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;if&lt;span style="color:black;"&gt; (guid != &lt;span style="color:blue;"&gt;null&lt;span style="color:black;"&gt;) { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;workflowGUID = &lt;span style="color:#a31515;"&gt;&amp;quot;{&amp;quot;&lt;span style="color:black;"&gt; + guid + &lt;span style="color:#a31515;"&gt;&amp;quot;}&amp;quot;&lt;span style="color:black;"&gt;; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:green;"&gt;//En este punto, tenemos nuestros id y tenemos que hacer el inicio del workflow&lt;span style="color:black;"&gt; } &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;} &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;} &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;} &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;}) &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Ahora, en el m&amp;eacute;todo de la acci&amp;oacute;n personalizada, tenemos que recorrer todos los elementos seleccionados y utilizar el m&amp;eacute;todo StartWorkflow, de SPServices, para cada uno. &lt;/p&gt;
&lt;p&gt;&lt;span style="color:blue;font-family:Consolas;font-size:9pt;background-color:white;"&gt;function&lt;span style="color:black;"&gt; StarSignWorkflow(listId) { &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;RemoveAllStatus(&lt;span style="color:blue;"&gt;true&lt;span style="color:black;"&gt;); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;waitDialog = SP.UI.ModalDialog.showWaitScreenWithNoClose(&lt;span style="color:#a31515;"&gt;&amp;#39;Starting approval workflow process on selected item&amp;#39;&lt;span style="color:black;"&gt;, &lt;span style="color:#a31515;"&gt;&amp;#39;Please, wait until we finished this long operation.&amp;#39;&lt;span style="color:black;"&gt;, 76, 400); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:green;"&gt;//Get the selected items &lt;span style="color:black;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;clientContext = &lt;span style="color:blue;"&gt;new&lt;span style="color:black;"&gt; SP.ClientContext.get_current(); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; web = clientContext.get_web(); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; list = web.get_lists().getById(listId); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; items = SP.ListOperation.Selection.getSelectedItems(ctx); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;totaSelItems = items.length; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:green;"&gt;//Because only have items Id, we need to use Client Object Model to get EncodeAbsUrl. &lt;span style="color:black;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; query = &lt;span style="color:blue;"&gt;new&lt;span style="color:black;"&gt; SP.CamlQuery(); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; queryString = &lt;span style="color:#a31515;"&gt;&amp;#39;&amp;lt;View&amp;gt;&amp;lt;Query&amp;gt;&amp;lt;Where&amp;gt;&amp;lt;In&amp;gt;&amp;lt;FieldRef Name=&amp;quot;ID&amp;quot;/&amp;gt;&amp;lt;Values&amp;gt;&amp;#39;&lt;span style="color:black;"&gt;; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;for&lt;span style="color:black;"&gt; (index &lt;span style="color:blue;"&gt;in&lt;span style="color:black;"&gt; items) { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; valueString = &lt;span style="color:#a31515;"&gt;&amp;#39;&amp;lt;Value Type=&amp;quot;Integer&amp;quot;&amp;gt;&amp;#39;&lt;span style="color:black;"&gt; + items[index].id + &lt;span style="color:#a31515;"&gt;&amp;#39;&amp;lt;/Value&amp;gt;&amp;#39;&lt;span style="color:black;"&gt;; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;queryString = queryString + valueString; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;} &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;query.set_viewXml(queryString + &lt;span style="color:#a31515;"&gt;&amp;#39;&amp;lt;/Values&amp;gt;&amp;lt;/In&amp;gt;&amp;lt;/Where&amp;gt;&amp;lt;/Query&amp;gt;&amp;lt;/View&amp;gt;&amp;#39;&lt;span style="color:black;"&gt;); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;this&lt;span style="color:black;"&gt;.collListItems = list.getItems(query); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;clientContext.load(collListItems, &lt;span style="color:#a31515;"&gt;&amp;#39;Include(EncodedAbsUrl)&amp;#39;&lt;span style="color:black;"&gt;); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:green;"&gt;//In the success callback, we&amp;#39;ll have all the selected items with the absolute url. &lt;span style="color:black;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;clientContext.executeQueryAsync(Function.createDelegate(&lt;span style="color:blue;"&gt;this&lt;span style="color:black;"&gt;, &lt;span style="color:blue;"&gt;this&lt;span style="color:black;"&gt;.onInitProcessSuccess), Function.createDelegate(&lt;span style="color:blue;"&gt;this&lt;span style="color:black;"&gt;, &lt;span style="color:blue;"&gt;this&lt;span style="color:black;"&gt;.onInitProcessFail)); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;"&gt;&lt;span style="background-color:white;"&gt;}&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:blue;font-family:Consolas;font-size:9pt;background-color:white;"&gt;function&lt;span style="color:black;"&gt; onInitProcessSuccess() { &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; listItemEnumerator = &lt;span style="color:blue;"&gt;this&lt;span style="color:black;"&gt;.collListItems.getEnumerator(); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:green;"&gt;//If our workflow has default init param, we can provide it in this way to run workflow with default values. &lt;span style="color:black;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; workflowParams = &lt;span style="color:#a31515;"&gt;&amp;quot;&amp;lt;Data&amp;gt;&amp;lt;Approvers&amp;gt;&amp;lt;/Approvers&amp;gt;&amp;lt;NotificationMessage&amp;gt;&amp;lt;/NotificationMessage&amp;gt;&amp;quot;&lt;span style="color:black;"&gt; + &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;&amp;lt;DurationforSerialTasks&amp;gt;&amp;lt;/DurationforSerialTasks&amp;gt;&amp;lt;DurationUnits&amp;gt;&amp;lt;/DurationUnits&amp;gt;&amp;quot;&lt;span style="color:black;"&gt; + &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;&amp;lt;CC&amp;gt;&amp;lt;/CC&amp;gt;&amp;lt;CancelonRejection&amp;gt;&amp;lt;/CancelonRejection&amp;gt;&amp;lt;CancelonChange&amp;gt;&amp;lt;/CancelonChange&amp;gt;&amp;quot;&lt;span style="color:black;"&gt; + &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:#a31515;"&gt;&amp;quot;&amp;lt;EnableContentApproval&amp;gt;&amp;lt;/EnableContentApproval&amp;gt;&amp;lt;/Data&amp;gt;&amp;quot;&lt;span style="color:black;"&gt;; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;try&lt;span style="color:black;"&gt; { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; counter = 1; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; total = totaSelItems; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:green;font-family:Consolas;font-size:9pt;background-color:white;"&gt;//Traverse all the selected items &lt;span style="color:black;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;while&lt;span style="color:black;"&gt; (listItemEnumerator.moveNext()) { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; oListItem = listItemEnumerator.get_current(); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; itemURL = oListItem.get_item(&lt;span style="color:#a31515;"&gt;&amp;#39;EncodedAbsUrl&amp;#39;&lt;span style="color:black;"&gt;); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; workflowGUID = &lt;span style="color:blue;"&gt;null&lt;span style="color:black;"&gt;; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:green;font-family:Consolas;font-size:9pt;background-color:white;"&gt;//Before start the workflow, we used GetTemplatesForItem to get Workflow Template Id. &lt;span style="color:black;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;$().SPServices({ &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;operation: &lt;span style="color:#a31515;"&gt;&amp;quot;GetTemplatesForItem&amp;quot;&lt;span style="color:black;"&gt;, &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;item: itemURL, &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;async: &lt;span style="color:blue;"&gt;true&lt;span style="color:black;"&gt;, &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;completefunc: &lt;span style="color:blue;"&gt;function&lt;span style="color:black;"&gt; (xData, Status) { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; currentItemURL = &lt;span style="color:blue;"&gt;this&lt;span style="color:black;"&gt;.item; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;$(xData.responseXML).find(&lt;span style="color:#a31515;"&gt;&amp;quot;WorkflowTemplates &amp;gt; WorkflowTemplate&amp;quot;&lt;span style="color:black;"&gt;).each(&lt;span style="color:blue;"&gt;function&lt;span style="color:black;"&gt; (i, e) { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;if&lt;span style="color:black;"&gt; ($(&lt;span style="color:blue;"&gt;this&lt;span style="color:black;"&gt;).attr(&lt;span style="color:#a31515;"&gt;&amp;quot;Name&amp;quot;&lt;span style="color:black;"&gt;) == &lt;span style="color:#a31515;"&gt;&amp;quot;Invoice Approve&amp;quot;&lt;span style="color:black;"&gt;) { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; guid = $(&lt;span style="color:blue;"&gt;this&lt;span style="color:black;"&gt;).find(&lt;span style="color:#a31515;"&gt;&amp;quot;WorkflowTemplateIdSet&amp;quot;&lt;span style="color:black;"&gt;).attr(&lt;span style="color:#a31515;"&gt;&amp;quot;TemplateId&amp;quot;&lt;span style="color:black;"&gt;); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;if&lt;span style="color:black;"&gt; (guid != &lt;span style="color:blue;"&gt;null&lt;span style="color:black;"&gt;) { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;workflowGUID = &lt;span style="color:#a31515;"&gt;&amp;quot;{&amp;quot;&lt;span style="color:black;"&gt; + guid + &lt;span style="color:#a31515;"&gt;&amp;quot;}&amp;quot;&lt;span style="color:black;"&gt;; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;$().SPServices({ &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;operation: &lt;span style="color:#a31515;"&gt;&amp;quot;StartWorkflow&amp;quot;&lt;span style="color:black;"&gt;, &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;item: currentItemURL, &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;templateId: workflowGUID, &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;workflowParameters: workflowParams, &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;async: &lt;span style="color:blue;"&gt;true&lt;span style="color:black;"&gt;, &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;completefunc: &lt;span style="color:blue;"&gt;function&lt;span style="color:black;"&gt; () { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;if&lt;span style="color:black;"&gt; (total == counter) { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;if&lt;span style="color:black;"&gt; (waitDialog != &lt;span style="color:blue;"&gt;null&lt;span style="color:black;"&gt;) { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;waitDialog.close(); &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;} &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;SP.UI.Notify.addNotification(&lt;span style="color:#a31515;"&gt;&amp;quot;Started workflow approved process for selected invoice.&amp;quot;&lt;span style="color:black;"&gt;, &lt;span style="color:blue;"&gt;false&lt;span style="color:black;"&gt;); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;window.location.reload(); &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;} &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;counter++; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;} &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;}); &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;} &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;} &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;}); &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;} &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;}); &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;} &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;} &lt;span style="color:blue;"&gt;catch&lt;span style="color:black;"&gt; (e) { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;&lt;span style="color:blue;"&gt;if&lt;span style="color:black;"&gt; (waitDialog != &lt;span style="color:blue;"&gt;null&lt;span style="color:black;"&gt;) { &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;waitDialog.close(); &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;} &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;AddStatus(&lt;span style="color:#a31515;"&gt;&amp;quot;There is an exception. Error: &amp;quot;&lt;span style="color:black;"&gt; + e.message, &lt;span style="color:#a31515;"&gt;&amp;quot;red&amp;quot;&lt;span style="color:black;"&gt;); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;} &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;"&gt;&lt;span style="background-color:white;"&gt;}&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Como hemos visto, tenemos una forma sencilla de permitir a nuestros usuarios iniciar un flujo en varios elementos a la misma vez, gracias a SPServices que nos facilita la vida para trabajar con SharePoint desde cliente. &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Saludos a todos&amp;hellip;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=208393" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+Online/default.aspx">SharePoint Online</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2013/default.aspx">SharePoint 2013</category></item><item><title>SharePoint 2010. Crear definición de columnas de Metadata desde código</title><link>http://geeks.ms/blogs/adiazmartin/archive/2012/10/25/sharepoint-2010-crear-definici-243-n-de-columnas-de-metadata-desde-c-243-digo.aspx</link><pubDate>Thu, 25 Oct 2012 11:24:15 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:207230</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=207230</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2012/10/25/sharepoint-2010-crear-definici-243-n-de-columnas-de-metadata-desde-c-243-digo.aspx#comments</comments><description>&lt;p&gt;Como todos sabéis, desde Visual Studio podemos crear listas, tipos de contenido y columnas de sitios, que definan nuestra solución y que nos genere un paquete que permita hacer el despliegue en múltiples granjas. También, con este tipo de soluciones, tendremos un control de versiones, utilizando TFS o similar, de nuestro proyecto. 
&lt;/p&gt;&lt;p&gt;Entre los tipos de columnas que podemos crear, tenemos las columnas de taxonomía o metadatos administrados, que son aquellas que permiten a los usuarios clasificar la información usando la taxonomía empresarial y sus conjuntos de términos.
&lt;/p&gt;&lt;p&gt;La mejor forma de crear la definición de estas columnas, de forma declarativa en Visual Studio, es usar el tipo TaxonomyFieldType o TaxonomyFieldTypeMulti, junto a un Event Receiver, cuando se activa la característica, que localiza el conjunto de términos en el servicio de metadatos administrados y lo asocia a la definición de la columna, resumiendo:
&lt;/p&gt;&lt;h3&gt;Definimos la columna de sitio
&lt;/h3&gt;&lt;p&gt;&lt;span style="color:blue;"&gt;&lt;span style="font-family:Consolas;font-size:9pt;background-color:white;"&gt;&amp;lt;&lt;span style="color:#a31515;"&gt;Field&lt;span style="color:blue;"&gt;
						&lt;span style="color:red;"&gt;ID&lt;span style="color:blue;"&gt;=&lt;span style="color:black;"&gt;&amp;quot;&lt;span style="color:blue;"&gt;{00000000-0000-0000-0000-000000000000}&lt;span style="color:black;"&gt;&amp;quot;&lt;span style="color:blue;"&gt;
												&lt;span style="color:red;"&gt;Type&lt;span style="color:blue;"&gt;=&lt;span style="color:black;"&gt;&amp;quot;&lt;span style="color:blue;"&gt;TaxonomyFieldType&lt;span style="color:black;"&gt;&amp;quot;&lt;span style="color:blue;"&gt;
																		&lt;span style="color:red;"&gt;Name&lt;span style="color:blue;"&gt;=&lt;span style="color:black;"&gt;&amp;quot;&lt;span style="color:blue;"&gt;Organismo&lt;span style="color:black;"&gt;&amp;quot;&lt;span style="color:blue;"&gt;
																								&lt;span style="color:red;"&gt;DisplayName&lt;span style="color:blue;"&gt;=&lt;span style="color:black;"&gt;&amp;quot;&lt;span style="color:blue;"&gt;Organismo&lt;span style="color:black;"&gt;&amp;quot;&lt;span style="color:blue;"&gt;
																														&lt;span style="color:red;"&gt;ShowField&lt;span style="color:blue;"&gt;=&lt;span style="color:black;"&gt;&amp;quot;&lt;span style="color:blue;"&gt;Term1033&lt;span style="color:black;"&gt;&amp;quot;&lt;span style="color:blue;"&gt;
																																				&lt;span style="color:red;"&gt;Required&lt;span style="color:blue;"&gt;=&lt;span style="color:black;"&gt;&amp;quot;&lt;span style="color:blue;"&gt;FALSE&lt;span style="color:black;"&gt;&amp;quot;&lt;span style="color:blue;"&gt;
																																										&lt;span style="color:red;"&gt;Group&lt;span style="color:blue;"&gt;=&lt;span style="color:black;"&gt;&amp;quot;&lt;span style="color:blue;"&gt;Columnas Gestión documental&lt;span style="color:black;"&gt;&amp;quot;&lt;span style="color:blue;"&gt;&amp;gt;&amp;lt;/&lt;span style="color:#a31515;"&gt;Field&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:10pt;"&gt;&lt;strong&gt;
				&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h3&gt;Asociamos el conjunto de términos a la columna cuando se activa la característica 
&lt;/h3&gt;&lt;p&gt;&lt;span style="color:#2b91af;font-family:Consolas;font-size:9pt;background-color:white;"&gt;    SPSite&lt;span style="color:black;"&gt; site = properties.Feature.Parent &lt;span style="color:blue;"&gt;as&lt;span style="color:black;"&gt;
						&lt;span style="color:#2b91af;"&gt;SPSite&lt;span style="color:black;"&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;
			&lt;span style="color:#2b91af;"&gt;Guid&lt;span style="color:black;"&gt; fieldId = &lt;span style="color:blue;"&gt;new&lt;span style="color:black;"&gt;
							&lt;span style="color:#2b91af;"&gt;Guid&lt;span style="color:black;"&gt;(&lt;span style="color:#a31515;"&gt;&amp;quot;{A3AFED68-C20D-4157-81DF-0DCF422853F1}&amp;quot;&lt;span style="color:black;"&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;
			&lt;span style="color:blue;"&gt;if&lt;span style="color:black;"&gt; (site.RootWeb.Fields.Contains(fieldId))
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;    {
&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;
			&lt;span style="color:#2b91af;"&gt;    TaxonomySession&lt;span style="color:black;"&gt; session = &lt;span style="color:blue;"&gt;new&lt;span style="color:black;"&gt;
							&lt;span style="color:#2b91af;"&gt;TaxonomySession&lt;span style="color:black;"&gt;(site);
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;
			&lt;span style="color:blue;"&gt;if&lt;span style="color:black;"&gt; (session.TermStores.Count != 0)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;        {
&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;
			&lt;span style="color:#2b91af;"&gt;
				&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; termStore = session.DefaultKeywordsTermStore;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;
			&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; group = termStore.Groups.GetByName(&lt;span style="color:#a31515;"&gt;&amp;quot;Gestion documental&amp;quot;&lt;span style="color:black;"&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;
			&lt;span style="color:blue;"&gt;var&lt;span style="color:black;"&gt; termSet = group.TermSets[&lt;span style="color:#a31515;"&gt;&amp;quot;Organismos&amp;quot;&lt;span style="color:black;"&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;
			&lt;span style="color:#2b91af;"&gt;TaxonomyField&lt;span style="color:black;"&gt; field = site.RootWeb.Fields[fieldId] &lt;span style="color:blue;"&gt;as&lt;span style="color:black;"&gt;
							&lt;span style="color:#2b91af;"&gt;TaxonomyField&lt;span style="color:black;"&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;
			&lt;span style="color:green;"&gt;// Connect to MMS &lt;span style="color:black;"&gt;
				&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;            field.SspId = termSet.TermStore.Id;
&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;            field.TermSetId = termSet.Id;
&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;            field.TargetTemplate = &lt;span style="color:blue;"&gt;string&lt;span style="color:black;"&gt;.Empty;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;            field.AnchorId = &lt;span style="color:#2b91af;"&gt;Guid&lt;span style="color:black;"&gt;.Empty;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;            field.Update();
&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;font-size:9pt;background-color:white;"&gt;        }
&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:black;font-family:Consolas;"&gt;&lt;span style="font-size:9pt;background-color:white;"&gt;    }&lt;/span&gt;&lt;span style="font-size:9pt;background-color:white;"&gt;
			&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p&gt;Para asociar el conjunto de términos, tenemos que acceder al almacenamiento de términos (&lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.taxonomy.termstore.aspx"&gt;TermStore&lt;/a&gt;), mediante una sesión de Taxonomía (&lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.taxonomy.termstore.aspx" target="_blank"&gt;TaxonomySession&lt;/a&gt;), obtener el grupo que le corresponda y el conjunto de términos que le vamos a asociar. Todo esto agregando la referencia al ensamblado &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.taxonomy.aspx"&gt;Microsoft.SharePoint.Taxonomy&lt;/a&gt;.
&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p&gt;Saludos a todos…&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=207230" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category></item><item><title>SkyDrive Pro. Sincroniza tus bibliotecas de SharePoint</title><link>http://geeks.ms/blogs/adiazmartin/archive/2012/10/25/skydrive-pro-sincroniza-tus-bibliotecas-de-sharepoint.aspx</link><pubDate>Thu, 25 Oct 2012 07:43:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:207227</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=207227</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2012/10/25/skydrive-pro-sincroniza-tus-bibliotecas-de-sharepoint.aspx#comments</comments><description>&lt;p&gt;La &lt;a href="http://geeks.ms/blogs/ciin/archive/2012/10/12/sharepoint-y-office-2013-alcanzan-la-rtm.aspx"&gt;RTM&lt;/a&gt; de Office 2013 y SharePoint 2013 se acerca y ayer la &lt;a href="http://geeks.ms/blogs/ciin/archive/2012/10/24/office-amp-sharepoint-2013-rtm-disponible-para-descarga-en-msdn-y-technet.aspx"&gt;publicaron&lt;/a&gt; para suscriptores de MSDN y Technet. En Office viene un nuevo, pero conocido, producto llamado &lt;a href="http://sharepoint.microsoft.com/blog/Pages/BlogPost.aspx?pID=1015"&gt;SkyDrive Pro&lt;/a&gt;. Este nos permite, con la misma filosof&amp;iacute;a que el sincronizador de SkyDrive, mantener sincronizadas las bibliotecas de SharePoint, y si NO pongo versi&amp;oacute;n de SharePoint es porque hoy me he sorprendido y lo he conectado al SharePoint 2010 de mi empresa y ha empezado a sincronizar la biblioteca que le he especificado. &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SkyDrivePro-_2D00_-Icon.png"&gt;&lt;img src="http://geeks.ms/resized-image.ashx/__size/800x0/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SkyDrivePro-_2D00_-Icon.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Como en SharePoint 2010 no tenemos ning&amp;uacute;n enlace para SkyDrive Pro, como si lo tenemos en SharePoint 2013, para sincronizar podemos especificarle manualmente la URL de la biblioteca. &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SkyDrivePro-_2D00_-Sync-Url.png"&gt;&lt;img src="http://geeks.ms/resized-image.ashx/__size/800x0/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SkyDrivePro-_2D00_-Sync-Url.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Si utilizamos el actual bot&amp;oacute;n de Sincronizar con SharePoint Workspace, descubriremos que se ejecutar&amp;aacute; el configurador de SkyDrive Pro que nos preguntar&amp;aacute; que bibliotecas, de las que tengamos disponibles queremos sincronizar. &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SkyDrivePro-_2D00_-Workspace.png"&gt;&lt;img src="http://geeks.ms/resized-image.ashx/__size/800x0/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SkyDrivePro-_2D00_-Workspace.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SkyDrivePro-_2D00_-Library.png"&gt;&lt;img src="http://geeks.ms/resized-image.ashx/__size/800x0/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SkyDrivePro-_2D00_-Library.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Para los que hemos usado SharePoint Workspace, la simplificaci&amp;oacute;n de la sincronizaci&amp;oacute;n utilizando SkyDrive es un gran avance y un motivo m&amp;aacute;s para usar SharePoint como gestor documental. &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Saludos a todos&amp;hellip; &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=207227" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+Online/default.aspx">SharePoint Online</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SkyDrive/default.aspx">SkyDrive</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2013/default.aspx">SharePoint 2013</category></item><item><title>SSIS. Extracción de datos de listas de SharePoint</title><link>http://geeks.ms/blogs/adiazmartin/archive/2012/06/17/ssis-extracci-243-n-de-datos-de-listas-de-sharepoint.aspx</link><pubDate>Sun, 17 Jun 2012 11:32:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:205637</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=205637</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2012/06/17/ssis-extracci-243-n-de-datos-de-listas-de-sharepoint.aspx#comments</comments><description>&lt;p&gt;En la &amp;uacute;ltima &lt;a target="_blank" href="http://geeks.ms/blogs/ciin/archive/2012/06/14/suges-disponibles-los-materiales-del-chat-de-expertos.aspx"&gt;charla con los expertos&lt;/a&gt; de SharePoint, se plante&amp;oacute; el problema de extracci&amp;oacute;n de datos de listas para incluirlos en un Data Warehouse, y la respuesta fue sencilla. Si lo que queremos es incluir en el proceso de extracci&amp;oacute;n y transformaci&amp;oacute;n de datos, informaci&amp;oacute;n almacenada en listas de SharePoint, existe un proyecto en Codeplex, &lt;a target="_blank" href="http://sqlsrvintegrationsrv.codeplex.com/"&gt;Microsoft SQL Server Community Samples: Integration Service&lt;/a&gt;, en el que han incluido ejemplos de conectores de or&amp;iacute;genes y destino para listas de SharePoint (&lt;a href="http://sqlsrvintegrationsrv.codeplex.com/releases/view/17652" title="http://sqlsrvintegrationsrv.codeplex.com/releases/view/17652"&gt;http://sqlsrvintegrationsrv.codeplex.com/releases/view/17652&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;Estos utilizan los servicios web de SharePoint y permiten seleccionar los campos a extraer, ejecutar consultas paginadas para listas largas, especificar la consulta CAML, entre otras funcionalidades. Una vez que los instalemos en nuestro equipo de desarrollo, tenemos la posibilidad de seleccionar como origen o destino una lista de SharePoint.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/ssis_5F00_sharepoint_5F00_1_5F00_2C506637.jpg"&gt;&lt;img height="386" width="644" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/ssis_5F00_sharepoint_5F00_1_5F00_thumb_5F00_113F493C.jpg" alt="ssis_sharepoint_1" border="0" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" title="ssis_sharepoint_1" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Con lo que podemos configurar que informaci&amp;oacute;n vamos a obtener de SharePoint, transformarla y devolverla al destino o a una tabla en un Data Warehouse.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/ssis_5F00_sharepoint_5F00_2_5F00_7697CE84.jpg"&gt;&lt;img height="484" width="514" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/ssis_5F00_sharepoint_5F00_2_5F00_thumb_5F00_493B5A16.jpg" alt="ssis_sharepoint_2" border="0" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" title="ssis_sharepoint_2" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;En el caso que utilicemos el conector de destino para SharePoint, tenemos la opci&amp;oacute;n de elegir si queremos insertar y/o actualizar los datos de la lista, o si lo que queremos es realizar un borrado de aquellas filas que coincidan. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/ssis_5F00_sharepoint_5F00_3_5F00_0884D3DB.jpg"&gt;&lt;img height="484" width="516" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/ssis_5F00_sharepoint_5F00_3_5F00_thumb_5F00_7C857457.jpg" alt="ssis_sharepoint_3" border="0" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" title="ssis_sharepoint_3" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Con estos componentes, podemos utilizar SharePoint como aplicaci&amp;oacute;n CRUD donde el usuario introduce informaci&amp;oacute;n relevante para el Data Warehouse de la compa&amp;ntilde;&amp;iacute;a y extraer la informaci&amp;oacute;n, mediante un paquete de integraci&amp;oacute;n, para fusionarla con el resto de informaci&amp;oacute;n que tengamos.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Saludos a todos&amp;hellip;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=205637" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2007/default.aspx">SharePoint 2007</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SQL+Server+2012/default.aspx">SQL Server 2012</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Data+Warehouse/default.aspx">Data Warehouse</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Integration+Services/default.aspx">Integration Services</category></item><item><title>Webcast. Charla con los expertos: Todo los que siempre quisiste saber sobre SharePoint, pero no te atreviste a preguntar antes del verano</title><link>http://geeks.ms/blogs/adiazmartin/archive/2012/06/10/webcast-charla-con-los-expertos-todo-los-que-siempre-quisiste-saber-sobre-sharepoint-pero-no-te-atreviste-a-preguntar-antes-del-verano.aspx</link><pubDate>Sun, 10 Jun 2012 09:32:26 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:205558</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=205558</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2012/06/10/webcast-charla-con-los-expertos-todo-los-que-siempre-quisiste-saber-sobre-sharepoint-pero-no-te-atreviste-a-preguntar-antes-del-verano.aspx#comments</comments><description>&lt;p&gt;Para que no nos olvidemos de nuestro servidor favorito mientras disfrutamos del verano, en un terracita con nuestra cerveza vien fría, tenemos una nueva edición del chat con los MVP de SharePoint de habla hispana. &lt;/p&gt;  &lt;p&gt;Allí estaremos Gustavo Vélez, David Martos, Ricardo Muñoz, Juan Andrés Valenzuela, Juan Carlos González, Daniel Seara, Héctor Insua, Manuel Herrera, Haarón González, Fabian Imaz, Mario Cortés Flores, Juan Pablo Pussacq Laborde y un servidor.&lt;/p&gt;  &lt;p&gt;Será el próximo miércoles 13 de junio a las 15.00 (GMT 00:00). &lt;/p&gt;  &lt;p&gt;El enlace de registro es el siguiente:&lt;/p&gt;  &lt;p&gt;&lt;a title="https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032513588&amp;amp;Culture=es-ES" href="https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032513588&amp;amp;Culture=es-ES"&gt;https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032513588&amp;amp;Culture=es-ES&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=205558" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Colaboraci_26002300_243_3B00_n/default.aspx">Colaboraci&amp;#243;n</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SUGES/default.aspx">SUGES</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+Online/default.aspx">SharePoint Online</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2007/default.aspx">SharePoint 2007</category></item><item><title>CompartiMOSS. Ha salido el número 11</title><link>http://geeks.ms/blogs/adiazmartin/archive/2012/04/01/compartimoss-ha-salido-el-n-250-mero-11.aspx</link><pubDate>Sun, 01 Apr 2012 19:21:15 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:204162</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=204162</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2012/04/01/compartimoss-ha-salido-el-n-250-mero-11.aspx#comments</comments><description>&lt;p&gt;Ya se encuentra disponible el número 11 de la revista de SharePoint de habla hispana. Como las anteriores, no puedes perdértela y no leer los siguientes artículos:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Conexiones BCS en el servicio de perfiles (&lt;a href="http://www.sinsharepointnohayparaiso.com/" target="_blank"&gt;Miguel Tabera Pacheco&lt;/a&gt;) &lt;/li&gt;    &lt;li&gt;Combinando SharePoint y Project Server (Arnau Roca Palà, Marc Bàguena Cuéllar) &lt;/li&gt;    &lt;li&gt;Linq To SharePoint (Juan Pablo Capdevila) &lt;/li&gt;    &lt;li&gt;Sitios de Publicación de SharePoint 2010 (&lt;a href="http://geeks.ms/blogs/santypr/" target="_blank"&gt;Santiago J. Porras Rodríguez&lt;/a&gt;) &lt;/li&gt;    &lt;li&gt;Creando documentos profesionales en Microsoft Word 2010 (Alejandro Garrido) &lt;/li&gt;    &lt;li&gt;Entrevista con &lt;a href="http://geeks.ms/blogs/davidmartos/" target="_blank"&gt;David Martos&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Lista personalizada con Excel (Marcus Vinícius Bittencourt) &lt;/li&gt;    &lt;li&gt;¿Cómo tener éxito con la adopción de usuario de soluciones SharePoint? (Edin Kapic) &lt;/li&gt;    &lt;li&gt;UXDesignPoint &lt;/li&gt;    &lt;li&gt;Exposición de un sitio web con autenticación por claims usando ADFS - Parte 1 (Diego Gatti) &lt;/li&gt;    &lt;li&gt;Customización y ampliación de estadísticas de uso (Víctor Cea Espejo) &lt;/li&gt;    &lt;li&gt;Firma Electrónica sobre SharePoint: principales ventajas y aplicaciones (Miguel López) &lt;/li&gt;    &lt;li&gt;Client Object Model en SharePoint 2010 / Modificando la seguridad (&lt;a href="http://surpoint.blogspot.com.es/" target="_blank"&gt;Juan Pablo Pussacq Laborde&lt;/a&gt;) &lt;/li&gt;    &lt;li&gt;El concepto de Nube Privada (Daniel S. Levi)&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Decárgatela &lt;a href="http://www.gavd.net/servers/compartimoss/compartimoss_main.aspx" target="_blank"&gt;aquí&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=204162" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Office365/default.aspx">Office365</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+Online/default.aspx">SharePoint Online</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/CompartiMOSS/default.aspx">CompartiMOSS</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2007/default.aspx">SharePoint 2007</category></item><item><title>Visual Studio 11. Analizar el rendimiento de nuestras soluciones de SharePoint 2010</title><link>http://geeks.ms/blogs/adiazmartin/archive/2012/03/18/visual-studio-2011-analizar-el-rendimiento-de-nuestras-soluciones-de-sharepoint-2010.aspx</link><pubDate>Sun, 18 Mar 2012 10:32:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:203899</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=203899</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2012/03/18/visual-studio-2011-analizar-el-rendimiento-de-nuestras-soluciones-de-sharepoint-2010.aspx#comments</comments><description>&lt;p&gt;Con Visual Studio 11, tenemos &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/ee290856(VS.110).aspx"&gt;nuevas funcionalidades&lt;/a&gt; para mejorar nuestro rendimiento desarrollando para SharePoint y mejorar el rendimiento de nuestros desarrollos. En la &lt;a target="_blank" href="http://geeks.ms/blogs/ciin/archive/2011/12/16/visual-studio-11-y-sharepoint-2010-novedades-en-desarrollo-para-sharepoint-i.aspx"&gt;serie&lt;/a&gt; sobre Visual Studio 11 del blog del CIIN, vemos como tenemos nuevos dise&amp;ntilde;adores de listas, tipos de contenido, nuevas plantillas de proyectos, etc.&lt;/p&gt;
&lt;p&gt;Junto con todas estas novedades, encontramos que podemos utilizar la herramienta de Profiling para analizar el rendimiento de nuestros desarrollos para SharePoint 2010. Utilizando el Performance Wizard, podemos elegir entre los m&amp;eacute;todos de Profiling y seleccionar nuestro proyecto de SharePoint para analizar.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint2010_5F00_vs2011_5F00_profiling_5F00_1_5F00_343C4CEF.jpg"&gt;&lt;img height="183" width="244" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint2010_5F00_vs2011_5F00_profiling_5F00_1_5F00_thumb_5F00_703868D7.jpg" alt="SharePoint2010_vs2011_profiling_1" border="0" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" title="SharePoint2010_vs2011_profiling_1" /&gt;&lt;/a&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint2010_5F00_vs2011_5F00_profiling_5F00_2_5F00_6AE98226.jpg"&gt;&lt;img height="188" width="244" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint2010_5F00_vs2011_5F00_profiling_5F00_2_5F00_thumb_5F00_209EC781.jpg" alt="SharePoint2010_vs2011_profiling_2" border="0" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" title="SharePoint2010_vs2011_profiling_2" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Ejecutamos y analizamos el resultado, con el objetivo de mejorar el rendimiento de nuestra soluci&amp;oacute;n.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint2010_5F00_vs2011_5F00_profiling_5F00_3_5F00_2A83B8EC.jpg"&gt;&lt;img height="381" width="644" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint2010_5F00_vs2011_5F00_profiling_5F00_3_5F00_thumb_5F00_521A0F49.jpg" alt="SharePoint2010_vs2011_profiling_3" border="0" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" title="SharePoint2010_vs2011_profiling_3" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Como vemos en el informe, el &lt;strong&gt;Hot Path&lt;/strong&gt; nos indica que el m&amp;eacute;todo m&amp;aacute;s costoso es nuestro Feature Receiver y que todo el trabajo, &lt;strong&gt;Funcions Doing Most Individual Work&lt;/strong&gt;, se lo est&amp;aacute; llevando una funci&amp;oacute;n que se llama TimeCounter. &lt;/p&gt;
&lt;p&gt;Analizando en detalle la funci&amp;oacute;n que nos causa el problema, &lt;em&gt;FeatureActivated&lt;/em&gt;, vemos que nos especifica el porcentaje del coste de cada una de los m&amp;eacute;todos que utilizamos y nos especifica que el problema lo tenemos en &lt;em&gt;TimeCounter&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint2010_5F00_vs2011_5F00_profiling_5F00_4_5F00_20CB24E9.jpg"&gt;&lt;img height="399" width="644" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint2010_5F00_vs2011_5F00_profiling_5F00_4_5F00_thumb_5F00_5CE6CAC4.jpg" alt="SharePoint2010_vs2011_profiling_4" border="0" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" title="SharePoint2010_vs2011_profiling_4" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Una nueva utilidad que nos permite mejorar nuestras soluciones de SharePoint 2010 y no volvernos locos buscando el problema de una forma m&amp;aacute;s artesanal.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Saludos a todos&amp;hellip;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=203899" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Visual+Studio+11/default.aspx">Visual Studio 11</category></item><item><title>SharePoint 2010. Instalación en un SQL Server 2012</title><link>http://geeks.ms/blogs/adiazmartin/archive/2012/03/09/sharepoint-2010-instalaci-243-n-en-un-sql-server-2012.aspx</link><pubDate>Fri, 09 Mar 2012 12:06:20 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:203772</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=203772</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2012/03/09/sharepoint-2010-instalaci-243-n-en-un-sql-server-2012.aspx#comments</comments><description>&lt;p&gt;Ahora que ya tenemos el SQL Server 2012, y que viene con algunas novedades y mejoras para SharePoint 2010 como puede ser la nueva &lt;a href="http://geeks.ms/blogs/ciin/archive/2011/07/13/sql-server-denali-novedades-en-reporting-services-y-tambi-233-n-en-la-integraci-243-n-con-sharepoint.aspx" target="_blank"&gt;aplicación de servicio de Reporting&lt;/a&gt; para SharePoint, nos toca instalar SharePoint.&lt;/p&gt;  &lt;p&gt;La instalación se realizar correctamente sin ningún problema, salvo que cuando vamos a realizar la configuración se produce el siguiente error:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint2010_5F00_sqlserver2010_5F00_install_5F00_1_5F00_50643CCF.jpg"&gt;&lt;img title="SharePoint2010_sqlserver2010_install_1" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="SharePoint2010_sqlserver2010_install_1" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint2010_5F00_sqlserver2010_5F00_install_5F00_1_5F00_thumb_5F00_714789A9.jpg" width="567" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;Failed to create the configuration database. An exception of type System.Data.SqlCliente.SqlException was thrown. Additional exception information: Could not find stored procedure ‘sp_dboption’.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Lo tenemos documentado en la MSDN, necesitamos instalar el &lt;a href="http://msdn.microsoft.com/en-us/library/hh231665(v=sql.110).aspx" target="_blank"&gt;SP1&lt;/a&gt; de SharePoint previamente a crear nuestra granja de servidores.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Saludos a todos…&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=203772" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SQL+Server+2012/default.aspx">SQL Server 2012</category></item><item><title>Webcast. Charla con los expertos: Todo lo que quisiste saber sobre SharePoint, pero no te atreviste a preguntar</title><link>http://geeks.ms/blogs/adiazmartin/archive/2012/03/09/webcast-charla-con-los-expertos-todo-lo-que-quisiste-saber-sobre-sharepoint-pero-no-te-atreviste-a-preguntar.aspx</link><pubDate>Fri, 09 Mar 2012 11:15:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:203770</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=203770</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2012/03/09/webcast-charla-con-los-expertos-todo-lo-que-quisiste-saber-sobre-sharepoint-pero-no-te-atreviste-a-preguntar.aspx#comments</comments><description>&lt;p&gt;Empezamos el a&amp;ntilde;o con el primer Webcast de preguntas sobre SharePoint. Contaremos con algunos de los mayores expertos del producto para contestar a vuestras dudas, si las podemos contestar, claro.&lt;/p&gt;
&lt;p&gt;Ser&amp;aacute; el pr&amp;oacute;ximo mi&amp;eacute;rcoles 14 de marzo a las 15:00 (gracias Mario)&amp;nbsp;&lt;span style="text-decoration:line-through;"&gt;14:00 &lt;/span&gt;(GMT).&lt;/p&gt;
&lt;p&gt;&lt;a href="https://msevents.microsoft.com/CUI/EventDetail.aspx?culture=en-US&amp;amp;eventid=1032506778&amp;amp;flag=1" title="https://msevents.microsoft.com/CUI/EventDetail.aspx?culture=en-US&amp;amp;eventid=1032506778&amp;amp;flag=1"&gt;https://msevents.microsoft.com/CUI/EventDetail.aspx?culture=en-US&amp;amp;eventid=1032506778&amp;amp;flag=1&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=203770" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Webcast/default.aspx">Webcast</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SUGES/default.aspx">SUGES</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+Online/default.aspx">SharePoint Online</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2007/default.aspx">SharePoint 2007</category></item><item><title>Office 365. Reserva de salas y recursos</title><link>http://geeks.ms/blogs/adiazmartin/archive/2012/03/07/office-365-reserva-de-salas-y-recursos.aspx</link><pubDate>Wed, 07 Mar 2012 09:50:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:203731</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=203731</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2012/03/07/office-365-reserva-de-salas-y-recursos.aspx#comments</comments><description>&lt;p&gt;En Office 365 existen dos opciones para gestionar la reserva de salas y recursos, utilizando un calendario para agendar y controlar la utilizaci&amp;oacute;n de los mismos, usando un &lt;a target="_blank" href="http://geeks.ms/blogs/adiazmartin/archive/2012/02/13/sharepoint-2010-calendario-de-reserva-de-recursos.aspx"&gt;calendario de recursos de SharePoint Online&lt;/a&gt; o utilizando un Buz&amp;oacute;n de sala en Exchange Online.&lt;/p&gt;
&lt;p&gt;Si abrimos la administraci&amp;oacute;n de Exchange Online, nos permite crear, en Usuarios y grupos, un Buz&amp;oacute;n de Sala. Con este tipo de buz&amp;oacute;n, podemos delegar la aceptaci&amp;oacute;n de solicitudes de reserva.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/Office365_5F00_Exchange_5F00_room_5F00_1_5F00_71BE67EF.jpg"&gt;&lt;img height="484" width="378" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/Office365_5F00_Exchange_5F00_room_5F00_1_5F00_thumb_5F00_7A4E9AAE.jpg" alt="Office365_Exchange_room_1" border="0" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" title="Office365_Exchange_room_1" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Administrando el buz&amp;oacute;n, nos permite configurar lo siguiente:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;N&amp;uacute;mero m&amp;aacute;ximo de d&amp;iacute;as de antelaci&amp;oacute;n con el que se pueden reservar recursos&lt;/li&gt;
&lt;li&gt;El tiempo m&amp;aacute;ximo de duraci&amp;oacute;n de la reuni&amp;oacute;n&lt;/li&gt;
&lt;li&gt;Si queremos permitir reuniones recurrentes&lt;/li&gt;
&lt;li&gt;Resoluci&amp;oacute;n de conflictos&lt;/li&gt;
&lt;li&gt;Permisos de programaci&amp;oacute;n&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/Office365_5F00_Exchange_5F00_room_5F00_2_5F00_0EA43A6D.jpg"&gt;&lt;img height="484" width="630" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/Office365_5F00_Exchange_5F00_room_5F00_2_5F00_thumb_5F00_051B562A.jpg" alt="Office365_Exchange_room_2" border="0" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" title="Office365_Exchange_room_2" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Una vez que tenemos el buz&amp;oacute;n configurado, los usuarios pueden utilizar el Outlook para realizar las reservas y localizar una sala disponible o ver el estado de las mismas, una de las diferencias que nos encontramos con la otra opci&amp;oacute;n de SharePoint Online que no permite la gesti&amp;oacute;n desde Outlook.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/Office365_5F00_Exchange_5F00_room_5F00_3_5F00_62B39AE3.jpg"&gt;&lt;img height="484" width="599" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/Office365_5F00_Exchange_5F00_room_5F00_3_5F00_thumb_5F00_29E8A53C.jpg" alt="Office365_Exchange_room_3" border="0" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" title="Office365_Exchange_room_3" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Utilicemos una de las dos opciones, es muy sencillo gestionar nuestros recursos y conocer la disponibilidad de los mismos, si bien la opci&amp;oacute;n de Exchange Online nos permite reservar directamente desde Outlook, la opci&amp;oacute;n de SharePoint Online no necesita que se tenga Office instalado, ya que se gestiona a trav&amp;eacute;s de la web de SharePoint. &amp;iquest;Cu&amp;aacute;l escoger?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Saludos a todos&amp;hellip;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=203731" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Colaboraci_26002300_243_3B00_n/default.aspx">Colaboraci&amp;#243;n</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Office365/default.aspx">Office365</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+Online/default.aspx">SharePoint Online</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Exchange+Online/default.aspx">Exchange Online</category></item><item><title>SharePoint 2010. Calendario de reserva de recursos</title><link>http://geeks.ms/blogs/adiazmartin/archive/2012/02/13/sharepoint-2010-calendario-de-reserva-de-recursos.aspx</link><pubDate>Mon, 13 Feb 2012 16:38:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:203329</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=203329</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2012/02/13/sharepoint-2010-calendario-de-reserva-de-recursos.aspx#comments</comments><description>&lt;p&gt;Tenemos una nueva funcionalidad para los Calendario de grupo de nuestro SharePoint, que nos permite gestionar las reservas de recursos o salas. Para activarla, hay que seguir los siguiente pasos:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Activar la caracter&amp;iacute;stica de Listas de grupos de trabajo&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint_2D00_ResourceCalendar_5F00_1_5F00_286B7DF2.jpg"&gt;&lt;img height="164" width="644" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint_2D00_ResourceCalendar_5F00_1_5F00_thumb_5F00_19E05C00.jpg" alt="SharePoint-ResourceCalendar_1" border="0" title="SharePoint-ResourceCalendar_1" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Activar la funcionalidad de reserva de recursos en la configuraci&amp;oacute;n general del calendario&lt;/em&gt;, esto lo tenemos en la secci&amp;oacute;n de T&amp;iacute;tulo, descripci&amp;oacute;n y navegaci&amp;oacute;n.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint_2D00_ResourceCalendar_5F00_2_5F00_77A85079.jpg"&gt;&lt;img height="341" width="644" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint_2D00_ResourceCalendar_5F00_2_5F00_thumb_5F00_7AF9C254.jpg" alt="SharePoint-ResourceCalendar_2" border="0" title="SharePoint-ResourceCalendar_2" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Crear los recursos que estar&amp;aacute;n disponibles en las reservas&lt;/em&gt;, para esto tenemos una nueva lista de Recursos, que podemos ver en Todo el contenido del sitio, que nos permite crear recursos y grupos de recursos.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint_2D00_ResourceCalendar_5F00_3_5F00_43640166.jpg"&gt;&lt;img height="213" width="644" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint_2D00_ResourceCalendar_5F00_3_5F00_thumb_5F00_1BDD0F2F.jpg" alt="SharePoint-ResourceCalendar_3" border="0" title="SharePoint-ResourceCalendar_3" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint_2D00_ResourceCalendar_5F00_4_5F00_3D793800.jpg"&gt;&lt;img height="484" width="527" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint_2D00_ResourceCalendar_5F00_4_5F00_thumb_5F00_60E5B698.jpg" alt="SharePoint-ResourceCalendar_4" border="0" title="SharePoint-ResourceCalendar_4" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;A la hora de crear un nuevo elemento del calendario, crearemos una reserva con los recursos que queremos reservar y con una opci&amp;oacute;n que comprueba las reservas dobles, buscando el solapamiento de las mismas en el calendario.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint_2D00_ResourceCalendar_5F00_5_5F00_573D4862.jpg"&gt;&lt;img height="484" width="532" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint_2D00_ResourceCalendar_5F00_5_5F00_thumb_5F00_7A3D9405.jpg" alt="SharePoint-ResourceCalendar_5" border="0" title="SharePoint-ResourceCalendar_5" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Bastante &amp;uacute;til, aunque no podamos conectarla a Outlook y gestionar las reservas desde este. &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Saludos a todos&amp;hellip;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=203329" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Colaboraci_26002300_243_3B00_n/default.aspx">Colaboraci&amp;#243;n</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+Online/default.aspx">SharePoint Online</category></item><item><title>SharePoint 2010. Instalar Reporting Services 2012</title><link>http://geeks.ms/blogs/adiazmartin/archive/2012/02/12/sharepoint-2010-instalar-reporting-services-2012.aspx</link><pubDate>Sun, 12 Feb 2012 19:08:46 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:203319</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=203319</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2012/02/12/sharepoint-2010-instalar-reporting-services-2012.aspx#comments</comments><description>&lt;p&gt;Con la próxima versión de SQL Server 2012 tenemos muchas novedades para Reporting Services, podemos verlas en el &lt;a href="http://geeks.ms/blogs/ciin/archive/2011/07/13/sql-server-denali-novedades-en-reporting-services-y-tambi-233-n-en-la-integraci-243-n-con-sharepoint.aspx" target="_blank"&gt;post&lt;/a&gt; de Juan Carlos, entre las que podemos ver que la integración con SharePoint pasa a ser utilizando una aplicación de servicio. Las aplicaciones de servicio son parte de la nueva arquitectura presentada con SharePoint 2010 que mejora las capacidades de la plataforma, pasando por poder tener servicios distribuidos, balanceados, etc.&lt;/p&gt;  &lt;p&gt;Una vez que instalamos SharePoint 2010 utilizando SQL Server 2012, tendremos que instalar el servicio para que esté disponible en el administrador de aplicaciones de servicio y poder habilitarlo en nuestra granja de servidores.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint_2D00_Reporting2012_5F00_1_5F00_77547389.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="SharePoint-Reporting2012_1" border="0" alt="SharePoint-Reporting2012_1" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint_2D00_Reporting2012_5F00_1_5F00_thumb_5F00_40B6A278.jpg" width="636" height="357" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Para esto, tenemos que utilizar la consola de Powershell de SharePoint e instalar el servicio, el proxy del servicio y iniciarlo.&lt;/p&gt;  &lt;div style="border-bottom:silver 1px solid;text-align:left;border-left:silver 1px solid;padding-bottom:4px;line-height:12pt;background-color:#f4f4f4;margin:20px 0px 10px;padding-left:4px;width:97.5%;padding-right:4px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;max-height:200px;font-size:8pt;overflow:auto;border-top:silver 1px solid;cursor:text;border-right:silver 1px solid;padding-top:4px;" id="codeSnippetWrapper"&gt;   &lt;div style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;" id="codeSnippet"&gt;     &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;Install-SPRSService&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&amp;#160;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;Install-SPRSServiceProxy&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&amp;#160;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;get-spserviceinstance -all |&lt;span style="color:#0000ff;"&gt;where&lt;/span&gt; {$_.TypeName -like &lt;span style="color:#006080;"&gt;&amp;quot;SQL Server Reporting*&amp;quot;&lt;/span&gt;} | Start-SPServiceInstance&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;Una vez provisionado el servicio, podemos ir a crear la nueva aplicación del servicio SQL Server Reporting Services y empezar a desplegar informes en nuestros sitios de SharePoint, eso sí, no nos olvidemos de activar la característica de colección de sitios del servidor de informes.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint_2D00_Reporting2012_5F00_2_5F00_278B2273.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="SharePoint-Reporting2012_2" border="0" alt="SharePoint-Reporting2012_2" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/SharePoint_2D00_Reporting2012_5F00_2_5F00_thumb_5F00_7231EA40.jpg" width="644" height="156" /&gt;&lt;/a&gt;&lt;/p&gt;





&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;Saludos a todos…&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=203319" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Rerporting+Services/default.aspx">Rerporting Services</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SQL+Server+2012/default.aspx">SQL Server 2012</category></item><item><title>SharePoint 2010. 12 horas de Visual Studio</title><link>http://geeks.ms/blogs/adiazmartin/archive/2012/01/30/sharepoint-2010-12-horas-de-visual-studio.aspx</link><pubDate>Mon, 30 Jan 2012 11:39:23 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:203057</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>5</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=203057</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2012/01/30/sharepoint-2010-12-horas-de-visual-studio.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/12HorasVisualStudio_5F00_1925BFB4.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px;padding-top:0px;" title="12HorasVisualStudio" border="0" alt="12HorasVisualStudio" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/12HorasVisualStudio_5F00_thumb_5F00_2EAFD284.jpg" width="454" height="229" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;El martes 31 de enero (mañana), Microsoft ha montado una maratón de &lt;a href="https://msevents.microsoft.com/CUI/EventDetail.aspx?culture=en-US&amp;amp;EventID=1032502854&amp;amp;amp%3BCulture=es-ES" target="_blank"&gt;12 horas Visual Studio&lt;/a&gt; que se emitirán online a través de &lt;a href="http://www.globbtv.com/vstudio12horas" target="_blank"&gt;GlobTV&lt;/a&gt;. Más de 20 sesiones sobre Visual Studio, con una temática de lo más variada, con los mejores en cada tema y yo, que tendré el placer de compartir con todos dos sesiones sobre SharePoint. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt; - 14:35. Diseñando un Business Data Connectivity con Visual Studio 2010. &lt;/strong&gt;    &lt;p&gt;Business Data Connectivity Services es un nuevo servicio de SharePoint 2010 que nos permite enlazar con datos externos y ofrecer a los usuarios la capacidad de obtener una visión de esos datos de negocio. En esta sesión veremos como construir un solución en Visual Studio para generar un modelo de BDC y publicarlo a SharePoint 2010.&lt;/p&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt; - 19:50. Importando paquetes de soluciones (WSP) en Visual Studio 2010. &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Nos centraremos en el asistente de importación de soluciones que dispone Visual Studio 2010, que nos permite crear soluciones de Visual Studio utilizando paquetes WSP generados con SharePoint Designer.&lt;/p&gt;  &lt;p&gt;Un grandísimo evento, en formato webcast, que no os podéis perder, sobre todo por la calidad de los ponentes.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Saludos a todos…&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=203057" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Visual+Studio+2010/default.aspx">Visual Studio 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Evento/default.aspx">Evento</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Microsoft/default.aspx">Microsoft</category></item><item><title>SharePoint 2010. Funciones de negocio con el UserProfile API</title><link>http://geeks.ms/blogs/adiazmartin/archive/2012/01/29/sharepoint-2010-userprofile-api.aspx</link><pubDate>Sun, 29 Jan 2012 12:05:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:203047</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=203047</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2012/01/29/sharepoint-2010-userprofile-api.aspx#comments</comments><description>&lt;p&gt;Ya hemos hablado en otras ocasiones de los Perfiles de Usuarios, hoy toca entrar un poco en detalle en la clase que define un perfil de usuario y la funcionalidad que nos expone.&lt;/p&gt;  &lt;p&gt;La clase &lt;a href="http://msdn.microsoft.com/en-us/library/ie/microsoft.office.server.userprofiles.userprofile_methods.aspx" target="_blank"&gt;UserProfile&lt;/a&gt; nos permite trabajar con los datos un perfil de usuario, tanto para poder crearlo, modificar su información u obtener sus valores. Por ejemplo, nuestro departamento de RRHH quiere lanzar unas evaluaciones internas entre el personal y necesita que cada persona evalué a sus compañeros, que cada responsable evalúe a sus subordinados y que, a su vez, cada uno evalúe a su responsable directo. Para esto, prepararemos unos Web Parts que muestren a quien tienes que evaluar, con un enlace a la encuesta que le corresponde a cada uno.&lt;/p&gt;  &lt;p&gt;El primer Web Part, mostrará los compañeros del usuario actual con un enlace a la encuesta, para esto, tenemos que poder obtener los compañeros del perfil de usuario actual.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;GetPeers&lt;/strong&gt;&lt;/p&gt;  &lt;div id="codeSnippetWrapper"&gt;   &lt;div style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;" id="codeSnippet"&gt;     &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#008000;"&gt;//Instanciamos un Contexto de Servicio para el UserProfileManager&lt;/span&gt;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;SPServiceContext serviceContext = SPServiceContext.GetContext(SPContext.Current.Site);&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;UserProfileManager myUpm = &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; UserProfileManager(serviceContext);&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&amp;#160;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#008000;"&gt;//Obtenemos el Perfil del usuario actual&lt;/span&gt;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;var profile = myUpm.GetUserProfile(SPContext.Current.Web.CurrentUser.LoginName);&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&amp;#160;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#008000;"&gt;//Tenemos un método GetPeers, que nos devuelve los perfiles de usuario que comparten Manager&lt;/span&gt;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;var peers = profile.GetPeers();&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;El segundo Web Part, deberá de mostrar los perfiles que reportan al usuario actual, usando el método siguiente:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GetDirectReports&lt;/strong&gt;&lt;/p&gt;

&lt;div id="codeSnippetWrapper"&gt;
  &lt;div style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;" id="codeSnippet"&gt;
    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;SPServiceContext serviceContext = SPServiceContext.GetContext(SPContext.Current.Site);&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;UserProfileManager myUpm = &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; UserProfileManager(serviceContext);&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&amp;#160;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;var profile = myUpm.GetUserProfile(userName);&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&amp;#160;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:#f4f4f4;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#008000;"&gt;//Obtiene los perfiles de usuario que tienen como manager el usuario actual&lt;/span&gt;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;background-color:white;margin:0em;border-left-style:none;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;border-right-style:none;font-size:8pt;overflow:visible;padding-top:0px;"&gt;var reports = profile.GetDirectReports();&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;



&lt;p&gt;Nos queda un Web Part que nos muestre quien es nuestro responsable y para eso tenemos el método &lt;strong&gt;GetManager. &lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;En cada Web Part, se ha puesto un enlace a la encuesta a la que le pasamos por parámetro a quien se va a encuestar de la sigiuente forma:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://sharepoint/lists/encuesta/NewForm.aspx?persona=dominio\usuario"&gt;http://sharepoint/lists/encuesta/NewForm.aspx?persona=dominio\usuario&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Editando el formulario NewForm.aspx, añadimos codigo Javascript para que lee el parámetro de la url y establezca el campo Encuestado, que es de tipo persona, con ese valor.&lt;/p&gt;

&lt;p&gt;Cabe destacar la importancia de los datos de los perfiles y que se mantengan actualizados y al día con la información de la empresa, esto nos permitirá generar procesos de negocio como este ejemplo.&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;Saludos a todos…&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=203047" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2007/default.aspx">SharePoint 2007</category></item><item><title>Un año más</title><link>http://geeks.ms/blogs/adiazmartin/archive/2012/01/02/un-a-241-o-m-225-s.aspx</link><pubDate>Mon, 02 Jan 2012 09:12:23 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:202531</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=202531</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2012/01/02/un-a-241-o-m-225-s.aspx#comments</comments><description>&lt;p&gt;Ya ha pasado otro año y seguimos escribiendo en &lt;a target="_blank"&gt;Geeks.ms&lt;/a&gt;, esa gran comunidad de amigos. El 2011 se ha marchado, un año lleno de dificultades, de mucho trabajo y de alegrías. Resumiendo el año y dando las gracias por vuestro aporte, habrá que repetirlo mejorando la calidad y aumentando la cantidad. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;- &lt;/strong&gt;&lt;a href="http://geeks.ms/blogs/adiazmartin/archive/2011/01/02/mvp-sharepoint-server.aspx" target="_blank"&gt;&lt;strong&gt;Nombramiento MVP en SharePoint Server&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;.&lt;/strong&gt; Sin palabras. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;- &lt;/strong&gt;&lt;a href="http://geeks.ms/blogs/adiazmartin/archive/2011/01/13/evento-desarrollo-en-sharepoint-para-desarrolladores-mortales-de-net.aspx" target="_blank"&gt;&lt;strong&gt;Mesa redonda para evangelizar SharePoint a los desarrolladores de MAD.NUG&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;. &lt;/strong&gt;Un mano a mano entre los MVP españoles de SharePoint y los desarrolladores, un evento repetible y recomendable.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;- &lt;/strong&gt;&lt;a href="http://geeks.ms/blogs/adiazmartin/archive/2011/02/06/sharepoint-2010-metro-connect-camps-en-madrid.aspx" target="_blank"&gt;&lt;strong&gt;SharePoint Metro Connect Camps&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;. &lt;/strong&gt;Magnífica semana de formación y desarrollo de pruebas de concepto, a ver si este año la repetimos. &lt;/p&gt;  &lt;p&gt;- &lt;strong&gt;Webcast&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://geeks.ms/blogs/adiazmartin/archive/2011/01/31/webcast-suges-perfiles-de-usuarios-el-lado-social-de-sharepoint.aspx" target="_blank"&gt;Perfiles de Usuarios. El lado social de SharePoint&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://geeks.ms/blogs/adiazmartin/archive/2011/04/13/webcast-charla-con-los-expertos-todo-lo-que-siempre-quisiste-saber-sobre-sharepoint-pero-no-te-atreviste-a-preguntar.aspx" target="_blank"&gt;Charlas con los expertos: Todo lo que siempre quisiste saber sobre SharePoint, pero no te atreviste a preguntar&lt;/a&gt;. Un honor compartirlo con los MVP hispanohablantes.&lt;/li&gt;    &lt;li&gt;¿Cómo se hizo &lt;a href="http://www.suges.es"&gt;www.suges.es&lt;/a&gt;? &lt;a href="http://geeks.ms/blogs/adiazmartin/archive/2011/10/29/webcast-191-c-243-mo-se-hizo-www-suges-es-con-sharepoint-2010.aspx" target="_blank"&gt;Mejoramos la imagen y llegarán nuevas funcionalidades&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;- &lt;/strong&gt;&lt;a href="http://geeks.ms/blogs/adiazmartin/archive/2011/02/23/microsoft-sharepoint-connections-madrid-junio-2011.aspx" target="_blank"&gt;&lt;strong&gt;SharePoint Connections Madrid&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;.&lt;/strong&gt; Una gran iniciativa de Juan Carlos y Gustavo Vélez, que no se pudo materializar, pero sé que seguiremos intentándolo.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;- &lt;/strong&gt;&lt;a href="http://www.tenerifedev.com" target="_blank"&gt;&lt;strong&gt;TenerifeDev&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;. &lt;/strong&gt;Logramos llegar a muchos desarrolladores de la isla con eventos presenciales y webcast, y con la colaboración de todos. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;- &lt;/strong&gt;&lt;a href="http://www.gavd.net/servers/compartimoss/compartimoss_main.aspx" target="_blank"&gt;&lt;strong&gt;CompartiMOSS&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;.&lt;/strong&gt; Gran revista sobre SharePoint que no os podéis perder.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Número 7. El lado social de SharePoint I&lt;/li&gt;    &lt;li&gt;Número 8. El lado social de SharePoint II&lt;/li&gt;    &lt;li&gt;Número 9. El lado social de SharePoint III&lt;/li&gt;    &lt;li&gt;Número 10. Sitios públicos en Office 365&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;- &lt;/strong&gt;&lt;a href="http://geeks.ms/blogs/adiazmartin/archive/2011/06/28/office-365-listo-para-el-arranque.aspx" target="_blank"&gt;&lt;strong&gt;Lanzamiento Office 365&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;.&lt;/strong&gt; La gran esperada plataforma en la nube, con mucho potencial. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;- &lt;/strong&gt;&lt;a href="http://geeks.ms/blogs/adiazmartin/archive/2011/06/29/sharepoint-2010-instalaci-243-n-service-pack-1.aspx" target="_blank"&gt;&lt;strong&gt;Service Pack 1 SharePoint 2010&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;- &lt;/strong&gt;&lt;a href="http://geeks.ms/blogs/adiazmartin/archive/2011/07/15/un-a-241-o-m-225-s-nos-veremos-en-la-tenerife-lan-party.aspx" target="_blank"&gt;&lt;strong&gt;Tenerife Lan Party&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;.&lt;/strong&gt; Hablamos de Office 365 y de Azure, con el amigo David Rodríguez.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;- Presentación del futuro de Windows, &lt;/strong&gt;&lt;a href="http://geeks.ms/blogs/adiazmartin/archive/2011/09/21/sharepoint-2010-suministro-de-noticias-en-windows-8-i.aspx" target="_blank"&gt;&lt;strong&gt;Windows 8&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;- &lt;/strong&gt;&lt;a href="http://geeks.ms/blogs/adiazmartin/archive/2011/10/05/wp7-utilizando-la-c-225-mara.aspx" target="_blank"&gt;&lt;strong&gt;Mango llega a nuestras vidas en Windows Phone&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;- C.E.U.S. VII, con una sesión de &lt;/strong&gt;&lt;a href="http://geeks.ms/blogs/adiazmartin/archive/2011/11/04/evento-c-e-u-s-vii-mvps-y-ask-the-experts.aspx" target="_blank"&gt;&lt;strong&gt;Ask de Experts&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;- &lt;/strong&gt;&lt;a href="http://geeks.ms/blogs/adiazmartin/archive/2011/11/19/roadshow-de-windows-phone-la-industria-del-software-y-la-realidad-del-mundo.aspx" target="_blank"&gt;&lt;strong&gt;Windows Phone Roadshow&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;,&amp;#160; apoteósico final de año. &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Ahora llega el año nuevo con más fuerzas que este pasado, esperando poder colaborar mucho más y conseguir más logros. El primero de los retos se ha conseguido, renovación del &lt;a href="https://mvp.support.microsoft.com/profile/Alberto.Diaz%20Martin" target="_blank"&gt;MVP en SharePoint Server&lt;/a&gt;, y hay que aprovechar para agradecérselo a la familia, en especial a mi mujer por aguantarme tantas horas delante del portátil, a los amigos y compañeros de trabajo, a los compañeros de fatiga en SharePoint y a &lt;a href="http://www.gsc.es" target="_blank"&gt;General de Software&lt;/a&gt;, este logro es parte de ellos, todos ponen su granito de arena.&lt;/p&gt;  &lt;p&gt;&lt;a href="https://mvp.support.microsoft.com/Default.aspx" target="_blank"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="mvplogo" border="0" alt="mvplogo" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/mvplogo_5F00_0E89226E.jpg" width="654" height="129" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;No os quiero aburrir más, desearos un buen año y que consigamos llegar muy lejos afrontando las dificultades todos juntos.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Saludos a todos…&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=202531" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Off+Topic/default.aspx">Off Topic</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/Tenerife/default.aspx">Tenerife</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/MVP/default.aspx">MVP</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2007/default.aspx">SharePoint 2007</category></item><item><title>CompartiMOSS, Feliz Navidad y otro número más (el 10) hablando de SharePoint</title><link>http://geeks.ms/blogs/adiazmartin/archive/2011/12/23/compartimoss-feliz-navidad-y-otro-n-250-mero-m-225-s-el-10-hablando-de-sharepoint.aspx</link><pubDate>Fri, 23 Dec 2011 11:46:00 GMT</pubDate><guid isPermaLink="false">2a2e7ade-7474-448b-9de5-1515d8bb7d1b:202306</guid><dc:creator>Alberto Diaz Martin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://geeks.ms/blogs/adiazmartin/rsscomments.aspx?PostID=202306</wfw:commentRss><comments>http://geeks.ms/blogs/adiazmartin/archive/2011/12/23/compartimoss-feliz-navidad-y-otro-n-250-mero-m-225-s-el-10-hablando-de-sharepoint.aspx#comments</comments><description>&lt;p&gt;Un n&amp;uacute;mero m&amp;aacute;s, gracias al esfuerzo de Gustavo, Fabi&amp;aacute;n y Juan Carlos y, por supuesto, de todos los que colaboramos aportando nuestro peque&amp;ntilde;o granito de arena en forma de art&amp;iacute;culo, tenemos el honor de escribir de SharePoint en la &amp;uacute;nica revista de habla hispana dedicada al producto.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.gavd.net/servers/compartimoss/compartimoss_main.aspx" title="http://www.gavd.net/servers/compartimoss/compartimoss_main.aspx"&gt;http://www.gavd.net/servers/compartimoss/compartimoss_main.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Disfruten de los siguientes art&amp;iacute;culos y de una feliz navidad.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Editorial &lt;/li&gt;
&lt;li&gt;C&amp;oacute;mo crear una p&amp;aacute;gina de error personalizada en SharePoint 2010 (&lt;strong&gt;Luis M&amp;aacute;&amp;ntilde;ez&lt;/strong&gt;) &lt;/li&gt;
&lt;li&gt;Aplicando buenas pr&amp;aacute;cticas a una soluci&amp;oacute;n SandBoxed que despliega noticias gr&amp;aacute;ficas (&lt;strong&gt;Juan Manuel Herrera&lt;/strong&gt;) &lt;/li&gt;
&lt;li&gt;SharePoint Governance - I (&lt;strong&gt;Randy Williams - Roberto Delgado&lt;/strong&gt;) &lt;/li&gt;
&lt;li&gt;Como remplazar controles delegados en sitios de SharePoint 2010 (&lt;strong&gt;Juan Carlos Gonz&amp;aacute;lez Mart&amp;iacute;n&lt;/strong&gt;) &lt;/li&gt;
&lt;li&gt;Datos externos desde Office365 (&lt;strong&gt;Mario Cort&amp;eacute;s Flores&lt;/strong&gt;) &lt;/li&gt;
&lt;li&gt;Gesti&amp;oacute;n de documentos para ISO 9001 con SharePoint 2010 (&lt;strong&gt;Juan Emilio Martinez&lt;/strong&gt;) &lt;/li&gt;
&lt;li&gt;Entrevista con &lt;strong&gt;Daniel Seara&lt;/strong&gt; &lt;/li&gt;
&lt;li&gt;Timer Jobs en SharePoint 2010 (&lt;strong&gt;Carlos Ariel Dantiags&lt;/strong&gt;) &lt;/li&gt;
&lt;li&gt;NPS ENGINE, herramienta de Dise&amp;ntilde;o de Procesos para SharePoint &lt;/li&gt;
&lt;li&gt;El caso de los Centros Tecnol&amp;oacute;gicos de Microsoft (MTC) (&lt;strong&gt;Roberto Delgado&lt;/strong&gt;) &lt;/li&gt;
&lt;li&gt;CUDISS - SharePoint BI para hospitales (&lt;strong&gt;Luis M&amp;aacute;&amp;ntilde;ez&lt;/strong&gt;) &lt;/li&gt;
&lt;li&gt;SSD: El S&amp;iacute;ndrome de la SharePoint Dependencia (&lt;strong&gt;Juan Pablo Pussacq Laborde&lt;/strong&gt;) &lt;/li&gt;
&lt;li&gt;Sitios web p&amp;uacute;blicos en Office 365 (&lt;strong&gt;Alberto Diaz Martin&lt;/strong&gt;) &lt;/li&gt;
&lt;li&gt;Aprovisionamiento de P&amp;aacute;ginas Wiki en SharePoint 2010 (&lt;strong&gt;David Martos&lt;/strong&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/xmas_2D00_sharepoint_5F00_28F8C631.jpg"&gt;&lt;img height="164" width="244" src="http://geeks.ms/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/adiazmartin/xmas_2D00_sharepoint_5F00_thumb_5F00_266F9473.jpg" alt="xmas-sharepoint" border="0" title="xmas-sharepoint" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Feliz Navidad para todos!!!!!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://geeks.ms/aggbug.aspx?PostID=202306" width="1" height="1"&gt;</description><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2010/default.aspx">SharePoint 2010</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint/default.aspx">SharePoint</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+Online/default.aspx">SharePoint Online</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/CompartiMOSS/default.aspx">CompartiMOSS</category><category domain="http://geeks.ms/blogs/adiazmartin/archive/tags/SharePoint+2007/default.aspx">SharePoint 2007</category></item></channel></rss>