Mesečni arhiv: Novembra 2007

Ne moreš premagati SharePointovega Reach

V zadnjih dveh dneh, Sodeloval sem tudi dve srečanji, v katerem smo predstavili rezultate projekta SharePoint. CIO in njegovi ekipi pridružil prvo srečanje. To je standard in ne posebno opazni. IT oddelek je očitno sodelujejo v podjetje zagona projekta vsako tehnologijo. Drugo srečanje razširili na V.P. od trženja, več direktorjev, ki predstavljajo HR, Logistika, Izdelave, Kapitalski projekti, Kakovosti, Nakup, Razvoj podjetja in drugimi oddelki (med katerimi so bili tudi neposredno vpleteno v sedanji fazi). To je mogočni široko občinstvo.

V mojem življenju, predhodno, Sem delal predvsem na ERP in CRM projektih. Oba sta dokaj široko rešitev domene, vendar ne tako široko, kot SharePoint. Celoti realiziran, SharePoint projektov upravičeno in nujno doseči v vsak kotiček in špranjo organizacije. Koliko drugih rešitev podjetja so nekako doseči, da? Ni veliko.

SharePoint jasno predstavlja ogromen prilika za tiste od nas srečo, da se v tem prostoru. Ponuja veliko priložnost za tehnične (ki je nekako obrnil na glavo tukaj pod "Tehnologije si mora kapitan"). Toda še bolje, SharePoint nas izpostavlja obsežno in široko paleto poslovnih procesov prek teh poslih. Koliko CRM strokovnjaki delo s strani proizvodnega podjetja? Koliko ERP svetovalci delo s človeškimi viri na pridobivanja? SharePoint presega oba.

Tako kot vse, to ni popoln, ampak to je prekleti dober kraj za.

Za ljubezen [izpolnite vaše najbolj ljubil oseba/višje bitje], ne spremeni v "naslov’ stolpec mesta.

Na na SharePoint Forumi, občasno nekdo sprašuje o "Spreminjanje oznako naslova" ali o "odstranjevanje naslov iz seznamov".

Bottom line: Ne stori!

Na žalost, uporabniški vmesnik omogoča enosmerno sprememba to oznako stolpca, kot je prikazano:

slike

Naslov je stolpec povezan z elementom"" vrste vsebine. Veliko, veliko, veliko je CT uporabiti ta stolpec in če spremenite tukaj, to valovi, povsod. Obstaja velika verjetnost, da niste nameravali za to zgodilo. Ste verjetno razmišljanje za sebe, "Imam seznam po meri za iskanje in" naslov’ samo nima smisla kot ime stolpca, tako da bom to spremeniti v "kodo stanja’ in dodate stolpec z opisom." Ampak, če sledite s pomočjo za to misel in preimenovati "naslov’ za "Kode stanja", Vsak seznam naslov (vključno s knjižnicami dokumentov) spremembe kode stanja"" in ste verjetno niste nameravali za to zgodilo.

Resnični problem je, da je to enosmerna spremembe. UI "ve" Ta naziv"" je rezervirana beseda. Tako, Če poskusite in spremenite kodo stanja"" nazaj v "Naslov", to hoteti voditi vi in zdaj ste sami pobarvane v kotu using paint that never dries 🙂

Torej kaj se zgodi, če ste že spremenili? Nisem še videl odgovor, si vsi želimo, ki je preprost in enostaven način, da spremenite oznaki nazaj v "Naslov". takoj, najboljši nasvet je, da jo spremenite v nekaj kot "Doc/točki naslov". To je dovolj generično oznako, ki ne sme biti preveč neskladen za uporabnike.

Imam nekaj idej, ki so na mojem to-do seznamu stvari za raziskave:

  • Obrnite se na Microsoft.
  • Nekaj narediti s predmetnega modela, morda v povezavi s funkcijo.
  • Razbrati shemo zbirke podatkov in ročno posodobiti SQL. (Vi should zveza mikroskop spredaj početje to četudi; To bo verjetno nična vzdrževalno pogodbo).

Če kdo ve, kako rešiti to, prosim pokomentirajte.

Posodobitev pozno popoldne, 11/15: Sem našel ta povezava, ki opisuje metodo za ustvarjanje vrste seznam, ki nima naslova stolpca: http://www.venkat.org/index.php/2007/09/03/how-to-remove-title-column-from-a-custom-list/

BDC SPD in prijateljem, CDATA

Sem opazil nekaj nerodno in nepotrebno ročno-kodiranje RdbCommandText v nekaj primerov (vključno z MSDN dokumentacijo).

Sem želel poudariti novincem BDC, da ukaze je mogoče zaviti notri CDATA tag v njihovem "naravnem" obrazec. Tako, to nerodno gradnje:

<Lastnost ime="RdbCommandText" Vrsta="System.String">
Izberite dbo.MCRS_SETTLEMENT.ID, DBO.MCRS_SETTLEMENT.settlement iz dbo.MCRS_SETTLEMENT
KJER (ID &gt;= @MinId) IN (ID &lt;= @MaxId)
</Lastnost>

lahko bolje zastopane na ta način:

<Lastnost ime="RdbCommandText" Vrsta="System.String">
<![CDATA[
Izberite dbo.MCRS_SETTLEMENT.ID, DBO.MCRS_SETTLEMENT.settlement iz dbo.MCRS_SETTLEMENT
KJER (ID >= @MinId) IN (ID <= @MaxId)
]]>
</Lastnost>

</namen>

BDC premaz

Uvod v BDC

Funkcionalno primer: BDC ADF, ki povezuje SQL zbirko podatkov z vgrajeni uporabniški id in geslo

Sem potreboval, da žica do MOSS v SQL zbirko podatkov prek BDC. Za namene testiranja POC, Sem hotel embed SQL uporabnik ime ter parola v samodejni podajalnik dokumentov. Začenši z to predlogo (http://msdn2.microsoft.com/en-us/library/ms564221.aspx), Sem ustvaril ADF, ki povezuje določen primerek strežnika SQL in prijavi določenega uporabnika id in geslom in prikazano v ta košček:

  <LobSystemInstances>
    <LobSystemInstance ime="ClaimsInstance">
      <Lastnosti>
        <Lastnost ime="AuthenticationMode" Vrsta="System.String">Prepustnost</Lastnost>
        <Lastnost ime="DatabaseAccessProvider" Vrsta="System.String">SqlServer</Lastnost>
        <Lastnost ime="Vir podatkov RdbConnection" Vrsta="System.String">dejanski serveractual stopnje</Lastnost>
        <Lastnost ime="RdbConnection začetni katalog" Vrsta="System.String">Dejanski začetni katalog</Lastnost>
        <Lastnost ime="RdbConnection vgrajene varnostne" Vrsta="System.String">SSPI</Lastnost>
        <Lastnost ime="RdbConnection združevanje" Vrsta="System.String">FALSE</Lastnost>

        <!-- To so ključne vrednote: -->
        <Lastnost ime="ID uporabnika RdbConnection" Vrsta="System.String">actual ID uporabnika</Lastnost>
        <Lastnost ime="RdbConnection geslo" Vrsta="System.String">sedanji parola</Lastnost>
        <Lastnost ime="RdbConnection Trusted_Connection" Vrsta="System.String">FALSE</Lastnost>

      </Lastnosti>
    </LobSystemInstance>
  </LobSystemInstances>

To ni najboljše prakse, vendar je koristno za hitro in enostavno konfiguracijo za testiranje. To je bil presenetljivo težko razbrati. Nikoli nisem našel funkcionalno primer z preiskava keywords:

  • ADF vdelan, userid in geslo
  • Vdelaj id uporabnika in geslo v samodejni podajalnik dokumentov
  • Vdelaj id uporabnika in geslo v adf bdc
  • SharePoint bdc premaz
  • SharePoint vdelajo uporabniško ime in geslo v samodejni podajalnik dokumentov

</namen>

Naročite se na moj blog.

EPD poteke dejanj — string manipulacije izboljšave

Približno pred enim tednom, Sem začel codeplex projekt, ki zagotavlja enostavno in razumno generičnih način za dodajanje funkcij dejanje po meri za potek dela SharePoit oblikovalec. Je opisano tukaj: http://www.codeplex.com/spdwfextensions. Presega preprosto v okviru, skuša nabor uporabnih funkcij, ki bo EPD koristen/prilagodljiv/močnejši.

Tukaj so trenutno načrtovano funkcije za prevod 1.0: https://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=spdwfextensions&ReleaseId=8280

Če ima kdo kakršne koli obresti v tem projektu, prosim pustite komentar, ali start/dodati razprava tukaj: http://www.codeplex.com/spdwfextensions/Thread/List.aspx

Tukaj so trenutni nabor funkcij, ki so bili kodirani (Čeprav ni popolnoma preskušena kot od 11/08/07):

Funkcija Opis (Če ni isto kot .net funkcijo)
NUM-postavke() Vrne število vpisov"" v nizu glede na navedeno ločilo.

Na primer: NUM-vnosov v nizu "a,b,c" z ločilo"," = 3.

Vnos() Vrne n-žeton v nizu glede na navedeno ločilo.
Dolžina String.Length
Zamenjaj() String.Replace()
Vsebuje() String.Contains()
Vrne besedo "true" ali besedo "false".
Podniz(začetek) String.Substring(začetek)
Podniz(začetek,namen) String.Substring(začetek,namen)
ToUpper() String.ToUpper()
String.tolower() String.ToLower()
StartsWith() String.StartsWith()
Vrne besedo "true" ali besedo "false".
EndsWith() String.EndsWith()
Vrne besedo "true" ali besedo "false".

Hitro & enostavno url kodiranje namiznim orodjem

Sem potrebovala URL-encode nekaj nizov ta teden in udaril skupaj malo korist, ki sem mislil, jaz bi dal gor SkyDrive za Skupnost.

Dobite binarni tukaj: http://cid-1cc1edb3daa9b8aa.skydrive.live.com/self.aspx/SharePoint/WinUrlEncode.zip

Dobili v rešitvi visual studia tukaj: http://cid-1cc1edb3daa9b8aa.skydrive.live.com/self.aspx/SharePoint/WinUrlEncodeVS2005.zip

Tu je zaslon strel:

slike

Hitro in enostavno: Embed hiperpovezavo v spletni gradnik podatkovnega pogleda XSLT

POSODOBITEV (01/17/08): Ta vnos blog govori o več hiperpovezavo XSL dobrote: http://www.sharepointsecurity.com/blog/sharepoint/sharepoint-2007-development/rewriting-links-in-search-results-xslt.

Pregled in cilj: Sem ustvaril preprost palični grafikon služiti kot komponente na nadzorno ploščo. Boste prihranili podrobnosti o gradnji kart za drugo delovno mesto, ampak nisem izmislil to tehniko (niti vprašaj, za to zadevo). Izkazalo se je, je bila žuželka v grafikonu, in medtem ko sem popravil, ki, Vzel sem priložnost, da spremenijo nekatere oznake v hiperpovezave, ki je opozoril na osnovni seznam za graf. Na primer, tam je nalepka z vrednostjo "Hold". Sem hotel obrniti oznako v hiperpovezavo, tako da uporabnik lahko kliknete nanj in vaja na posebni vnosi na seznamu, katerih vrednost stanje je, "Drži".

Koraki:

  1. Visual studio uporabi za SharePoint-svest intellisense.
  2. Kopiraj v DVWP XSLT v visual studio (Ustvarite prazen projekt, Datoteka XSL dodati projekta).
  3. Kopiraj povezavo, ki jo želite uporabiti v odložišče.
  4. Ga prilepite v pravo mesto v XSL.
  5. Pretvori argument ločila URL na vprašanje tetiva s"&" do"&amp;"
  6. URL kodiranje posameznih argumentov.
  7. Zaviti da notri je <a href…> </a>

Primer:

Imam URL:

http://[strežnik]/[mesto]/Lists/Open Positions/AllItems.aspx?Ogled ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = Recruiter&FilterValue1 = držite

Spremeniti v:

     <a href="Lists/Open Positions/AllItems.aspx?Pogled = % 7b84EEA2F5-121B-40B7-946F-
0FA704A1DAA1 %7 d&amp;FilterField1 = Recruiter&amp;FilterValue1 = držite"> Držite: </a>

Ročno so preoblikovali prvi argument iz:

{84EEA2F5-121B-40B7-946F-0FA704A1DAA1}

za:

%7b84EEA2F5-121B-40B7-946F-0FA704A1DAA1 %7 d

(V tem, oklepaj pretvorbe v % 7b in zapiranje oklepaja transformacije %7 d)

Drugi in tretji argumentov’ parametri ("FilterField1 =Recruiter" in "FilterValue1 =Držite" oziroma) ni treba url-kodirana ker ne vsebujejo nobenih znakov nevarnih.

Opombe:

Ta tehnika bi morala na splošno dela kjerkoli želite vdelati hiperpovezavo v XSLT kje hiperpovezavi vključuje parametre na URL, kot:

http://[strežnik]/[mesto]/Lists/Open Positions/AllItems.aspx?Ogled ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = Recruiter&FilterValue1 = držite

Sem dobil URL z dostopom po meri seznam in ročno filtriranje na stolpec stanje (z oznako "Recruiter" zgoraj).

Hitro in preprosto: Omogočajo potek dela SharePoint Designer za posodobitev InfoPathov obrazec

Scenarij: Imam InfoPathov obrazec, ki spredaj-konča pa postopka poteka dela, ki se izvaja s programom SharePoint Designer. Na eni točki, manager mora odobriti v obliki. Saj ne more zanašati zgodovine poteka dela za svoj nadzor zahtevam, Sem se odločil spraviti svoj lasten nadzor sporočilo neposredno na sam obrazec.

Pregled:

Obrazec lahko oblikujete in objavite kot a vrste vsebine in sam obrazec v knjižnico dokumentov. Mark želenega polja obrazca, da posodablja iz MOSS. Obrazec je vezana na vrsto vsebine in vrste vsebine "priključen" v knjižnico obrazcev (ali je to veliko, če želiš). Napišite potek dela, da posodobi polje.

Posebne ukrepe:

  1. Ustvarite knjižnico dokumentov. To bo imel InfoPathove predloge.
  2. Ustvarite knjižnico obrazcev.
  3. Ustvarjanje InfoPathovega obrazca. Vključuje polje z besedilom, "Revizijsko sporočilo".
  4. Objaviti obrazca kot vrsto vsebine (NI dokumenta).
  5. Medtem ko izpolnite objavljanje pogovorna okna:
    a) Shranite datoteko .xsn v knjižnico dokumentov (korak #1).
    b) Objavi revizijsko sporočilo"" polja in mark res: "Uporabnikom omogočiti urejanje podatkov v polju podatkovnega lista ali lastnosti strani".
    c) Ustvarite novo vrsto vsebine in ji dati primerno ime.
  6. Dostop do knjižnice obrazcev.
    a) Iti k napreden postavljanje ter usposobiti Knjižnica obrazcev za upravljanje vrste vsebine.
    b) Izberite novo ustvarjeno vrsto vsebine (5c zgoraj). To bo mogoče združiti pod "Microsoft InfoPath" (ali podobno).
    c) Odstranite privzete "obliki" vrsta vsebine iz knjižnice.
    d) Znamke knjižnice na "Prikaži kot spletno stran" tako, da obrazec hoteti splavitev od SharePoint in ne InfoPath delovna postaja odjemalca.
  7. Gremo nazaj na ustrezno knjižnico obrazcev in kliknite "New" preprosto preverite, ali obrazec pravilno knjižene in deluje kot želite.
  8. Razvneti SharePoint Designer in poiščite mesto, ki gosti vaše knjižnice obrazcev (iz step 2).
  9. Ustvarite nov potek dela, pripada knjižnici obrazcev.
  10. Dodamo samo "Nastavite polje v trenutni element". Vi should slutiti SharePoint Designer seznam ste vaše polje, "Revizijsko sporočilo". Dodeli vrednost.
  11. Kliknite Dokončaj in iti nazaj v knjižnici obrazcev.
  12. Ustvarjanje novega obrazca in nekatere vrednosti test v revizijsko sporočilo"" polje.
  13. Shranite in iti nazaj v knjižnici obrazcev.
  14. Z desno tipko miške, Izberite "potek dela" in začeti ki gre gor vaš potek dela.
  15. Mora teči skoraj takoj. Dvigni obliki (iz step 12) in če vse je šlo za načrtovanje, Revizijsko sporočilo"" je bila dodeljena, ne glede na vrednost, ki ste ga navedli v korak 10.

Opombe:

Vsi kontrolniki morda konfigurirana za to dvosmerna komunikacija. Na primer, se zdi, da izvajanje EPD potek dela, ki spreminja besedilo polja zaviti v ponavljajočih se odsekih.

Eden od ključnih Vzemi-stran je tukaj je, da smo resnično ustvarili vrsto vsebine z povezana predloga. To nam omogoča, da shranite več predlogah obrazcev InfoPath v isti knjižnici obrazcev.

To zahteva obrazec pomočnik. To je gotovo ne bo šlo v a WSS 3.0 okolje in verjetno celo zahteva okolje podjetja SharePoint.

Beagle je pristal (Oktobra 2007 vprašanje)

(To je pravzaprav malo stara novica, ampak kot moj najljubši gasilskem moto razglaša, "Bolje pozno kot nikoli").

Preverite tukaj: http://www.sharepointbeagle.com/

Če ste že vpisani, Bodite prepričani, da prijava.

seveda, obstati varen čitati moj članek o realnem svetu SharePoint projekt (vključno z zahteve opredelitev, KPI-jev, vrste vsebine, nadzorne plošče in več) kot tudi moj kolega članek o spletni gradnik poizvedbe vsebine.

Obstaja veliko drugih dobrih stvari preveč.

Kako odstraniti “Prikaži vsa vsebina mesta” povezava

Sem vprašal to vprašanje skoraj vsak teden, običajno v okviru varnost razpravo. Skrbnik/stran ustvarjalca je omogočen mesto, konfiguriran varnostni, urejeno spletno deli in prilagodite hitri zagon skrbeti da oh-tako-odlično nabor možnosti za končnega uporabnika. toda, iz škatle, ne morete odstraniti z »ogled celotne vsebine mesta" povezava.

Mark Wagner ponuja odgovor tukaj (http://www.crsw.com/mark/Lists/Posts/Post.aspx?ID=36). Svojem napisati-up je grozen na dveh ravneh. Ponuja odgovor na vprašanje, "Kako odstraniti na ogled celotne vsebine mesta" povezava? Nato, odgovori takojšnje nadaljnje vprašanje: Kako lahko omogočim ogled celotne vsebine mesta povežete na podlagi spletnem mestu?

Kot bonus: Njegov pristop dela za WSS, ne samo MOSS.

</namen>

Naročite se na moj blog!