archivi mensili: Febbraio 2011

Cambiando sito gruppi di colonne in SharePoint Designer 2010

Ho creato una sfilza di colonne del sito utilizzando SharePoint Designer 2010 Questa mattina e si rese conto che avevo dato loro tutto il gruppo sbagliato.  Era imbarazzante difficile da capire.  Non sapevo dove fare clic...

image

Continuavo a voler fare doppio clic sulla riga stessa o fare clic sul pulsante impostazioni di colonna nella barra multifunzione.

Come si scopre, la risposta corretta (o almeno una risposta corretta) è a singolo clic sul gruppo stesso.  Attendere un momento e poi vi permetterà di inserire un valore, come illustrato:

image

Abbastanza facile una volta che sai cosa fare, ma esso mi sfuggiva per un po '.

</fine>

Iscriviti al mio blog.

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

Modificare manualmente il File SPD XOML per ripulire le variabili

In questo post qui ("Ottenendo risposte indietro dall'attività del processo di approvazione Start"), Ho detto che è possibile aggiungere accidentalmente tutta una serie di variabili del flusso di lavoro per il flusso di lavoro SharePoint Designer.  Le cose possono diventare rapidamente ingombra e difficile da leggere.  In particolare, Se si aggiunge l'azione di "Avviare attività processo di approvazione" al vostro flusso di lavoro, eliminarlo e aggiungerlo di nuovo, si finisce con tutte le variabili del flusso di lavoro di che l'attività due volte. 

È un vero e proprio dolore per passare attraverso ed eliminare tutte quelle manualmente, così ho se cerco di rimuoverli direttamente dal file XOML.  Questa si rivelò per essere abbastanza facile da fare. 

Primo, è necessario individuare il file XOML effettivo.  Scritto su quell'argomento: http://www.mstechblogs.com/paul/how-to-find-and-edit-spd-2010-workflow-xoml-files.  Una volta trovato, aprire il file XOML e individuare una variabile che si desidera rimuovere.  In questo caso, Ho aggiunto l'attività di "Avviare processo di approvazione" al mio flusso di lavoro due volte.  Voglio rimuovere una variabile del flusso di lavoro denominata "isItemApproved", dal momento che non è più usato e c'è una variabile duplicata, denominata "isItemApproved1". 

Basta fare una ricerca di testo per la variabile.  Mio schermo assomiglia a questo:

image 

Se cercate intorno nel file XOML, Staremo a vedere che "IsItemApproved1" viene utilizzato in molti luoghi diversi, mentre l'originale "IsItemApproved" è semplicemente definito una volta e non viene mai utilizzato.

Eliminarlo e quindi salvare il file.

La parte solo difficile è che ho dovuto effettivamente chiudere del tutto fuori SPD e riaprirlo prima SPD ha riconosciuto che il campo eliminato.

Naturalmente, eliminazione di campi non è l'unica cosa che puoi fare con il XOML e può blog su altri argomenti come questo in futuro.

Vuoi essere molto attenti a ciò che si fa qui e prendono i backup del vostro lavoro.  Si può fare un apparentemente minori / cambiamento sottile qui che trashes riguarda il flusso di lavoro per quanto SPD e potrebbe perdere ore di sforzo mentre si ricostruirlo.

</fine>

Iscriviti al mio blog.

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

Come trovare e modificare SPD 2010 File di flusso di lavoro XOML

Ero alla ricerca di un modo semplice per rimuovere un gruppo di variabili del flusso di lavoro senza dover spendere il mio pomeriggio in una sessione di tortura clic SPD pieno soffiata.  Il mio pensiero era quello di modificare direttamente la XOML, che è dichiarative flussi di lavoro del SPD sottostante file XML.  Questo è quanto ho trovato.

Primo, passare all'opzione tutti i file sotto gli oggetti nella navigazione del sito.  Bisogno di autorizzazioni appropriate per vedere questo, quindi, se manca per voi, appello per la persona giusta admin a vi conceda il priv.  Questo è quello che sembra:

image

 

Tutti i file mostra un elenco di … tutti i file:

image

Selezionare la cartella di flussi di lavoro e si vede un elenco di cartelle per ogni flusso di lavoro:

image

Fare clic nella cartella corretta e  vedere un elenco di tutte le chicche interessanti che compongono un flusso di lavoro dichiarativo SPD.  Fare clic con il pulsante destro sul file XOML e seleziona "Apri con-> SharePoint Designer (Open XML)"per modificare direttamente la XOML:

image

Si consiglia di fare un backup manuale prima di voi giocherellare con le cose.  Un copia/incolla regolare del file direttamente in SPD è probabilmente abbastanza buono, o si può copiare incollare l'intero testo XML e salvarlo sul desktop o qualunque sia il tuo solito in questi casi.

</fine>

Iscriviti al mio blog.

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

Rimettersi risposte dall'attività del processo di approvazione Start

Mi hai giocato intorno con attività di "Avvio del processo di approvazione" fantasia nuovo SharePoint Designer del flusso di lavoro e fu rapidamente stymied perché subito non riuscivo a rispondere alla domanda, "essa approvata o non?”. 

La risposta breve è che è abbastanza facile ottenere la risposta.  Quando si aggiunge questa attività per il tuo flusso di lavoro principale, SPD aggiunge un fantastiliardi variabili alle variabili di flusso di lavoro e fonte di dati di parametri, come potete vedere qui:

SNAGHTML2350fe72

Avrete anche notato che se si aggiunge più di uno di questi, SPD aggiunge un "1" e così via per tutte le variabili. 

Scoperto che quando ho eliminato la prima attività di "Avviare processo di approvazione", la prima serie di flusso di lavoro associato variabili è rimasto (Purtroppo).  Così, fare attenzione a come si utilizza questo perché altrimenti, vi ritroverete con  un elenco molto ingombro di variabili di flusso di lavoro.

Io do credito Microsoft per seguendo la convenzione di denominazione "è" per una variabile booleana.  Questa convenzione lo rende abbastanza chiaro che tipo di dati dovrebbe per essere lì.

Nella ricerca, Ho trovato questo articolo utile: http://office.microsoft.com/en-us/sharepoint-designer-help/workflow-actions-in-sharepoint-designer-2010-a-quick-reference-guide-HA010376961.aspx.  Esso in realtà non affronta questo tema specifico, ma ha alcune buone informazioni sull'argomento, quindi ci andrei se volete saperne di più su questa attività specifica e i suoi fratelli.

</fine>

Iscriviti al mio blog.

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

SharePoint Designer 2010 Funzione MOD

Sto lavorando fuori qualche registro dove i dipendenti possono richiedere la vacanza, tempo ammalato, ecc. Una regola di convalida richiede che deve sempre richiedere tempo fuori in 4 intervalli di ore.  Questo è abbastanza facile da usare – un modulo funzione.  Modulo funzione ti dice il resto nella divisione.  Se non non c'è nessun resto, modulo è pari a zero, in caso contrario, esso è tutto ciò che è a sinistra.  Per esempio, 8 mod 4 = 0 (8 / 4 = 2 con nessuna frazione).  D'altro canto, 8 mod 5 è 3.

Bisogno di fare questo volta con SPD 2007 una volta e ho effettivamente finito utilizzando un modulo di InfoPath per risolvere, così è stata gestita sul front-end al momento.  Nel caso di corrente, ci può essere un modulo di InfoPath nella foto, ma questo non è ancora chiaro.  Così, Stavo lavorando fuori una tecnica per assicurare a quel tempo le richieste sono sempre in 4 incrementi di ora.  Stavo andando a fare la matematica, salvatelo in una stringa e poi alcuni sottostringa roba. 

Tirare su SPD 2010 e con mia sorpresa (e un piccolo imbarazzo) c'è un modulo funzione già:

image

Sono ancora una volta piacevolmente sorpreso che qualcosa che mi serviva è già lì fuori della scatola.  Sembrare una funzione strana per Microsoft da includere nel mix.  Esso ha una specie di "questo è facile, quindi cerchiamo di gettarlo nel"si sentono ad essa.  Simpatizzare con quella, come faccio io e me stesso tutto il tempo.  Questo progetto CodePlex ha un sacco di funzioni poco che derivano dal principio ItsEasy.  Allo stesso tempo, Microsoft continua a sostenere la prova l'effetto "95% del modo" con il prodotto.  Essi implementare la funzione Mod, ma non la funzione, per esempio.

</fine>

Iscriviti al mio blog.

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

Progetto CodePlex – SP2010 Explorer

Come parte di uno sforzo in corso per imparare i dettagli tecnici di livelli bassi di SharePoint 2010, Ho creato un "SharePoint Explorer"tipo di strumento.  L'idea non è nuova.  Ho usato questo progetto più di una volta: http://sharepointexplorer.codeplex.com/.  La mia idea è di creare una versione di SharePoint che usi connessi web part per visualizzare tutti i dettagli di basso livello che può fornire il modello a oggetti. 

Questo post serve come sia un annuncio del progetto, così come una chiamata per i volontari.  Se siete interessati a lavorare su questo progetto, Fammi sapere via e-mail (Galvin.Paul@gmail.com) e lavoreremo.

Ecco il progetto: http://sp2010explorer.codeplex.com/

</fine>

Iscriviti al mio blog.

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

SharePoint Designer 2007 Progetto CodePlex estensioni di flusso di lavoro

Sto mettendo insieme il mio secondo progetto CodePlex (Dettagli per essere annunciato il mercoledì di questa settimana, più o meno) e dato un'occhiata al mio primo progetto, "Estensioni del flusso di lavoro di SharePoint Designer". Sono rimasto scioccato e imbarazzato a vedere quello che è stato scaricato oltre 4,800 volte:

image

Fondamentalmente ho dimenticato su questo progetto negli ultimi 12 mesi. Mi vergogno perché essenzialmente ho abbandonato esso.

Ho intenzione di avere un altro guardare e ricordare a me stesso che cosa è tutto su.

Se qualcuno è interessato a lavorare su questo, fatemelo sapere e vedremo di collaborare su di esso. 4,800 Download non è una quantità gigantesca, ma è più mai realizzato e probabilmente vale la pena di qualche sforzo raccoglierlo e portando avanti.

</fine>

Iscriviti al mio blog.

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

Esportazione-SPWeb mi dice "InvalidData” Ma i dati sono Valid

Sono in procinto di scrivere un articolo per la gente brava a www.sharepointbriefing.com e si tratta di un elenco da un'azienda di sviluppo di un'azienda agricola di produzione la distribuzione.  Io sono ancora abituato ad usare stsadm e bisogno di rompere questa abitudine, così ho sparato SharePoint 2010 Management Shell e giocato intorno utilizzando Export-SPWeb al mio elenco di backup.  Che cosa stranamente difficile che ha dimostrato di essere!

Ho continuato a ottenere questo errore:

image

Quell'errore, "InvalidData: (Microsoft.share...CmdletExportweb"") mi stava uccidendo.  Sono imbarazzato a quanto tempo ho lottato con questo.

Ho avuto in precedenza eseguire in un muro con PowerShell e stsadm utilizzati per ottenere intorno ad esso.  Ho provato questa volta e ho avuto buoni risultati.

Ho speso un sacco di tempo trafficando con l'opzione – Identity e poi finalmente con –ItemURL.  Si scopre che l'opzione ItemURL richiede un percorso completo della libreria di elenco si  per esportare senza http://bit di server.  Così, Nonostante il fatto che l'argomento dell'identità sta puntando a un sito secondario, il ItemURL è non rispetto l'identificazione, ma rispetto alla raccolta siti.

Sarebbe stato bello per i cmdlet di dirmi che cosa è stato minimamente valido (l'identità in questo caso) e ciò che è stato non valido (ItemUrl).  Questi piccoli tocchi aiutano le persone a abbracciare il prodotto.  Non un grande ding contro SharePoint, ma un po 'almeno uno 🙂

Speriamo che questo post sarà salvare qualcuno un po ' di dolore in futuro.

</fine>

Iscriviti al mio blog.

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

Lavorando con TreeNodeBinding in ASP.Controllo Treeview NET

Ho lavorato su ciò che spero sarà un presto-released CodePlex progetto che prevede un po' bello integrato di web part a parlare tra di loro tramite connessioni/consumer del provider al fine di esplorare un sito di SharePoint sotto le coperte.  (Certamente questo è stato fatto prima, ma questo è un progetto di apprendimento come qualsiasi altra cosa).  Questo è lo scopo di essere un sostituto per la visualizzazione di Esplora risorse di windows di SharePoint 2010 raccolte documenti.

Il codice ha la solita ricorsiva chiamare verso il basso della SPWeb e SPList da una determinata a partire dal punto.  L'oggetto che fa questo attraversamento si accumula una stringa XML che sembra qualcosa di simile:

<SiteCollection url =’http://demo2010a:9090′>
 
<Web
     titolo = 'Ciao mondo Sandbox' 
     Modello =' un sito per squadre per organizzare rapidamente, autore, e condividere informazioni, BLA BLA BLA '>

     <elenco
        titolo ='BCC_Health_Services_FAQs’
        Modello ='CustomList’
       
listid =’http://demo2010a:9090/helloworldsandbox[delim]1e02b001-3cb2-4f17-b63d-7809e86b4174′>
    
</elenco>

     <elenco
        titolo = 'BCC_Notifications' 
        Modello = 'CustomList' 
        listid =’
http://demo2010a:9090/helloworldsandbox[delim]5a5a13d1-877 c-41 c 0-9063-b9612be80d5e’>
     </elenco>

  </Web>

</SiteCollection>

Mi aspetto di pulire up che XML prima di tutto è detto e fatto.

I want to get in definitiva che le informazioni su e in un controllo Treeview.  Non è esattamente la terra sconvolgente roba.

La sfida che ho preso qui era quello di collegare la visualizzazione struttura a un controllo origine dati XML anziché costruire manualmente il mio treenodes come attraversano la struttura ad albero.  Fatto questo, in parte perché deliberatamente sto facendo le cose più difficili su me stesso (Questo è un progetto di apprendimento, dopo tutto) e in parte perché ho questa vaga nozione che costruendo i nodi della struttura come attraversare l'albero non è una buona idea per il lungo termine.

Il problema di questo approccio è che il controllo Treeview non sa sugli attributi buoni sui nodi interessanti come "lista" o "web" così mostra questa uscita per impostazione predefinita:

 

image

Questo non è utile.  Questo è dove la classe TreeNodeBinding aiuta.  Posso usare questo per raccontare il controllo Treeview come deve interpretare il codice XML.  Ecco un esempio:

TNB = nuovo TreeNodeBinding();
tnb.DataMember = "lista"; // Questo è l'etichetta nel codice xml per un sito.
tnb.TargetField = "listid";
tnb.ValueField = "title";
tnb.ToolTipField = "Template";

Questa associazione dice treeview che quando rileva un <elenco> nodo XML, applicare le associazioni per TargetField, ValueField e ToolTipField.  Nel maggio app, Queste mappa come segue:

  • TargetField: Quando qualcuno clicca sul valore del nodo, Questo è ciò che si otterrà per SelectedNode.Value.  Questo non deve essere confuso con...
  • ValueField: Questo è ciò che volete Treeview per visualizzare all'utente.
  • ToolTipField: Il valore dal XML che si desidera come descrizione comandi.

Aggiungere che TreeNodebinding DataBindings della visualizzazione struttura ad albero e voi ottenere output simile a questo:

 

image

Avrò più su tutto questo come continuare sul progetto e alla fine mettere questa su Codeplex.

</fine>

Iscriviti al mio blog.

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