Hurtig indtryk: System Center Capacity Planner til SharePoint

Jeg bare fyret op kapacitetsplanlægning værktøj that's alle raseri disse dage.

Jeg fandt det let at bruge og modelleret hurtigt et klientmiljø, jeg arbejdede på denne sidste sommer.

Med nogen bæven, Jeg trykkede på knappen endelige OK og det anbefales det er smuk lig hvad vi gav vores klient (vi faktisk kastede i en anden applikationsserver for fremtiden excel-brug). Jeg tager det som et godt tegn og øger min tillid til værktøjet.

Det synes temmelig kraftig ting meget bedre udgangspunkt end en tom side.

Jeg kan godt lide der lader dig komme ind i nogle gode detaljer om miljøet. Hvor mange brugere, hvordan du projekt vil de bruge systemet (udgivelse, samarbejde, osv), filial og tilslutningsmuligheder / netværkskapacitet mellem dem og mama server. Gode ting.

Det stiller bredt baseret spørgsmål og derefter lader du tweak detaljer for en temmelig kornet model af dit miljø.

Jeg tøvede, downloade det, fordi jeg har så mange andre ting at se på det, læse og forsøge at fordøje. Jeg er glad for jeg gjorde.

Det er en let totrinsproces. Download system center kapacitet planner og derefter hente SharePoint-modeller. Det kører fint på Windows XP.

Baseret på min hurtig indtryk, Jeg kan ikke se hvordan det kan tegne sig for:

  • Søg: Samlede dokumenter, måske typer af dokumenter, sprog.
  • Excel server: Hvor meget, Hvis du på alle?
  • Forms server: Hvor meget, Hvis du på alle?
  • BDC: Hvor meget, Hvis du på alle.

Dem, der kan modelleres og jeg bare ikke se dem i den 10 minut anmeldelse.

Jeg vil helt sikkert bruge det på min næste klient.

Hvis jeg ikke var en konsulent og i stedet arbejder for en reel virksomhed :), Jeg ville model min nuværende miljø og se, hvordan værktøjets anbefalede model passer ind i virkeligheden. Det ville være temmelig pæn. Det kan føre til nogle gode infrastruktur diskussion.

</slutningen>

Løsning: System.IO.FileNotFoundException på “SPSite = nye SPSite(URL-adresse)”

OPDATERING: Jeg bogført dette spørgsmål til MSDN her (http://forums.microsoft.com/Forums/ShowPost.aspx?PostID=2808543&SiteID=1&mode=1) og Michael Washam af Microsoft reagerede med et kortfattet svar.

Jeg oprettede en webtjeneste til at fungere som en BDC-venlige facade til en SharePoint-liste. Når jeg brugte dette fra min udviklingsmiljø, Det fungerede fint. Når jeg overflyttet dette til en ny server, Jeg fandt denne fejl:

System.IO.FileNotFoundException: Webprogrammet på http://localhost/sandbox der blev ikke fundet. Kontroller, at du har indtastet URL-adressen korrekt. Hvis URL-adressen skal være tjener eksisterende indhold, systemadministratoren kan være nødvendigt at tilføje en ny anmodning URL-tilknytning til den tilsigtede anvendelse. på Microsoft.SharePoint.SPSite...ctor(SPFarm farm, URI requestUri, Boolean contextSite, SPUserToken userToken) på Microsoft.SharePoint.SPSite...ctor(Strengen requestUrl) på Conchango.xyzzy.GetExistingDocument(Strengen minId, Strengen maxId, Strengen titleFilter) i C:\Dokumenter og SettingsPaulMy DocumentsVisual Studio 2005ProjectsxyzzyBDC_DocReviewBDC_DocReviewDocReviewFacade.asmx.cs:linje 69

Her er linjen 69:

ved hjælp af (SPSite site = ny SPSite("http://localhost/sandbox"))

Jeg prøvet forskellige variationer på URL-adressen, herunder ved hjælp af serverens rigtige navn, dens IP-adresse, efterstillet skråstreg på URL-adressen, osv. Jeg fik altid at fejl.

Jeg brugte Google til forskning det. Masser af mennesker står over for problemet, eller variationer af det, men syntes ingen at have det løst.

Tricksy MOSS forudsat en detaljeret fejl, at det ikke faldt til mig at kontrollere den 12 hive logs. Til sidst, om 24 timer efter min kollega anbefalede jeg gøre det., Jeg tjekkede ud den 12 hive log og fandt denne:

Der opstod en undtagelse under forsøget på at erhverve den lokale farm:
System.Security.SecurityException: Anmodede indskrive adgang er ikke tilladt.
på System.ThrowHelper.ThrowSecurityException(ExceptionResource ressourcer) på Microsoft.Win32.RegistryKey.OpenSubKey(String navn, Boolesk skrivbar) på Microsoft.Win32.RegistryKey.OpenSubKey(String navn) på Microsoft.SharePoint.Administration.SPConfigurationDatabase.get_RegistryConnectionString() på Microsoft.SharePoint.Administration.SPConfigurationDatabase.get_Local() på Microsoft.SharePoint.Administration.SPFarm.FindLocal(SPFarm& Farm, Boolesk værdi& isJoined)
Zonen for den forsamling, der ikke var:  MyComputer

Det åbnede op for nye muligheder for forskning, så det var tilbage til Google. Det førte mig til dette forumindlæg: http://forums.CodeCharge.com/posts.php?post_id = 67135. Der ikke virkelig hjælpe mig, men det begynde at gøre mig tror, der var et problem med databasen og/eller sikkerhed. Jeg fortsatte og Andrew Connell bogføre endelig udløst den tanke, at jeg skal sørge for at programgruppens identitet konto havde passende adgang til databasen. Jeg troede det allerede gjorde. Dog, min kollega gik og gav app pool identitet konto fuld adgang til SQL.

Så snart hun har foretaget denne ændring, alt begyndte at arbejde.

Hvad der skete næste er bedst udtrykt i en Haiku digt:

Problemer hæve deres hænder.
Du swing og miss. Prøv igen.
Succes! Men hvordan? Hvorfor?

Hun ønskede ikke at lade tingene alene, men foretrækker at give den mindste nødvendige tilladelse (og formentlig med henblik på at skrive en blog post; Jeg fik hende til punch, muhahahahaha!).

Hun fjernede successive tilladelser fra app programgruppens identitet konto indtil … der var ikke længere nogen udtrykkelig tilladelse til app programgruppens identitet konto på alle. Webtjenesten fortsatte med at fungere fint.

Vi gik og genstartet serverne. Alt fortsatte med at fungere fint.

Så, at opsummere: Vi gav den app pool identity fuld adgang og derefter tog det væk. Webtjenesten begyndte at arbejde og aldrig standsede i orden. Bizarre.

Hvis nogen ved, hvorfor der bør har arbejdet, venligst efterlade en kommentar.

</slutningen>

Technorati Tags:

Løsning (slags): Angive prioriteten for en opgave, ved hjælp af SharePoint Designer

Jeg har en business scenarie som dette:

  • En bruger overfører et dokument til et dokumentbibliotek.
  • Hun vælger en indholdstype og indtaster metadata efter behov. Et af felterne meta data er et flag, "Haster".
  • Dette udløser en SharePoint Designer arbejdsprocessen,, blandt andet, bruger den "indsamle Data fra en bruger" handling.

"Indsamle Data fra en bruger" opretter et element i en opgaveliste, anmoder om godkendelse til dette dokument.

Jeg havde brug at oprette en visning af opgavelisten, der viste hasteanmodninger om godkendelse.

Løsning: Sætte ord "haster:" i titlen på disse opgaver.

Jeg ville have foretrukket at angive feltet prioritet direkte. Dog, Jeg var ikke i stand til at gøre det af flere årsager:

  1. Handlingen Indsaml data giver ikke en mekanisme til at opdatere alle felter undtagen titel (og de ekstra felter, du vil indsamle data).
  2. Den "Tildel en at vare" handling har den samme opgave.
  3. Det er muligt at indsætte et element i en liste (dvs. indsætte et element i hverv listen direkte) men dette ikke handlingen blokering. Det betyder, at arbejdsprocessen ikke venter for brugeren at udføre opgaven.

Jeg fandt et par tilgange inden (Heldigvis) indser vi bare kunne sætte "presserende" i titlen.

  1. Start en arbejdsproces på listen over opgaver selv, så når en ny opgave er oprettet, det en eller anden måde krydse referencer tilbage til det dokument, der startede den første workflow, Træk værdien presserende flag og opdatere prioritet efter behov.
  2. Gøre noget ligende med en event modtager. På Opret opgave, Find det tilknyttede dokument og opdatering prioritet efter behov.
  3. Brug "oprette listeelementet" handling i forbindelse med "Vent for feltet ændring" handling og en event modtager. Hvis vi opretter et listeelement, Vi kan angive alle de felter, vi vil. Bruge en begivenhed modtager opdatere den oprindelige vare, når brugeren afslutter opgaven og "Vent for feltet ændring" aktionens betingelse ville være opfyldt og arbejdsprocessen vil fortsætte. (For anden grund, Jeg havde mere eller mindre afgjort på denne tilgang før klogt beslutter at gå væk i et stykke tid).

Der er en ulempe at min løsning (bortset fra det åbenlyse faktum, at kun teksten af titlen tyder uopsættelighed). Siden "indsamle feedback" accepterer kun hårdt kodet titel navne, Jeg skal bruge to forskellige indsamle feedback handlinger, hvis eneste forskel er, at hard kodet titel.

Men, i det mindste er der en løsning, der ikke kræver hændelsesmodtagere eller brugerdefinerede SPD handlinger.

Hvis nogen har løst det på en mere smart måde, Lad mig vide.

</slutningen>

Søndag Funny: At holde din søn på hans tæer

En af de mange glæder jeg tager i at være forælder til en ti-årig dreng er at finde nye måder at gøre ham grine eller tænke lidt anderledes spørgsmål og ting i verden. Jeg har brugt disse teknikker gennem årene:

===

Mistyde hans spørgsmål:

Søn: Hvad dag er det?

Far: En dag før onsdag.

S: Nej, Hvad dag i måneden er det?

D: Åh, Det har 4 dage efter Jan 25.

===

Pirrer ham og fortælle ham, at du vil stoppe når han holder op med at grine.

===

Gå ned ad trappen til TV-stuen og annoncere, "Det er godt at være daddy." Derefter, samle ham op for at få varmt spot på sofaen og skifte kanal til noget godt, ligesom Scifi channel.

===

Læst historier højt. Indsæt latterlige sætninger i historien. Min favorit er at tilføje "dræbe ham straks" Når hovedpersonerne støder nogle mindre problemer. For eksempel, "kniven gled i hånden, skære hans pegefinger, dræbe ham straks." Intet får helt din søn af en selvtilfreds og passivt lyttende tilstand som hovedpersonen dræbes øjeblikkeligt.

===

Læs historier forkert. Læs sætninger bagud. Den bedste del af dette er, at de første par gange jeg gjorde det, min søn troede han hjalp mig ved at påpege, at jeg ikke var læsning ord i den rigtige rækkefølge. Den nede side er, at han virkelig ikke ønsker mig at læse ham mere.

===

Gå til Burger King til frokost. Min søn ville spise BK morgen, nat og dag, hvis vi lod ham. Når du går, Fortæl ham, "Jeg kender du hader, vil der, men vi har simpelthen ikke noget valg." Når han forsøger at forklare, at elsker han BK, tale over ham og sige ting som "vi ikke har tid til at skændes om det! Vi kommer og jeg ønsker ikke at have en diskussion!"

(Det minder mig om min favorit Borg joke: "Borger King: Vi gør det vores måde. Din vej er irrelevant." hahaha!)

===

Åbne en bog til side 9 og sige, "hmm, Det er en ulige side".

===

Fyld verden med ærkefjender. "Vi kommer til at køre hurtigt over tå 7-11, ærke-fjende af 11-7 ".

"Din tante bor i Ringwood, Arch enemy til byen Squarewood."

===

Vi kører op til Massachusetts fra New Jersey flere gange om året og det ofte tager om 5 timer dør til dør. Da vi kommer hjem og trække ind i indkørslen sige, "Åh, Jeg glemte, Vi har brug at foretage en hurtig dash Home Depot."

===

Når du ser en voldelig episode i et TV-show (som helte), fortælle din søn, "nogle gange, på arbejdspladsen, Jeg har brug at ødelægge mine fjender ved at brænde dem i live, ved hjælp af beføjelser i mit sind. Jeg kan ikke lide det., men du må gøre, hvad du skal gøre."

===

Når du ser dårlig horror-film (Se "det er godt at være far" ovenfor), tillægge den onde karakter usandsynlige motiver. For eksempel, fortælle din søn, at grunden til Jason er så vred er fordi han ønsker nogle kage og de vil ikke lade ham have nogen.

===

Forklare telefonnumre forkert. I stedet for at fortælle din søn til at ringe til "201-111-2222", Fortæl ham det er "2-011-1-12222".

===

Hvilke tricks bruger du?

</slutningen>

Technorati Tags:

Gæst Blogging?

Det forekommer ret almindelig i verdens politiske blogging for en given blog til at være vært for en "gæsteblogger". Når jeg i politisk blog land skal jeg være iført en forskellige par briller, fordi det aldrig opstod mig at "gæst blogging" kan give mening for en teknisk blog som mit. Det er, indtil jeg læste dette indlæg af Kanwal Khipple over på Bedst af SharePoint Buzz- Januar 2008.

Tænker på det, Jeg mener, at der kunne være en masse mennesker derude i SharePoint land, der har kløe til at sammensætte en artikel, korte eller lange, tekniske eller mere erhvervsorienteret, osv, men ikke køre deres egen blog for alle de sædvanlige grunde. Hvis du er en af dem, Jeg ville være glad for at være vært for det. Du kan kontakte mig via e-mail eller Efterlad en kommentar. Jeg har ikke tænkt igennem enhver form for retningslinjer, men jeg formoder, at jeg ville have det til at være orienteret omkring SharePoint, men jeg vil også gerne smide i nogle personlige bemærkninger om consulting nu og derefter. Jeg forsøger også at udgive en "Søndag Funny" hver uge, og jeg er nødt til at løbe tør for ideer til.

Hvis du er en regelmæssig blogger allerede men vil gerne eksperimentere med gæst blogging, Jeg er absolut åben for at for, either as a host or a guest 🙂

</slutningen>

Technorati Tags:

Løsning til BDC-ADF Import fiasko: “Følgende fejl opstod:”

Jeg igen crafting BDC ADF filer i hånden (så at jeg kan opbygge min "stå af min græsplæne!" Cred) og ramte denne dejlige fejl:

billede

"Importen af programdefinitionen mislykkedes. Følgende fejl opstod:"

Som du kan se, der er en fejl, Men … det ikke gonna fortælle mig hvad det er.

I mit tilfælde, Problemet viste sig at jeg havde startede med en funktionel ADF for et andet projekt, der forbundet til en database og kørt en SQL forespørgsel mod en visning. I dette nye projekt, Jeg kalder en metode på en webtjeneste. Jeg havde strippet ud DB specifikke ting og tilføjet min web service ting, men kunne ikke opdatere den <LobSystem>'s type-attribut. Jeg skiftede det til "WebService" og jeg heldigvis flyttet til nyere og mere spændende importfejl, som blev håndteret med tiden.

Her er den forkerte LobSystem:

<LobSystem
xmlns:XSi =http://www.w3.org/2001/XMLSchema-instance
XSi:schemaLocation =http://schemas.Microsoft.com/Office/2006/03/BusinessDataCatalogBDCMetadata.xsd
Type = "Database"
Version = "1.0.0.0" Navn = "xyzzy"
xmlns ="
http://schemas.Microsoft.com/Office/2006/03/BusinessDataCatalog">

Dette er korrekt:

<LobSystem
xmlns:XSi =http://www.w3.org/2001/XMLSchema-instance
XSi:schemaLocation =http://schemas.Microsoft.com/Office/2006/03/BusinessDataCatalogBDCMetadata.xsd
Type = "WebService"
Version = "1.0.0.0" Navn = "xyzzy"
xmlns ="
http://schemas.Microsoft.com/Office/2006/03/BusinessDataCatalog">

</slutningen>

Technorati Tags:

BDC synes en levedygtig erstatning For opslag

OPDATERING: Denne MSDN udstationering har nogle interessante bemærkninger fra JXJ baseret på hans, overvejende negativ, erfaringer går denne vej: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2623565&SiteID=1

Vi har en business scenario hvor vi skal sammenkæde to dokumenter biblioteker via en fælles "dokument-ID" felt.

Vi bruger ofte en opslagskolonne til redskaber links som dette. Der er flere ulemper for opslagskolonner, tre af dem er:

  1. Kun én kolonne fra biblioteket opslag opslag kan være forbundet.
  2. Ydeevne: Kildebiblioteket kunne indeholder hundredvis af poster. Der er for mange poster i opslaget.
  3. Søg: Der er ingen integreret søgning. Jeg mener ikke i ordets MOSS søgning, men der er ingen måde at søge / filtrere efter flere kolonner fra kildedokumentbiblioteket og Find den kæde, du vil.

Bakket op af BDC, Vi kan bruge en "business data" kolonnetype, og det giver en overlegen søgning og giver mulighed for endda flere kolonner med data, der skal vises i listevisninger.

Jeg har haft nogle indledende succes med denne tilgang og planlægger at skrive mere om det.

Hvis du har arbejdet denne vinkel før og har kommentarer, behage lod!

</slutningen>

Technorati Tags:

Løsning til BDC-importfejl: “Der er beskrevet af TypeName for TypeDescriptor, kunne ikke indlæses …”

Jeg har arbejdet med BDC i dag, kodning ADF filer i hånden og generere mig nogle fejl. En sådan fejl:

Importen af programdefinitionen mislykkedes. Følgende fejl opstod: Der er beskrevet af TypeName for TypeDescriptor, kunne ikke indlæses. Parameternavnet: typeName fejl opstod på eller lige før Line: «35’ og holdning: '20'.

MOSS vises denne fejl, når jeg prøvede at importere filen ADF XML.

Jeg researchede Internets og fundet, at jeg var henvisninger forekomstnavn LOB (fra den <LobSystemInstance>) i min <TypeDescriptor> node, når jeg skal have refereres LOB navnet i sig selv (fra <LobSystem>).

Forkert:

<TypeDescriptor TypeName="Conchango.KeyValue, LOB forekomstnavn" Navn = "Nøgleværdi">

Rette:

<TypeDescriptor TypeName="Conchango.KeyValue, LOB navn" Navn = "Nøgleværdi">

Håbe denne ene sparer nogen en time eller to af tid.

</slutningen>

Abonner på min blog!

Technorati Tags: