archivi mensili: Giugno 2011

Lasciate brillanti esempi piombo il modo per adozione crescente di SharePoint

Mio primo post di blog BrightStarr "puro" è stato pubblicato oggi.  Ecco un teaser:

C'è stato un sacco di conversazione su Internets di ritardo sul tema dell'adozione di SharePoint e soprattutto la mancanza della stessa. Nessuno vuole andare a tutti i problemi di progettazione di un'infrastruttura di fattoria e sicurezza, partecipazione a seminari, mettendo insieme un aspetto sgargianti, lavoro fuori un'architettura di informazioni solida roccia che può sopportare le vicissitudini della società re-org e, infine,, un pieno di fanfara rollout solo per scoprire tre mesi post attivazione che meno di 50% i dipendenti della società utilizzano SharePoint e la maggior parte di loro lo utilizzano per sostituire i vecchi file server di rete ("la s:\ in auto").

Nessun proiettile d'argento (o unico blog post) sta per risolvere quel problema. Tuttavia, ci sono molte cose che potete fare per ridurre il rischio di un anemico SharePoint portal. Una di queste tecniche è il "modello di esempio Shining."

Piacerebbe conoscere altre strategie di adozione di SharePoint che si cura di condividere.  Se Condividi, si prega di lasciare come un commento sul blog BrightStarr.

Leggi tutto qui: http://www.brightstarr.com/US/Pages/blog-view.aspx?BlogID=52

</fine>

Iscriviti al mio blog.

Seguimi su Twitter a http://www.twitter.com/pagalvin

"Accesso negato” per default. aspx su un SharePoint 2010 Sito sub

Uno dei miei clienti è andato in diretta con loro SharePoint 2010 ambiente di oggi.  Abbiamo scoperto che un certo gruppo di utenti non poteva accedere loro home page predefinita.  SharePoint ha risposto con il solito "segno in con un altro utente" e di "Accesso negato" o "richiesta di accesso" risposta. 

Quando abbiamo usato la funzione "Check Access" nifty è confermato che gli utenti finali davvero ha avuto accesso.  Ancora, non riusciva a pagina.

Ho seguito un sacco di strade alle varie morti estremità fino a quando ho deciso di confrontare le web part nella pagina rotta contro una pagina di lavoro simili.  L'ho fatto mettendo la pagina in modalità di manutenzione con l'aggiunta di"?contenuto = 1 "alla pagina. Così, sembrava come "http://server/subsite/subsite/default.aspx?contenuto = 1 ". 

Questo mi ha mostrato due web parti denominati "Errore" con una descrizione come "Errore" nella pagina rotta.  Non ho pensato di prendere un berretto di schermo al momento.

Ho tolto loro, e che ha risolto il problema.

Ho visto una domanda come questa venire fino sul forum in passato e sono stato estremamente scettico su insistenza del manifesto che aveva sicurezza impostato correttamente.  Ho * conoscere * ho avuto protezione impostata fino a destra sorriso, sorridere  La prossima volta, Sarò più aperta e meno scettico.

</fine>

Iscriviti al mio blog.

Seguimi su Twitter a http://www.twitter.com/pagalvin

Campioni di XSLT e jQuery

Ho fatto un sacco di XSLT e jQuery e ho pensato di che condividere alcuni frammenti che altri possono trovare utili in futuro.

Esempio 1: Emettono semplice JavaScript / jQuery in XSLT:

<xsl:partita modello = "qualcosa" XML:Space = "preserve">

  <!– Vuoto il campo nascosto filtri amichevole di query –>
  <tipo di script = "text/javascript">
    $(documento).pronto(funzione(){
      $("#QueryFriendlyFilters").Val("vuoto");
    });
  </script di>

</xsl:modello>

Quel ' emette alcuni JavaScript che attende la pagina alla fine del caricamento (causa della $(documento).pronto(…)) e quindi imposta il valore di un campo nascosto denominato QueryFriendlyFilters per il valore letterale "Svuota".

Esempio 2: Uso <xsl:Se> per controllare "maggiore di",  "meno di", ecc.

<xsl:partita modello = "qualcosa" XML:Space = "preserve">

  <div id = "fdcAllFilters">
 
    <xsl:Se test="@Count>0">
      <span class = "fdcFilterLabel">Filtri correnti:</arco>
    </xsl:Se>

    <!– più roba succede qui. –>

</xsl:modello>

Questo frammento di codice consente di verificare se un attributo denominato "Contare" dell'elemento "qualcosa" è maggiore di zero.  il XML dietro questo sarebbe qualcosa come:”

<qualcosa Count = "5" />

Esempio 3: Scorrere tutti gli elementi, inframmezzando chiamate jQuery.

<!– Scorrere tutti i filtri e visualizzare la corretta  link. –>
<xsl:for each selezionare = "Benutzerfilter">

  <una classe = "FilterHref" href = "javascript:mySubmitPage('RemoveUserFilter','{@ ID}’)">[X]</un>

  <span class = "fdcFilterLabel"><xsl:valore di select="@FilterValue"/></arco>

  <tipo di script = "text/javascript">

    $(documento).pronto(funzione(){
        <xsl:Testo><![CDATA[$("#QueryFriendlyFilters").Val( ($("#QueryFriendlyFilters").Val() + " ]]></xsl:Testo>\"<xsl:valore di select="@FilterValue"/>\"<xsl:Testo><![CDATA["));]]></xsl:Testo>
    });

  </script di>

</xsl:for each>

Questo frammento di codice è il più complesso e ci possono essere più facili modi per farlo.

il XML dietro questo assomiglia all'incirca a questo:

<UserFilter ID = "123" FilterValue = "xyzzy" />

Scorrimento di questo frammento <UserFilter> nodi. 

In primo luogo emette un ancoraggio etichetta che quando si fa clic richiama una funzione JavaScript che è già nella pagina, "mySubmitPage" e passa il valore di un attributo <UserFilter> nodo denominato "ID". 

Emette poi qualche jQuery che attende la pagina caricare.  Quel jQuery aggiorna un campo nascosto di nome "QueryFriendlyFilters", aggiungendo il valore dell'attributo FilterValue.  Nota tutti il pazzo <xsl:Testo> e <![CDATA[ … ]]> roba.

Questo è tutto, speranza che aiuta!

</fine>

Iscriviti al mio blog.

Seguimi su Twitter a http://www.twitter.com/pagalvin