Mesečni arhiv: Februarja 2008

Manjše javne objave: Windows Live varnostne nastavitve in stik prostor lastnikov

Dobim peščica sporočila od posameznikov preko zidava-v "Pošlji sporočilo" Funkcija Microsoft ponuja live spaces (ki tudi gosti svoj blog) vsak mesec.

Približno ena tretjina časa, Ti uporabniki zavarovani svoj račun živo prostorov tako, da ne more odgovoriti. To je neke vrste zunanja oblika smešen-spam, predvidevam.

</namen>

Preprosta razlaga: “Vrednosti ne sodi v pričakovanem območju.”

POSODOBITEV: Anonimni plakat levo veliko pripomb o notranja imena. Obstati varen čitati to.

Pri delu z dogodek sprejemniki in drugo kodo, ki se sklicuje na elemente s seznama SharePoint prek predmetnega modela, I pogosto delajo napake, ki jih ustvarjajo te napake med izvajanjem:

Napaka pri nalaganju in teče dogodek sprejemnik Conchango.xyzzyEventReceiver v xyzzy, Različica = 1.0.0.0, Culture = neutral, ŽetonJavnegaKljuča = 0dc50a750396c3ac. Dodatne informacije je pod. : Vrednosti ne sodi v pričakovanem območju.

Mislim, to je dokaj splošne napake, ki potencialno povzroča različne načine. Vendar, Ena preprosta razlaga je, da sem navajanje polje nepravilno. Če je ime polja "Rok", Morajo reference je takole v dogodek sprejemnik:

lastnosti.ListItem["Datum zapadlosti"]

Ko sem napačno črkujete oz. napačno primer uporabe, ko se sklicuje na polje, SharePoint ustvarja zgoraj omenjene runtime napake. Na primer, To je narobe:

lastnosti.ListItem["datum zapadlosti"]

</namen>

Naročite se na moj blog.

Technorati Tags:

Nasvet za končnega uporabnika: Vrsta pogledov v knjižnico dokumentov, Seznam, itd.

Smo lahko, naj in ustvarite več pogledov na seznamih SharePoint (knjižnice dokumentov, sezname po meri, itd). SharePointovi seznami vedno na voljo pogledov v abecednem vrstnem redu. Ne moremo spremeniti to uporabo iz box funkcionalnosti. Če to moči obstati velja pot prilagajanja (in nisem prepričan, da lahko), To je daleč za tehnični za tipične končnega uporabnika.

Če želite nadzorovati vrstni red v SharePoint, ki prikaže razpoložljive poglede, preprosto spredaj dodajte znak številko ali črko na ime pogleda, kot v:

1 – Glede na vrsto materiala
2 – Vse dokumente
3 – Datum zapadlosti

-ali-

A – Glede na vrsto materiala
B – Vse dokumente
C – Datum zapadlosti

Prav tako so ustvarili poglede, katerih namen je strogo nahraniti KPI. Sem bil po tem dogovorom o poimenovanju:

Z_KPI_[opis]

Ki povzroča moje "KPI" pogledi na dnu seznama.

</namen>

Naročite se na moj blog.

Nedelja smešno: “Ko sem bil majhen deček”

Kot matično, nekje vzdolž proge, ki sem odkril v "ko sem bil majhen deček" trik.

Moj sin, verjetno štiri ali pet v času, igral balon in kot najbolj malo fantje, ki igrajo z baloni, je izstrelil. Je bil zelo. Na svetu je prišel do konca. Sem mu rekel, "ko sem bil majhen deček, Sem imel balon in ga izstrelil in sčasoma, Sem dobil novo balonom." Je zdelo, da bi mu pomagal spopadati z njegovo izgubo in privedla do zabavno govoriti o tem, kako je bilo, ko sem bil majhen deček.

Ki je delal tudi kot tolažbo tehniko in se je večkrat v naslednjem časovnem obdobju. Sem dobil v težavah enkrat ko njegov Monster Rančer 3 bitje, ki je umrl. Sem goviril približno kako moj pes, Princ, je umrl v prometni nesreči. tokrat, njegov odgovor je bil, "Zdaj počutim slabo približno dve stvari!" Sem vedno prav oddaljeni od uporaba v "ko sem bil majhen deček" tehnika za tolažbo po tem.

Pred incident mrtev pes, vendar, Sem tudi začel uporabljati tehniko prepričati ga narediti opravila. "Ko sem bil majhen deček, Sem moral iti ven in zaslužiti časopis", "čisto mojo sobo", "dobili mamica njen skodelica kave", itd.

To preveč je bil zelo uspešen za nekaj časa, vendar je začel vse bolj uporniške proti tiraniji mojega otroštva. En dogodek, zlasti, zaznamoval konec. Povedal sem mu, da bi smeti pločevinke iz robnik nazaj v garaži. Zato je zagovarjal, in sem odgovoril, "Ko sem bil majhen deček, Moral sem vzeti smeti nazaj v garažo." Se je odzval, "Oh ja! No, ko si bil majhen deček, To je bilo NEUMNO!".

</namen>

Naročite se na moj blog.

Technorati Tags:

Pogledi in stolpci na sezname in knjižnice dokumentov ni mogoče zaščititi

POSODOBITEV (02/29/08): Ta novi projekt codeplex zdi, da zagotavlja način za zavarovanje posameznih stolpcev: http://www.codeplex.com/SPListDisplaySetting. Če imate kakšne izkušnje dela z njim, prosim, pustite komentar.

Forum plakatov pogosto zaprositi vprašanje, kot to: "Imam, da šef in in osebje pogled seznama. Kako varno upravitelj meni, da osebje ne more uporabiti?"

Tudi pogosto prosijo soroden vprašanje: "Želim varno specifičnih meta stolpec, tako da samo vodje lahko uredite stolpec, medtem ko drugi ne more niti videti."

Te odgovore, ki se uporablja za obe WSS 3.0 in MOSS:

  • SharePoint ne podpirala out-of-the-box za zavarovanje ogledov.
  • SharePoint ne podpirala out-of-the-box za varnost stolpcev.

Obstaja več tehnik eno lahko sledite za izpolnitev te vrste varnostnih zahtev. Tukaj je, kaj morem pretehtati od:

  • Uporabite raven varnosti out-of-the-box element. Pogledi vedno čast element nastavitev ravni varnost. Dogodek sprejemniki in/ali potek dela lahko avtomatizirate dodelitve varnost.
  • Uporabite osebne poglede, za "privilegiran" ogledov. To so dovolj preprosta, da nastavite. Vendar, zaradi svoje "osebni" narave, Ti morajo biti konfigurirani za vsakega uporabnika. Uporabite standardne varnostne konfiguracije, da preprečuje ustvarjanje osebni pogled.
  • Uporabite spletni gradnik podatkovnega pogleda in izvajanje neke AJAXy varnosti obrezovanje raztopine.
  • Roll vaš lasten seznam izložba smotrnost in vključi varnostno rezanje na ravni stolpca.
  • Spremeniti obrazce za vnos podatkov in uporabite JavaScript v povezavi z varnostni model za izvajanje ravni stolpca varnostno rezanje.
  • Z InfoPathovim obrazcem za vnos podatkov. Izvajanje ravni stolpca varnostno rezanje prek spletnih klicev storitve SharePoint in pogojno skriti polja po potrebi.
  • Roll lastne ASP.NET podatkov vnos funkcija, ki izvaja stolpec ravni varnostno rezanje.

Nobeden od teh možnosti so res velik, vendar pa obstaja vsaj pot ubrati, če morate, čeravno je težko.

OPOMBA: Če greš navzdol vseh teh poti, ne pozabite na "ukrepov-> Odpiranje z raziskovalcem". Želite biti prepričani, da preskusite s to funkcijo se prepričajte, da ne deluje kot "zadnja vrata" in poraz vaš varnostni sistem.

Če imate druge ideje za ali izkušnje z zavarovanje stolpce ali ogledov, prosim email mi ali pustite komentar in bom posodobiti to objavljate kot primerno.

</namen>

Naročite se na moj blog.

Technorati Tags:

Nagel odlagališče: Številke različic BDC ADF so vaš prijatelj

Če vi ste ročno kodiranje ADF datotek in delaš veliko uvozno/koda/preskusnih ciklih, uporabite številko različice, da bo vaše življenje lažje.

Nerad priznam, to, ampak do to teden dni, Sem bil vedno izbrišete samodejni podajalnik dokumentov in jo ponovno uvozite. To bi prekinil svoj poslovni stolpcih podatkov in bi me Re-wire jih. Vse nepotrebne.

To datoteko pod "je očitno, ko vidite, da".

Primer:

<LobSystem
xmlns:XSi="http://www.w3.org/ 2001/XMLSchema-primer" XSi:schemaLocation="http://schemas.Microsoft.com/Office/2006/03/BusinessDataCatalog BDCMetadata.xsd" Vrsta="Spletna storitev" Različica="1.2.0.0" ime="xyzzyDocumentReview" xmlns="http://schemas.Microsoft.com/Office/2006/03/BusinessDataCatalog">

Spremeniti, da različico in znova uvoziti in stolpcu obstoječih poslovnih podatkov uporablja posodobljena različica samodejno s ne dodaten zunanja podoba potreben.

</namen>

Naročite se na moj blog.

Technorati Tags:

Raztopina: BDC izbirnik kaže le en stolpec rezultatov

V moj poskusi tekoče zagotavlja a bolj koristno stolpec za iskanje, uporabo BDC, Sem zadel steno z izbirnik BDC. Če še niste videli, izbirnik BDC je podoben ljudi picker, razen, da deluje z stolpcev vrste »poslovnih podatkov«.

Izbirnik dostopate s klikom na ikono odprta knjiga poslovnih podatkov stolpca, kot je prikazano:

slike

Zgornja slika prikazuje poslovnih podatkov stolpec imenovano "Master Id dokumenta". Ta stolpec je povezan, preko BDC, s spletno storitvijo. Spletna storitev vrne dva stolpca informacij: ID-ja dokumenta in naslov. Poslovni namen tu je skrbeti a "ta dokument temelji na" Funkcija. Uporabnik izbrati "mojster" dokument, in ko jih rešiti, prejemnik dogodkov kopira meta podatkovna polja iz sklicevano master.

Privzeto, izbirnik BDC izgleda takole pri iskanju dokument katerega ID = "38":

clip_image002

To je koristno, vendar ne dovolj dober,. Ljudje ne razmišljajo v smislu ID-ji, mislijo, da z naslovi in/ali drugih podatkov, meta. Izbirnik omogoča iskanje na druge stolpce (npr.. Naslov) vendar ne kažejo dejanskega seznama naslovov ugotovljeno, samo svoje DocId je, kot je prikazano tukaj:

clip_image002[1]

(Zaslon strel ni tako velik, ker niso izbrali iskanje ki vrne vse veljavne rezultate, vendar lahko vidite, da če je našla nekaj rezultatov, da bi le pokazale DocId's, ne naslovov).

Iskal visoka in nizka za odgovor na to in ni. Moj kolega, v častitljivi Jonathan Bradshaw, je s katerimi se soočajo in rešiti težavo. Ko sem dosegel, da mu za pomoč, On rtast mi v desnica smer.

Konfiguracija izbirnika razkazati več stolpcev preko "ShowInPicker" nepremičnine v samodejni podajalnik dokumentov:

<Lastnost ime="ShowInPicker" Vrsta="System.Boolean">True</Lastnost>

Podrobneje:

  <!-- Naslov -->
  <TypeDescriptor TypeName="System.String" ime="Naslov" >
    <LocalizedDisplayNames>
      <LocalizedDisplayName OBMOČNA OZNAKA="1033">Naslov</LocalizedDisplayName>
    </LocalizedDisplayNames>
    <Lastnosti>
      <Lastnost ime="DisplayByDefault" Vrsta="System.Boolean">True</Lastnost>
      <Lastnost ime="ShowInPicker" Vrsta="System.Boolean">True</Lastnost>
    </Lastnosti>
  </TypeDescriptor>

Ta lastnost uvesti manjši problem. Takoj, ko ga je nekoč, morate nastaviti za vsak stolpec, ki jih želite prikazati. V mojem primeru, BDC izbirnik pokazala DocId privzeto. Vendar, ko sem dodal "ShowInPicker" za naslov, DocId ni več prikazan. Jaz rešiti to z izrecno nastavite lastnost ShowInPicker za Doc ID.

Tukaj je rezultat:

slike

(Bom razložiti besede "168 – CamlSchema.xsd" gradnjo v prihodnosti blog post. Skratka, To je niz ulančani, ki omogoča nekoliko boljšo uporabniško izkušnjo).

seveda, ob koncu tega bloga vstopa, Pravkar sem naredil iskanje za "ShowInPicker" in našel številne zadetkov, vključno s to stranjo: http://msdn2.microsoft.com/en-us/library/ms583986.aspx. To pojasnjuje, kaj pomenijo te lastnosti skupaj z nekaj drugih dobrih stvari BDC.

</namen>

Naročite se na moj blog!

Technorati Tags:

Hitro & Enostavno: Ustvarite mapo in dodelite vrsto vsebine (Ali, So vaše KPI in pojemo preveč)

Da bi težavi KPI Sem pisal o tukaj, Jaz sem nekaj testov in odkril da KPI delo proti mape z meta podatki na enak način, da dela proti dokumente ali elemente seznama. Izkazalo, da ustvarite novo vrsto vsebine glede na vrsto vsebine mape in nato doda nekaj polj. Ustvaril nekateri kazalci in izkazala za sebe, ki KPI-ji delujejo po pričakovanjih. To je dobrodošla novica. To ni popoln, ker v globino, ki ga dobite od KPI pred mape je ni ravno tisto, kar želite. To ni preveč povračila v mojem primeru, ker 1) končni uporabniki ne vedo vse bolje in 2) vrtanje navzdol gre v mapo. Oni kliknite ime mape in so v točki. To je že z dvema klikoma namesto enega, kar ni konec sveta.

To je lepo tekla z delom sem bil početje. Sem ustvariti mapo za vsak dokument, ki dobi naložili. To poteka preko prejemnik dogodkov. Kot posledica, To je kos torte, da je nadrejeno mapo meta podatkov v sinhronizacijo s KPI usmerjenih meta podatki iz datoteke, sam ker vodovod je že v veljavi. This allows me to have my KPI’s and eat them too 🙂

Sem spremenil dogodek sprejemnik dodati mapo in nastavite vrsto vsebine to novo mapo na moj meri KPI prijazne vrste vsebine. Ta košček kode did ukana:

 SPFolderCollection srcFolders = targetWeb.GetFolder("Dokumenti").Podmape;
  »SPFolder « addedFolder = srcFolders.Add(lastnosti.ListItem.ID.ToString());
  SPContentTypeId kpiCT = nove SPContentTypeId("0x0120002A666CAA9176DC4AA8CBAA9DC6B4039F");
  addedFolder.Item["Vsebine ID vrste"] = kpiCT;
  addedFolder.Item.Update();

Če želite poiskati dejanski ID vrste vsebine, Postranski to vrsto vsebine prek nastavitve mesta in ulitek/vezni listi to iz URL, kot je prikazano:

slike

</namen>

Naročite se na moj blog!

Technorati Tags: ,

Hitro in enostavno: »SPFolder «od SPListItem noter je prejemnik dogodka

Nerad priznam, to, vendar sem spopadali s tole vse dan. Moj dogodek sprejemnik mora posodobiti polje nadrejeno mapo. To malo pokaže, kako to storiti:

zasebno nična UpdateParentFolder(SPItemEventProperties lastnosti)
{

»SPFolder « thisItemFolder = lastnosti.ListItem.File.ParentFolder;
thisItemFolder.Item["Stanje ZZ odobritve"] = "Dobra novica, Vsakdo!";
thisItemFolder.Item.Update();


} // UpdateParentFolder

V tem primeru, Delam s knjižnico dokumentov in lastnosti prihajajo iz ItemAdded dogodka.

Trik je, da ne morete dobiti »SPFolder« artikla neposredno iz artikla, sama (i.e. lastnosti.ListItem.Folder ima ničelno vrednost). Namesto tega, Pojdi na element seznama povezane datoteke in dobil mapo datoteke.

</namen>

Naročite se na moj blog!

Technorati Tags:

Še drug dogodek sprejemnik Debug trik

Sem prepričan, da nisem prva oseba, da bi prišli do tega. Vendar, Nisem opazil kdo objavi trik, kot je ta, ker sem začel pozorno Skupnosti julija lani. Tako, Sem mislil sem post ta nasvet za hitro in enostavno iskanje napak.

Delam na dogodek sprejemnik, ki je začel ustvarjati to napako v na 12 panj:

Napaka pri nalaganju in teče dogodek sprejemnik Conchango.xyzzyEventReceiver v xyzzy, Različica = 1.0.0.0, Culture = neutral, ŽetonJavnegaKljuča = blahbalhbalh. Dodatne informacije je pod. : Referenčni objekt ni nastavljena na primer predmeta.

Nisem vedel, kje je uvedel to žuželka, ker je naredil preveč stvari v enem od svoj zbornik/uvajanje/preskusnih ciklih.

Si se potrudil Ta rešitev zadobiti svoj PPP tam z upanjem da SharePoint 12 panj bi pokazal sled sklada, šele ne sreča. Ne vem, če je mogoče, in če nekdo ne, prosim povej mi 🙂

Vem, da je mogoče napišite svoj dnevnik sporočil je 12 panj. Odkrito, Hotel sem nekaj malo manj strašljivo in hitrejše izvajanje.

Zazdelo se mi, da vsaj lahko dobil nekaj osnovnega sledenja podatkov z lovom in ponovno metanje splošne izjeme takole:

  poskusite {
    UpdateEditionDate(lastnosti);
  }
  ulova (Izjema e)
  {
    vrzi nove Izjema("Dispečer, UpdateEditionDate(): Izjema: [" + e.ToString() + "].");
  }

To je pokazala v na 12 thusly panj:

Napaka pri nalaganju in teče dogodek sprejemnik Conchango.xyzzyEventReceiver v xyzzy, Različica = 1.0.0.0, Culture = neutral, ŽetonJavnegaKljuča = blahblahblah. Dodatne informacije je pod. : Dispečer, UpdateEditionDate(): Izjema: [NullReferenceException.: Referenčni objekt ni nastavljena na primer predmeta. na Conchango.xyzzyManagementEventReceiver.UpdateEditionDate(SPItemEventProperties lastnosti) na Conchango.xyzzyManagementEventReceiver.Dispatcher(SPItemEventProperties lastnosti, Niz eventDescription)].

To mi je dal vse podrobnosti, sem potreboval, da bi izsledila da poseben problem in pričakujem rabiti to veliko tekoč naprej.

</namen>

Naročite se na moj blog!