archivi mensili: Febbraio 2008

Funny domenica: “NON PER L'ESPORTAZIONE”

Intorno 1998, la società che ho lavorato per al momento ha ricevuto alcuni finanziamenti per creare un nuovo prodotto di e-commerce. Abbiamo avuto l'intera gamma dei requisiti di business per soddisfare. Doveva essere veloce, facile per gli utenti finali, appariscente, multi-lingua, ecc. Triste a dirsi, Probabilmente non ho avuto come un ambizioso set di lavoro da realizzare da quei giorni inebrianti.

Questo sforzo pre-datato.NET. Plain vanilla ASP era ancora un po ' nuovo (o almeno molto sconosciuto alla mia azienda). "Brick and mortar" le aziende sono state condannate. Condannato! Questo è per dire che esso è stato pionieristico lavoro. Non lavoro pionieristico Hadron Collider, ma per noi nel nostro piccolo mondo, esso è stato pionieristico lavoro.

Che fossimo pazzi occupato. Stavamo facendo mini POC s quasi ogni giorno, capire come mantenere lo stato in un mezzo intrinsecamente apolide, capire problemi multi-lingue, protezione a livello di riga. Avevamo creiamo anche un vocabolario per definire i termini di base (Ho preferito stato persistente ma per qualche motivo, l'imbarazzante "stateful" ha vinto il giorno).

Come ci eravamo follemente inventare questo prodotto, le persone di marketing e vendite erano là fuori cercando di venderlo. In qualche modo, sono riusciti a vendere al nostro scenario da incubo. Anche se siamo stati progettazione e implementazione di una soluzione di enterprise, non ci aspettavamo davvero il primo cliente di utilizzare funzionalità fino all'ultimo che abbiamo costruito la giornata prodotto zero. Questo cliente aveva bisogno di multi-lingua, un'interfaccia utente radicalmente diversa da quella standard"" sistema, ma con la stessa logica di business. Multi-lingua è stata particolarmente difficile in questo caso, perché ci siamo sempre concentrati su spagnolo o francese, ma in questo caso, e ' stato cinese (che è un double-byte character set e necessaria una gestione speciale data la tecnologia che abbiamo usato).

Avanti veloce pochi mesi e io sono su un volo della Northwest airlines a Pechino. Sono stato così impegnato a prepararsi per questo viaggio che quasi non ho idea cosa vuol dire per andare lì. Avevo letto un libro una volta come un americano era stato in Cina per diversi anni e aveva imparato la lingua. Un giorno egli era a piedi la città e chiesto alcune persone per le direzioni. La conversazione è andato qualcosa questo:

  • American: "Potreste dirmi come arrivare a [XX] Street?"
  • Cinese: "Mi dispiace, non parliamo inglese".
  • American: "Oh, Beh io parlo mandarino." e ha chiesto loro di nuovo in cinese, ma più chiaramente (come meglio poteva).
  • Cinese: Molto educatamente, "Mi dispiace, non parliamo inglese".

La conversazione è andato come quello per bit e l'americano rinunciato nella frustrazione. Mentre lasciava li ha sentito un uomo parlare a altro, "Avrei giurato che egli era chiedere indicazioni per [XX] Street."

Avevo preso un paio di bit e pezzi di altri quasi-information correlati a Cina e "consigli utili":

  • Un coreano collaborato mi ha detto che l'avevo bisogno di attenzione dei cinesi, perché "sarebbe provano a me ubriacarsi e approfittare di voi" nel senso di me pressioni in decisioni aziendali bad.
  • Non ci era permesso di auto (c'era una certa confusione come se questo era un custom, un requisito legale o solo regola del client).
  • C'erano regole speciali per andare attraverso la dogana.
  • Non ci era permesso di utilizzare il denaro americano per nulla.
  • Non dovresti per lasciare mance. È un insulto se fate.

E, infine,, Avevo ricordi relativamente freschi il Massacro di Tiananmen. Quando ero al college, Ricordo di aver visto in tempo reale messaggi Usenet come il mondo guardato in horror.

In breve, Ero molto nervoso. Non ero solo nervoso normale nel senso che stavo consegnando una soluzione che è stata di ordini di grandezza più complicati rispetto a qualsiasi cosa che avessi mai fatto prima. Ero anche preoccupato di accidentalmente rompendo una regola che potrebbe mettermi nei guai.

Io sono su questo 14 ore di volo e se fosse un business class, 14 ore è un dannato tempo. Ci sono solo tanti modi per intrattenere voi stessi leggendo, guardare film o giocare con le posate magnetizzata. Anche un libro davvero buono è difficile da leggere per diverse ore di fila.

Alla fine, Ho iniziato a leggere il materiale di confezionamento su un pezzo di software che mano-portavo con me al client, Server web di Netscape. Sto leggendo i requisiti hardware/software, il marketing s blurbs, guardando l'immagine bella e improvvisamente, Zero sul gigante "non per l'esportazione" avviso, qualcosa circa 128 crittografia bit. Ho farcito la casella indietro nella mia borsa per il trasporto, avviso a faccia in giù (come se che avrebbe aiutato) e ha cercato di mantenere visioni di Midnight Express out of my head.

Guardando indietro su di esso ora, Dovrei essere preoccupato, Se a tutti, Quando ho lasciato gli Stati Uniti, non quando entravo Cina 🙂 Nulla di sconveniente è successo e che tuttora lo consideri che per essere il migliore e più memorabile viaggio di lavoro che ho avuto il piacere di fare.

</fine>

Iscriviti al mio blog!

Technorati Tags: ,

Soluzione: SPQuery non cerca le cartelle

La scorsa settimana stavo implementando applicazione una "evoluzione" soluzione per un client che utilizza BDC e SPQuery e ha incontrato qualche difficoltà utilizzando SPQuery contro una raccolta di documenti contenenti le cartelle. Linea di fondo: assegnare "ricorsivo" all'attributo vista della query.

Mio scenario:

  • Lunedi ', Sono di caricare un documento e fornire alcuni dati di meta.
  • La settimana seguente, Caricare un nuovo documento. Gran parte dei meta dati di questo nuovo documento è basato sul documento che ho caricato il lunedì (che noi chiamiamo il "documento master").
  • Abbiamo creato una facciata di servizio web che fornisce un'interfaccia di BDC-friendly alla lista in modo che gli utenti possono facilmente individuare tale documento lunedì tramite una ricerca del titolo.
  • Una colonna di dati BDC fornisce un'interfaccia utente amichevole. (Questo è parte del mio tentativo utilizzando BDC per una colonna di ricerca più amichevole).

Il servizio di facciata BDC finale utilizza una query come questa a fare la ricerca:

 // Usato U2U strumento per aiutare a generare questa query CAML.
      oQuery.Query =
        "<Dove>";

      Se (titleFilter.Length > 0)
          = oQuery.Query
          "  <E>";

        = oQuery.Query
        "    <E>" +
        "      <Geq>" +
        "        <FieldRef Name =  "DocumentId" />" +
        "        <Tipo di valore =  "Text">" + minId + "</Valore>" +
        "      </Geq>" +
        "      <LEQ>" +
        "        <FieldRef Name =  "DocumentId" />" +
        "        <Tipo di valore =  "Text">" + maxId + "</Valore>" +
        "      </LEQ>" +
        "    </E>";

      Se (titleFilter.Length > 0)
          = oQuery.Query
          "    <Contiene>" +
          "      <FieldRef Name =  "Title" />" +
          "      <Tipo di valore =  "Text">" + titleFilter + "</Valore>" +
          "    </Contiene>" +
          "  </E>";
        = oQuery.Query
        "</Dove>";

Durante la fase iniziale di sviluppo, Questo ha funzionato grande. Tuttavia, abbiamo introdotto le cartelle nella directory per risolvere alcuni problemi e improvvisamente, la mia selezione BDC non restituisce alcun risultato. Ho rintracciato questo dovuto al fatto che il SPQuery non ritornerei mai alcun risultato. Abbiamo usato le cartelle principalmente per consentire più file con lo stesso nome per essere caricato, ma con diversi metadati. Quando il file viene caricato, si crea una cartella basata sull'ID della voce di elenco e quindi sposta il file ci (Che scrisse qui; abbiamo avuto risultati misti con questo approccio, ma su tutta la, si sta lavorando bene). L'utente non importa sulle cartelle e infatti, davvero non capisco che ci sono tutte le cartelle. Abbiamo configurato tutte le viste sulla libreria per mostrare gli elementi senza riguardo per le cartelle.

Mi ha colpito questo problema due volte come l'implementazione tecnica evoluta e risolto esso diversamente ogni volta. La prima volta, Non stavo usando l'operatore contiene nella query. Senza un operatore contiene, Sono stato in grado di risolvere il problema specificando la vista su contructor di SPQuery. Invece di utilizzare il costruttore predefinito:

SPList oList = web.Liste["Documenti"];

SPQuery oQuery = Nuovo SPQuery();

Invece utilizzato un costruttore che ha specificato una vista:

SPList oList = web.Liste["Documenti"];

SPQuery oQuery = Nuovo SPQuery(oList.Views["Tutti i documenti"]);

Che ha risolto il problema e ho cominciato ad avere i miei risultati.

Ho poi aggiunto l'operatore contiene nel mix e si è rotto nuovamente. Si scopre che l'operatore contiene, per quanto posso dire, non funziona con vista allo stesso modo l'una più semplice GEQ / Operatori LEQ. Ho fatto qualche ricerca e ho imparato che ViewAttributes della query deve essere impostata su "Ricorsiva", come in:

oQuery.ViewAttributes = "Scope = "Recursive"";

Che risolto il problema per CONTAINS. Infatti, questo anche risolto il mio problema di ricerca originale e se avevo specificato il ricorsiva attributo la prima volta, Non vorrei avere correre la questione ancora.

Il fatto che un SPQuery basati su Vista funziona per alcuni operatori (GEQ/LEQ) e non gli altri (CONTIENE), accoppiato con il fatto che gli indicatori KPI non sembrano funzionare a tutti con cartella contenente documento librerie porta me a credere che SPQuery ha alcuni problemi di ortogonalità.

Ringraziamento speciale:

  • La buona gente di U2U e il loro strumento di query.
  • Grande di Michael Hoffer "Learning by doing" post del blog, Commenti e risposte.

</fine>

Iscriviti al mio blog!

Insetto MOSS KPI? Lista indicatore legato alla raccolta di documenti con le cartelle

AGGIORNAMENTO 02/29/08: Ho risolto questo problema creando una cartella e quindi si assegna un tipo di contenuto nella cartella che ha i meta dati che ho bisogno per gli indicatori KPI. Che ho descritto un po' più in dettaglio qui.

Abbiamo implementato una soluzione tecnica in cui gli utenti caricare documenti in una raccolta documenti. Un ricevitore di eventi crea una directory e sposta il file in quella directory (usando una tecnica simile a quello che scritto circa qui). Abbiamo con successo abbiamo navigato intorno i potenziali problemi causati da ricevitori di eventi che rinominare i file caricati (soprattutto perché gli utenti non iniziano mai loro documento facendo clic su "New" ma invece di creare i documenti localmente e poi caricarle).

I meta-dati per questi documenti includono un Sì/No colonna del sito chiamato "urgente" e un'altra colonna del sito denominata "Status". Abbiamo bisogno di soddisfare un requisito di business che indica la percentuale di "urgente" documenti il cui status è "In sospeso".

Questo è di solito semplice da fare e ho descritto qualcosa di molto simile a SharePoint Beagle con un sacco di colpi di schermo, se siete interessati.

In poche parole, Ho fatto il seguente:

  • Creare una visualizzazione sulla libreria doc chiamata "In sospeso".
  • Configurare la visualizzazione per ignorare la struttura delle cartelle.
  • Creare un elenco KPI.
  • Creare un indicatore nella lista che punta al lib doc e che "in sospeso" vista.

Questo semplicemente non funziona. L'indicatore KPI mostra mio target (e. g. cinque documenti urgenti) ma Mostra sempre il numero effettivo di documenti urgenti come zero. Paradossalmente, Se praticare nei dettagli, Essa mostra i cinque documenti urgenti nell'elenco. Ho creato uno scenario molto semplice con due documenti, uno in una cartella e uno non. Ecco la schermata:

immagine

Il colpo di schermo sopra mostra chiaramente ci sono due documenti in vista, ma il valore"" è uno. Il CamlSchema"" con documento vuoto Id è nella cartella principale e l'altro è in una cartella denominata "84".

Mi pare che anche se si specifica una vista, i KPI non onorare la "mostra tutti gli articoli senza le cartelle" impostazione e invece, si limita alla cartella principale.

Se sbaglio, prego cadalo una linea o lasciare un commento.

</fine>

Iscriviti al mio blog!

Technorati Tags:

SPD Workflow “Raccogliere dati da un utente”: Modificare la forma di attività generato

Sto lavorando su un progetto che utilizza cinque diversi flussi di lavoro di SharePoint Designer per gestire alcune approvazioni dei documenti. SPD fornisce i "raccogliere dati da un utente" azione affinché noi possiamo richiedere all'utente diversi bit di informazione, come se essi approvarlo, alcuni commenti e forse chiedere ciò che avevano per la cena l'altra sera.

Le forme sono perfettamente funzionali. Essi sono legati ad un elenco di attività come un tipo di contenuto. Essi sono 100% generati dal sistema. Questa è la loro forza e debolezza. Se possiamo vivere con un modulo predefinito, Allora siamo bene posto. Tuttavia, non abbiamo troppo controllo sopra come SPD crea il modulo. Se non ci piace che il comportamento predefinito, abbiamo bisogno di ricorrere a vari trucchi per ottenere intorno ad esso (per esempio, l'impostazione di priorità su un compito).

Avevo bisogno di fornire un link su queste forme di attività che aprono le proprietà di visualizzazione (DispForm.ASXP) dell'articolo correlato"" in una nuova finestra. Questo fornisce accesso one-click per i meta dati del rispettivo articolo. Questo è quello che voglio dire:

immagine

Per fortuna, possiamo farlo e non è molto difficile. In linea generale, fuoco su SPD, spostarsi nella directory contenente i file di flusso di lavoro e aprire il file ASPX che si desidera modificare. Queste sono le istruzioni di trasformazione XSL appena classiche e se tu hai muck con itemstyle.xsl, ricerca o ad altri scenari XSL, Questo sarà facile per voi. Infatti, Ho trovato ad essere generalmente più facile dal momento che il form generato è un po ' più facile da seguire rispetto ad una web part risultati di ricerca (o il CWQP da incubo).

Naturalmente, C'è un trabocchetto principale. Editor di workflow di SPD si aspetta pieno controllo su quel file. Se lo si modifica, SPD felicemente sovrascriverà il vostro dare modifiche il giusto set di circostanze. Ho fatto due test rapido per vedere quanto male si potrebbe ottenere. Entrambe presuppongono che tu hai realizzato un flusso di lavoro SPD valido che utilizza i "raccogliere dati da un utente" passo.

Test 1:

  • Modificare manualmente il file ASPX.
  • Prova (verificare che le modifiche sono state salvate correttamente e non rompono nulla).
  • Aprire il flusso di lavoro e aggiungere un'azione correlata (come il "Registro di storia").
  • Salvare il flusso di lavoro.

Risultato: In questo caso, SPD ha fatto non ricreare la forma.

Test 2:

  • Fare lo stesso #1 tranne direttamente modificare la "raccolta di dati da un utente" azione.

Risultato: Questo ricrea la forma da zero, sovrascrivere le modifiche.

Note finali:

  • Almeno due azioni di SPD creare forme come questo: "Raccogliere dati da un utente" e "Assegnare a fare la voce". Entrambe queste azioni’ forme possono essere modificate manualmente.
  • Sono stato in grado di generare il mio link per DispForm perché, in questo caso, l'elemento di riferimento ha sempre un ID incorporato nell'URL dell'elemento correlate. Sono stato in grado di estrarre e poi costruire un <href> Basato su di esso per fornire la funzionalità di accesso di un solo clic meta dati. È improbabile che il tuo URL segue questa regola. Ci possono essere altri modi per ottenere l'ID del rispettivo articolo ma non ho dovuto attraversare quel ponte, quindi non so se ottiene da altra parte del baratro.
  • Non esaminare, ma non sarebbe sorpreso se c'è qualche tipo di file di modello nella 12 alveare che potrei modificare per interessare come SPD genera le forme predefinite (come possiamo modificare modelli alert).

</fine>

Iscriviti al mio blog!

Sono “Errore sconosciuto” Messaggi davvero meglio di una traccia dello Stack?

Stavo leggendo il post sul blog di Madhur su come abilitare Visualizza traccia dello stack e ora mi sto chiedendo: perché non sempre mostrano una traccia dello stack?

Chi è venuto con quella regola e perché lo seguiamo?

Gli utenti finali sapere che qualcosa è sbagliato in entrambi i casi. Almeno con un'analisi dello stack, si può premere control-printscreen, copia/incolla in un messaggio e-mail e inviarlo ad esso. Chiaramente che ridurrebbe il tempo e lo sforzo necessari per risolvere il problema.

</fine>

Technorati Tags:

Domenica (Imbarazzante) Divertente: “Il mio nome è Paul Galvin”

Un mucchio di anni fa, il mio capo mi ha chiesto di formare alcuni utenti su un prodotto chiamato risultati. Risultati è un utente finale, lo strumento di reporting. È approssimativamente analogo a SQL Server Reporting Service o cristallo. Al momento, esso è stato progettato per funzionare su tubi verde (e. g. Wyse 50 terminale) collegato a una casella di Unix tramite telnet.

Mio di default di rispondere a qualsiasi domanda che inizia con "si può … " è "sì" e che è dove tutti i problemi iniziato.

Il cliente era una società chimica fuori nel sud della California e quasi aveva avvolto un'importante implementazione ERP basata su Di QAD MFG/PRO. Il piano di attuazione è ora chiamato per gli utenti finali di potenza formazione sul prodotto risultati.

Non ero un grande utilizzatore di questo strumento e certamente mai aveva addestrato nessuno prima. Tuttavia, Aveva condotto una serie di altri corsi di formazione ed è stato veloce sui miei piedi, quindi non ero troppo preoccupato. Dennis, l'istruttore di risultati reali a tempo pieno, mi aveva dato il suo materiale di formazione. Guardando indietro su di esso ora, è davvero assurdo. Non conoscevo bene il prodotto, non era mai stato formalmente addestrato su di esso e certamente mai aveva insegnato. Che genere di affari ha avuto formazione chiunque su di esso?

A complicare le cose, logisticamente, Mi è stato chiesto di andare a incontrare qualcuno a Chicago come parte di un impegno di pre-vendito lungo la strada. Il piano era di volare fuori New Jersey, andare a Chicago, soddisfare per un'ora con il prospetto e poi proseguire per California.

Pozzo, Ho avuto modo di Chicago e le vendite ragazzo nella mia squadra aveva fatto qualche errore e mai confermata la riunione. Così, Mi presentai e la prospettiva non c'era. Impressionante. Le valigie e lasciare e proseguire per CA. Da qualche parte durante questo processo, Scopro che il client sta imparando meno di 24 ore prima del mio arrivo che "Paul Galvin" è la classe di insegnamento, non Dennis. Il cliente ama Dennis. Vogliono sapere "chi è questa persona di Paul Galvin?" "Perché dovremmo fidarci di lui?" "Perché dovremmo pagare per lui?" Dennis, ovviamente, non iscriverti al mio "dare cattive notizie presto" filosofia. Impressionante.

Arrivo all'aeroporto e per qualche motivo incredibilmente stupido, Avevo controllato mio bagaglio. Ce l'ho fatta a LAX, ma il mio bagaglio non. Per me, perdere i bagagli è molto simile a passare attraverso il sette tappe del dolore. Alla fine rendono l'hotel, con nessun bagaglio, stanco, affamati e indossando il mio (ormai, molto stropicciata) vestito di affari. Ci vuole molto tempo per viaggiare da Newark — to o ' Hare — a un client — back to o ' Hare — e infine a Los Angeles.

Mi trovo finalmente seduto nella sala dell'hotel, sgranocchiando un bar snickers, esausti e cercando di tamburo fino all'energia di scansione attraverso il materiale di formazione di nuovo quella che non vedo come un asino davanti alla classe. Questo è stato un po' un punto basso per me al momento.

Mi sono svegliato il giorno dopo, fatto il mio meglio per appianare il mio vestito, così che non guardo come Willy Loman in una brutta giornata e siamo andati su oltre al client. Come è così spesso il caso, in persona era bello, gentile e molto gradevole. Questo si trovava in netto contrasto al suo estremamente arrabbiato e-mail/messaggi vocali dal giorno precedente. Lei mi porta su 3 miglia attraverso edificio dopo edificio per un sezionato fuori zona in un magazzino chimico gigante dove conduciamo la classe per i prossimi tre giorni. Il 15 o 20 studenti assemblare lentamente, la maggior parte li aspetta ancora Dennis.

Sempre iniziare i miei corsi di formazione di presentarmi, dando alcuni retroscena e scrivendo le mie informazioni di contatto sulla scheda bianca. Come sto dicendo, "Buongiorno, il mio nome è Paul Galvin", Scrivere il mio nome, e-mail e numero di telefono fino sul bordo bianco a caratteri cubitali in modo che tutti possano vederla chiaramente. Mi rivolgo al fatto che sto sostituendo Dennis e li assicuro che io sono un sostituto adeguato, ecc. Tutti ho brevemente mi dica il loro nome e che cosa vogliono ottenere fuori della classe in modo che io posso adattare le cose ai loro requisiti specifici come vado avanti. Le solite cose.

Abbiamo che avvolgono e accendere il proiettore. Vado a cancellare i miei dati di contatto e … Io avevo scritto in pennarello indelebile. Ero così imbarazzato. Nella mia mente, questo sembrava: C'è questo "Paul Galvin" persona, sostituzione dell'ultimo minuto per il nostro amato Dennis. Indossa un sgualcito con la barba lunga e vestito di affari. Ha appena scritto sua nome lettere enorme sulla nostra scheda bianca in marcatore permanente. Che spettacolo!

E tutti si è conclusa felicemente, Tuttavia. Questa è stata un'azienda chimica, Dopotutto. A brizzolato veterano dipendente tirato qualcosa dallo scaffale e, probabilmente in violazione delle normative EPA, cancellato il Consiglio. Sono riuscito a rimanere 1/2 giorno davanti la classe durante tutto il corso e mi hanno dato una buona recensione alla fine. Questo cementato i miei "pinch hitter" reputazione presso la mia azienda. Il mio bagaglio è arrivato il primo giorno, così mi è stato molto più presentabili giorni due e tre.

Come stavo prendendo l'occhio rosso torna a casa, Stavo contemplando "lessons learned". C'era un sacco di contemplare. Comunicazione è la chiave. Informare i client modifiche nel piano. Non mai controllare i bagagli all'aeroporto se si può evitare possibilmente. Portare la roba di ricambio"" nel caso in cui si verifica il vostro bagaglio e non lo rende. Penso che la lezione più importante che ho imparato, Tuttavia, Questo è stato: sempre testare un indicatore in basso a sinistra di un bordo bianco prima di scrivere, in enormi lettere, "Paul Galvin".

</fine>

Technorati Tags: ,

Prospettive: SharePoint vs. Il Large Hadron Collider

A causa di alcuni stravaganti che voli United Airlines ho preso a metà degli anni 90, In qualche modo finito con un'offerta di trasformare "inutilizzato miglia" in circa una dozzina abbonamenti a riviste gratis. Ecco come ho finito per abbonarsi alla rivista Scientific American.

Come software / consulenza a persone, incontriamo molti requisiti aziendali difficili nella nostra carriera. Il maggior parte del tempo, amiamo detti requisiti e in realtà, probabilmente è perché pensiamo che questa carriera è il migliore del mondo. Chissà occasionalmente solo che nel mondo ci hanno fatto con me stesso, se fossi nato in qualsiasi altro momento nella storia. Quanto terribile sarebbe a perdere sui tipi di lavoro che riesco a fare ora, in questo momento e un posto nella storia del mondo? Credo: abbastanza terribile.

Nel corso degli anni, alcuni dei requisiti che ho affrontato sono stati estremamente impegnativi per soddisfare. Cose complesse di SharePoint, costruzione web framework basato su tecnologia web-friendly di elaborazione, complesse orchestrazioni di BizTalk e simili. Tutti noi possiamo (si spera) guardare indietro con orgoglio sulla nostra carriera e dire, "sì, che è stato un duro da risolvere, ma alla fine ho pwned quel sumbitch!" Meglio ancora, ancora più interessanti e divertenti sfide attendono.

Personalmente penso che il mio resume, a questo proposito, è piuttosto profondo e sono piuttosto fiero di esserlo (anche se so che mia moglie non potrà mai capire 1/20 di esso). Ma questa settimana, Stavo leggendo un articolo sul Grande Hadron Collider nel mio americano scientifico scomparto e aveva uno di quei rari momenti umiliante dove ho capito che nonostante il mio "gigante" stato in certi ambienti o come profondo credo che il mio pozzo di esperienza, non ci sono veri e propri colossi in mondi completamente diversi.

Le persone del team di LHC hanno alcuni problemi davvero spinosi per gestire. Considerare la luna. Io non credo molto circa la luna (Se sono stato molto sospettoso riguardo da quando ho imparato che sta rallentando la rotazione terrestre, a lungo termine, che non può essere una buona cosa per noi esseri umani). Ma, il team LHC devono preoccuparsi. Dispositivi di misurazione di LHC sono così sensibili che sono interessate da della luna (Earth-Rotation-slowing-and-eventually-Killing-all-Life) gravità. Questo è un diavolo di un requisito per soddisfare — produrre misure corrette nonostante interferenza della luna.

Io stavo riflettendo su quel problema, quando ho letto questa frase: "Il primo livello riceverà e analizzare i dati da solo un sottoinsieme delle componenti del rilevatore, da cui può prendere promettente eventi sulla base di fattori isolati ad esempio se un muone energico è stato avvistato a volare ad un angolo di grande dall'asse del fascio." Davvero … ? Io non gioco in quanto tipo di sandbox e mai sarà.

La prossima volta sto fuori con alcuni amici, Io vado a brindare alla buone persone che lavorano su LHC, Spero non correttamente pesano la particella del bosone di Higgs e maledire la luna. Ti suggerisco di che fare lo stesso. Sarà piuttosto il brindisi 🙂

</fine>

Technorati Tags:

Impressione rapida: System Center Capacity Planner per SharePoint

Ho appena sparato lo strumento di pianificazione della capacità che il tutta la rabbia di questi giorni.

Ho trovato facile da usare e modellare rapidamente un ambiente client che ho lavorato su quest'estate.

Con una certa trepidazione, Ho premuto il pulsante OK finale e si consiglia di qualcosa che è abbastanza simile a quello che abbiamo dato il nostro cliente (in realtà abbiamo buttato in un secondo server di applicazione per il futuro utilizzo di excel). Prendo che per essere un buon segno e aumenta la mia fiducia nello strumento.

Sembra roba abbastanza potente, un punto di partenza molto migliore rispetto a una pagina vuota.

Mi piace che consente di ottenere in qualche buon dettaglio sull'ambiente. Quanti utenti, come si proiettano useranno il sistema (editrice, collaborazione, ecc), connettività e filiale / capacità di rete tra loro e il server di mamma. Roba buona.

Esso pone domande di base ampie e quindi consente di modificare i dettagli di un modello abbastanza granulare del vostro ambiente.

Ho esitato a scaricarlo perché ho tante altre cose da guardare, leggere e cercare di digerire. Io sono contento di che averlo fatto.

Si tratta di un processo di facile in due fasi. Scarica sistema centro capacità planner e quindi scaricare i modelli di SharePoint. Funziona bene su Windows XP.

Basato sulla mia impressione rapida, Non vedo come potrebbe tenere conto per:

  • Ricerca: Totale documenti, Forse i tipi di documenti, Lingue.
  • Server di Excel: Quanto, Se a tutti?
  • Server di forme: Quanto, Se a tutti?
  • BDC: Quanto, Se a tutti.

Quelli possono essere modellate e basta non vedere li nella 10 recensione di minuto.

Userò sicuramente al mio prossimo cliente.

Se non fossi un consulente e invece lavora per una società reale :), Vorrei mio attuale ambiente di modello e vedere come modello raccomandato dello strumento per le partite contro realtà. Che sarebbe stato abbastanza carino. Potrebbe portare a qualche discussione buona infrastruttura.

</fine>

Soluzione: System.io.FileNotFoundException su “SPSite = nuovo SPSite(URL)”

AGGIORNAMENTO: Ho postato questa domanda a MSDN qui (http://forums.microsoft.com/Forums/ShowPost.aspx?PostID=2808543&SiteID=1&mode=1) e Michael Washam di Microsoft ha risposto con una risposta concisa.

Ho creato un servizio web di agire come un BDC-friendly facciata per un elenco di SharePoint. Quando ho usato questo dal mio ambiente di sviluppo, ha funzionato benissimo. Quando questa migrazione a un nuovo server, Questo errore:

System.io.FileNotFoundException: L'applicazione Web a http://localhost/sandbox non potrebbe essere trovato. Verificare che l'URL è stato digitato correttamente. Se l'URL dovrebbe servire contenuti esistenti, l'amministratore di sistema potrebbe essere necessario aggiungere un nuovo mapping di URL di richiesta per l'applicazione prevista. a Microsoft.SharePoint.SPSite...ctor(Azienda agricola SPFarm, URI requestUri, Boolean contextSite, SPUserToken userToken) a Microsoft.SharePoint.SPSite...ctor(String requestUrl) a Conchango.xyzzy.GetExistingDocument(Stringa minId, String maxId, String titleFilter) in C:\Documenti e SettingsPaulMy DocumentiVisual Studio 2005ProjectsxyzzyBDC_DocReviewBDC_DocReviewDocReviewFacade.asmx.cs:linea 69

Ecco la linea 69:

utilizzando (Sito SPSite = nuovo SPSite("http://localhost/sandbox"))

Ho provato diverse varianti nell'URL, anche utilizzando il nome del server reale, l'indirizzo IP, barre finali l'URL, ecc. Ho sempre avuto quell'errore.

Ho usato Google per ricercare e. Molte persone affrontano questo problema, o variazioni di esso, ma nessuno sembrava di averlo risolto.

MOSS furbata fornito una dettagliata errore che esso non si è verificato a me per controllare il 12 registri di alveare. Alla fine, circa 24 ore dopo il mio collega consigliato di che fare così, Ho verificato il 12 l'hive di registro e trovato questo:

Un'eccezione si è verificato durante il tentativo di acquisire l'azienda agricola locale:
System.Security.SecurityException: Non è consentito l'accesso del registro di sistema richieste.
presso System.ThrowHelper.ThrowSecurityException(ExceptionResource risorse) presso Microsoft.Win32.RegistryKey.OpenSubKey(Name: String, Boolean scrivibile) presso Microsoft.Win32.RegistryKey.OpenSubKey(Name: String) presso Microsoft.SharePoint.Administration.SPConfigurationDatabase.get_RegistryConnectionString() presso Microsoft.SharePoint.Administration.SPConfigurationDatabase.get_Local() presso Microsoft.SharePoint.Administration.SPFarm.FindLocal(SPFarm& azienda agricola, Boolean& isJoined)
La zona dell'assembly che non è stata:  Risorse del computer

Questo ha aperto nuove vie di ricerca, così è stato torna a Google. Che mi ha portato a questo post nel forum: http://forums.CodeCharge.com/posts.php?post_id = 67135. Che non ha davvero aiutato me, ma lo ha fatto iniziare a farmi pensare che c'era un problema di database e/o sicurezza. Mollato e Di Andrew Connell postare finalmente attivato il pensiero che io dovrei assicurarsi che account dell'identità del pool di applicazioni aveva accesso appropriato per il database. Pensavo che lo ha già fatto. Tuttavia, il mio collega è andato e ha dato l'app pool identità account completo accesso a SQL.

Come ha fatto quel cambiamento, tutto ha iniziato a lavorare.

Qual è il prossimo successo è meglio espressa in un Haiku poesia:

Problemi di alzino le mani.
Swing e di perdere. Riprova.
Successo! Ma come? Perché?

Non voleva lasciare le cose solo come quello, preferendo dare l'autorizzazione richiesta minima (e probabilmente con un occhio di scrivere un post di blog; Picchiava il pugno, muhahahahaha!).

Autorizzazioni successive lei tolto l'account di identità del pool di app fino … non c'era più alcuna esplicita autorizzazione per l'account di identità del pool di app a tutti. Il servizio web ha continuato a funzionare bene.

Siamo andati e riavviato il server. Tutto ha continuato a funzionare bene.

Così, per ricapitolare: ci ha dato l'accesso completo alla piscina identità app e poi tolto. Il servizio web ha iniziato a lavorare e mai smesso di lavorare. Bizzarro.

Se qualcuno sa perché che dovrebbe avere lavorato, si prega di lasciare un commento.

</fine>

Technorati Tags: