Microsoft “attacca” il formato Adobe PDF con “Metro”

In occasione di WinHEC 2005 Microsoft ha annunciato che con Longhorn introdurrà Metro, quale sistema per la creazione, visualizzazione e stampa dei documenti.


Si tratta in pratica di un insieme di specifiche XML-based (il formato si chiama Metro Reach) per descrivere il layout dei documenti (per il rendering degli stessi in visualizzazione e stampa).


Metro prevederà un visualizzatore ed i file potranno essere creati con la logica print-to-file da qualsiasi applicazione Windows.


Con questa mossa Microsoft cercherà di “rimpiazzare” l’Adobe PDF come formato diffuso per l’interscambio documentale.


Per saperne di più e conoscere qualche dettaglio sulle future specifiche di Metro.

Lavorare con le Site Definitions di SharePoint

Anche oggi, da un cliente, in occasione di un progetto che prevede la personalizzazione di WSS (Windows SharePoint Services), mi sono imbattuto con le Site Definitions


In parole povere, si tratta di un sacco di file e cartelle che danno vita e trasferiscono specifiche impostazioni agli Elenchi e Raccolte di WSS.


Il tutto è solitamente collocato in:
C:\Program Files\Common Files\Microsoft Shared\web server extensions\60\TEMPLATE\1033
se si tratta della versione inglese di WSS/SPS o
C:\Program Files\Common Files\Microsoft Shared\web server extensions\60\TEMPLATE\1040
se si tratta di quella italiana.


Per ogni modello di Elenco o Raccolta c’è una specifica cartella sul file system del server, dentro alla quale sono collocate le pagine .aspx che rappresentano la gestione dei contenuti degli Elenchi e Raccolte create sulla base del relativo template. Oltre a questi file sono poi presenti alcuni file .xml di configurazione, per definire i campi presenti nei diversi form e le impostazioni generali delle liste.
Modificando ad esempio i file contenuti  nella cartella LISTS\EVENTS si andranno a modificare i comportamenti di tutte le liste Eventi (o Calendario) create in tutti i siti su WSS.


Per rimanere nell’esempio, una caratteristica poco gradita del modello Events è il fatto che all’aggiunta di un nuovo appuntamento è richiesto obbligatoriamente di specificare data/ora di inizio dell’appuntamento ma non la fine dello stesso… chi quindi utilizza questo oggetto per gestire la prenotazione di sale riunioni aziendali o altro all’interno della intranet, si trova con molti utenti che prenotano le sale indicando l’inizio della prenotazione… ma non la fine!


Una possibile soluzione è quella di lavorare sulla Site Definition di Events, indicando come required anche la compilazione del campo fine.


Le linee guida per lo sviluppo e il buon senso suggeriscono di evitare la modifica diretta di questi file, e di crearsi invece delle proprie Site Definitions personalizzate. Non è infatti sempre corretto intervenire con delle modifiche che si estenderanno su tutti i siti aziendali… ed inoltre, cosa accadrà di fronte all’installazione di un nuovo Service Pack? Che magari… guarda caso… decide proprio di aggiornare le Site Definitions standard?
Creandosene di proprie si potranno legare specifici comportamenti a particolari template personalizzati, da sfruttare soltanto nei siti dove effettivamente occorrono; ed infine non si correranno rischi di fronte ad un incontrollato Windows Update! 🙂


Per chi desidera approfondire, segnalo un post letto su di un blog che riassume (purtroppo solo parzialmente) la logica delle Site Definitions. Oltre a questo utile prospetto, segnalo da non perdere due articoli pubblicati su MSDN Online. Il primo è sui modelli, sui diversi tipi di file delle Site Definitions; il secondo approfondisce alcuni aspetti trattati nel primo articolo orientando alla corretta personalizzazione dei siti WSS ed SPS.

Scrivere WebParts riusabili

Mi è capitato di vedere un buon articolo su MSDN Online che suggerisce una serie di linee guida per sviluppare WebParts effettivamente riusabili.


Seguendo i suggerimenti si dovrebbero evitare (o limitare) le sorprese in occasione dell’installazione di qualche Service Pack o pensando alla futura versione di SharePoint (e relativa migrazione dei siti).


Magari può essere utile a qualcuno, pertanto lo segnalo. 🙂

PowerPoint è il braccio… tu sei la mente!

Proprio così, è così che si intitola il primo capitolo del libro che ho scritto su PowerPoint 2003, pubblicato per Mondadori, ormai credo alla terza ristampa.


Anche oggi -e non è certo la prima volta- mi è capitato di essere “vittima” della powerpointite, o non so come diavolo chiamarla…


In pratica ormai la gente in azienda è diventata  quasi analfabeta: i tempi sempre più veloci, le esigenze di sintesi e l’esasperata-ante necessità di comunicare, porta da anni all’utilizzo di slides… costringendo a volte timidi relatori di fronte a platee più o meno vaste, attrezzati di videoproiettore, puntatori laser (e chi più ne ha, più ne metta) e come rispondono collaboratori e manager? Via… giù di elenchi puntati!


La sana e vecchia abitudine di scrivere report e ralazioni è ormai un lusso per pochi. Ora si scrivono liste, elenchi… e poco altro.


Ma non fraintendetemi! Anche io uso PowerPoint. E certo non lo ritengo un cattivo strumento. Ma è uno strumento: appunto.


Nessun problema quindi se gli elenchi servono come traccia sintetica per un commento più ampio del relatore. Nessun problema se si tratta di un executive report, poi corredato di report più approfonditi, corredati di dati e grafici per chi è interessato a saperne di più.


Purtroppo PowerPoint non è sempre utilizzato a dovere. E negli Stati Uniti sono addirittura sorti dei movimenti d’opinione contro PowerPoint… Dove alcuni manager proibiscono l’uso di strumenti di presentazione ai propri collaboratori, costringendoli forzatamente a riflettere di più su quanto scrivono e a produrre report e relazioni prive di elenchi puntati. Forse tutto iniziò nel 2001, quando The New Yorker pubblicò un famoso articolo intitolato “Absolute PowerPoint”… [puoi leggere un interessante articolo]
Beh, non esageriamo! Non prendiamocela sempre con gli strumenti. Cominciamo a prendercela con chi li usa, e soprattutto li usa male!


Sul web mi sono imbattuto in un’azienda che realizza persino sfondi per presentazioni business stress


Ho letto di recente anche alcuni articoli, che suggeriscono come sfruttare al meglio PowerPoint. Ma anche in questo caso -così come in tanti altri- servirebbe un po’ più di formazione agli utenti e… una buona dose di buon senso! 🙂

Archiviazione ottica con SharePoint

Ormai si parla da tempo di ridurre la carta, introducendo in azienda soluzioni di archiviazione ottica in grado di digitalizzare anche i documenti cartacei, al fine della loro archiviazione digitale. In parte, soprattutto per la Pubblica Amministrazione, le direttive che spingono in questa direzione sono chiare ed esplicite.


SharePoint, con le sue Document Library, può senza dubbio candidarsi come possibile soluzione a basso costo (parlo anche dei semplici WSS) per costruire una soluzione di questo genere. E soluzione basso costo non significa certo soluzione limitata


Le ragioni per cui dico questo sono diverse:



  • SharePoint offre un supporto per l’archiviazione dei file in grado di offrire -a costo zero- funzionalità di versioning, approvazione, check-in/check-out e integrazione Office.
  • Il solido storage, basato su SQL Server, offre garanzie di scalabilità e affidabilità (quelle di SQL Server).
  • L’ambiente SharePoint, grazie alle Web Parts, offre uno spazio web-based, facilmente personalizzabile e rapidamente implementabile, dove esporre i contenuti informativi.
  • Le Raccolte documenti offrono una struttura dati (campi) velocemente espandibile, con la possibilità di arricchire il tutto con metadati finalizzati alla ricerca o alla categorizzazione dei documenti.
  • Le visualizzazioni delle Raccolte documenti offrono spazio alla rapida personalizzazione dei layout, fornendo risposte a chi necessita di filtrare, riordinare o raggruppare i contenuti delle Raccolte documenti.
  • I contenuti archiviati (documenti) sono ricercabili, sia nella versione SharePoint Portal Server (SPS) che in Windows SharePoint Services (WSS); nel primo caso grazie agli specifici e potenti servizi di indicizzazione e ricerca, nel secondo caso grazie alle funzionalità full-text serach di SQL Server.
  • I contenuti sono raggiungibili via browser ma anche via HTTP Webdav, offrendo spazi di integrazione anche con applicazioni non recentissime o comunque nate per l’integrazione con SharePoint (come Office 2003 o FrontPage 2003 e le sue FP2003 RPC).

Chi oggi si occupa di archiviazione ottica tende ad archiviare i documenti digitalizzati in formato Adobe PDF o TIFF.
In entrambi i casi SharePoint può indicizzare e rendere ricercabili i contenuti di questi file.


L’architeturra di ricerca di SharePoint infatti si basa sul sistema degli IFilters, così come ci ha abituati in generale il mondo dei servizi MS Search.


Per abilitare SharePoint all’indicizzazione dei file Adobe PDF è sufficiente installare l’IFilter per i PDF. Recentemente è stato rilasciata la versione 6 dell’IFilter di Adobe, versione compatibile con le attuali versioni di SharePoint (mentre in precedenza la versione 5 richiedeva una serie di operazioni manuali post-setup).


Mentre per abilitare l’indicizzazione dei documenti TIFF (disabilitata di default) è necessario modificare opportunamente una chiave di registro. SharePoint sfrutterà così un potente OCR in grado di eseguire il riconoscimento dei caratteri, rendendo ricercabili full-text anche le immagini TIFF (il sistema è anche in grado di riconoscere l’orientamento dell’immagine, ed eventualmente di ruotare il TIFF al fine di una sua corretta lettura).
Per abilitare l’indicizzazione/ricerca dei file .TIFF:



  • Aprire il Registro attraverso Regedit
  • Ricercare la chiave HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MSPaper
  • Inserire una nuova voce di tipo DWORD Value
  • Chiamare la nuova voce PerformOCR
  • Per abilitare il riconoscimento dei caratteri attribuire il valore 1 alla chiave (il valore 0 disabilita le funzionalità OCR).
  • Accedere ai Servizi della macchina e riavviare il servizio Microsoft Search.

In aternativa a tutte queste operazioni, se disponi del CD di SharePoint Portal Server 2003, puoi semplicemente fare un doppio clic sul file Tiff_ocr_on.reg contenuto nella cartella \Support\Tools (se ti fidi…).


Per maggiori dettagli leggi l’articolo della KB.

Internet Explorer 7 Beta1

Iniziano ad emergere alcuni dei dettagli della futura versione di Internet Explorer.


La Beta 1 di IE7 risolverà alcuni importanti limiti riscontrati nella gestione dei CSS e supporterà il “canale alpha” per gestire le trasparenze nelle immagini in formato .PNG.


Per conoscere altri dettagli dai un’occhiata al Blog di IE.

SharePoint in italiano o in inglese?

Una domanda tipica è legata alla scelte della versione con cui effettuare l’installazione di SharePoint (ed in particolare WSS).


In praticamente tutte le installazioni che ho incontrato nelle diverse realtà aziendali (italiane) incontrate ho visto installata la versione italiana.
La scelta è sempre legata alla comodità di trovarsi già pronta un’interfaccia in italiano per chi dovrà gestire i contenuti dei siti WSS o che in generale dovrà interagire con gli strumenti (Web designer e Contributors), pensando ad utenti non particolarmente skillati tecnicamente e con scarsa confidenza con l’inglese delle interfacce.


Ma va ricordato un elemento importante, a favore della versione inglese, cioè quello della maggiore facilità di reperimento di webparts e componenti sviluppati (spesso gratuitamente) dalla comunità mondiale degli sviluppatori SharePoint, funzionalità realizzate e testate sulla versione inglese di WSS e spesso incompatibili con quella italiana.


Adottare la versione italiana potrebbe dunque significare rinunciare all’importante opportunità di usufruire gratis o quasi di componenti per SharePoint. Oltre naturalmente a mettere in difficoltà lo sviluppatore di fronte a nomi di oggetti e percorsi tradotti in italiano, a differenza di quanto presentato da documentazione ed SDK.


Un problema reale dunque… come affrontarlo?


Il mio suggerimento è quello di installare sempre la versione inglese di WSS 2003.
Ma come risolvere il problema dell’interfaccia per gli utenti meno skillati?


Facile: esiste un apposito Language Pack per Windows SharePoint Services 2003, che non è altro che una raccolta di modelli di sito WSS (in italiano) utilizzabili per generare i siti SharePoint anche se l’architettura è in lingua inglese.


Si parte quindi dall’installazione di WSS in inglese, quindi prima di “estendere” a SharePoint qualsiasi Virtual Server della macchina si deve installare il Language Pack italiano.
Dopo aver installato il Language Pack, si procede all’estensione del Virtual Server a SharePoint, e durante l’operazione verrà chiesta anche la lingua (inglese o italiana) con sui generare il root site.


E il gioco è fatto! 🙂

WSS Service Pack 2 in arrivo…

Il Service Pack 2 di Windows SharePoint Services 2003 (WSS) è in beta, ed è parte di Windows Server 2003 R2.


L’atteso aggiornamento per WSS si preoccuperà di:



  • Supportare i virtual server “IP-bound“, ossia supererà uno degli attuali limiti nella configurazione di IP statici per virtual server descitto nell’articolo della KB.

  • Supportare diverse configurazioni avanzate per le Extranet, superando l’attuale limite che impone l’uso di URL assoluti per le pagine web ed i link contenuti negli e-mail. Tra le nuove configurazioni possibili, anche SSL Termination, Host Header Modification e Port Translation: tutte possibilità utili a superare gli attuali limiti incontrati in scenari di Extranet complesse.

  • Abilitare come predefinita dell’autenticazione Kerberos.

  • Garantire piena compatibilità con ASP.NET 2.0 (Whibdey), con la possibilità di far girare su WSS le nuove webparts create con ASP.NET 2.0.

  • Supportare le nuove edizioni Windows x64, per sfruttare a pieno IIS in modalità a 64 bit.

Per maggiori dettagli leggi il Whitepaper.


Insomma, niente male per un service pack… chiara finestra verso la prossima versione di SharePoint (2006).

Abilitare le ricerche booleane su siti WSS

Per attivare le ricerche booleane su WSS (Windows SharePoint Services 2003), che va ricordato sfrutta le funzionalità full-text search di SQL Server 2000, occorre procedere ad alcune modifiche delle stored-procedure contenute nel DB di WSS.
Naturalmente queste istruzioni non sono applicabili a scenari di WSS con DB su MSDE (oWMSDE), dove le funzionalità di full-text serach non sono disponibili.



  • Attraverso Enterprise Manager, apri il DB e accedi al container delle stored-procedure

  • Per abilitare la ricerca booleana sulle Raccolte documenti, apri la SP “proc_FetchDocSearchResults

  • per sicurezza fatti una copia di backup della SP (anche con un semplice copia incolla delle istruzioni su un file .txt)

  • Fai clic con il pulsante di destra del mouse sulla SP e scegli Properties

  • Ricerca la stringa “SET NOCOUNT ON“, e inserisci prima di questa riga la seguente istruzione:


    • DECLARE @CustSearchTerm nvarchar(255)
      SET @CustSearchTerm = ‘”‘ + @SearchTerm + ‘”‘

  • Cerca la stringa “FreeTextTable“e sostituiscila con “ContainsTable

  • Sulla stessa riga, sostituisci la variabile “@SearchTerm” con “@CustSearchTerm

  • Conferma il tutto (Apply e OK).

  • Per abilitare la ricerca booleana sulle Liste (Elenchi), apri la SP “proc_FetchListItemSearchResults

  • Fatti la solita copia di backup (non si sa mai 🙂

  • Fai clic con il pulsante di destra del mouse sulla SP e scegli Properties

  • Ricerca la stringa “@SearchTerm” con “@CustSearchTerm” (sono presenti tre occorrenze)

  • Conferma il tutto (Apply e OK).

  • Se il contenuto dei tuoi siti WSS è distribuito su più database, ripeti la stessa procedura su ciascun DB

  • Chiudi Enterprise Manager

  • Esegui IISRESET per riavviare i servizi web.

Da questo momento in poi le funzionalità di ricerca dei siti WSS saranno in grado di supportare gli operatori booleani AND/OR (non altri).