mėnesio Archyvai: Vasario 2014

Kaip nurodyti žmonių kaip ieškos aprėptį / Turinio šaltinio naudojant SharePoint 2013 POILSIO API

Aš turėjau priežasčių dirbti su SharePoint 2013 Paieška API per likusį pirmą kartą. Aš norėjau ieškoti žmonių, ne tik dokumentų. Klavišą mokymosi čia yra tai, kad jūs nurodote turinio šaltinių per savo GUID (ar bent šiuo atveju). JQuery fragmentą pavaizduota kaip:

    loadExpertsAsync: funkcija() {

        jQuery.support.cors = tiesa;

        $.Ajax({
            URL: tai.CreateFullApiUrl() +
                "?querytext = "portalai"&SourceId = "b09a7990-05ea-4af9-81ef-edfab16c4e31"" +
                "&selectproperties ='LinkedInProfileUrl,GoogleCirclesProfileUrl,BALargeProfilePictureUrls,BAGridPictures,WorkEmail,Įgūdžių,AboutMe,Interesų,Pareigos,PastProjects,PictureURL,PreferredName,TwitterHandle,LinkedInProfileUrl,PreferredName,GoogleCirclesProfileUrl "" +
                "&rowlimit = 99",
            metodas: "GAUTI",
            antraštės: { "Priimti": "paraiškos/json; oData = kalbantys" },
            talpyklos: klaidinga,
            sėkmės: funkcija (rezultatas) {

Mano atveju, Aš einu API su SharePoint internete. Gauti GUID, Atlikau šiuos veiksmus:

  1. Prieigą prie SharePoint administravimo centro
  2. Pasirinkite "ieškoti" nuo kairλ ranka navigacija
  3. Pasirinkę punktą "Tvarkyti rezultatas šaltinių"
  4. Pasirinkite "Vietos žmonių rezultatai"
  5. Pažvelgti į URL.

Mano URL atrodė:

https://xyzzy-admin.sharepoint.com/_layouts/15/searchadmin/EditResultSource.aspx?level=tenant&sourceid=b09a7990%2D05ea%2D4af9%2D81ef%2Dedfab16c4e31&view=1

SourceId objektas yra ką dirbo už mane.

(Aš suprantu, kad sourceid iš tiesų gali būti savotiška nuolatinis dalykas su SP, but I’ll always check anyway 🙂 ).

</pabaigos>

undefinedPrenumeruoti savo dienoraštį.

Sekite mane Twitter ne http://www.twitter.com/pagalvin

Pavyzdys SharePoint poilsio skambučius

Čia yra tam tikrų bandinio poilsio skambučius, kad darbą už mane ir gali padėti jums atlikti taip pat. Nuo 02/2014, there are two examples 🙂

  1. Nurodyti stulpelį su tarpais, jos vardu
  2. Kelių elementų žymėjimo stulpelio nuoroda
  3. Žmonių ieškos per poilsio

 

Aš pievienošu tai laikui bėgant.

Štai keletas naudingų dažai radau taip pat:

Nurodyti stulpelį su tarpais, jos vardu

Sukurti pasirinktinį sąrašą su stulpelis, pavadinimu "Dienoraščio autorius" (tarpas tarp dienoraštį ir autorius).

$select nurodyti, kad stulpelis yra:

image

Tiesiog pakeisti vietos, su "_x0020_". Mes matome _x0020_ daugybė pavyzdžių per internetas ir poilsio nesiskiria.

Jei nenorite daryti, esate linkęs gauti klaidos pranešimą, kaip tai:

Išraiška “Dienoraščio autorius” negalioja.

Gana paprasta.

Multi-pasirinkite peržvalgos stulpelio nuoroda

Nustatyti:

  1. Kurti pasirinktinį sąrašą, pavadintas kategorijos.
  2. Pridėti kai kurių kategorijų. Dodałem kategorijų thusly:image
  3. Sukurti kitą pasirinktinį sąrašą ir pavadinti jį MockBlog ir Pridėk kategorijos kelių objektų žymėjimo sąrašo stulpelyje (ar svetainėje skiltyje, jei tai, kaip jūs roll).

Pridėti prekę į Mockblog sąrašą ir būsite pasiruošę.

Kai naudojant jQuery Ajax stiliaus skambina atrodys maždaug taip:

serverUrl   = "/_api/web/sąrašai/GetByTitle("MockBlog")/elementai" +
             "?$Pasirinkite = pavadinimas,Kategorijos/pavadinimas,Blog_x0020_Author/pavadinimas" + 
             "&$išplėsti = Blog_x0020_Author,Kategorijos";

Mes sakai SharePoint "man pavadinimas visų kategorijų (Kategorijos/pavadinimas). Gauti tikrąsias vertes Antraštinė dalis pagal $išplėstimas kategorijų sąrašą." (Mano ramus perfrazuojant yra turbūt gana platus, bet tai kaip aš jį žodžiu).

Jei jūs darote tai per JavaScript ir naudojant smuikininkas Žiūrėk, galite gauti kažką panašaus į tai mainais:

 

image

(Aukščiau yra JSON objektu)

Žmonių ieškos per poilsio

Aš blogų apie tai atskirai. Svarbiausia yra nustatyti sourceid parametrą, kurių vertė yra vietinių gyventojų turinio šaltinio GUID. (Šaltiniuose naudojama taip vadinama aprėpties ir ji yra mano-o-mano taip sunku ne skambinti viskas man apimtį!).

Plačiau apie jį: http://www.mstechblogs.com/paul/?p=10385

 

</pabaigos>

undefinedPrenumeruoti savo dienoraštį.

Sekite mane Twitter ne http://www.twitter.com/pagalvin

Greitai ir lengvai: Sukurti SharePoint svetainėje naudodami poilsio

Yra daug išteklių aplink tą parodyti kaip tai padaryti, bet aš negalėjo rasti išsamią pereiti į nuorodą, Taigi čia mes.

Galite sukurti SharePoint svetainėje naudodami poilsio API.  Čia yra visiškai keptos pavyzdys:

<!--
    SiteRequestForm.html: Rinkti informaciją ir kurti svetainę, skirtą vartotojo.
-->

<centras>
<lentelė>
    <TR>
        <TD>Svetainės pavadinimas:</TD>
        <TD><įvedimo tipo= "tekstas" vardas, pavadinimas= "SiteName" ID= "SiteName" /></TD>
    </TR>
    <TR>
        <TD stulpelio apimties= "2">
            <įvedimo tipo= "pateikti" ID= "CreateSiteButton" vertė= "Sukurti svetainės" />
        </TD>
    </TR>
</lentelė>
</centras>

<scenarijų src="../Plugins/jQuery-1.11.0.min.js"></scenarijų>

<scenarijų>
var CreateSiteLogicContainer = {

    createSiteData: {
            "parametrai": {
                __metadata: { "tipo": "SP.WebInfoCreationInformation" },
                URL: "Paultest1",
                Antraštinė dalis: "Paultest1",
                Aprašymas: "poilsio sukurtas web by Paulius!",
                Kalba: 1033,
                Tinklalapio šablono: "sts",
                UseUniquePermissions: klaidinga
            }
    },

    createSite: funkcija () {

        jQuery.support.cors = tiesa;

        CreateSiteLogicContainer.createSiteData.parameters.Url = $("#SiteName").val();
        
        $.Ajax({
            URL: "https://bigapplesharepoint.sharepoint.com/NBAIADev/_api/web/webinfos/add",
            metodas: "POST",

            antraštės: {
                "Priimti": "paraiškos/json; oData = kalbantys",
                "content-type": "paraiškos/json;oData = kalbantys",
                "X-RequestDigest": $("#__REQUESTDIGEST").val()
            },

            duomenų: JSON.stringify(CreateSiteLogicContainer.createSiteData),

            sėkmės: funkcija () { perspėjimas("sėkmė"); },
            klaida: funkcija () { perspėjimas("klaida"); }

        });
    },

    wireUpForm: funkcija () {
        $("#CreateSiteButton").spustelėkite(funkcija () {
            perspėjimas("Pasiruošę išbandyti ir sukurti svetainę.");
            CreateSiteLogicContainer.createSite();
        });
    }


}

CreateSiteLogicContainer.wireUpForm();

</scenarijų>

Kai sėkmingai, Jūs gaunate JSON pakelio atsakymą kaip tai:

image

Mano pagrindinė mintis ir learnings nuo tokių:

  • Šis metodas naudoja jQuery.  Mano atveju, mano jQuery biblioteka įsikūrusi ".../ plugins. "  Jūs norite pakeisti, kad rodytų į jūsų mėgstamą JQ vietą.
  • Jūs galite kopijuoti ir įklijuoti tą visą fragmentą į turinio rengyklės žiniatinklio dalį puslapyje ir ji turi dirbti gerai.  Jūs norite pakeisti galutinis taškas iš API iškvietimas ir įsitikinkite, kad jūs nurodote JQ teisingai.
  • URL yra su savo API galutinį tašką.  Mano atveju, tai yra sukurti antrinės svetainės apačioje https://bigapplesharepoint.com
  • Jums nereikia būti turinį-trumpesni. Kai dienoraščio ir MSDN dokumente reiškia, kad jūs, bet atsitiko man automatiškai, Aš manau yra perkrauta .ajax $ skelbiant pati.
  • Šios eilutės yra reikalinga vengti "draudžiama" atsakymo: "X-RequestDigest": $("#__REQUESTDIGEST").val().  Yra ir kitų būdų tai padaryti, bet tai yra labai gražus.  Aš pamečiau nuorodą į dienoraštį, kad jeigu ši nuoroda.  H/T jums, paslaptingas blogger!

Geros kloties ir tikiuosi, kad tai padės kam nors.

</pabaigos>

undefinedPrenumeruoti savo dienoraštį.

Sekite mane Twitter ne http://www.twitter.com/pagalvin

Įveikti erzina problema su santykinis URL SharePoint greitai pradėti

Aš norėjau pridėti saitą prie greitosios paleisties navigacijos kitą dieną ir SharePoint man:

image

Grynojo teksto versija, kad yra:

Užtikrinti, kad URL yra galiojantis ir prasideda arba svarbių simbolių (skaičiaus ženklo (#) arba pasviruoju brūkšniu (/)) arba yra galiojanti veikė protokolo (pvz., "http://’, "https://’, "failas://’, "ftp://’, "mailto:’, "Naujienos:’).

"Blech ir raupų!"Man sakė:.

Tai problemos turi naudoti JavaScript rasti žinomų nuorodą į greitąją paleistį ir nepaisyti savo.

Norėdami tai patikrinti, Pridėti naują nuorodą į svetainę bandymo thusly:

image

Aš jQuery. Ją išspręsti, gauti kai kurių JavaScript ir jQuery ant puslapio, naudodami savo mėgstamiausiu metodu ir su kodo panašaus eilutę:

 

$(dokumento).paruošta( funkcija () {

    $("a:yra("Bandymo URL pakeitimo")").spustelėkite(funkcija () { perspėjimas("pakeistas paspaudimų elgseną!"); grįžti klaidinga;});

});

Ir Bob's jūsų dėdė.

JQuery selektorius nustato, kas <a> žyma, kad yra "Bandymas URL pakeitimas" savo vardu. Jūs galite rasti-melodija, priklausomai nuo jūsų nuorodą ir tokių.

Ir spauskite(funkcija() pakeičia nepriklausomai nuo SharePoint būtų padaryta tada, kai vartotojas spustelėjo. Įsitikinkite, kad jūs "return false" ar dar ji bus padaryti savo stuff ir tada bandyti href dalykas per, tai tikriausiai ne jūsų tikslas.

Tai buvo padaryta ir bandymo SharePoint online aplinkoje, bet turėtų dirbti gerai 2010 ir anksčiau per.

</pabaigos>

undefinedPrenumeruoti savo dienoraštį.

Sekite mane Twitter ne http://www.twitter.com/pagalvin

Greitas ir paprastas: SharePoint poilsio skambinti tik grąžina 100 Įrašai

Aš dirbu visuomenės susiduria su interneto svetainėje mano SharePoint praktikos čia Niujorkas ir ji naudoja daug JavaScript ir poilsio skambučių parinktis Rodyti turinį.

Per geležinkelio plėtros, Sukurti mažas dataset tik 10 arba taip eilučių pasirinktinį sąrašą ir mano poilsio ragina visus traukti iš ten.  Vieną kartą aš Iškilioji sąrašą, kad keletą šimtų eilučių duomenų mėginys tikėtasi augimas, Radau, kad aš gaunu tiksliai 100 eilučių grįžo atgal į savo poilsio skambučius.

Tai labai paprastas dalykas spręsti.  Mano atveju (ir manau, daugeliu atvejų), Numatytasis poilsio kviečia į "SharePoint" (ir galbūt kaip standartinė pramonės sektoriui?) grįžti 100 eilučių.  Grįžti daugiau nei numatyta, Naudokite parametrą $top jūsų pokalbio, kaip ir:

GAUTI /Insights Dev/_api/web/lists/GetByTitle("MockBlog")/elementai?$Pasirinkite = ID,Antraštinė dalis,Kategorijos/pavadinimas,Blog_x0020_Author/pavadinimas,DatePublished,BlogSummary&$išplėsti = Blog_x0020_Author,Kategorijos&$filtras =&$viršaus = 9999

Mane pasirinko 9999 Šiuo atveju, nes žinau, kad growth-wise, nebus daugiau nei 200 ar taip eilučių pridėti prie šio sąrašo per metus.  Jei ji tampa nevikrus, mes įgyvendiname kai ieškai žemyn kelio.

</pabaigos>

undefinedPrenumeruoti savo dienoraštį.

Sekite mane Twitter ne http://www.twitter.com/pagalvin

Greitas ir paprastas: Išspręsti "neteisingas URL parametrą” problema su UpdateListItems lists.asmx

Dirbant su UpdateListItems per lists.asmx, tai lengva generuoti klaidos:

Neleistina URL parametrą.

Į URL yra neleistina komanda arba vertė. Prašome dar kartą patikrinti URL.

Jūs galite gauti šią klaidą, kai jums pamiršti, kad ID į laukų atnaujinti sąrašą.  Tai, kaip daug šių SP interneto paslaugų, yra didelis counterintuitive, nes jums reikia įtraukti ID atributo ID į <Metodas> elementas.  Ir jūs ne atnaujinta ID ir tikriausiai niekada nenorės į pirmąją vietą.

Šis SOAP vokas veikia:

<soapenv:Voko xmlns:soapenv ="http://schemas.xmlsoap.org/SOAP/Envelope/ ">
  <soapenv:Įstaiga>                      
    <UpdateListItems xmlns ="http://schemas.Microsoft.com/SharePoint/SOAP/ ">                     
      <listName>{C712E2EA-54E1-47AD-9D99-1848C7773E2F}</listName>                     
        <atnaujinimai>                     
         <Paketinis Esant_klaidai ="Toliau">
          <Metodas ID ="1" Cmd ="Update">
            <Lauko pavadinimas ="CooperativeLock">užrakintas!</Lauko>
            <Lauko pavadinimas ="ID">1</Lauko>
          </Metodas>
        </Partijos>                     
        </atnaujinimai>                
      </UpdateListItems>             
  </soapenv:Įstaiga>         
</soapenv:Vokas>

Jei jūs juostelės iš lauko nuorodos kodą tada jūs gausite erzina "Neteisingas URL parametrą".

</pabaigos>

undefinedPrenumeruoti savo dienoraštį.

Sekite mane Twitter ne http://www.twitter.com/pagalvin