archivi mensili: Dicembre 2007

Pensando a prodotti commerciali

Ho messo un Progetto estensioni SharePoint Designer fino alla CodePlex quest'anno e anche se è veramente molto limitato nell'ambito, Stimo che è stato scaricato da 40 A 60 (forse anche 100) aziende in quasi due mesi. Che indica a me che c'è un mercato per tale soluzione e se io fossi a commercializzare con successo e, che potrebbe tradursi in una buona quantità di birra 🙂

Il mio background è in realtà molto più nello sviluppo del prodotto e so ciò che è richiesto di portare un prodotto di altissimo livello, al contrario di progetto CodePlex hobby, al mercato. Nel mio vita passata, Sono stato responsabile prodotto R&D per tutti i prodotti software. La differenza tra allora e adesso è che io sono un consulente che ora lavora per un (Eccellente) consulenza (Conchango). In precedenza, Ho avuto un'intera azienda dietro di me e davanti a me, vendita e il supporto dei prodotti abbiamo portato al mercato. Oggi, Sarei da sola.

Ho diverse idee di prodotto in mente, ma penso che il modo più semplice sarebbe quella di creare una versione commerciale del suddetto progetto CodePlex che utilizza come punto di partenza e la estende ulteriormente. Il mio pensiero fuzzy improvvisata è per caricare qualcosa come $100 per una licenza sviluppatore illimitato e $500 per front-end web produzione. Penso che anche avrebbe a dare via il codice sorgente.

Se avete pensieri o esperienze che sei disposto a condividere, si prega di lasciare un commento o scrivermi direttamente. Mi piacerebbe sentire le opinioni come:

  • È tutto vale la pena?
  • Suggerimenti pratici per il marketing, raccolta fondi, distribuzione.
  • Prezzi.
  • Supporto.
  • Qualsiasi altro commento che si desidera lasciare.

È "facile" per trovare idee di prodotto e di implementarli, anche se molte decine di ore di lavoro sono necessari. Le altre cose non sono così facile per me.

</fine>

Technorati Tags:

Domenica mattina Funny: “Gesù deve morire”

Abbiamo comprato il nostro primo (e solo) "lusso" posteriore auto quando uragano Floyd inchiodato alla costa orientale di Stati Uniti. Abbiamo un sacco di pioggia qui nel New Jersey e diversi giorni passati prima tornata alla normalità la vita. Appena prima di Floyd colpì, abbiamo fatto un'offerta per un usato Volvo 850 GL e dopo Floyd ha colpito, ha guidato a casa.

È stata la nostra prima auto con lettore CD. Come molti possessori di auto nuove, Siamo andati un po ' pazzo CD, rivivere la nostra collezione di CD dormienti e siamo andati durante lunghi viaggi solo per ascoltare i CD in macchina. Come tutte le mode, questo passato per noi e abbiamo finito di ascoltare più e più volte lo stesso CD. Nel nostro caso, e ' stato Gesù Cristo Superstar.

Uno dei (molti) brillanti pezzi in tale opera rock è cantata dai tipi di istituzione religiosa, guidati da Caifa, il "sommo sacerdote". Cantano il loro modo nel decidere come gestire il problema di Gesù"" e Caifa li indirizza alla conclusione che "Gesù deve morire". Il ritornello della canzone è "appena deve morire, deve morire, deve morire, This Jesus must die". Hai sentito un sacco in quel pezzo di astenersi.

Al momento, mio figlio aveva circa tre anni. Probabilmente potete vedere dove questo sta andando.

Sono tornato a casa dal lavoro un giorno e mio figlio è in salotto che gioca con i giocattoli e canticchiando a se stesso. Mi tolgo la giacca, guardando attraverso la posta e tutte le che mie solite cose walk-in-the-porta e mi rendo conto improvvisamente che lui è solo dicendo, non proprio cantando: "Gesù deve morire, deve morire, deve morire." Sono stato mortificato. Ho potuto solo vedere lui farlo mentre su uno del suo bambino giocare date a casa di un amico — probabilmente l'ultimo giocare data con quell'amico bambino.

Abbiamo tirato fuori quel CD dalla Volvo dopo quello 🙂

</fine>

Google ha accettato il mio Blog spazi dal vivo nel programma AdSense

AGGIORNAMENTO: Come di 03/09, Non ho trovato nessun modo per integrare il mio conto di vivere gli spazi con Google Adsense. Sistema di Microsoft qui sembra prevenire tutti i meccanismi tecnici che fornisce Google adsense aspiranti hoster. Io tendo a credere che questo è principalmente un effetto collaterale della sicurezza che hanno costruito nel vivere gli spazi, non uno sforzo diretto a disattivare Adsense.

Questo non è un post di SharePoint, ma potrebbe essere di interesse per i blogger in generale.

Qualcuno ha commentato sul loro blog di Windows Live Spaces che Google affermativamente negato loro applicazione partecipare ad AdSense. Ha teorizzato che Google negato il suo perché Windows Live Spaces ospita il suo blog. Tuttavia, Io stavo recentemente accettato nel programma per il mio blog dal vivo spazi, così la politica ha cambiato o Google lei negato per qualche altro motivo.

Naturalmente, Non vedo alcun modo ovvio per integrare Google AdSense nel mio vivere lo spazio, ma è un inizio 🙂

</fine>

Technorati Tags: ,

Implementazione di Master / Relazioni di dettaglio utilizzando elenchi personalizzati

Utenti del forum frequentemente come domande come questa:

> Ciao,
>
> Per favore mi dica se ci sono qualsiasi possibilità di costruire un elenco personalizzato con
> tipo di master e dettaglio (come fatture) senza utilizzo di InfoPath.
>

SharePoint fornisce alcuni fuori il box caratteristiche che supportano i tipi di requisiti aziendali come quella.

In generale, uno collega due liste insieme utilizzando una colonna di ricerca. Nell'elenco A contiene le informazioni di intestazione della fattura e lista B contiene dettagli della fattura.

Utilizzare elenchi supplementari per mantenere i numeri cliente, numeri di prodotto, ecc.

Utilizzare una query contenuto web part (in MOSS solo) e/o un data visualizzazione web part per creare visualizzazioni unite degli elenchi. SQL Server Reporting Services (SRS) disponibile anche per il segnalazione lato di esso.

Tuttavia, Ci sono alcune importanti limitazioni che lo rendono difficile da usare puro out-of-the-box caratteristiche per tutto ciò che è anche moderatamente complessa. Questi includono:

  • Dimensione di ricerca correlato elenchi vs. "intelligenza" del tipo della colonna di ricerca. Un tipo di colonna di ricerca si presenta l'interfaccia utente in modo diverso a seconda se hai attivato una selezione multipla o non. In entrambi i casi, il controllo di out-of-the-box Mostra tutti gli elementi disponibili nell'elenco di origine. Se la lista sorgente ha 1,000 elementi, che sara ' un problema. Il controllo di ricerca non pagina attraverso quegli elementi. Invece, tutti loro tira nel controllo. Che rende per un'interfaccia di utente molto imbarazzante sia in termini di prestazioni e data entry.
  • Ricerche di "tirare indietro" una colonna di informazioni. Non si può mai tirare indietro più di una colonna di informazioni dall'elenco origine. Per esempio, non è possibile selezionare un cliente "12345" e visualizzare il numero come nome e indirizzo del cliente allo stesso tempo. La ricerca Mostra solo il cliente numero e nient'altro. Questo rende per un'interfaccia utente scomodo e difficile.
  • Nessuna comunicazione intra-modulo. Ho scritto su questo qui. Non è possibile implementare CSS drop-down, attivare o disattivare in modo condizionale campi, ecc.
  • Senza eliminazioni a catena o built-in integrità referenziale. SharePoint elenchi personalizzati vengono considerati entità indipendenti e non consente di collegarli tra loro in un senso tradizionale di ERD. Per esempio, SharePoint consente di creare due elenchi personalizzati, "cliente" e "intestazione fattura". È possibile creare un'intestazione fattura che collega indietro a un cliente nell'elenco clienti. Poi, è possibile eliminare il cliente dall'elenco. Out of the box, non c'è nessun modo per evitare questo. Per risolvere questo tipo di problema, normalmente si usa i gestori eventi.

Può sembrare tetro, ma vorrei ancora utilizzare SharePoint come punto di partenza per costruire questo genere di funzionalità. Anche se ci sono spazi tra che cosa avete bisogno in una soluzione, SharePoint consente di colmare tali lacune utilizzando strumenti come:

  • Gestori eventi. Li usa per applicare l'integrità referenziale.
  • Colonne personalizzate: Creare tipi di colonna personalizzati e utilizzarli al posto della colonna di ricerca predefinito. Aggiungere il paging, buffering e funzionalità AJAX per renderli responsivi.
  • BDC. Questa funzionalità solo MOSS ci permette di query che altri SharePoint elenca con un'interfaccia utente di qualità superiore della colonna di ricerca usuale. BDC può anche raggiungere un'applicazione server di back-end. Utilizzare BDC per evitare la replica. Invece di replicare le informazioni di cliente da un back-end sistema ERP, utilizzare invece la BDC. BDC caratteristiche forniscono un'interfaccia utente gradevole per estrarre tali informazioni direttamente dal sistema ERP cui appartiene ed evita il fastidio di mantenere una soluzione di replica.

    BDC è una caratteristica MOSS (non disponibile in WSS) è difficile da configurare.

  • Modulo web ASP.NET: Creare un form AJAX-enabled completo che utilizza i servizi SharePoint oggetto modello e/o web per sfruttare gli elenchi SharePoint, fornendo un'interfaccia utente molto reattivo.

L'ultima opzione può sentire come stai iniziando da zero, ma considerare il fatto che la piattaforma SharePoint si inizia con le seguenti caratteristiche chiave:

  • Modello di sicurezza con manutenzione.
  • Sistema di menu con manutenzione.
  • "Tabella master" (vale a dire. elenchi personalizzati) con sicurezza, built-manutenzione e revisione contabile.
  • Ricerca.
  • Strumenti di integrazione back-end (BDC).

Se si inizia con un nuovo progetto vuoto in visual studio, Hai un sacco di infrastrutture e impianti idraulici per costruire prima di arrivare nei pressi di quello che SharePoint offre.

Credo che Microsoft intende estendere SharePoint in questa direzione di sviluppo di applicazioni. Sembra come una naturale estensione di SharePoint esistente base. Applicazione CRM di Microsoft fornisce una grande quantità di estensibilità dei tipi necessari per supportare lo sviluppo di applicazioni di intestazione/dettaglio. Anche se queste caratteristiche sono in CRM, la tecnologia è ovviamente disponibile per il team di sviluppo di SharePoint e mi aspetto che nel prodotto SharePoint farà sua strada entro la fine del 2008. Se qualcuno ha una conoscenza o la comprensione in questo, si prega di lasciare un commento.

</fine>

Suggerimento rapido: Web Part Query contenuto, XSL e il valore della colonna di ricerca

Ho un nome di colonna in un tipo di contenuto denominato "Real Estate Location".

Che la colonna è di tipo "ricerca".

Ho modificato <CommonViewFields> e ItemStyle.xsl per mostrare la colonna.

Un semplice <xsl:valore di selezionare =…> Torna restituisce un valore interno che include dati di posizione ordinale, come ad esempio:

1;#Miami

Per ottenere il valore di human-friendly, utilizzare xsl substring-after, come illustrato:

<xsl:selezionare valuxslf = "substring-after(@ Real_x005F_x0020_Estate_x005F_x0020_Location,’#’)"></xsl:valore di>

Utilizzare questa tecnica ogni volta che si lavora con valori di ricerca nelle trasformazioni XSL e necessario per ottenere il valore di human-friendly.

<fine />

Technorati Tags: , ,

Numero di dicembre di SharePoint Beagle fino & Live

Molti di voi sanno già, ma l'edizione di dicembre di Beagle di SharePoint è in diretta.

Ogni articolo è utile la lettura, a mio parere.

Voglio dare un piccolo extra urto a articolo del mio collega (Natalya Voskrensenskya). Lei fornisce una stravaganza di schermata mentre descrive come ha usato gli elenchi personalizzati, flusso di lavoro, SharePoint Designer, Visualizzazioni dati e altri elementi per implementare una funzionalità self-service formazione in MOSS. Lei descrive tecniche che possono essere applicate in molti diversi scenari di business. Check-out suo blog mentre ci sei.

Non dimenticate di controllare le il mio articolo anche 🙂 Ho scritto sull'utilizzo di MOSS per aiutare un dipartimento delle risorse umane a gestire le posizioni aperte.

</fine>

MUSCHIO mi dice “Accesso negato” per modificare un Task di Workflow, Ma davvero hanno accesso

Io ho implementato un flusso di lavoro tramite SharePoint Designer in un sito che è principalmente sola lettura agli utenti di NT_AUTHORITYAuthenticated"" (vale a dire. tutti). C'è una libreria di moduli per un modulo di InfoPath. C'è un elenco di attività del flusso di lavoro associato pure in modo che quando il flusso di lavoro opera, è possibile assegnare compiti a persone.

Rompo il permesso per la lista di biblioteca e attività di forme così che qualsiasi utente autenticato può creare forme e aggiornare i loro compiti assegnati.

I test con il mio account di prova di basso-privilegi.

Posso riempire fuori e salva una forma alla biblioteca? –>

Posso accedere il compito da un collegamento di posta elettronica? –>

Posso vedere un collegamento attività di modifica del flusso di lavoro –>

Posso fare clic su quel link? –> NO … Autorizzazione negata.

Perché posso vedere un link modifica che mi nega l'autorizzazione quando clicco su di esso? Che è non come si suppone di lavorare…

Vado attraverso la configurazione di sicurezza nuovo, molto da vicino. Farlo di nuovo. Ritengo che l'eliminazione di questo post perché ovviamente non so nulla circa la sicurezza.

Infine, Cerco Internets. Trovo questo thread del forum MSDN altamente improbabile: http://forums.microsoft.com/TechNet/ShowPost.aspx?PostID=1838253&SiteID=17

I manifesti sembrano essere suggerendo che il semplice atto di esportazione del flusso di lavoro in un piatto a trazione risolverà un problema di sicurezza MOSS? Non riesco a credere che ho scritto. Mi viene in mente l'episodio di South Park circa il 9/11 cospirazione dove Stan sta chiedendo il nostro Preznit, "Davvero?" più e più volte.

Così, niente da perdere, Accendi SPD, fare clic destro sul flusso di lavoro e salvarlo sul mio c:\ in auto. Che sarebbe la c:\ unità sul mio portatile. Sto guardando sopra la mia spalla tutto il tempo affinché nessuno mi chiederà, "perché si salvano quel flusso di lavoro in computer portatile?"

Incredibilmente, che risolve il mio problema. Posso modificare l'attività.

Nomino dichiara che questa sia la soluzione Workflow più bizzarro di 2007.

</fine>

Technorati Tags:

SharePoint Designer, Elemento corrente “URL assoluto codificato” e HTTPS

Spesso si vuole inviare un'e-mail contenente un collegamento ipertestuale al documento che ha attivato il flusso di lavoro o elemento. Possiamo usare "con codifica URL dell'elemento corrente assoluto" per questo scopo. Tuttavia, sembra sempre di usare "http" per il protocollo dell'URL. Se il tuo sito viene eseguito su HTTPS allora non funzionerà per voi.

immagine

Per quanto ne so, non c'è nessun out soluzione a questo problema. Se è necessario utilizzare HTTPS, avete no fuori l'opzione casella.

Per risolverlo, creare un'azione personalizzata che fornisce una funzione di sostituzione di stringa da utilizzare nel vostro flusso di lavoro. In alternativa, utilizzare uno strumento di terza parti come il pacchetto eccellente qui: http://www.codeplex.com/spdwfextensions 🙂

</fine>

Facile e veloce: Determinare il nome di colonna interna di una colonna del sito

AGGIORNAMENTO: Jeremy Thake ha bloggato su questo e mettere un po ' codice per un'applicazione console che Mostra nomi interni.

Stavo cercando di ottenere una web part contenuti query per visualizzare una data di scadenza da un'attività e perché l'etichetta dello schermo è "Data di scadenza", Davo per scontato che il nome della colonna da utilizzare in <CommonViewFields> è "Due_x0020_Date".

Sbagliato!

Il nome della colonna reale in questo caso era "DueDate".

Come ha fatto a trovare? Ho riletto Heather Post di Blog di Salomone sulla modifica CQWP per visualizzare ulteriori colonne di dati. Lei descrive questo processo a passaggio #13. La fiducia. È corretto. Almeno, era giusto per me. Non mi fidavo in un primo momento per un'altra colonna con un nome molto più a lungo.

Dico "la fiducia" perché non si è fidato e probabilmente sprecato due ore sbattere la testa contro un muro vicino a. Dopo che risolto il "DueDate" nome, Volevo aggiungere un altro campo a <CommonViewFields>. Utilizzando la tecnica di Solomon, Mi è stato sempre un nome di colonna come "XYZ_x0020_Project_x0020_Due_x00".

Ho pensato a me, che è chiaramente un nome troncato. Sono andato avanti e ONU-troncato con nessun successo. Ho finalmente usato il nome apparentemente troncato e ha funzionato.

Bonus Suggerimento: Quando stavo lavorando con il CQWP, Se ho aggiunto un cattivo nome interno per <CommonViewFields>, il CQWP mi avrebbe detto che la query non aveva restituito alcun risultato. Ma, Se ho aggiunto un tipo di dati per il nome del campo, che verrebbe restituito un risultato. Aggiungendo i dati tipo mascherato in realtà un problema dal momento che io stavo fa riferimento a un campo inesistente. Potrei aggiungerlo, ma quando ho provato a visualizzare il valore, Vorrei avere sempre uno spazio vuoto.

Questo non mascherare l'errore:

<CommonViewFields>Due_x0020_Date;</CommonViewfields>

Questo mascherare l'errore:

<CommonViewFields>Due_x0020_Date,DateTime;</CommonViewfields>

</fine>

Attenzione ultime modifiche a ItemStyle.xsl

Stavo lavorando con ItemStyle.xsl per personalizzare l'aspetto di una Web Part Query contenuto e diritto a ora di pranzo, Ho fatto una rottura cambiare al xsl. Non avevo capito che, ma questo ha avuto effetti in tutta la raccolta siti di vasta portata. Sono andato a pranzo e al mio ritorno, notato questo messaggio che appare in un mucchio di posti:

Impossibile visualizzare questa Web Part. Per risolvere il problema, aprire questa pagina Web in un editor HTML compatibile con Windows SharePoint Services come Microsoft Office SharePoint Designer. Se il problema persiste, contattare l'amministratore del server Web.

Accusato il client (ancora non accorgendosi che era colpa mia a questo punto) ma alla fine notato che intellisense di visual studio stava avvertendo me che avevo XSL non valido. Ho corretto e tutto ha iniziato a lavorare.

Essere dannatamente attenti quando si lavora con ItemStyle.xsl (e un file XSL globale) — rompendo li colpisce molti artefatti nella raccolta siti.

<fine />