<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Oscar Martin Blog 2.0</title>
	<atom:link href="http://oscarmartin.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://oscarmartin.org</link>
	<description>[ Aventuras y desventuras con SharePoint ]</description>
	<lastBuildDate>Tue, 26 Sep 2017 07:16:38 +0000</lastBuildDate>
	<language>es</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=5.4.2</generator>
	<item>
		<title>SharePoint Online &#8211; PowerShell</title>
		<link>http://oscarmartin.org/powershell-2/sharepoint-online-powershell/</link>
					<comments>http://oscarmartin.org/powershell-2/sharepoint-online-powershell/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Tue, 26 Sep 2017 06:29:20 +0000</pubDate>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[SahrePoint Online]]></category>
		<category><![CDATA[SharePointOnline]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=3059</guid>

					<description><![CDATA[Vuelvo despues de un tiempo retirado de mi Blog&#8230; Esta vez vengo con información del Shell de SharePoint Online. Como ocurria con el Shell para las diferentes versiones on-premise, el Shell de administración de SharePoint Online es un módulo de Windows PowerShell que puede utilizar para administrar sitios y colecciones de sitios de SharePoint Online. [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1911" src="http://oscarmartin.org/wp-content/uploads/2011/12/powershell.png" alt="" width="125" height="125" />Vuelvo despues de un tiempo retirado de mi Blog&#8230; Esta vez vengo con información del <strong>Shell de SharePoint Online</strong>. Como ocurria con el Shell para las diferentes versiones on-premise, el Shell de administración de SharePoint Online es un módulo de Windows PowerShell que puede utilizar para administrar sitios y colecciones de sitios de SharePoint Online.</p>
<p>Para hacer uso del <strong>Shell de administración de SharePoint Online</strong>, es necesarios instalarlo previamente en la maquina local donde se vaya a ejecutar.  Este Shell (<strong>Microsoft.Online.SharePoint.PowerShell</strong>) puede descargarse desde:<a  href="https://www.microsoft.com/en-us/download/details.aspx?id=35588"> https://www.microsoft.com/en-us/download/details.aspx?id=35588</a>. Una nueva versión ha sido publicada el 15/09/2017, con mejoras funcionales y muevos objetos.</p>
<p><img class="aligncenter wp-image-3060 size-full" src="http://oscarmartin.org/wp-content/uploads/2017/09/Picture1.png" alt="" width="882" height="272" srcset="http://oscarmartin.org/wp-content/uploads/2017/09/Picture1.png 882w, http://oscarmartin.org/wp-content/uploads/2017/09/Picture1-300x93.png 300w, http://oscarmartin.org/wp-content/uploads/2017/09/Picture1-768x237.png 768w, http://oscarmartin.org/wp-content/uploads/2017/09/Picture1-624x192.png 624w" sizes="(max-width: 882px) 100vw, 882px" /></p>
<p>Las operaciones de la línea de comandos de Windows PowerShell constan de una serie de comandos o cmdlets con un conjunto de valores y parámetros. Los diferentes comandos se identifican en base a la acción que se indica en el prefijo de este:</p>
<ul>
<li><strong>Set</strong>-XXX</li>
<li><strong>Get</strong>-XXX</li>
<li><strong>Remove</strong>-XXX</li>
<li><strong>New</strong>-XXX</li>
<li><strong>Add</strong>-XXX</li>
<li>Etc.</li>
</ul>
<p>Referencia de comandos del Shell de adminsitración de SharePoint Online: <a  href="https://technet.microsoft.com/es-es/library/fp161364.aspx">https://technet.microsoft.com/es-es/library/fp161364.aspx</a>. Ademas si quieres acceder al listado de todos los comandos existentes a traves del propio PowerShell puedes hacerlo de la siguiente manera:</p>
<pre># Lista de comandos
Get-Command –Module Microsoft.Online.SharePoint.PowerShell</pre>
<p>Antes de lanzar ningún comando sobre SharePoint Online es necesario autenticarse como usuario. Además es necesario ser Administrador de SharePoint para realizar estas acciones a través del Shell.</p>
<p>Para realizar la autenticación a través de PowerShell es necesario hacer uso del comando “Connect-SPOService“:</p>
<pre># Conexion con SharePoint Online 
$adminEmail = "mi_usuario@mi_dominio.onmicrosoft.com"
$adminUrl = "https://mi_dominio-admin.sharepoint.com"
$adminCredentials = Get-Credential -UserName $adminEmail -Message "Acceso a la Admin de SPO"
Connect-SPOService -Url $adminUrl -Credential $adminCredentials</pre>
<p>Tras la conexión con SharePoint Online, ya es posible lanzar diferentes comandos, como los siguientes:</p>
<pre># Listado de todas las propiedades de un objeto
Get-SPOWebTemplate |select *

# Obtiene las plantillas de sitio de SharePoint
Get-SPOWebTemplate |Sort-Object DisplayCategory |Format-Table Name,Title,DisplayCategory

# Listado de TODOS LOS SITIOS (incluyendo Sitios Personales)
Get-SPOSite -IncludePersonalSite:$true -Limit All |Sort-Object Template |Format-Table Url,Template,LocaleId,Owner,StorageUsageCurrent

# Listado de los SITIOS PERSONALES (sitios con plantilla SPSPERS#10)
Get-SPOSite -IncludePersonalSite:$true -Limit All |where { $_.template -eq 'SPSPERS#10' } |Sort-Object Owner |Format-Table Url,Owner,StorageUsageCurrent

# Listado de Microsoft Groups (sitios con plantilla GROUP#0)
Get-SPOSite -Filter {Template -eq "GROUP#0"} -Limit All |Sort-Object StorageUsageCurrent |Format-Table Url,Title,StorageUsageCurrent,LastContentModifiedDate
</pre>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/powershell-2/sharepoint-online-powershell/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>SharePoint 2013 &#8211; Script de aprovisionamiento de Business Data Connectivity</title>
		<link>http://oscarmartin.org/powershell-2/sharepoint-2013-script-de-aprovisionamiento-de-business-data-connectivity/</link>
					<comments>http://oscarmartin.org/powershell-2/sharepoint-2013-script-de-aprovisionamiento-de-business-data-connectivity/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Mon, 16 Nov 2015 06:00:00 +0000</pubDate>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[SharePoint 2013]]></category>
		<category><![CDATA[BDC]]></category>
		<category><![CDATA[Business Data Connectivity]]></category>
		<category><![CDATA[SharePoint]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=3025</guid>

					<description><![CDATA[La aplicación de servicio de Conectividad a datos empresariales (o Business Data Connectivity) permite cargar archivos de definición de aplicaciones que describen las interfaces de los sistemas de la línea de negocio de una organización y la forma de acceder a los datos que almacenan en SharePoint 2013. Para crear este servicio en SharePoint 2013, aquí tenéis un script [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1911" src="http://oscarmartin.org/wp-content/uploads/2011/12/powershell.png" alt="powershell" width="125" height="125" />La aplicación de servicio de <strong>Conectividad a datos empresariales (o Business Data Connectivity)</strong> permite cargar archivos de definición de aplicaciones que describen las interfaces de los sistemas de la línea de negocio de una organización y la forma de acceder a los datos que almacenan en <a  href="http://oscarmartin.org/category/sharepoint-2013/">SharePoint 2013</a>.</p>
<p>Para crear este servicio en <a  href="http://oscarmartin.org/category/sharepoint-2013/">SharePoint 2013</a>, aquí tenéis un script de <a  href="http://oscarmartin.org/category/powershell-2/">PowerShell</a> que os puede ser de utilidad, si estáis montando nuevos entornos:</p>
<pre>#####################################################################################
## Create Business Data Connectivity Service ##
#####################################################################################
# SQL Server name and apppool
$DB = "DES-SP2013"
$AppPool = "SharePoint Web Services"
# Service name and database
$BDCSName = "Business Data Connectivity Service"
$BDCSDB = "SP2013_BDC"
#####################################################################################
## Administrative Privileges Check ##
#####################################################################################
function Use-RunAs 
{    
    # Check if script is running as Adminstrator and if not use RunAs 
    # Use Check Switch to check if admin 
    param([Switch]$Check) 
	$IsAdmin = ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator") 
    if ($Check) { return $IsAdmin }     
    if ($MyInvocation.ScriptName -ne "") 
    {  
        if (-not $IsAdmin)  
        {  
            try 
            {  
                $arg = "-file $($MyInvocation.ScriptName)" 
                Start-Process "$psHome\powershell.exe" -Verb Runas -ArgumentList $arg -ErrorAction "stop"  
            } 
            catch 
            { 
                Write-Warning "Error - Failed to restart script with runas"  
                break
            } 
            exit # Quit this session of powershell 
        }  
    }  
    else
    {  
        Write-Warning "Error - Script must be saved as a .ps1 file first"  
        break  
    }  
} 
Use-RunAs
#####################################################################################
## Add Powershell SharePoint Snapin
Add-PSSnapin Microsoft.SharePoint.PowerShell -erroraction SilentlyContinue
#####################################################################################
try
{
	Write-Host "Creating Business Data Connectivity Service"
	$ServiceApplication = New-SPBusinessDataCatalogServiceApplication –ApplicationPool $AppPool –DatabaseName $BDCSDB –DatabaseServer $DB –Name $BDCSName > $null
	New-SPBusinessDataCatalogServiceApplicationProxy -Name "$BDCSName Proxy" -DefaultProxyGroup -ServiceApplication $BDCSName > $null
	Get-SPServiceInstance | where-object {$_.TypeName -like "*Managed Metadata*"} | Start-SPServiceInstance > $null
	Write-Host "Service created correctly"
} 
catch 
{ 
	Write-Output $_  
}</pre>
<p>&nbsp;</p>
<p>Referencias: New-<a  href="https://technet.microsoft.com/en-us/library/ff607899.aspx" target="_blank">SPBusinessDataCatalogServiceApplication</a> y <a  href="https://technet.microsoft.com/en-us/library/ff607952.aspx" target="_blank">New-SPBusinessDataCatalogServiceApplicationProxy</a></p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/powershell-2/sharepoint-2013-script-de-aprovisionamiento-de-business-data-connectivity/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>SharePoint 2013 &#8211; Script de aprovisionamiento de Usage and State Service Applications</title>
		<link>http://oscarmartin.org/powershell-2/sharepoint-2013-script-de-aprovisionamiento-de-usage-and-state-service-applications/</link>
					<comments>http://oscarmartin.org/powershell-2/sharepoint-2013-script-de-aprovisionamiento-de-usage-and-state-service-applications/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Mon, 09 Nov 2015 06:00:58 +0000</pubDate>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[SharePoint 2013]]></category>
		<category><![CDATA[New-SPStateServiceDatabase]]></category>
		<category><![CDATA[New-SPUsageApplication]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[State Service]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=3018</guid>

					<description><![CDATA[La aplicación de Servicio de estado (o State Service) proporciona almacenamiento temporal de los datos de usuario para los componentes de SharePoint 2013. Para crear este servicio en SharePoint 2013, aquí tenéis un script de PowerShell que os puede ser de utilidad, si estáis montando nuevos entornos: ##################################################################################### ## Create Usage and State Service Applications ## [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1911" src="http://oscarmartin.org/wp-content/uploads/2011/12/powershell.png" alt="powershell" width="125" height="125" />La aplicación de <strong>Servicio de estado (o State Service)</strong> proporciona almacenamiento temporal de los datos de usuario para los componentes de <a  href="http://oscarmartin.org/category/sharepoint-2013/">SharePoint 2013</a>.</p>
<p>Para crear este servicio en <a  href="http://oscarmartin.org/category/sharepoint-2013/">SharePoint 2013</a>, aquí tenéis un script de <a  href="http://oscarmartin.org/category/powershell-2/">PowerShell</a> que os puede ser de utilidad, si estáis montando nuevos entornos:</p>
<pre>#####################################################################################
## Create Usage and State Service Applications ##
#####################################################################################
$DB = "DES-SP2013"

$DataDrive = "C:\\SPLogs"
$USName = "Usage and Health Data Collection Service"
$USDB = "SP2013_Usage"

$SSName = "State Service"
$SSDB = "SP2013_State"
#####################################################################################
## Administrative Privileges Check ##
#####################################################################################
function Use-RunAs 
{    
    # Check if script is running as Adminstrator and if not use RunAs 
    # Use Check Switch to check if admin 
    param([Switch]$Check) 
	$IsAdmin = ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator") 
    if ($Check) { return $IsAdmin }     
    if ($MyInvocation.ScriptName -ne "") 
    {  
        if (-not $IsAdmin)  
        {  
            try 
            {  
                $arg = "-file $($MyInvocation.ScriptName)" 
                Start-Process "$psHome\powershell.exe" -Verb Runas -ArgumentList $arg -ErrorAction "stop"  
            } 
            catch 
            { 
                Write-Warning "Error - Failed to restart script with runas"  
                break
            } 
            exit # Quit this session of powershell 
        }  
    }  
    else
    {  
        Write-Warning "Error - Script must be saved as a .ps1 file first"  
        break  
    }  
} 
Use-RunAs
#####################################################################################
## Add Powershell SharePoint Snapin
Add-PSSnapin Microsoft.SharePoint.PowerShell -erroraction SilentlyContinue
#####################################################################################
try
{
	Write-Host "Creating Usage and Health Data Collection Service"
	Set-SPUsageService -LoggingEnabled 1 -UsageLogLocation "$DataDrive" -UsageLogMaxSpaceGB 2
	$serviceInstance = Get-SPUsageService
	New-SPUsageApplication -Name $USName -DatabaseServer $DB -DatabaseName $USDB -UsageService $serviceInstance &gt; $null
	Write-Host "Service created correctly"

	Write-Host "Creating State Service and Proxy…"
	$stateServiceDatabase = New-SPStateServiceDatabase -Name $SSDB
	$stateSA = New-SPStateServiceApplication -Name $SSName -Database $stateServiceDatabase
	New-SPStateServiceApplicationProxy -ServiceApplication $stateSA -Name "$SSName Proxy" -DefaultProxyGroup
	Write-Host "Service created correctly"
} 
catch 
{ 
	Write-Output $_  
} 
</pre>
<p>&nbsp;</p>
<p>Referencias: <a  href="https://technet.microsoft.com/en-us/library/ff607699.aspx" target="_blank">New-SPUsageApplication</a>, <a  href="https://technet.microsoft.com/en-us/library/ff607677.aspx" target="_blank">New-SPStateServiceDatabase</a> y <a  href="https://technet.microsoft.com/en-us/library/ff608118.aspx" target="_blank">New-SPStateServiceApplicationProxy</a></p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/powershell-2/sharepoint-2013-script-de-aprovisionamiento-de-usage-and-state-service-applications/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>SharePoint 2013 &#8211; Script de aprovisionamiento de Machine Translation Service</title>
		<link>http://oscarmartin.org/powershell-2/sharepoint-2013-script-de-aprovisionamiento-de-machine-translation-service/</link>
					<comments>http://oscarmartin.org/powershell-2/sharepoint-2013-script-de-aprovisionamiento-de-machine-translation-service/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Mon, 02 Nov 2015 06:00:11 +0000</pubDate>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[SharePoint 2013]]></category>
		<category><![CDATA[Machine Translation Service]]></category>
		<category><![CDATA[SharePoint]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=3013</guid>

					<description><![CDATA[La aplicación de servicio Traducción Automática (o Machine Translation) es una nueva aplicación de servicio en SharePoint 2013 que proporciona la traducción automática de archivos y los sitios. Cuando la aplicación de servicio de traducción automática procesa una solicitud de traducción, la reenvía al servicio de Microsoft Translator , el cual realiza el trabajo real de traducción. Para crear este [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1911" src="http://oscarmartin.org/wp-content/uploads/2011/12/powershell.png" alt="powershell" width="125" height="125" />La aplicación de servicio<strong> Traducción Automática (o Machine Translation)</strong> es una nueva aplicación de servicio en <a  href="http://oscarmartin.org/category/sharepoint-2013/">SharePoint 2013</a> que proporciona la traducción automática de archivos y los sitios. Cuando la aplicación de servicio de traducción automática procesa una solicitud de traducción, la reenvía al servicio de Microsoft Translator , el cual realiza el trabajo real de traducción.</p>
<p>Para crear este servicio en <a  href="http://oscarmartin.org/category/sharepoint-2013/">SharePoint 2013</a>, aquí tenéis un script de <a  href="http://oscarmartin.org/category/powershell-2/">PowerShell</a> que os puede ser de utilidad, si estáis montando nuevos entornos:</p>
<pre>#####################################################################################
## Create Machine Translation Service ##
#####################################################################################
$AppPool = "SharePoint Web Services"

$MTSInst = "Machine Translation Service"
$MTSName = "Translation Service"
$MTSDB = "SP2013_MachineTranslation"
#####################################################################################
## Administrative Privileges Check ##
#####################################################################################
function Use-RunAs 
{    
    # Check if script is running as Adminstrator and if not use RunAs 
    # Use Check Switch to check if admin 
    param([Switch]$Check) 
	$IsAdmin = ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator") 
    if ($Check) { return $IsAdmin }     
    if ($MyInvocation.ScriptName -ne "") 
    {  
        if (-not $IsAdmin)  
        {  
            try 
            {  
                $arg = "-file $($MyInvocation.ScriptName)" 
                Start-Process "$psHome\powershell.exe" -Verb Runas -ArgumentList $arg -ErrorAction "stop"  
            } 
            catch 
            { 
                Write-Warning "Error - Failed to restart script with runas"  
                break
            } 
            exit # Quit this session of powershell 
        }  
    }  
    else
    {  
        Write-Warning "Error - Script must be saved as a .ps1 file first"  
        break  
    }  
} 
Use-RunAs
#####################################################################################
## Add Powershell SharePoint Snapin
Add-PSSnapin Microsoft.SharePoint.PowerShell -erroraction SilentlyContinue
#####################################################################################
try
{
	Write-Host "Creating Machine Translation Service and Proxy…"
	$AppPoolName = Get-SPServiceApplicationPool $AppPool
	Get-SPServiceInstance | ? {$_.GetType().Name -eq $MTSInst} | Start-SPServiceInstance
	$MTS = New-SPTranslationServiceApplication -Name $MTSName -ApplicationPool $AppPoolName -DatabaseName $MTSDB
	$MTSProxy = New-SPTranslationServiceApplicationProxy –Name "$MTSName Proxy" –ServiceApplication $MTS –DefaultProxyGroup
	Write-Host "Service created correctly"
} 
catch 
{ 
	Write-Output $_  
}</pre>
<p>&nbsp;</p>
<p>Referencias: <a  href="https://technet.microsoft.com/en-us/library/jj219712.aspx" target="_blank">New-SPTranslationServiceApplication</a> y <a  href="https://technet.microsoft.com/en-us/library/jj219763.aspx" target="_blank">New-SPTranslationServiceApplicationProxy</a></p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/powershell-2/sharepoint-2013-script-de-aprovisionamiento-de-machine-translation-service/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>SharePoint 2013 &#8211; Script de aprovisionamiento de Managed Metadata Service</title>
		<link>http://oscarmartin.org/powershell-2/sharepoint-2013-script-de-aprovisionamiento-de-managed-metadata-service/</link>
					<comments>http://oscarmartin.org/powershell-2/sharepoint-2013-script-de-aprovisionamiento-de-managed-metadata-service/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Fri, 30 Oct 2015 06:00:21 +0000</pubDate>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[SharePoint 2013]]></category>
		<category><![CDATA[Managed Metadata Service]]></category>
		<category><![CDATA[SharePoint]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=3008</guid>

					<description><![CDATA[La aplicación de servicio Metadatos Administrados (o Managed Metadata) es una colección jerárquica de términos administrados centralizados que se pueden definir y usar después como atributos para elementos de SharePoint Server 2013. El objetivo de este post no es explicar la funcionalidad de este aplicación de servicio, si quieres mas información puedes consultarla aqui. Para crear [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1911" src="http://oscarmartin.org/wp-content/uploads/2011/12/powershell.png" alt="powershell" width="125" height="125" />La aplicación de servicio <strong>Metadatos Administrados (o Managed Metadata)</strong> es una colección jerárquica de términos administrados centralizados que se pueden definir y usar después como atributos para elementos de <a  href="http://oscarmartin.org/category/sharepoint-2013/">SharePoint Server 2013</a>.</p>
<p>El objetivo de este post no es explicar la funcionalidad de este aplicación de servicio, si quieres mas información puedes consultarla <a  href="https://technet.microsoft.com/es-es/library/ee424402.aspx" target="_blank">aqui</a>.</p>
<p>Para crear este servicio en <a  href="http://oscarmartin.org/category/sharepoint-2013/">SharePoint 2013</a>, aquí tenéis un script de <a  href="http://oscarmartin.org/category/powershell-2/">PowerShell</a> que os puede ser de utilidad, si estáis montando nuevos entornos:</p>
<pre>#####################################################################################
## Create Managed Metadata Service (If Upgrading Use Existing Database Name) ##
#####################################################################################
# SQL Server name and apppool
$DB = "DES-SP2013"
$AppPool = "SharePoint Web Services"
# Service name and database
$MMSName = "Managed Metadata Service"
$MMSDB = "SP2013_Metadata"
#####################################################################################
## Administrative Privileges Check ##
#####################################################################################
function Use-RunAs 
{    
    # Check if script is running as Adminstrator and if not use RunAs 
    # Use Check Switch to check if admin 
    param([Switch]$Check) 
	$IsAdmin = ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator") 
    if ($Check) { return $IsAdmin }     
    if ($MyInvocation.ScriptName -ne "") 
    {  
        if (-not $IsAdmin)  
        {  
            try 
            {  
                 $arg = "-file $($MyInvocation.ScriptName)" 
                 Start-Process "$psHome\powershell.exe" -Verb Runas -ArgumentList $arg -ErrorAction "stop" 
            } 
            catch 
            { 
                Write-Warning "Error - Failed to restart script with runas"  
                break
            } 
            exit # Quit this session of powershell 
        }  
    }  
    else
    {  
        Write-Warning "Error - Script must be saved as a .ps1 file first"  
        break  
    }  
} 
Use-RunAs
#####################################################################################
## Add Powershell SharePoint Snapin
Add-PSSnapin Microsoft.SharePoint.PowerShell -erroraction SilentlyContinue
#####################################################################################
try
{
	Write-Host "Creating Managed Metadata Service and Proxy…"
	$mmsApp = New-SPMetadataServiceApplication -Name v –ApplicationPool $AppPool -DatabaseServer $DB -DatabaseName $MMSDB &gt; $null
	New-SPMetadataServiceApplicationProxy -Name "$MMSName Proxy" -DefaultProxyGroup -ServiceApplication $MMSName &gt; $null
	Get-SPServiceInstance | where-object {$_.TypeName -eq "Managed Metadata Web Service"} | Start-SPServiceInstance &gt; $null
	Write-Host "Service created correctly"
} 
catch 
{ 
	Write-Output $_  
}</pre>
<p>&nbsp;</p>
<p>Referencias: <a  href="https://technet.microsoft.com/en-us/library/ff607557.aspx" target="_blank">New-SPMetadataServiceApplication</a> y <a  href="https://technet.microsoft.com/en-us/library/ff608097.aspx" target="_blank">New-SPMetadataServiceApplicationProxy</a></p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/powershell-2/sharepoint-2013-script-de-aprovisionamiento-de-managed-metadata-service/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>SharePoint 2016 IT Preview</title>
		<link>http://oscarmartin.org/sharepoint-2016/sharepoint-2016-it-preview/</link>
					<comments>http://oscarmartin.org/sharepoint-2016/sharepoint-2016-it-preview/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Fri, 28 Aug 2015 10:13:48 +0000</pubDate>
				<category><![CDATA[SharePoint 2016]]></category>
		<category><![CDATA[Preview]]></category>
		<category><![CDATA[SharePoint]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2994</guid>

					<description><![CDATA[ Microsoft acaba de liberar el producto: SharePoint 2016 IT Preview. Nos encontramos frente a la primera versión de la nueva versión de la plataforma SharePoint. ¿Pero que es lo que nos traerá SharePoint 2016 de nuevo? Esto es lo que nos cuenta Bill Baer, senior technical product manager del equipo de SharePoint: SharePoint Server 2016 IT [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><a  href="http://oscarmartin.org/wp-content/uploads/2015/08/sp2016-ignite.jpg" class="thickbox no_icon" title="sp2016-ignite"><img class="alignleft size-full wp-image-2995" src="http://oscarmartin.org/wp-content/uploads/2015/08/sp2016-ignite.jpg" alt="sp2016-ignite" width="250" height="105" /></a> <strong>Microsoft</strong> acaba de liberar el producto: <strong>SharePoint 2016 IT Preview</strong>. Nos encontramos frente a la primera versión de la nueva versión de la plataforma SharePoint.</p>
<p>¿Pero que es lo que nos traerá SharePoint 2016 de nuevo? Esto es lo que nos cuenta <a  href="http://blogs.technet.com/b/wbaer/" target="_blank">Bill Baer</a>, senior technical product manager del equipo de SharePoint:</p>
<blockquote><p>SharePoint Server 2016 IT Preview ofrece un primer vistazo a un conjunto selecto de las nuevas inversiones en infraestructura que ayudará a definir el <strong>alcance</strong>, la <strong>escalabilidad</strong> y la <strong>fiabilidad</strong> de SharePoint Server 2016. Dado que estamos construyendo SharePoint Server 2016 en la misma plataforma básica para SharePoint Online, no se sorprenda de ver similitudes entre los dos. SharePoint Server 2016 abre <strong>nuevas experiencias de usuario intuitivas</strong>, pero familiar. Para profesionales de TI, ofrece un <strong>mejor rendimiento y escalabilidad</strong> con la gestión simplificada. Y para los desarrolladores, ofrece una oportunidad para c<strong>onstruir soluciones en la nube o bien en entornos on-premise</strong> (mayor integración con Azure).</p>
<p>Han mejorado las <strong>capacidades de aprovisionamiento</strong> para ayudar a departamentos de IT y a proveedores de servicios de hosting maximizando las inversiones existentes en infraestructura, explorando nuevos servicios, mejorando la gestión y dando una mayor disponibilidad a través de una arquitectura mejorada la instalación basada en papel.</p>
<p>El lanzador de la aplicación (App Launcher) proporciona una nueva experiencia de navegación donde todas tus aplicaciones son fácilmente disponibles en la barra de navegación superior. Rápidamente puede iniciar su aplicación, navegar por sitios y acceder a sus archivos personales.</p>
<p>Basado en nuestras inversiones en <strong>SharePoint Online y OneDrive para Empresas</strong>, SharePoint Server 2016 mejoran los controles para trabajar con archivos y contenido, simplificando la experiencia de de usuario para la creación de archivos, uso compartido y administración.</p>
<p>Ha cambiado el mundo de la colaboración, y archivos basados en texto se están siendo desplazados por medios de comunicación modernos: vídeos, audio y demás formatos. SharePoint Server 2016 proporciona soporte para <strong>subir archivos hasta 10GB</strong>.</p>
<p>Lo que estamos compartiendo hoy en día es sólo una fracción de lo que será en 2016 SharePoint!</p></blockquote>
<p>Aquí tenéis un vídeo para ir entrando en materia&#8230;</p>
<p><center><iframe src="https://www.youtube.com/embed/rV6PVzGs51I" width="432" height="243" frameborder="0" allowfullscreen="allowfullscreen"></iframe></center>&nbsp;</p>
<p>Podeis descargaros <strong>SharePoint 2016 IT Preview</strong> de la pagina de Microsoft: <a  href="https://www.microsoft.com/en-us/download/details.aspx?id=48712" target="_blank">https://www.microsoft.com/en-us/download/details.aspx?id=48712</a></p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/sharepoint-2016/sharepoint-2016-it-preview/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Windows 10 &#8211; Activar el Modo Dios</title>
		<link>http://oscarmartin.org/windows-10/windows-10-activar-el-modo-dios/</link>
					<comments>http://oscarmartin.org/windows-10/windows-10-activar-el-modo-dios/#comments</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Wed, 19 Aug 2015 08:20:10 +0000</pubDate>
				<category><![CDATA[Windows 10]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2983</guid>

					<description><![CDATA[ Con el Modo Dios, tendremos una serie de posibilidades de configuración y personalización de Windows 10 que se verán incrementadas. Pero ¿que es el Modo Dios? únicamente se trata de tener unificados en una pantalla todas las opciones de configuración y administración del sistemas operativo, a un simple click. Como activar el Modo Dios: 1) Iniciamos sesión [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><a  href="http://oscarmartin.org/wp-content/uploads/2015/08/Win10.png" class="thickbox no_icon" title="Win10"><img class="alignleft size-full wp-image-2984" src="http://oscarmartin.org/wp-content/uploads/2015/08/Win10.png" alt="Win10" width="250" height="60" /></a> Con el <strong>Modo Dios</strong>, tendremos una serie de posibilidades de configuración y personalización de <a  href="http://oscarmartin.org/category/windows-10/">Windows 10</a> que se verán incrementadas. Pero ¿que es el <strong>Modo Dios</strong>? únicamente se trata de tener unificados en una pantalla todas las opciones de configuración y administración del sistemas operativo, a un simple click.</p>
<p><strong>Como activar el Modo Dios:</strong></p>
<p>1) Iniciamos sesión en Windows 10 con la cuenta principal –privilegios de administrador–</p>
<p>&nbsp;</p>
<p>2) Sobre el escritorio pulsamos el botón derecho del ratón y seleccionamos <em>Nuevo</em> y <em>Carpeta</em></p>
<p>&nbsp;</p>
<p>3) Ponemos el siguiente nombre a la carpeta:</p>
<pre>Modo Dios.{ED7BA470-8E54-465E-825C-99712043E01C}</pre>
<p>&nbsp;</p>
<p>4) El icono de la carpeta creada cambiará automáticamente y también el nombre por el de Modo Dios.</p>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2015/08/Windows-10-Modo-Dios.png" class="thickbox no_icon" title="Windows-10-Modo-Dios"><img class="aligncenter wp-image-2987 " src="http://oscarmartin.org/wp-content/uploads/2015/08/Windows-10-Modo-Dios-300x227.png" alt="Windows-10-Modo-Dios" width="530" height="401" srcset="http://oscarmartin.org/wp-content/uploads/2015/08/Windows-10-Modo-Dios-300x227.png 300w, http://oscarmartin.org/wp-content/uploads/2015/08/Windows-10-Modo-Dios.png 798w" sizes="(max-width: 530px) 100vw, 530px" /></a></p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/windows-10/windows-10-activar-el-modo-dios/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Workflows en correos entrantes en Biblioteca de Documentos de SharePoint 2010</title>
		<link>http://oscarmartin.org/sharepoint-2010/workflows-en-correos-entrantes-en-biblioteca-de-documentos-de-sharepoint-2010/</link>
					<comments>http://oscarmartin.org/sharepoint-2010/workflows-en-correos-entrantes-en-biblioteca-de-documentos-de-sharepoint-2010/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Mon, 17 Mar 2014 07:00:01 +0000</pubDate>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[DeclarativeWorkflowAutoStartOnEmailEnabled]]></category>
		<category><![CDATA[Incoming Emails]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Workflows]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2938</guid>

					<description><![CDATA[ Una de las ultimas cosas con la que me he pegado, es saber por que los Workflows de una biblioteca de documentos, no se lanzaban, en el caso únicamente de añadir documentos a través de email. Para el que no lo sepa, SharePoint 2010 incluye la funcionalidad de poder añadir información a una biblioteca de documentos, a través [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1206" alt="sharepoint2010" src="http://oscarmartin.org/wp-content/uploads/2011/10/sharepoint2010.png" width="232" height="53" /> Una de las ultimas cosas con la que me he pegado, es saber por que los Workflows de una biblioteca de documentos, no se lanzaban, en el caso únicamente de añadir documentos a través de email.</p>
<p>Para el que no lo sepa, <a  href="http://oscarmartin.org/category/sharepoint-2010/">SharePoint 2010</a> incluye la funcionalidad de poder añadir información a una biblioteca de documentos, a través de email, es decir: si quieres añadir un archivo concreto a una librería y no puedes acceder al entorno de SharePoint, siempre tienes la posibilidad de enviar un email con dicho archivo, a una cuenta en concreto (esto debes haberlo configurado previamente).</p>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2014/03/declarativeworkflow.png" class="thickbox no_icon" title="declarativeworkflow"><img class="aligncenter" alt="declarativeworkflow" src="http://oscarmartin.org/wp-content/uploads/2014/03/declarativeworkflow.png" width="550" height="191" /></a></p>
<p>Volviendo al problema, tengo una biblioteca de documentos, donde hay un workflow personalizado, el cual se lanza cuando se añade un elemento. Esto funciona correctamente, si subes el documento a través del interface web o usando el explorador (mediante el protocolo WebDav)&#8230; pero cuando se suben a través de email, el workflow no se lanza!!!</p>
<p>Buceando en Internet, he visto que para habilitar esto, tiene que estar activa la propiedad «<strong>DeclarativeWorkflowAutoStartOnEmailEnabled</strong>«.</p>
<p>Como es habitual, esto puede hacerse usando bien STSADM o PowerShell, únicamente indicar, que los comandos a través de STSADM desde la versión de <a  href="http://oscarmartin.org/category/sharepoint-2007/">SharePoint 2007 </a>no denegrían utilizarse (esta marcado como deprecated), Microsoft te recomienda el uso de <a  href="http://oscarmartin.org/category/powershell-2/">PowerShell</a>.</p>
<p><strong>Procedimiento con STSADM:</strong></p>
<p>1) Primero debemos verificar si este parámetro se encuentra activo o no, para ello lanzamos el siguiente comando:</p>
<pre>stsadm -o getproperty -pn declarativeworkflowautostartonemailenabled</pre>
<p>2) Verificamos el valor de la propiedad «Value» y en el caso que sea «no» deberíamos activarlo</p>
<p style="text-align: center;"><a  href="http://oscarmartin.org/wp-content/uploads/2014/03/declarativeworkflow1.png" class="thickbox no_icon" title="declarativeworkflow1"><img class="aligncenter  wp-image-2940" alt="declarativeworkflow1" src="http://oscarmartin.org/wp-content/uploads/2014/03/declarativeworkflow1.png" width="533" height="263" srcset="http://oscarmartin.org/wp-content/uploads/2014/03/declarativeworkflow1.png 666w, http://oscarmartin.org/wp-content/uploads/2014/03/declarativeworkflow1-300x148.png 300w" sizes="(max-width: 533px) 100vw, 533px" /></a></p>
<p>3) Para activarlo ejecutamos el siguiente comando:</p>
<pre>stsadm -o setproperty -pn declarativeworkflowautostartonemailenabled -pv true</pre>
<p style="text-align: center;"><a  href="http://oscarmartin.org/wp-content/uploads/2014/03/declarativeworkflow2.png" class="thickbox no_icon" title="declarativeworkflow2"><img class="aligncenter  wp-image-2941" alt="declarativeworkflow2" src="http://oscarmartin.org/wp-content/uploads/2014/03/declarativeworkflow2.png" width="533" height="263" srcset="http://oscarmartin.org/wp-content/uploads/2014/03/declarativeworkflow2.png 666w, http://oscarmartin.org/wp-content/uploads/2014/03/declarativeworkflow2-300x148.png 300w" sizes="(max-width: 533px) 100vw, 533px" /></a></p>
<p><strong><strong>Procedimiento con </strong>PowerShell:</strong></p>
<p>1) Primero debemos verificar si este parámetro se encuentra activo o no, para ello lanzamos el siguiente comando:</p>
<pre>$spWebService = [Microsoft.SharePoint.Administration.SPWebService]::ContentService
$spWebService.DeclarativeWorkflowAutoStartOnEmailEnabled</pre>
<p>2) Verificamos el valor que devuelve y en el caso que sea «False» deberíamos activarlo<br />
3) Para activarlo ejecutamos el siguiente comando:</p>
<pre>$spWebService = [Microsoft.SharePoint.Administration.SPWebService]::ContentService
$spWebService.DeclarativeWorkflowAutoStartOnEmailEnabled = $true
$spWebService.Update()</pre>
<p>Puedes consultar mas información sobre la propiedad <strong>DeclarativeWorkflowAutostartOnEmailEnabled</strong> <a  href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.administration.spwebservice.declarativeworkflowautostartonemailenabled(v=office.14).aspx" target="_blank">aquí</a>.</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/sharepoint-2010/workflows-en-correos-entrantes-en-biblioteca-de-documentos-de-sharepoint-2010/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Shrink todas las bases de datos de un servidor de una manera rapida en SQL Server</title>
		<link>http://oscarmartin.org/sharepoint-2010/shrink-todas-las-bases-de-datos-de-un-servidor-de-una-manera-rapida-en-sql-server/</link>
					<comments>http://oscarmartin.org/sharepoint-2010/shrink-todas-las-bases-de-datos-de-un-servidor-de-una-manera-rapida-en-sql-server/#comments</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Thu, 13 Mar 2014 07:00:43 +0000</pubDate>
				<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Compactar]]></category>
		<category><![CDATA[Reducir log]]></category>
		<category><![CDATA[Shrink]]></category>
		<category><![CDATA[SQL]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2921</guid>

					<description><![CDATA[En mis maquinas virtuales de desarrollo de SharePoint 2010, muchas veces me encuentro con que, el tamaño de las bases de datos SQL Server de SharePoint se ha disparado y me estoy quedando sin espacio. Para reducir el tamaño de las bases de datos, normalmente lo que suelo hacer es un shrink (procedimiento almacenado para [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1212" alt="SqlServer1" src="http://oscarmartin.org/wp-content/uploads/2011/10/SqlServer1.jpg" width="159" height="131" />En mis maquinas virtuales de desarrollo de <a href="oscarmartin.org/category/sharepoint-2010/">SharePoint 2010</a>, muchas veces me encuentro con que, el tamaño de las bases de datos <a href="www.microsoft.com/sql‎" target="_blank">SQL Server</a> de SharePoint se ha disparado y me estoy quedando sin espacio.</p>
<p>Para reducir el tamaño de las bases de datos, normalmente lo que suelo hacer es un <a  href="http://technet.microsoft.com/es-es/library/ms190488.aspx" target="_blank">shrink</a> (procedimiento almacenado para reducir el tamaño de los archivos de datos y de registro de la base de datos especificada).</p>
<p>Aunque he leído varios posts en los que no se aconseja eliminar esta información en entornos SharePoint, aquí os dejo un articulo interesante de <a  href="http://www.microsoft.com" target="_blank">Microsoft</a> sobre el mantenimiento de bases de datos SharePoint 2010: <a  href="http://technet.microsoft.com/en-us/library/cc262731(v=office.14).aspx" target="_blank">Database maintenance for SharePoint 2010 Products</a>, donde comentan el correcto uso de este comando.</p>
<p>Volviendo a la cuestión que nos atañe&#8230; Para poder liberar de una forma cómoda y sencilla, espacio de todas la bases de datos de una instancia de SQL server, has de ejecutar esta sentencia SQL:</p>
<pre>declare @db varchar(255)
declare cur cursor for
select name from sys.databases where is_read_only=0 and state=0
  and name not in ('master','model','tempdb','msdb')
open cur
fetch cur into @db
while @@fetch_status=0
begin
  exec SP_dboption @db,'trunc. log on chkpt.','true' 
  DBCC shrinkdatabase (@db)
  fetch next from c into @db
end
close cur
deallocate cur</pre>
<p>&nbsp;</p>
<p>Este script lo que hace es lo siguiente: obtener una lista de todas las bases de datos (exceptuando las del sistema: master, model, tempdb y msdb), posteriormente establece la base de datos en ReadOnly y luego reducir el tamaño del archivo.</p>
<p>El resultado es el siguiente, donde te informa el tamaño inicial y el resultante:</p>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2014/03/shrink.png" class="thickbox no_icon" title="shrink"><img class="aligncenter size-full wp-image-2923" alt="shrink" src="http://oscarmartin.org/wp-content/uploads/2014/03/shrink.png" width="547" height="720" srcset="http://oscarmartin.org/wp-content/uploads/2014/03/shrink.png 547w, http://oscarmartin.org/wp-content/uploads/2014/03/shrink-227x300.png 227w" sizes="(max-width: 547px) 100vw, 547px" /></a></p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/sharepoint-2010/shrink-todas-las-bases-de-datos-de-un-servidor-de-una-manera-rapida-en-sql-server/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Script de PowerShell para rellenar una lista de SharePoint con elementos</title>
		<link>http://oscarmartin.org/sharepoint-2010/script-de-powershell-para-rellenar-un-lista-de-sharepoint-con-elementos/</link>
					<comments>http://oscarmartin.org/sharepoint-2010/script-de-powershell-para-rellenar-un-lista-de-sharepoint-con-elementos/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Tue, 11 Mar 2014 07:00:59 +0000</pubDate>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[SharePoint 2013]]></category>
		<category><![CDATA[List]]></category>
		<category><![CDATA[populate]]></category>
		<category><![CDATA[SharePoint]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2914</guid>

					<description><![CDATA[Este ejemplo es válido tanto para plataformas SharePoint 2010 como SharePoint 2013. Viene motivado por la necesidad de probar los limites del producto en cuanto a vistas de listas se refiere. Tanto la versión 2010 como 2013 tienen los mismos limites en cuanto a listas/bibliotecas se refiere en cuanto a: Numero de elementos por lista: [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1911" alt="powershell" src="http://oscarmartin.org/wp-content/uploads/2011/12/powershell.png" width="125" height="125" /> Este ejemplo es válido tanto para plataformas <a  href="http://oscarmartin.org/category/sharepoint-2010/">SharePoint 2010</a> como <a  href="http://oscarmartin.org/category/sharepoint-2013/">SharePoint 2013</a>. Viene motivado por la necesidad de probar los limites del producto en cuanto a vistas de listas se refiere.</p>
<p>Tanto la versión 2010 como 2013 tienen los mismos limites en cuanto a listas/bibliotecas se refiere en cuanto a:</p>
<ul>
<li>Numero de elementos por lista: 30.000.000</li>
<li>Limitación de vista de lista: 5000 elementos</li>
<li>Tamaño de filas de lista: 8.000 bytes por fila</li>
</ul>
<p>Viendo estas limitaciones, aquí tenéis un script de <a  href="http://oscarmartin.org/category/powershell-2/">PowerShell</a> con el que podréis añadir de forma automática miles de elementos en una lista:</p>
<pre>[System.Reflection.Assembly]::LoadWithPartialName(”Microsoft.SharePoint”)
function PopulateList
{
    param ($ListURL, $count)
    $mySite = new-object Microsoft.SharePoint.SPSite($ListURL)
    $myWeb = $mySite.OpenWeb()
    $mySrcList = $myWeb.GetList($ListURL)
    $itemCount=0
    write-host "Preparando la lista para la carga de datos: " $ListURL
    write-host "-----------------------------------------------------------------"
    while ($itemCount -lt $count)
    {
        $itemCount=$itemCount+1
        write-host "Creando elemento:" $itemCount
        $listItem = $mySrcList.Items.Add()
        $title="Titulo del elemento " + $itemCount
        $listItem["Title"]=$title
        $listItem.Update()
    }
    $myweb.Dispose()
    $mySite.Dispose()
}
#---------------------------------------------------------------
#Para usar este función solo tienes que llamarla pasando como parámetro la lista y el numero de elementos a crear
$sitecollection="http://intranet/sitio/Lists/listaPrueba/"
PopulateList $sitecollection 6000
#---------------------------------------------------------------</pre>
<p>&nbsp;</p>
<p>Hay que destacar, que la lista (como requisito) unicamente ha de tener el campo «Titulo» (campo por defecto en listas que hereden del tipo de contenido «Elemento»), único campo que rellena el script.</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/sharepoint-2010/script-de-powershell-para-rellenar-un-lista-de-sharepoint-con-elementos/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Ejecutar aplicacion de escritorio como Administrador</title>
		<link>http://oscarmartin.org/net/ejecutar-aplicacion-de-escritorio-como-administrador/</link>
					<comments>http://oscarmartin.org/net/ejecutar-aplicacion-de-escritorio-como-administrador/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Mon, 10 Mar 2014 07:00:08 +0000</pubDate>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Seguridad]]></category>
		<category><![CDATA[administrador]]></category>
		<category><![CDATA[Ejecutar como]]></category>
		<category><![CDATA[runas]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2892</guid>

					<description><![CDATA[ Una de las cosas que he necesitado hacer, y que nunca lo recuerdo, es tener la posibilidad de ejecutar directamente una aplicación como administrador. Esta claro, que siempre tienes la posibilidad de, utilizando el botón derecho del ratón, seccionar la opción de «Ejecutar como administrador» (como se aprecia en la siguiente imagen) Pero existe veces [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1177" alt="microsoft-logo" src="http://oscarmartin.org/wp-content/uploads/2011/10/microsoft-logo.jpg" width="113" height="90" /> Una de las cosas que he necesitado hacer, y que nunca lo recuerdo, es tener la posibilidad de ejecutar directamente una aplicación como administrador.</p>
<p>Esta claro, que siempre tienes la posibilidad de, utilizando el botón derecho del ratón, seccionar la opción de «Ejecutar como administrador» (como se aprecia en la siguiente imagen)</p>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2014/03/RunAs.png" class="thickbox no_icon" title="RunAs"><img class="aligncenter size-full wp-image-2905" alt="RunAs" src="http://oscarmartin.org/wp-content/uploads/2014/03/RunAs.png" width="300" height="153" /></a></p>
<p>Pero existe veces en los que quieres que tu aplicación, solo permita ejecutarse con permisos de Administrador de la maquina, lo que permite realizar ciertas acciones que de otra forma no podrías. En este caso lo que hay que hacer es añadir un <a  href="http://msdn.microsoft.com/en-us/library/1w45z383%28v=vs.110%29.aspx" target="_blank">archivo de manifiesto o (app.manifest)</a>, donde se especifican múltiples metadatos de la aplicación, entre los que destaca, la seguridad.</p>
<p>Para añadir un archivo app.manifest a nuestra aplicacion, solo tienes que:</p>
<ul>
<li>Aañadir desde Visual Studio, un nuevo archivo del tipo «Archivo de manifiesto de aplicación» como podemos apreciar:</li>
</ul>
<p style="text-align: center;"><a  href="http://oscarmartin.org/wp-content/uploads/2014/03/app-manifest.png" class="thickbox no_icon" title="app-manifest"><img class="aligncenter  wp-image-2906" alt="app-manifest" src="http://oscarmartin.org/wp-content/uploads/2014/03/app-manifest.png" width="568" height="377" srcset="http://oscarmartin.org/wp-content/uploads/2014/03/app-manifest.png 946w, http://oscarmartin.org/wp-content/uploads/2014/03/app-manifest-300x199.png 300w, http://oscarmartin.org/wp-content/uploads/2014/03/app-manifest-900x598.png 900w" sizes="(max-width: 568px) 100vw, 568px" /></a></p>
<ul>
<li>Una vez añadido, editamos el archivo y donde aparece:</li>
</ul>
<pre> <requestedExecutionLevel level="asInvoker" uiAccess="false" /></pre>
<p>lo modificamos para que sea:</p>
<pre> <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /></pre>
<p>&nbsp;</p>
<ul>
<li>Por ultimo, solo nos queda acceder a las propiedades del proyecto, y dentro de Aplicación, seleccionar el archivo de manifiesto que hemos añadido:</li>
</ul>
<p style="text-align: center;"><a  href="http://oscarmartin.org/wp-content/uploads/2014/03/app-manifest_2.png" class="thickbox no_icon" title="app-manifest_2"><img class="aligncenter  wp-image-2908" alt="app-manifest_2" src="http://oscarmartin.org/wp-content/uploads/2014/03/app-manifest_2.png" width="565" height="318" srcset="http://oscarmartin.org/wp-content/uploads/2014/03/app-manifest_2.png 882w, http://oscarmartin.org/wp-content/uploads/2014/03/app-manifest_2-300x169.png 300w" sizes="(max-width: 565px) 100vw, 565px" /></a></p>
<p>Así la próxima vez que ejecutes la aplicación, solicitará credenciales de Administrador.</p>
<p>Referencia: <a  href="http://msdn.microsoft.com/en-us/library/1w45z383%28v=vs.110%29.aspx" target="_blank">Assembly Manifest</a></p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/net/ejecutar-aplicacion-de-escritorio-como-administrador/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Configurar tu adaptador de red con un archivo .bat</title>
		<link>http://oscarmartin.org/windows-7/configurar-tu-adaptador-de-red-con-un-archivo-bat/</link>
					<comments>http://oscarmartin.org/windows-7/configurar-tu-adaptador-de-red-con-un-archivo-bat/#comments</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Fri, 07 Mar 2014 07:00:55 +0000</pubDate>
				<category><![CDATA[Windows 7]]></category>
		<category><![CDATA[Windows 8]]></category>
		<category><![CDATA[adaptador]]></category>
		<category><![CDATA[IPv4]]></category>
		<category><![CDATA[IPv6]]></category>
		<category><![CDATA[Microsoft - SharePoint]]></category>
		<category><![CDATA[red]]></category>
		<category><![CDATA[Script]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2893</guid>

					<description><![CDATA[  A partir de la versión de Windows 7, Microsoft cambió los parámetros del comando Netsh, con la inclusión del protocolo IPv6 en sus sistemas operativos. Si normalmente trabajas en múltiples clientes, con diferentes configuraciones de Red, te pasarás todo el día cambiando los parámetros de configuración de tu adaptador de red. Para poder automatizar [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-2483" alt="Windows8" src="http://oscarmartin.org/wp-content/uploads/2012/09/Windows8.jpg" width="186" height="38" />  A partir de la versión de <a  href="http://oscarmartin.org/category/windows-7/">Windows 7</a>, <a  href="http://www.microsoft.com" target="_blank">Microsoft</a> cambió los parámetros del comando <a  href="http://technet.microsoft.com/es-es/library/cc731521%28v=ws.10%29.aspx" target="_blank">Netsh</a>, con la inclusión del protocolo <a  href="http://es.wikipedia.org/wiki/IPv6" target="_blank">IPv6</a> en sus sistemas operativos.</p>
<p>Si normalmente trabajas en múltiples clientes, con diferentes configuraciones de Red, te pasarás todo el día cambiando los parámetros de configuración de tu adaptador de red. Para poder automatizar esto, os propongo el uso de este conjunto de comandos, que puede incluirse en un archivo <a  href="http://es.wikipedia.org/wiki/Archivo_batch" target="_blank">.bat (archivo de procesamiento por lotes)</a> para automatizar la labor de cambiar la configuración del adaptador.</p>
<p>Para ello solo tienes que crear un archivo de texto plano, con extensión .bat y añadir lo siguiente (dependiendo la opción que desees):</p>
<ul>
<li>Para especificar una Dirección IP, Mascara de subred, Puerta de enlace predeterminada y DNSs deberás escribir lo siguiente:</li>
</ul>
<pre>netsh interface ipv4 set address name=“Ethernet” source=static address=192.168.1.10 mask=255.255.255.0 gateway=192.168.1.1
netsh interface ipv4 add dnsserver name=”Ethernet” address=8.8.8.8 index=1
netsh interface ipv4 add dnsserver name=”Ethernet” address=8.8.4.4 index=2</pre>
<p>En este caso deberás modificar los siguientes parámetros:</p>
<ol>
<li>Parámetro <strong>name</strong>: “Ethernet” -&gt; Nombre de tu adaptador de red</li>
<li>Parámetro <strong>address</strong>: 192.168.1.10 -&gt; Dirección IP</li>
<li>Parámetro <strong>mask</strong>: 255.255.255.0 -&gt; Mascara de subred</li>
<li>Parámetro <strong>gateway</strong>: 192.168.1.10 -&gt; Puerta de enlace predeterminada</li>
<li>Parámetro <strong>address</strong>: 8.8.8.8 -&gt; Dirección IP del DNS primario</li>
<li>Parámetro <strong>address</strong>: 8.8.4.4 -&gt;Dirección IP del DNS secundario</li>
</ol>
<p>Este es el resultado de la ejecución del comando anterior:</p>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2014/03/ConfigIPv4.png" class="thickbox no_icon" title="ConfigIPv4"><img class="aligncenter size-full wp-image-2901" alt="ConfigIPv4" src="http://oscarmartin.org/wp-content/uploads/2014/03/ConfigIPv4.png" width="412" height="459" srcset="http://oscarmartin.org/wp-content/uploads/2014/03/ConfigIPv4.png 412w, http://oscarmartin.org/wp-content/uploads/2014/03/ConfigIPv4-269x300.png 269w" sizes="(max-width: 412px) 100vw, 412px" /></a></p>
<p>&nbsp;</p>
<ul>
<li>En el caso que, en vez de configurar manualmente el adaptador, prefieras que el DHCP te asigne una dirección de forma dinámica, deberás escribir esto:</li>
</ul>
<pre>netsh interface ipv4 set ADDRESS “Ethernet” source=DHCP
netsh interface ipv4 set DNS “Ethernet” source=DHCP</pre>
<p>En este caso solo deberás modificar el siguiente parámetro:</p>
<ol>
<li>Parámetro <strong>name</strong>: “Ethernet” -&gt; Nombre de tu adaptador de red</li>
</ol>
<p>Este es el resultado de la ejecución de estos dos comandos:</p>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2014/03/ConfigIPv4_2.png" class="thickbox no_icon" title="ConfigIPv4_2"><img class="aligncenter size-full wp-image-2903" alt="ConfigIPv4_2" src="http://oscarmartin.org/wp-content/uploads/2014/03/ConfigIPv4_2.png" width="413" height="460" srcset="http://oscarmartin.org/wp-content/uploads/2014/03/ConfigIPv4_2.png 413w, http://oscarmartin.org/wp-content/uploads/2014/03/ConfigIPv4_2-269x300.png 269w" sizes="(max-width: 413px) 100vw, 413px" /></a></p>
<p>&nbsp;</p>
<p><strong>IMPORTANTE: La ejecución de estos comandos, bien desde una consola del sistema, o bien desde un archivo .bat ha de ejecutarse como Administrador.</strong></p>
<p>Referencia: <a  href="http://technet.microsoft.com/es-es/library/cc731521%28v=ws.10%29.aspx" target="_blank">Netsh commands for Interface Internet Protocol version 4 (IPv4)</a></p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/windows-7/configurar-tu-adaptador-de-red-con-un-archivo-bat/feed/</wfw:commentRss>
			<slash:comments>12</slash:comments>
		
		
			</item>
		<item>
		<title>Visual Studio 2013 &#8211; We were unable to automatically populate your Team Foundation Service accounts</title>
		<link>http://oscarmartin.org/visual-studio-2013/visual-studio-2013-we-were-unable-to-automatically-populate-your-team-foundation-service-accounts/</link>
					<comments>http://oscarmartin.org/visual-studio-2013/visual-studio-2013-we-were-unable-to-automatically-populate-your-team-foundation-service-accounts/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Thu, 06 Mar 2014 07:00:05 +0000</pubDate>
				<category><![CDATA[TFS]]></category>
		<category><![CDATA[Visual Studio 2013]]></category>
		<category><![CDATA[team foundation server]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2884</guid>

					<description><![CDATA[Una cosa algo extraña me paso ayer con el Visual Studio 2013&#8230; nada mas abrirlo revivo el siguiente error: «We were unable to automatically populate your Team Foundation Service accounts» y posteriormente me indica: «Not valid for use in specified state«. He de indicar que tengo múltiples conexiones a diferentes servidores de TFS, y el problema [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-2886" alt="Visual Studio" src="http://oscarmartin.org/wp-content/uploads/2014/03/VS2013.png" width="230" height="88" />Una cosa algo extraña me paso ayer con el <a  href="http://oscarmartin.org/category/visual-studio-2013/">Visual Studio 2013</a>&#8230; nada mas abrirlo revivo el siguiente error: «<strong>We were unable to automatically populate your Team Foundation Service accounts</strong>» y posteriormente me indica: «<strong>Not valid for use in specified state</strong>«.</p>
<p>He de indicar que tengo múltiples conexiones a diferentes servidores de TFS, y el problema es que no podía conectar con ninguno de los citados servidores de TFS.</p>
<p>Después de perder mucho tiempo buscando una solución al problema, di con la solución al problema, es necesario acceder al registro de Windows (REGEDIT.exe) y eliminar la siguiente clave: &#8216;<strong><em>HKEY_CURRENT_USER\Software\Microsoft\VSCommon\12.0\ClientServices\TokenStorage</em></strong>&#8216;.</p>
<p>En la siguiente imagen se aprecia cual es la rama a borrar:</p>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2014/03/ErrorVS2013.png" class="thickbox no_icon" title="ErrorVS2013"><img class="aligncenter size-full wp-image-2887" alt="ErrorVS2013" src="http://oscarmartin.org/wp-content/uploads/2014/03/ErrorVS2013.png" width="261" height="281" /></a></p>
<p>&nbsp;</p>
<p>Referencia: <a  href="http://blogs.msdn.com/b/dstfs/archive/2014/01/10/vs2013-tfs-quot-key-not-valid-for-use-in-specified-state-quot-error.aspx" target="_blank">Blog de Trevor Hancock</a>.</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/visual-studio-2013/visual-studio-2013-we-were-unable-to-automatically-populate-your-team-foundation-service-accounts/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Error en el paso de implementación &#8216;Desinstalar aplicación para SharePoint&#8217;: No se puede conectar con el sitio de SharePoint.</title>
		<link>http://oscarmartin.org/visual-studio-2012/error-en-el-paso-de-implementacion-desinstalar-aplicacion-para-sharepoint-no-se-puede-conectar-con-el-sitio-de-sharepoint/</link>
					<comments>http://oscarmartin.org/visual-studio-2012/error-en-el-paso-de-implementacion-desinstalar-aplicacion-para-sharepoint-no-se-puede-conectar-con-el-sitio-de-sharepoint/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Mon, 03 Mar 2014 07:00:25 +0000</pubDate>
				<category><![CDATA[SharePoint 2013]]></category>
		<category><![CDATA[Visual Studio 2012]]></category>
		<category><![CDATA[Visual Studio 2013]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[site url]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2878</guid>

					<description><![CDATA[Antes de nada, indicar que este error: «Error en el paso de implementación &#8216;Desinstalar aplicación para SharePoint&#8217;: No se puede conectar con el sitio de SharePoint» o en inglés «Error occurred in deployment step &#8216;Uninstall app for SharePoint&#8217;: Cannot contact site at the specified URL» se produce cuando hemos desarrollado una solución y queremos implementarla [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-2359" alt="sharepoint2013" src="http://oscarmartin.org/wp-content/uploads/2012/08/sharepoint2013.jpg" width="228" height="69" /> Antes de nada, indicar que este error: «<strong>Error en el paso de implementación &#8216;Desinstalar aplicación para SharePoint&#8217;: No se puede conectar con el sitio de SharePoint</strong>» o en inglés «<strong>Error occurred in deployment step &#8216;Uninstall app for SharePoint&#8217;: Cannot contact site at the specified URL</strong>» se produce cuando hemos desarrollado una solución y queremos implementarla en <a  href="http://oscarmartin.org/category/sharepoint-2013/">SharePoint 2013/Office 365</a> desde el <a  href="http://oscarmartin.org/category/visual-studio-2012/">Visual Studio 2012</a>/2013 (en mi caso es una solución de una App para SharePoint 2013 auto-hospedada, que un compañero me ha pasado) .</p>
<p>El motivo de este error, puede producirse por varios motivos (básicamente es porque no tienes permisos en el sitio y base de datos), pero muchas veces se nos pasa por alto verificar una cosa tan simple, como que la propiedad «URL del sitio», que debe de tener la url de nuestra colección de sitio, creada con la plantilla de «Sitio del desarrollador».</p>
<p>Para verificar esto, en Visual Studio debemos abrir la ventana de propiedades del proyecto que utilizamos para empaquetar la solucion de SharePoint (normalemente puedes acceder a ella pulsando la tecla: F4) y ver si la propiedad «URL del sitio» esta correctamente rellena:</p>
<p style="text-align: center;"><a  href="http://oscarmartin.org/wp-content/uploads/2014/02/SiteUrlEmpty.png" class="thickbox no_icon" title="SiteUrlEmpty"><img class="aligncenter  wp-image-2879" alt="SiteUrlEmpty" src="http://oscarmartin.org/wp-content/uploads/2014/02/SiteUrlEmpty.png" width="544" height="337" srcset="http://oscarmartin.org/wp-content/uploads/2014/02/SiteUrlEmpty.png 906w, http://oscarmartin.org/wp-content/uploads/2014/02/SiteUrlEmpty-300x186.png 300w, http://oscarmartin.org/wp-content/uploads/2014/02/SiteUrlEmpty-900x558.png 900w" sizes="(max-width: 544px) 100vw, 544px" /></a></p>
<p>En caso que no sea así, introducir un valor correcto y volver a implementar la solución&#8230;</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/visual-studio-2012/error-en-el-paso-de-implementacion-desinstalar-aplicacion-para-sharepoint-no-se-puede-conectar-con-el-sitio-de-sharepoint/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Al menos uno de los tipos de campo no se ha instalado correctamente. Vaya a la página de configuración de la lista para eliminar estos campos.</title>
		<link>http://oscarmartin.org/sharepoint-2010/al-menos-uno-de-los-tipos-de-campo-no-se-ha-instalado-correctamente-vaya-a-la-pagina-de-configuracion-de-la-lista-para-eliminar-estos-campos/</link>
					<comments>http://oscarmartin.org/sharepoint-2010/al-menos-uno-de-los-tipos-de-campo-no-se-ha-instalado-correctamente-vaya-a-la-pagina-de-configuracion-de-la-lista-para-eliminar-estos-campos/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Thu, 27 Feb 2014 07:00:56 +0000</pubDate>
				<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Publicacion]]></category>
		<category><![CDATA[Relationships List]]></category>
		<category><![CDATA[SharePoint]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2851</guid>

					<description><![CDATA[Este es el mensaje de error que me muestra cuando intento acceder a una página de un sitio de publicación tras una migración de SharePoint 2007 a SharePoint 2010: «Al menos uno de los tipos de campo no se ha instalado correctamente. Vaya a la página de configuración de la lista para eliminar estos campos» o [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1206" alt="sharepoint2010" src="http://oscarmartin.org/wp-content/uploads/2011/10/sharepoint2010.png" width="232" height="53" />Este es el mensaje de error que me muestra cuando intento acceder a una página de un sitio de publicación tras una migración de <a  href="http://oscarmartin.org/category/sharepoint-2007/">SharePoint 2007</a> a <a  href="http://oscarmartin.org/category/sharepoint-2010/">SharePoint 2010</a>: «<strong>Al menos uno de los tipos de campo no se ha instalado correctamente. Vaya a la página de configuración de la lista para eliminar estos campos</strong>» o en ingles «<strong>One or more field types are not installed properly. Go to the list settings page to delete these fields</strong>«.</p>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2014/02/ErrorTiposCampoInstalados.png" class="thickbox no_icon" title="ErrorTiposCampoInstalados"><img class="aligncenter size-full wp-image-2853" alt="ErrorTiposCampoInstalados" src="http://oscarmartin.org/wp-content/uploads/2014/02/ErrorTiposCampoInstalados.png" width="592" height="282" srcset="http://oscarmartin.org/wp-content/uploads/2014/02/ErrorTiposCampoInstalados.png 592w, http://oscarmartin.org/wp-content/uploads/2014/02/ErrorTiposCampoInstalados-300x142.png 300w" sizes="(max-width: 592px) 100vw, 592px" /></a></p>
<p>Este problema se produce porque cuando se activa la característica de SharePoint «<strong>Server Publishing Infrastructure</strong>«, esta crea una lista interna (esta oculta) llamada «<strong>Relationships List</strong>«, donde se almacena información de las variaciones y la información de esta lista no es correcta o no se ha actualizado correctamente.</p>
<p>Para solucionarlo lo que hay que hacer, únicamente es borrar la información que hay en esta lista, para ello hay que realizar los siguientes pasos, entre los que destacan la ejecución de varios comandos de PowerShell:</p>
<ol>
<li>Acceder con el navegador web a la lista «<strong>Relationships List</strong>» y eliminar los elementos que haya en esta: (<b><a  href="http://intracepsa.cepsacorp.com/sitios/%3cid_sitio%3e/Relationships%20List/allitems.aspx">http://&lt;HostName&gt;/&lt;Site&gt;/Relationships%20List/allitems.aspx</a></b>)</li>
<li>Desactivar la característica «<strong>Infraestructura de publicación de SharePoint Server</strong>«, de la colección de sitio: <b>Disable-SPFeature –Identity <b>f6924d36-2fa8-4f0b-b16d-06b7250180fa</b> –url <a  href="http://intracepsa.cepsacorp.com/sitios/%3cid_sitio">http://&lt;HostName&gt;/&lt;Site&gt;</a></b></li>
<li>Activar la misma característica de Infraestructura: <b>Enable-SPFeature –Identity f6924d36-2fa8-4f0b-b16d-06b7250180fa –url <a  href="http://intracepsa.cepsacorp.com/sitios/%3cid_sitio">http://&lt;HostName&gt;/&lt;Site&gt;</a></b></li>
<li>Desactivar la característica de «<strong>Publicación de SharePoint Server</strong>» a nivel de sitio: <b>Disable-SPFeature –Identity 94c94ca6-b32f-4da9-a9e3-1f3d343d7ecb –url <a  href="http://intracepsa.cepsacorp.com/sitios/%3cid_sitio">http://&lt;HostName&gt;/&lt;Site&gt;</a></b></li>
<li>Activar característica de Publicación: <b>Enable-SPFeature –Identity 94c94ca6-b32f-4da9-a9e3-1f3d343d7ecb –url <a  href="http://intracepsa.cepsacorp.com/sitios/%3cid_sitio">http://&lt;HostName&gt;/&lt;Site&gt;</a></b></li>
</ol>
<p>Tras la realización de estos pasos, podrás acceder sin problemas a todas las paginas existentes en el sitio con este problema.</p>
<p>IMPORTANTE: Esta solución propuesta solo es valida para plataformas <a  href="http://oscarmartin.org/category/sharepoint-2010/">SharePoint 2010</a>.</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/sharepoint-2010/al-menos-uno-de-los-tipos-de-campo-no-se-ha-instalado-correctamente-vaya-a-la-pagina-de-configuracion-de-la-lista-para-eliminar-estos-campos/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Service Pack 1 para Office 2013 y SharePoint 2013</title>
		<link>http://oscarmartin.org/microsoft/service-pack-1-para-office-2013-y-sharepoint-2013/</link>
					<comments>http://oscarmartin.org/microsoft/service-pack-1-para-office-2013-y-sharepoint-2013/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Tue, 25 Feb 2014 21:01:44 +0000</pubDate>
				<category><![CDATA[Microsoft - SharePoint]]></category>
		<category><![CDATA[Seguridad]]></category>
		<category><![CDATA[SharePoint 2013]]></category>
		<category><![CDATA[OneDrive]]></category>
		<category><![CDATA[Service Pack 1]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[SP1]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2867</guid>

					<description><![CDATA[Hoy día 25 de Frebrero, Microsoft ha anunciado la salida del Service Pack 1 para Office 2013 y SharePoint 2013. Esta nueva versión del Service Pack 1, proporciona correcciones para mejorar: la estabilidad general, funcionalidad y seguridad en Office, SharePoint Server y productos relacionados. Entre las mejoras en la funcionalidad, destaca: Correcciones de compatibilidad para Windows 8.1 e [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-2359" alt="sharepoint2013" src="http://oscarmartin.org/wp-content/uploads/2012/08/sharepoint2013.jpg" width="228" height="69" />Hoy día 25 de Frebrero, <a  href="http://www.microsoft.com" target="_blank">Microsoft</a> ha anunciado la salida del <strong>Service Pack 1</strong> para Office 2013 y <a  href="http://oscarmartin.org/category/sharepoint-2013/">SharePoint 2013</a>.</p>
<p>Esta nueva versión del <strong>Service Pack 1</strong>, proporciona correcciones para mejorar: la estabilidad general, funcionalidad y seguridad en Office, SharePoint Server y productos relacionados. Entre las mejoras en la funcionalidad, destaca:</p>
<ul>
<li>Correcciones de compatibilidad para Windows 8.1 e Internet Explorer 11.</li>
<li>Mejor soporte para hardware moderno, como dispositivos de alto DPI y la precisión <a  href="http://windows.microsoft.com/en-us/windows-8/touchpad" target="_blank">la precisión del touchpad</a>.</li>
<li>Nuevas capacidades para A<i>pps </i><i>de Office</i> y APIs para desarrolladores :).</li>
<li>Power Map para Excel, una herramienta de visualización 3D para la cartografía, la exploración y la interacción con los datos geográficos y temporales en Excel (ya está disponible para clientes de Office 365 con  suscripción ProPlus).</li>
<li>Mejoras en la tecnología de virtualización <a  href="http://support.microsoft.com/gp/office-2013-click-to-run" target="_blank">Click-to-Run</a> que instala y actualiza aplicaciones de Office 365 de escritorio.</li>
<li>SkyDrive Pro es ahora <a  href="http://blog.onedrive.com/onedrive-for-everything-your-life/" target="_blank">OneDrive for Business</a> (únicamente ha habido un cambio de nombre del producto).</li>
</ul>
<p>Para mas información, puedes visitar los siguientes KBs para más información sobre las actualizaciones del  Service Pack 1 de los siguientes productos:</p>
<table border="1" cellspacing="0" cellpadding="2" align="center">
<tbody>
<tr>
<td valign="top" width="354"><b>Update</b></td>
<td valign="top" width="96"><b>KB Article</b></td>
</tr>
<tr>
<td valign="top" width="354">Office 2013 SP1. Covers these applications:</p>
<ul>
<li>Access</li>
</ul>
<ul>
<li>Excel</li>
</ul>
<ul>
<li>InfoPath</li>
</ul>
<ul>
<li>Lync</li>
</ul>
<ul>
<li>OneDrive for Business</li>
</ul>
<ul>
<li>OneNote</li>
</ul>
<ul>
<li>Outlook</li>
</ul>
<ul>
<li>PowerPoint</li>
</ul>
<ul>
<li>Publisher</li>
</ul>
<ul>
<li>Word</li>
</ul>
<p>&nbsp;</td>
<td valign="top" width="96"><a  href="http://support.microsoft.com/kb/2817430">2817430</a></td>
</tr>
<tr>
<td valign="top" width="354">Project 2013 SP1</td>
<td valign="top" width="96"><a  href="http://support.microsoft.com/kb/2817433">2817433</a></td>
</tr>
<tr>
<td valign="top" width="354">Visio 2013 SP1</td>
<td valign="top" width="96"><a  href="http://support.microsoft.com/kb/2817443">2817443</a></td>
</tr>
<tr>
<td valign="top" width="354">SharePoint Designer 2013 SP1</td>
<td valign="top" width="96"><a  href="http://support.microsoft.com/kb/2817441">2817441</a></td>
</tr>
<tr>
<td valign="top" width="354">SharePoint Server 2013 SP1</td>
<td valign="top" width="96"><a  href="http://support.microsoft.com/kb/2817429">2817429</a></td>
</tr>
<tr>
<td valign="top" width="354">Project Server 2013 SP1</td>
<td valign="top" width="96"><a  href="http://support.microsoft.com/kb/2817434">2817434</a></td>
</tr>
<tr>
<td valign="top" width="354">Office Web Apps Server 2013 SP1</td>
<td valign="top" width="96">​<a  href="http://support.microsoft.com/kb/2817431">2817431</a></td>
</tr>
<tr>
<td valign="top" width="354">All other desktop products and language packs</td>
<td valign="top" width="96"><a  href="http://support.microsoft.com/kb/2850036">2850036</a></td>
</tr>
<tr>
<td valign="top" width="354">All other server products and language packs</td>
<td valign="top" width="96"><a  href="http://support.microsoft.com/kb/2850035">2850035</a></td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
<p><strong>IMPORTANTE</strong>: Siempre es bueno probar cualquier Service Pack en un <span style="text-decoration: underline;">entorno no productivo</span>, para detectar y corregir posibles problemas, y así evitar males mayores.</p>
<p>Para mas información: <a  href="http://support.microsoft.com/kb/2817429" target="_blank">http://support.microsoft.com/kb/2817429</a></p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/microsoft/service-pack-1-para-office-2013-y-sharepoint-2013/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>«Configurar grupos para este sitio» en SharePoint 2010</title>
		<link>http://oscarmartin.org/sharepoint-2007/configurar-grupos-para-este-sitio-en-sharepoint-2010/</link>
					<comments>http://oscarmartin.org/sharepoint-2007/configurar-grupos-para-este-sitio-en-sharepoint-2010/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Mon, 24 Feb 2014 07:00:36 +0000</pubDate>
				<category><![CDATA[SharePoint 2007]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Permisos]]></category>
		<category><![CDATA[permsetup.aspx]]></category>
		<category><![CDATA[SharePoint]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2843</guid>

					<description><![CDATA[Una de las cosas que echo de menos de SharePoint 2007 en SharePoint 2010 es la pagina de «Configurar grupos para este sitio» o en inglés «Set up Groups for this site«, donde el usuario puede especificar quién puede tener acceso a un  sitio en concreto. Esta claro que he mejorado mucho la forma de gestionar [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1206" alt="sharepoint2010" src="http://oscarmartin.org/wp-content/uploads/2011/10/sharepoint2010.png" width="232" height="53" />Una de las cosas que echo de menos de <a  href="http://oscarmartin.org/category/sharepoint-2007/">SharePoint 2007</a> en <a  href="http://oscarmartin.org/category/sharepoint-2010/">SharePoint 2010</a> es la pagina de «<strong>Configurar grupos para este sitio</strong>» o en inglés «<strong>Set up Groups for this site</strong>«, donde el usuario puede especificar quién puede tener acceso a un  sitio en concreto. Esta claro que he mejorado mucho la forma de gestionar los grupos y usuarios, pero hecho en falta esta pagina (y sobre todo su funcionalidad)&#8230;</p>
<p>&nbsp;</p>
<p style="text-align: center;"><a  href="http://oscarmartin.org/wp-content/uploads/2014/02/ConfigurarGrupos.png" class="thickbox no_icon" title="ConfigurarGrupos"><img class="aligncenter  wp-image-2844" alt="ConfigurarGrupos" src="http://oscarmartin.org/wp-content/uploads/2014/02/ConfigurarGrupos.png" width="560" height="298" srcset="http://oscarmartin.org/wp-content/uploads/2014/02/ConfigurarGrupos.png 700w, http://oscarmartin.org/wp-content/uploads/2014/02/ConfigurarGrupos-300x159.png 300w" sizes="(max-width: 560px) 100vw, 560px" /></a></p>
<p>Por algún motivo, el equipo de SharePoint decidió que esta funcionalidad «Configurar grupos de este sitio» debía de estar oculta en el menú de Permisos del Sitio. Si que esta visible, cuando creas un Sitio nuevo (si lo creas con la opción de permisos únicos), la malo es que luego, no hay forma de ver los grupos asignados a cada perfil.</p>
<p>Si necesitas realizar cambios en la asignación de grupos y como esta funcionalidad sigue estando en SharePoint 2010, siempre es posible acceder a la pagina por url: <strong>/_layouts/permsetup.aspx</strong></p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/sharepoint-2007/configurar-grupos-para-este-sitio-en-sharepoint-2010/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ViewFormPagesLockdown para aumentar la seguridad en SharePoint 2010</title>
		<link>http://oscarmartin.org/seguridad/viewformpageslockdown-para-aumentar-la-seguridad-en-sharepoint-2010/</link>
					<comments>http://oscarmartin.org/seguridad/viewformpageslockdown-para-aumentar-la-seguridad-en-sharepoint-2010/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Thu, 20 Feb 2014 08:33:08 +0000</pubDate>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Seguridad]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[ViewFormPagesLockdown]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2827</guid>

					<description><![CDATA[ Ayudando a un amigo, vimos que en portales públicos en los que se utiliza SharePoint 2010, puedes tener una mala configuración que a nivel de seguridad, puede ser problemático. Cuando creas un portal publico (usando las características de Publicación) basado en SharePoint, has de configurar el acceso de usuarios, como anónimo, por lo que por defecto [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1206" alt="sharepoint2010" src="http://oscarmartin.org/wp-content/uploads/2011/10/sharepoint2010.png" width="232" height="53" /> Ayudando a un amigo, vimos que en portales públicos en los que se utiliza <a  href="http://oscarmartin.org/category/sharepoint-2010/">SharePoint 2010</a>, puedes tener una mala configuración que a nivel de seguridad, puede ser problemático.</p>
<p>Cuando creas un portal publico (usando las características de Publicación) basado en SharePoint, has de configurar el acceso de usuarios, como anónimo, por lo que por defecto permite que cualquier usuario acceda a los siguientes recursos:</p>
<ul>
<li>/_layouts/viewlsts.aspx</li>
<li>/Lists/[ListName]/AlItems.aspx</li>
</ul>
<p>Esto es un problema de seguridad, ya que estas dando una información muy importante a usuarios anónimos, que podrían usar en tu contra&#8230; pero no hay problema ya que SharePoint trae una característica oculta a nivel de Site, llamada <strong>ViewFormPagesLockdown</strong>, que deshabilita el acceso a estos recursos de forma anónima.</p>
<p>Para activar esta funcionalidad, hay que utilizar un par de comandos de <a  href="http://oscarmartin.org/category/powershell-2/">PowerShell</a>:</p>
<p>1) Obtenemos el GUID de la característica <strong>ViewFormPagesLockdown</strong>, la cual como he comentado esta oculta con el siguiente comando:</p>
<pre>Get-SPFeature | where { $_.DisplayName -eq "ViewFormPagesLockdown"}</pre>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2014/02/ViewFormPagesLockdown.png" class="thickbox no_icon" title="ViewFormPagesLockdown"><img class="aligncenter size-full wp-image-2831" alt="ViewFormPagesLockdown" src="http://oscarmartin.org/wp-content/uploads/2014/02/ViewFormPagesLockdown.png" width="669" height="181" srcset="http://oscarmartin.org/wp-content/uploads/2014/02/ViewFormPagesLockdown.png 669w, http://oscarmartin.org/wp-content/uploads/2014/02/ViewFormPagesLockdown-300x81.png 300w" sizes="(max-width: 669px) 100vw, 669px" /></a></p>
<p>2) Una vez tenemos el GUID o identificador, lo que hacemos es activarlo:</p>
<pre>Enable-SPFeature -url http://sharepoint -identity 7c637b23-06c4-4724-9a9a-7c175762c5c4 -confirm:$false</pre>
<p>Tras este cambio, los usuarios tendrán que autenticarse, para acceder a estos recursos.</p>
<p><span style="text-decoration: underline;">IMPORTANTE</span>: Puedes tener problemas si dentro de esta colección de sitio, tienes subsitios de tipo Blog, en los que los usuarios pueden realizar comentarios sobre post o similares&#8230; para solucionar este tipo de problema, en el blog de <a  href="http://www.sharepointblues.com/2010/12/22/blog-site-in-anonymous-use/" target="_blank">sharepointblues.com</a> te explican como se puede solucionar.</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/seguridad/viewformpageslockdown-para-aumentar-la-seguridad-en-sharepoint-2010/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Como lanzar un Workflow programaticamente en SharePoint</title>
		<link>http://oscarmartin.org/sharepoint-2010/como-lanzar-un-workflow-programaticamente-en-sharepoint/</link>
					<comments>http://oscarmartin.org/sharepoint-2010/como-lanzar-un-workflow-programaticamente-en-sharepoint/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Tue, 10 Dec 2013 16:51:35 +0000</pubDate>
				<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[SharePoint 2013]]></category>
		<category><![CDATA[Visual Studio 2010]]></category>
		<category><![CDATA[Visual Studio 2012]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Workflow]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2815</guid>

					<description><![CDATA[Tras un periodo de inactividad, vuelvo con un nuevo post&#8230; Esta vez se trata, de la necesidad de lanzar un nuevo Workflow a nivel de listas o biblioteca en todos los ítems, previamente creados. Si el Workflow se configura para que se lance a la creación o modificación del ítem, puede que haya muchos ítems, [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1206" title="sharepoint2010" alt="" src="http://oscarmartin.org/wp-content/uploads/2011/10/sharepoint2010.png" width="232" height="53" />Tras un periodo de inactividad, vuelvo con un nuevo post&#8230; Esta vez se trata, de la necesidad de lanzar un nuevo Workflow a nivel de listas o biblioteca en todos los ítems, previamente creados. Si el Workflow se configura para que se lance a la creación o modificación del ítem, puede que haya muchos ítems, que por antigüedad, no se modifiquen y no se lance el Workflow asociado.</p>
<p>Para realizar esto desde el API de SharePoint, la forma mas sencilla es la siguiente:</p>
<pre>static private void LanzarWorkflow()
{
  //definición de variables necesarias para la ejecución
  string SP_URL = "http://mi_sharepoint";
  string LIST_NAME = "Pages";
  //este es el GUID del BaseID del Workflow que queremos ejecutar
  Guid wfBaseId = new Guid("b81abdd8-faf4-4bed-86ca-a49d9cc9913e");
  //se ejecuta con privilegios elevados
  SPSecurity.RunWithElevatedPrivileges(delegate
  {
	try
	{
	  using (SPSite site = new SPSite(SP_URL))
	  {
		using (SPWeb web = site.OpenWeb())
		{
		  SPList list = web.Lists[LIST_NAME];
		  SPListItemCollection items = list.Items;
		  for (int i = 0; i &lt; items.Count; i++)
		  {
			web.AllowUnsafeUpdates = true;  
			//selecciona el item actual
			SPListItem item = items[i];
			Console.WriteLine(string.Format("[Item] Lanzando workflow para el item Id: {0} ", item.ID));
			//obtiene el objeto plantilla de WF asociado a la lista que queremos
			SPWorkflowAssociation associationTemplate = list.WorkflowAssociations.GetAssociationByBaseID(wfBaseId);
			//lanzar el WF a nivel del item
			web.Site.WorkflowManager.StartWorkflow(item, associationTemplate, associationTemplate.AssociationData);
			web.AllowUnsafeUpdates = false; //bloquea cambios por codigo
		  }
		}
	  }
	}
	catch (Exception ex) { Console.WriteLine(string.Format("***ERROR*** {0}", ex.ToString())); }
  });
}</pre>
<p>Los únicos parámetros que necesita esta función son:</p>
<ul>
<li><strong>SP_URL</strong>: Url del sitio de SharePoint donde se encuentra la lista que tiene asociada el Workflow que deseamos lanzar</li>
<li><strong>LIST_NAME</strong>: Nombre de la lista o biblioteca que tiene el Workflow</li>
<li><strong>wfBaseId</strong>: por ultimo el Base ID del Workflow (este GUID lo puedes ver, por ejemplo, desde SharePoint Designer, editando el archivo XML de configuración del propio Workflow)</li>
</ul>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/sharepoint-2010/como-lanzar-un-workflow-programaticamente-en-sharepoint/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Listado de permisos de usuarios de un sitio en SharePoint 2010</title>
		<link>http://oscarmartin.org/seguridad/2793/</link>
					<comments>http://oscarmartin.org/seguridad/2793/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Mon, 13 May 2013 07:00:38 +0000</pubDate>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Seguridad]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Permisos]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[usuarios]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2793</guid>

					<description><![CDATA[Una de las ultimas cosas que me han solicitado es recuperar todos los usuarios y sus permisos de una colección de sitio o subsitio en SharePoint 2010&#8230; La forma mas rápida que se me ocurrió es la de crear un script de PowerShell para ello. Como creo que os podría ser de utilidad, lo comparto con todos vosotros: function Get-UsersPermissions([string]$portalurl, [String[]]$excludewebs, [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><a  href="http://oscarmartin.org/wp-content/uploads/2011/12/powershell.png" class="thickbox no_icon" title="powershell"><img class="alignleft size-full wp-image-1911" alt="powershell" src="http://oscarmartin.org/wp-content/uploads/2011/12/powershell.png" width="125" height="125" /></a>Una de las ultimas cosas que me han solicitado es recuperar todos los usuarios y sus permisos de una colección de sitio o subsitio en <a  href="http://oscarmartin.org/category/sharepoint-2010/">SharePoint 2010</a>&#8230;</p>
<p>La forma mas rápida que se me ocurrió es la de crear un script de <a  href="http://oscarmartin.org/category/powershell-2/">PowerShell</a> para ello. Como creo que os podría ser de utilidad, lo comparto con todos vosotros:</p>
<pre>function Get-UsersPermissions([string]$portalurl, [String[]]$excludewebs, [string]$onesite) 
{ 
    [void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint") 
    $farm = [Microsoft.SharePoint.Administration.SPFarm]::Local 
	#añade la barra si no existe
    if (-not $portalurl.EndsWith("/")) { $portalurl = $portalurl + "/" } 
	#recorre todos los servicios de la granaja
    foreach ($spService in $farm.Services) 
	{ 
        if (!($spService -is [Microsoft.SharePoint.Administration.SPWebService])) { continue; } 
        foreach ($webApp in $spService.WebApplications) 
		{ 
            if ($webApp -is [Microsoft.SharePoint.Administration.SPAdministrationWebApplication]) { continue; } 
			$webAppUrl = $webApp.GetResponseUri('Default').AbsoluteUri 
			if ($webAppUrl.ToUpper() -eq $portalurl.ToUpper())
			{ 
				#recorre las colecciones que existen en la aplicacion web
				foreach ($site in $webApp.Sites) 
				{ 
					#si existe algun parametro 
					if (($onesite -ne $null) -and ($onesite -ne "")) 
					{ 
						#verifica si se ha incluido el parametro Web
						if ($site.Url.ToUpper() -ne $onesite.ToUpper()) { continue; } 
					} 
					#recorre los sitios que existen en la coleccion
					foreach ($web in $site.AllWebs) 
					{ 
						if ($excludewebs -contains $web.Url) 
						{ 
							Write-Host "Se ha excluido el sigioente sitio: " $web.Url 
							continue 
						} 
						foreach ($user in $web.SiteUsers)
						{ 
							#excluye al usuario: sharepoint\system 
							if ($user.Loginname.StartsWith("SHAREPOINT\")) { continue; } 
							#recupera la informacion a mostrar
							$data = @{ 
										"Coleccion" = $site.Url 
										"Url sitio" = $web.Url 
										"Nombre sitio" = $web.Title 
										"Usuario" = $user.Loginname 
										"Nombre" = $user.Name 
										"Roles" = $user.Roles 
										"Grupos" = $user.Groups 
							} 
							New-Object PSObject -Property $data 
						} 
						$web.Dispose(); 
					} 
					$site.Dispose() 
				} 
			} 
		} 
	} 
}

#---------------------------------------------------------------
#Opcion 1: Listas de los usuarios y sitio del la Aplicacion Web: http://intranet, pero solo muestra los usuarios y permisos del subsitio: http://intranet/sites/test
# Get-UsersPermissions -portalurl:http://intranet/  -onesite:http://intranet/sites/test | Out-GridView
#---------------------------------------------------------------
#Opcion 2: Listas de los usuarios y sitio del la Aplicacion Web http://intranet, pero excluye los 3 sitios: /gastos, /docs y /rrhh
# Get-UsersPermissions -portalurl:http://intranet/ -excludewebs:@('http://intranet/gastos','http://intranet/docs','http://intranet/rrhh')  | Out-GridView
#---------------------------------------------------------------
#Opcion 3: Lista todas los sitios y usuarios de la Aplicacion Web: http://intranet
# Get-UsersPermissions -portalurl:http://intranet/ | Out-GridView
#---------------------------------------------------------------</pre>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/seguridad/2793/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Excel Services &#8211; The workbook cannot be opened</title>
		<link>http://oscarmartin.org/sharepoint-2010/excel-services-the-workbook-cannot-be-opened/</link>
					<comments>http://oscarmartin.org/sharepoint-2010/excel-services-the-workbook-cannot-be-opened/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Mon, 22 Apr 2013 07:00:29 +0000</pubDate>
				<category><![CDATA[Excel Services]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[excel service]]></category>
		<category><![CDATA[Permisos]]></category>
		<category><![CDATA[users]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2764</guid>

					<description><![CDATA[Si estas intentado abrir un archivo Excel en SharePoint 2010, a través de Excel Services (partimos que el servicio ya esta instalado en la granja) y recibes este mensaje de error: «The workbook cannot be opened«, sin duda, se trata de un problema de permisos de base de datos. Para solucionar este problema, has de [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1206" alt="sharepoint2010" src="http://oscarmartin.org/wp-content/uploads/2011/10/sharepoint2010.png" width="232" height="53" />Si estas intentado abrir un archivo Excel en <a  href="http://oscarmartin.org/category/sharepoint-2010/">SharePoint 2010</a>, a través de Excel Services (partimos que el servicio ya esta instalado en la granja) y recibes este mensaje de error: «<strong>The workbook cannot be opened</strong>«, sin duda, se trata de un problema de permisos de base de datos.</p>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2013/04/excel_f1.jpg" class="thickbox no_icon" title="excel_f1"><img class="aligncenter size-full wp-image-2784" alt="excel_f1" src="http://oscarmartin.org/wp-content/uploads/2013/04/excel_f1.jpg" width="342" height="127" srcset="http://oscarmartin.org/wp-content/uploads/2013/04/excel_f1.jpg 342w, http://oscarmartin.org/wp-content/uploads/2013/04/excel_f1-300x111.jpg 300w" sizes="(max-width: 342px) 100vw, 342px" /></a></p>
<p>Para solucionar este problema, has de dar permiso de «<strong>db_owner</strong>» a la cuenta de servicio que estas usando para ejecutar Excel Services, siguiendo los siguientes pasos:</p>
<p>1) Abre el administrador de bases de datos «SQL Server Management Studio» y localiza la base de datos o bases de datos de contenido (puedes verlo en el Visor de Eventos de Windows «<strong>&lt;Content Database Name&gt;</strong>» y selecciona «<strong>Security</strong>«.</p>
<p>2) Dentro de esta sección, posicionate en «<strong>Users</strong>» y con el botón derecho, selecciona «<strong>New User &#8230;</strong>»</p>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2013/04/excel_f2.jpg" class="thickbox no_icon" title="excel_f2"><img class="aligncenter size-full wp-image-2785" alt="excel_f2" src="http://oscarmartin.org/wp-content/uploads/2013/04/excel_f2.jpg" width="382" height="305" srcset="http://oscarmartin.org/wp-content/uploads/2013/04/excel_f2.jpg 382w, http://oscarmartin.org/wp-content/uploads/2013/04/excel_f2-300x239.jpg 300w" sizes="(max-width: 382px) 100vw, 382px" /></a></p>
<p>3) Introducimos la cuenta de servicio que ejecuta el servicio de Excel Service (que puedes localizar en <strong>Security -&gt; Configure Service Accounts</strong>, seleccionado el pool del servicio) y le asignamos el rol de «<strong>db_owner</strong>«.</p>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2013/04/excel_f3.jpg" class="thickbox no_icon" title="excel_f3"><img class="aligncenter size-full wp-image-2786" alt="excel_f3" src="http://oscarmartin.org/wp-content/uploads/2013/04/excel_f3.jpg" width="620" height="556" srcset="http://oscarmartin.org/wp-content/uploads/2013/04/excel_f3.jpg 620w, http://oscarmartin.org/wp-content/uploads/2013/04/excel_f3-300x269.jpg 300w" sizes="(max-width: 620px) 100vw, 620px" /></a></p>
<p>&nbsp;</p>
<p>4) Guarda los cambios y verás como los archivos Excel ser abren correctamente en tu navegador web.</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/sharepoint-2010/excel-services-the-workbook-cannot-be-opened/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Excel Services &#8211; This workbook cannot be opened because it is not stored in an Excel Services Application trusted location</title>
		<link>http://oscarmartin.org/sharepoint-2010/excel-services-this-workbook-cannot-be-opened-because-it-is-not-stored-in-an-excel-services-application-trusted-location/</link>
					<comments>http://oscarmartin.org/sharepoint-2010/excel-services-this-workbook-cannot-be-opened-because-it-is-not-stored-in-an-excel-services-application-trusted-location/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Fri, 19 Apr 2013 07:00:57 +0000</pubDate>
				<category><![CDATA[Excel Services]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[excel service]]></category>
		<category><![CDATA[Trusted File Locations]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2762</guid>

					<description><![CDATA[Si estas intentado abrir un archivo Excel en SharePoint 2010, a través de Excel Services (partimos que el servicio ya esta instalado en la granja) y recibes este mensaje de error: «This workbook cannot be opened because it is not stored in an Excel Services Application trusted location» Para solucionar este problema, has de realizar [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1206" alt="sharepoint2010" src="http://oscarmartin.org/wp-content/uploads/2011/10/sharepoint2010.png" width="232" height="53" />Si estas intentado abrir un archivo Excel en <a  href="http://oscarmartin.org/category/sharepoint-2010/">SharePoint 2010</a>, a través de Excel Services (partimos que el servicio ya esta instalado en la granja) y recibes este mensaje de error: «<strong>This workbook cannot be opened because it is not stored in an Excel Services Application trusted location</strong>»</p>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2013/04/excel_e1.jpg" class="thickbox no_icon" title="excel_e1"><img class="aligncenter size-full wp-image-2776" alt="excel_e1" src="http://oscarmartin.org/wp-content/uploads/2013/04/excel_e1.jpg" width="342" height="193" srcset="http://oscarmartin.org/wp-content/uploads/2013/04/excel_e1.jpg 342w, http://oscarmartin.org/wp-content/uploads/2013/04/excel_e1-300x169.jpg 300w" sizes="(max-width: 342px) 100vw, 342px" /></a></p>
<p>Para solucionar este problema, has de realizar los siguientes pasos:</p>
<p>1) Abres la Administración Central y vas a: <strong>Manage service applications -&gt; <strong>Excel Services Application (o el nombre que le hayas dado al servicio) -&gt; Trusted File Locations.</strong></strong></p>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2013/04/excel_e2.jpg" class="thickbox no_icon" title="excel_e2"><img class="aligncenter size-full wp-image-2777" alt="excel_e2" src="http://oscarmartin.org/wp-content/uploads/2013/04/excel_e2.jpg" width="885" height="389" srcset="http://oscarmartin.org/wp-content/uploads/2013/04/excel_e2.jpg 885w, http://oscarmartin.org/wp-content/uploads/2013/04/excel_e2-300x131.jpg 300w" sizes="(max-width: 885px) 100vw, 885px" /></a></p>
<p>2) En esta pantalla, has de añadir la url del Web Application (como por ejemplo: http://intranet.com) y marcar la opción «<strong>Children trusted</strong>» para asegurarte que todas las bibliotecas de documentos que contengan archivos Excel, se abre correctamente en el navegador web.</p>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2013/04/excel_e3.jpg" class="thickbox no_icon" title="excel_e3"><img class="aligncenter size-full wp-image-2779" alt="excel_e3" src="http://oscarmartin.org/wp-content/uploads/2013/04/excel_e3.jpg" width="354" height="343" srcset="http://oscarmartin.org/wp-content/uploads/2013/04/excel_e3.jpg 354w, http://oscarmartin.org/wp-content/uploads/2013/04/excel_e3-300x290.jpg 300w" sizes="(max-width: 354px) 100vw, 354px" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/sharepoint-2010/excel-services-this-workbook-cannot-be-opened-because-it-is-not-stored-in-an-excel-services-application-trusted-location/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Excel Services &#8211; Unable to process the request. Wait a few minutes and try performing this operation again</title>
		<link>http://oscarmartin.org/sharepoint-2010/excel-services-unable-to-process-the-request-wait-a-few-minutes-and-try-performing-this-operation-again/</link>
					<comments>http://oscarmartin.org/sharepoint-2010/excel-services-unable-to-process-the-request-wait-a-few-minutes-and-try-performing-this-operation-again/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Wed, 10 Apr 2013 07:00:36 +0000</pubDate>
				<category><![CDATA[Excel Services]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[cliente]]></category>
		<category><![CDATA[excel service]]></category>
		<category><![CDATA[navegador web]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2766</guid>

					<description><![CDATA[Si estas intentado abrir un archivo Excel en SharePoint 2010, a través de Excel Services (partimos que el servicio ya esta instalado en la granja) y recibes este mensaje de error: «Unable to process the request. Wait a few minutes and try performing this operation again» puedes realizar varias acciones: 1) Puedes verificar que la conexión de [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1206" alt="sharepoint2010" src="http://oscarmartin.org/wp-content/uploads/2011/10/sharepoint2010.png" width="232" height="53" />Si estas intentado abrir un archivo Excel en <a  href="http://oscarmartin.org/category/sharepoint-2010/">SharePoint 2010</a>, a través de Excel Services (partimos que el servicio ya esta instalado en la granja) y recibes este mensaje de error: «<strong>Unable to process the request. Wait a few minutes and try performing this operation again</strong>» puedes realizar varias acciones:</p>
<p>1) Puedes verificar que la conexión de servicio con Excel Service está habilitada, para ello, en la Administración Central te vas a: <strong>Application Management -&gt; Manage Web Application -&gt; &lt;Nombre_Web_Application&gt; -&gt; Service connections</strong>.</p>
<p style="text-align: center;"><a  href="http://oscarmartin.org/wp-content/uploads/2013/04/excel_err1.png" class="thickbox no_icon" title="excel_err1"><img class="aligncenter size-full wp-image-2769" alt="excel_err1" src="http://oscarmartin.org/wp-content/uploads/2013/04/excel_err1.png" width="520" height="311" srcset="http://oscarmartin.org/wp-content/uploads/2013/04/excel_err1.png 520w, http://oscarmartin.org/wp-content/uploads/2013/04/excel_err1-300x179.png 300w" sizes="(max-width: 520px) 100vw, 520px" /></a></p>
<p>En este formulario, has de asegurarte de el servicio Excel (según lo hayas llamado cuando lo creaste), esta habilitado:</p>
<p>&nbsp;</p>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2013/04/excel_err2.png" class="thickbox no_icon" title="excel_err2"><img class="aligncenter size-full wp-image-2771" alt="excel_err2" src="http://oscarmartin.org/wp-content/uploads/2013/04/excel_err2.png" width="502" height="224" srcset="http://oscarmartin.org/wp-content/uploads/2013/04/excel_err2.png 502w, http://oscarmartin.org/wp-content/uploads/2013/04/excel_err2-300x133.png 300w" sizes="(max-width: 502px) 100vw, 502px" /></a></p>
<p>&nbsp;</p>
<p>Con estas verificaciones, debería funcionar correctamente el servicio y abrir tus archivos Excel en el navegador web.</p>
<p>2) Una segunda opción, es configurar la Coleccion de Sitio, para que, en vez de abrir el archivo Excel en el navegador web, te lo abra en el cliente de paquete Office. Para ello, te remito a <a  href="http://geeks.ms/blogs/mcortes/archive/2011/12/30/sharepoint-2010-forzar-la-apertura-de-documentos-en-cliente.aspx" target="_blank">este post de Mario Cortés</a> donde se detallan todos los pasos a seguir.</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/sharepoint-2010/excel-services-unable-to-process-the-request-wait-a-few-minutes-and-try-performing-this-operation-again/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Parando el servicio User Profile Synchronization</title>
		<link>http://oscarmartin.org/sharepoint-2010/parando-el-servicio-user-profile-synchronization/</link>
					<comments>http://oscarmartin.org/sharepoint-2010/parando-el-servicio-user-profile-synchronization/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Wed, 06 Mar 2013 07:00:40 +0000</pubDate>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[SharePoint 2013]]></category>
		<category><![CDATA[Get-SPServiceInstance]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Starting]]></category>
		<category><![CDATA[Stop-SPServiceInstance]]></category>
		<category><![CDATA[User Profile]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2749</guid>

					<description><![CDATA[Mas de una vez me ha pasado que el servicio «User Profile Synchronization» se ha quedado en estado «Starting«&#8230; Si en principio se ha seguido la guía de instalación y tiene los permisos adecuados, una de las soluciones podría ser la de parar dicho servicio y volverlo a arrancar&#8230; Para para el servicio «User Profile Synchronization» con PowerShell, es necesario realizar [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1206" alt="sharepoint2010" src="http://oscarmartin.org/wp-content/uploads/2011/10/sharepoint2010.png" width="232" height="53" />Mas de una vez me ha pasado que el servicio «<strong>User Profile Synchronization</strong>» se ha quedado en estado «<span style="color: #339966;"><strong>Starting</strong></span>«&#8230; Si en principio se ha seguido la guía de instalación y tiene los permisos adecuados, una de las soluciones podría ser la de parar dicho servicio y volverlo a arrancar&#8230;</p>
<p>Para para el servicio «<strong>User Profile Synchronization</strong>» con PowerShell, es necesario realizar los siguientes pasos:</p>
<p>1) Obtenemos el listado de todos los Servicios de la granja o entorno de SharePoint (incluyendo su GUID)</p>
<pre>Get-SPServiceInstance</pre>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2013/03/StopUserProfile01.png" class="thickbox no_icon" title="StopUserProfile01"><img class="aligncenter size-full wp-image-2750" alt="StopUserProfile01" src="http://oscarmartin.org/wp-content/uploads/2013/03/StopUserProfile01.png" width="667" height="450" srcset="http://oscarmartin.org/wp-content/uploads/2013/03/StopUserProfile01.png 667w, http://oscarmartin.org/wp-content/uploads/2013/03/StopUserProfile01-300x202.png 300w" sizes="(max-width: 667px) 100vw, 667px" /></a></p>
<p>2) Localizamos el GUID del servicio User Profile Synchronization y llamamos al comando Stop-SPServiceInstance:</p>
<pre>Stop-SPServiceInstance [GUID_User_Profile_Synchronization]</pre>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2013/03/StopUserProfile02.png" class="thickbox no_icon" title="StopUserProfile02"><img class="aligncenter size-full wp-image-2751" alt="StopUserProfile02" src="http://oscarmartin.org/wp-content/uploads/2013/03/StopUserProfile02.png" width="666" height="223" srcset="http://oscarmartin.org/wp-content/uploads/2013/03/StopUserProfile02.png 666w, http://oscarmartin.org/wp-content/uploads/2013/03/StopUserProfile02-300x100.png 300w" sizes="(max-width: 666px) 100vw, 666px" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/sharepoint-2010/parando-el-servicio-user-profile-synchronization/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Editar plantillas de SharePoint (archivos stp) de una forma cómoda y sencilla</title>
		<link>http://oscarmartin.org/sharepoint-2007/editar-plantillas-de-sharepoint-archivos-stp-de-una-forma-comoda-y-sencilla/</link>
					<comments>http://oscarmartin.org/sharepoint-2007/editar-plantillas-de-sharepoint-archivos-stp-de-una-forma-comoda-y-sencilla/#respond</comments>
		
		<dc:creator><![CDATA[OMG]]></dc:creator>
		<pubDate>Mon, 04 Mar 2013 07:39:42 +0000</pubDate>
				<category><![CDATA[SharePoint 2007]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[SharePoint 2013]]></category>
		<category><![CDATA[CAB]]></category>
		<category><![CDATA[iexpress]]></category>
		<category><![CDATA[makecab]]></category>
		<category><![CDATA[plantilla]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[STP]]></category>
		<category><![CDATA[template]]></category>
		<guid isPermaLink="false">http://oscarmartin.org/?p=2736</guid>

					<description><![CDATA[Es posible que te hayas visto en la necesidad de tener que editar plantillas de listas de SharePoint, para pasarlas a una granja diferente o similar&#8230; Una cosa que suele ser común es que en tu servidor de pruebas no tengas todos los Language Packs instalados, y cuando quieras usar dichas plantillas de lista, no puedas hacerlo. Para poder realizar esto, es necesitar [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1206" alt="sharepoint2010" src="http://oscarmartin.org/wp-content/uploads/2011/10/sharepoint2010.png" width="232" height="53" />Es posible que te hayas visto en la necesidad de tener que editar plantillas de listas de SharePoint, para pasarlas a una granja diferente o similar&#8230; Una cosa que suele ser común es que en tu servidor de pruebas no tengas todos los Language Packs instalados, y cuando quieras usar dichas plantillas de lista, no puedas hacerlo.</p>
<p>Para poder realizar esto, es necesitar editar el manifiesto de la planilla y ponerle el idioma, que tengas instalado en tu entorno. Para editar un archivo stp existen varios métodos que comento a continuación:</p>
<p>1) Existe una forma manual de poder editarlos, cuyos pasos serian:</p>
<ol>
<li>Copia y renombra la extensión del archivo .stp por .cab</li>
<li>Extrae el contenido del archivo (yo suelo usar WinRar)</li>
<li>Abre el archivo manifest.xml en un editor de texto (Visual Studio, Notepad, Dreamweaver, etc.)</li>
<li>Modifica el archivo manifest.xml</li>
<li>Usando la linea de comando,  sitúate en el directorio/carpeta que contenga el manifiesto ya editado</li>
<li>Teclea el siguiente comando, sustituyendo el &lt;nombre_plantilla&gt; por el deseado: <strong>makecab.exe manifest.xml &lt;nombre_plantilla&gt;.cab</strong></li>
<li>Esto generará un archivo .cab que deberemos renombrar de extensión a .stp</li>
<li>Ya tenemos listo la plantilla modificada, preparada para subir a SharePoint</li>
</ol>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2013/03/makecab01.png" class="thickbox no_icon" title="makecab01"><img class="aligncenter size-full wp-image-2738" alt="makecab01" src="http://oscarmartin.org/wp-content/uploads/2013/03/makecab01.png" width="665" height="328" srcset="http://oscarmartin.org/wp-content/uploads/2013/03/makecab01.png 665w, http://oscarmartin.org/wp-content/uploads/2013/03/makecab01-300x147.png 300w" sizes="(max-width: 665px) 100vw, 665px" /></a></p>
<p>2) Existe otra forma mucho mas sencilla, cuyos pasos serian:</p>
<ol>
<li>Copia y renombra la extensión del archivo .stp por .cab</li>
<li>Extrae el contenido del archivo (yo suelo usar WinRar)</li>
<li>Abre el archivo manifest.xml en un editor de texto (Visual Studio, Notepad, Dreamweaver, etc.)</li>
<li>Modifica el archivo manifest.xml</li>
<li>Buscar la aplicación<strong> iexpress.exe</strong> y ejecutala</li>
<li>Sigue los pasos del wizard</li>
<li>Esto generará un archivo .cab que deberemos renombrar de extensión a .stp</li>
<li>Ya tenemos listo la plantilla modificada, preparada para subir a SharePoint</li>
</ol>
<p><a  href="http://oscarmartin.org/wp-content/uploads/2013/03/IEXPRESS02.png" class="thickbox no_icon" title="IEXPRESS02"><img class="aligncenter size-full wp-image-2740" alt="IEXPRESS02" src="http://oscarmartin.org/wp-content/uploads/2013/03/IEXPRESS02.png" width="440" height="334" srcset="http://oscarmartin.org/wp-content/uploads/2013/03/IEXPRESS02.png 440w, http://oscarmartin.org/wp-content/uploads/2013/03/IEXPRESS02-300x227.png 300w" sizes="(max-width: 440px) 100vw, 440px" /></a></p>
<p>Este segundo paso es mucho mas cómodo si tu plantilla, contiene mas de un archivo (es decir a aparte del manifest.xml) ya que no tienes que generar ningún script para que te haga el empaquetado usando makecab.</p>
<p>Para más información sobre <strong>IExpress Wizard</strong>, puedes <a  href="http://technet.microsoft.com/en-us/library/dd346760.aspx" target="_blank">consultar esta pagina de Microsoft</a>.</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>http://oscarmartin.org/sharepoint-2007/editar-plantillas-de-sharepoint-archivos-stp-de-una-forma-comoda-y-sencilla/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
