Enum all quicklaunch and replace url

Nel codice seguente ho enumerato tutti gli oggetti SPWeb partendo da un site e per ciascuno ho fatto accesso all'oggetto Navigation per sostituire delle URL assolute provenienti da una migrazione, portandole in URL relative:

Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue

$Web = 'http://mywebapp'
$FindString = 'https://sourceurltofind' 
$ReplaceString = ''

$SPSite = Get-SPSite $Web
$SPWeb = Get-SPWeb $Web

$SPSite.AllWebs | ForEach-Object {
    write-host "Work with <"$_.Title"> <"$_.ServerRelativeUrl">"

    $_.Navigation.QuickLaunch | ForEach-Object {

        if($_.Url -match $FindString){
            $linkUrl = $_.Url
            Write-Host "Updating $linkUrl with new URL"
            $_.Url = $_.Url.Replace($FindString,$ReplaceString)
            $_.Update()
        }
        $_.Children | ForEach-Object {
            if($_.Url -match $FindString){
                $linkUrl = $_.Url
                Write-Host "Updating $linkUrl with new URL"
                $_.Url = $_.Url.Replace($FindString,$ReplaceString)
                $_.Update()
            }
        }
    }
    $_.Dispose()

}

Errore in fase di installazione: OfficeClassicSetup

Nel momento in cui si installa, come nel mio caso, SharePoint 2013 su una macchina virtuale per evitare di incorrere nell'errore OfficeClassicSetup è necessario incrementare il numero di processori ;)

 

Fonte:

https://bramdejager.wordpress.com/2014/04/23/error-installing-sharepoint-2013-sp1-bits-on-virtual-machine/

The Managed Metadata Service or Connection is currently not available. The Application Pool or Managed Metadata Web Service may not have been started. Please Contact your Administrator.

Verificare che il servizio è Started:

Andare in Application Management -> Manage services on server e verifica il servizio Managed Metadata Service Application è Stopped.

Dopo averlo avviato effettuare IISRESET

Enumerate all WebApplication and all Site Collection

Per recuperare dalla farm tutte le web application e per ciascun web application le proprie site collection guarda il seguente codice:

foreach (SPService svc in SPFarm.Local.Services)
{
     if (!(svc is SPWebService))
          continue;

     foreach (SPWebApplication webApp in ((SPWebService)svc).WebApplications)
     {         
          foreach (SPSite site in webApp.Sites)
          {

SharePoint 2013 e AppFabric caching

Prima di postare un pò di codice per l'utilizzo della Distributed Cache in SharePoint 2013 attraverso AppFabric segnalo due link molto importanti per la configurazione del servizio:

Configurazione di AppFabric in SharePoint 2013

Creazione della Cache personalizzata

My Mobile App

Ad oggi sono riuscito a mettere sul Windows Phone Store 3 App divertenti:

Quiz Nautica (>5K download) http://www.windowsphone.com/it-it/store/app/quiz-nautica/f4fcd446-4873-4d76-a61f-fbc6afc7bef0 

Trattoria Romana (new entry) http://www.windowsphone.com/it-it/store/app/trattoria-romana/17a6f47b-9637-4c0e-ab13-068472b2105d 

happinApp (new entry) http://www.windowsphone.com/it-it/store/app/happinapp/acc5f2e4-62c8-4758-9462-4d6616d21166 

 

Le App sono state realizzate con Visual Studio 2013 Ultimate Edition, Windows Phone 8.1 SDK

 

 

 

 

 

 

 

SharePoint Saturday Italy @Rome - Slide della sessione

Ciao a tutti, l'evento è stato fantastico, prima volta a fare gli speaker per me e per Matteo Lenzo (collega e amico di molte avventure), spero che il pubblico sia rimasto contento e soddisfatto.

Grazie mille agli sponsor in particolare Indra e Avanade per aver creduto in noi.

Su Slideshare ho aggiunto le slide utilizzate per la sessione su SharePoint Search. 

Alla fine posso solo dire:

Kid's stuff

SharePoint Saturday Italy @Rome - Agenda

Una piccola anticipazione della sessione SharePoint Search all'evento Sharepoint Saturday Italy @Rome con Matteo Lenzo il 25 gennaio.
AGENDA:
SharePoint and Search
SharePoint Search: Yesterday
- FAST Search
- High-value search solutions
- Advanced content processing pipeline
- Pipeline Extensibility
- Visual UI
SharePoint Search: Today
- Architecture
- What’s new?
- UI improvements
- Query APIs
Demo

SharePoint Saturday Italy @Rome

Iniziamo il 2014 carichissimi e con tante novità, il 25 gennaio terrò una sessione all'SPS Italy sul tema SharePoint Search, le informazioni sono tantissime e non sarà facile comprimerle in 1h di tempo, cercherò di postare tutto il possibile sul mio blog.

La sessione la terrò insieme a Matteo Lenzo, esperto SharePoint Search. 

Tutte le informazioni sono disponibili sul sito SharePoint Saturday, per acquistare gratuitamente il biglietto di ingresso è necessario andare qui

 

 

 

Search: indicizzazione colonne hidden

Dopo alcune prove arrivo alla conclusione che se creo delle colonne HIDDEN="TRUE" e poi queste colonne le aggiungo nelle Mapped Properties del Search Service Application queste non conterranno valori.

Per ovviare ho impostato gli attributi nel Field definition del Content Type relativi alla visualizzazione della colonna nei form di SharePoint a FALSE:

ShowInDisplayForm="FALSE" 

ShowInEditForm="FALSE" 

ShowInFileDlg="FALSE" 

ShowInNewForm="FALSE"

:)

Month List