mesačné archívy: Február 2014

Ako zadať ľudí ako rozsah hľadania / Zdroj obsahu služby SharePoint 2013 REST API

Ja som nemal dôvod na prácu so službou SharePoint 2013 Rozhranie API vyhľadávania cez ZVYŠOK po prvýkrát. Chcel, aby vyhľadať ľudí, nie dokumentov. Kľúč učenia tu je to, že zadáte obsah zdrojov cez jeho GUID (alebo aspoň v tomto prípade). Nasledujúcich jQuery úryvok ukazuje ako:

    loadExpertsAsync: Funkcia() {

        jQuery.support.cors = pravda;

        $.AJAX({
            adresa URL: this.CreateFullApiUrl() +
                "?querytext = "portály"&sourceid = "b09a7990-05ea-4af9-81ef-edfab16c4e31"" +
                "&selectproperties = "LinkedInProfileUrl,GoogleCirclesProfileUrl,BALargeProfilePictureUrls,BAGridPictures,WorkEmail,Zručnosti,About,Záujmy,Funkcia,PastProjects,PictureURL,PreferredName,TwitterHandle,LinkedInProfileUrl,PreferredName,GoogleCirclesProfileUrl "" +
                "&RowLimit = 99",
            metóda: "ZÍSKAŤ",
            hlavičky: { "Prijať": "Aplikácia/json; Odata = podrobného" },
            Vyrovnávacia pamäť: FALSE,
            úspech: Funkcia (výsledok) {

V mojom prípade, Som beží API proti SharePoint online. Získať identifikátor GUID, Sledoval som tieto kroky:

  1. Prístup k službe SharePoint admin center
  2. Vyberte "Hľadať" z ľavej navigáciu
  3. Vyberte "Spravovať zdroje výsledok"
  4. Vyberte "Miestni ľudia výsledky"
  5. Pozrite sa na URL.

Moja adresa URL hľadal niečo podobné:

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

Sourceid parameter je to, čo pracoval pre mňa.

(Chápem, že Identifikácia zdroja môže byť v skutočnosti druh trvalé vec s SP, but I’ll always check anyway 🙂 ).

</koniec>

undefinedVyberajte môj blog.

Nasledujte ma na stebėtų na http://www.twitter.com/pagalvin

Príklad SharePoint ZVYŠOK hovory

Tu je súbor vzorka ZVYŠOK hovory, že práca pre mňa, a môže vám pomôcť aj. Ako 02/2014, there are two examples 🙂

  1. Odkaz na stĺpec s medzerami v jej mene
  2. Referenčné multi-výber stĺpca
  3. Vyhľadávanie ľudí cez ZVYŠOK

 

Budem pridávať do tohto ako plynie čas.

Tu sú niektoré užitočné farby som našiel aj:

Odkaz na stĺpec s medzerami v jej mene

Vytvoriť vlastný zoznam s stĺpec s názvom "Blog autora" (priestor medzi Blog a autora).

$select odkaz na tento stĺpec je:

image

Jednoducho vymeniť miesto s "_x0020_". Vidíme _x0020_ v mnohých príkladov cez internety a ZVYŠOK nie je iný.

Ak nemáte to, ste povinný chybové hlásenie, ako je tento:

Výraz “Blog autora” nie je platný.

Ľahké.

Referenčné multi-vybrať vyhľadávací stĺpec

Nastaviť:

  1. Vytvorenie vlastného zoznamu s názvom kategórie.
  2. Add some categories Pridať. Pridal som kategórie thusly:image
  3. Vytvoriť ďalší vlastný zoznam s názvom MockBlog a pridávať kategórie ako zoznam s viacerými výbermi stĺpec (alebo stĺpec lokality či je ako hodíte).

Pridať niektoré položky do zoznamu Mockblog a ste pripravení.

Ajax hovor style pomocou jQuery bude vyzerať nasledovne:

AdresaURLServera  = "/_api web, zoznamy/GetByTitle("MockBlog")/položky" +
             "?$Vyberte = názov,Kategórie/titul,Blog_x0020_Author titul" + 
             "&$rozšírenie = Blog_x0020_Author,Kategórie";

Sme ti SharePoint "mi dať názov pre všetky kategórie (Kategórie/titul). Dostať skutočné hodnoty pre Hlava Autor: $RozbaliťZoznam kategórie Ing." (Môj pohodové parafráza je pravdepodobne celkom voľná, ale ako som vyložil ho).

Ak robíte to cez JavaScript a pomocou Fiddler pozrieť na výstupe, dostanete niečo takého na oplátku:

 

image

(Vyššie uvedené je objekt JSON)

Vyhľadávanie ľudí cez ZVYŠOK

I blogged o tomto samostatne. Kľúčom k úspechu je nastaviť parameter identifikáciou zdroja ktorého hodnota identifikátora GUID zdroja obsahu miestnych ľudí. (Zdroje obsahu sa kedysi hovorilo rozsahy a je to moje-oh-my tak ťažké nebude volať všetko rozsah pre mňa!).

Prečítajte si viac o tom tu.: http://www.mstechblogs.com/paul/?p=10385

 

</koniec>

undefinedVyberajte môj blog.

Nasledujte ma na stebėtų na http://www.twitter.com/pagalvin

Rýchle a jednoduché: Vytvoriť lokalitu SharePoint pomocou prenosov REST

Existuje veľa zdrojov v okolí ukazujú, že ako na to, ale nemohol som nájsť komplexné go-na odkaz, tak sme tu.

Môžete vytvoriť lokalitu SharePoint pomocou rozhrania REST API.  Tu je úplne upečené príklad:

<!--
    SiteRequestForm.html: Zhromažďovať informácie a vytvoriť stránky pre používateľa.
-->

<centrum>
<Tabuľka>
    <TR>
        <TD>Názov lokality:</TD>
        <TD><vstup typ= "text" meno= "SiteName" Identifikácia= "SiteName" /></TD>
    </TR>
    <TR>
        <TD ColSpan= "2">
            <vstup typ= "Odoslať" Identifikácia= "CreateSiteButton" hodnota= "Vytvoriť stránky" />
        </TD>
    </TR>
</Tabuľka>
</centrum>

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

<skript>
var CreateSiteLogicContainer = {

    createSiteData: {
            "parametre": {
                __metadata: { "typ": "SP.WebInfoCreationInformation" },
                URL: "Paultest1",
                Hlava: "Paultest1",
                Popis: "zvyšok-vytvoril web Paul!",
                Jazyk: 1033,
                WebTemplate: "sts",
                UseUniquePermissions: FALSE
            }
    },

    createSite: Funkcia () {

        jQuery.support.cors = pravda;

        CreateSiteLogicContainer.createSiteData.parameters.Url = $("#SiteName").Val();
        
        $.AJAX({
            adresa URL: "https://bigapplesharepoint.sharepoint.com/NBAIADev/_api/web/webinfos/add",
            metóda: "PRÍSPEVOK",

            hlavičky: {
                "Prijať": "aplikácie/json; Odata = podrobného",
                "content-type": "aplikácie/json;Odata = podrobného",
                "X-RequestDigest": $("#__REQUESTDIGEST").Val()
            },

            údaje: JSON.stringify(CreateSiteLogicContainer.createSiteData),

            úspech: Funkcia () { Upozornenie("úspech"); },
            chyba: Funkcia () { Upozornenie("chyba"); }

        });
    },

    wireUpForm: Funkcia () {
        $("#CreateSiteButton").kliknite na tlačidlo(Funkcia () {
            Upozornenie("Asi aby sa pokúsila vytvoriť lokalitu.");
            CreateSiteLogicContainer.createSite();
        });
    }


}

CreateSiteLogicContainer.wireUpForm();

</skript>

Keď úspešný, získate balíčka JSON reakciu takého:

image

Moje kľúčové myšlienky a poznatky z tejto zahŕňajú:

  • Tento prístup využíva jQuery.  V mojom prípade, knižnice jQuery sa nachádza v ".../ plugins. "  Budete chcieť zmeniť bod na vaše obľúbené miesto JQ.
  • Môžete skopírovať a vložiť tento celý útržok do webovej časti Editor obsahu na stránku a to by malo fungovať v pohode.  Budete chcieť zmeniť koncový bod API volania a overte, či odkazujete JQ správne.
  • URL je vzhľadom na svoje API koncový bod.  V mojom prípade, to je vytvoriť sub-stránky pod https://bigapplesharepoint.com
  • Nemusíte sa poskytnúť obsah-dĺžka. Niektoré príspevky blogu a MSDN dokument predpokladá, že si, ale stalo mi automaticky, čo predpokladám je spracovávaná na samotnú výzvu .ajax $.
  • Tento riadok je potrebné vyhnúť sa "zakázané" odpoveď: "X-RequestDigest": $("#__REQUESTDIGEST").Val().  Existujú iné spôsoby, ako to urobiť, ale to je celkom pekné.  Stratil som odkaz na blog, ktorý poskytuje túto skratku.  H/T na vás, tajomný blogger!

Veľa šťastia a dúfam, že to pomôže niekto.

</koniec>

undefinedVyberajte môj blog.

Nasledujte ma na stebėtų na http://www.twitter.com/pagalvin

Prekonať nepríjemný problém s relatívnymi adresami URL v SharePoint Quick Launch

Chcel som pridať odkaz na rýchle spustenie navigácie druhý deň a povedal mi, SharePoint:

image

Čisto textové verzie, ktorá je:

Zabezpečiť, že URL je platný a začína buď neplatný znak (číselný znak (#) alebo lomka (/)) alebo platný podporovaný protokol (napríklad, "http://’, "https://’, "súbor://’, "ftp://’, "mailto:’, "novinky:’).

"Blech a kiahne!"Povedal som.

Riešenie pre to je používať JavaScript nájsť známe odkaz v paneli pre rýchle spustenie a prepísať jeho správanie.

Tento test, Pridať nový odkaz na vaše stránky test thusly:

image

Použil som jQuery. To vyriešiť, získať niektoré JavaScriptom a jQuery na stranu pomocou svoje obľúbené techniky a riadok kódu takhle:

 

$(dokument).pripravený( Funkcia () {

    $("a:obsahuje("Test URL náhradné")").kliknite na tlačidlo(Funkcia () { Upozornenie("zmenil kliknite na správanie!"); return FALSE;});

});

A bôb je tvoj strýko.

JQuery volič nájde každý <a> značka, ktorá má "Test URL náhradné" vo svojom mene. Ak chcete nájsť-melódiu, ktorá váš odkaz a také.

Nepokoje(Funkcia() prepíše čo SharePoint by urobil, keď používateľ klikol. Uistite sa, že ste "return false", inak to bude robiť svoje veci a potom skúste href vec príliš, takmer určite čo nie je váš cieľ.

Toto bolo robené a test v prostredí SharePoint online ale mal by fungovať aj v 2010 a skôr príliš.

</koniec>

undefinedVyberajte môj blog.

Nasledujte ma na stebėtų na http://www.twitter.com/pagalvin

Rýchle a jednoduché: SharePoint ZVYŠOK volať len vracia 100 Záznamy

Bol som pracoval na verejných čelia webové stránky pre môj SharePoint ambulancií tu New York a to používa veľa hovorov JavaScript a ZVYŠOK Zobraziť obsah.

Počas hlavnej rozvojovej, Vytvoriť malé dataset s len 10 alebo tak riadky vlastného zoznamu a my ZVYŠOK vyzýva všetky vytiahol odtiaľ.  Raz som narazil do zoznamu majú niekoľko sto riadkov údajov na test na očakávaný rast, Zistil som, že som dostala presne 100 riadkov vrátených späť na môj odpočinok hovory.

To je veľmi jednoduchá vec riešiť.  V mojom prípade (a verím, že vo väčšine prípadov), predvolené ZVYŠOK vyzýva na lokalitu SharePoint (a možno aj ako priemyselný štandard?) return 100 riadky.  Vrátiť viac ako predvolené, Použite $top parameter na vašu výzvu, rovnako ako v:

Získajte /Insights Dev/_api/web/lists/GetByTitle("MockBlog")/položky?$vyberte = ID,Hlava,Kategórie/titul,Blog_x0020_Author titul,DatePublished,BlogSummary&$rozšírenie = Blog_x0020_Author,Kategórie&$Filter =&$hore = 9999

Som si vybral 9999 v tomto prípade odvtedy viem, že growth-wise, tam nebude viac ako 200 alebo tak riadky pridané do tohto zoznamu v roku.  Ak sa stane nemotorný, môžeme realizovať niektoré stránkovanie na ceste.

</koniec>

undefinedVyberajte môj blog.

Nasledujte ma na stebėtų na http://www.twitter.com/pagalvin

Rýchle a jednoduché: Vyriešiť "neplatná adresa URL Parameter” problém s UpdateListItems v lists.asmx

Pri práci s UpdateListItems cez lists.asmx, je to jednoduché generovanie chyby:

Neplatná adresa URL Parameter.

Poskytnutá adresa URL obsahuje neplatný príkaz alebo hodnoty. Znova skontrolujte adresu URL.

Môžete získať túto chybu, keď ste zabudli zahrnúť ID v zozname polí na aktualizáciu.  Toto, rovnako ako mnoho z týchto SP webových služieb, je trochu neintuitívne, pretože budete potrebovať zahrnúť ID atribút ID <Metóda> prvok.  A nie ste aktualizované ID a pravdepodobne nikdy chcú v prvom rade.

Táto obálka SOAP funguje:

<soapenv:Obálka xmlns:soapenv ="http://schemas.xmlsoap.org/SOAP/Envelope/ ">
  <soapenv:Orgán>                      
    <UpdateListItems xmlns ="http://schemas.Microsoft.com/SharePoint/SOAP/ ">                     
      <listnate>{C712E2EA-54E1-47AD-9D99-1848C7773E2F}</listnate>                     
        <aktualizácie>                     
         <Dávkové PriChybe ="Pokračovať">
          <Metóda ID ="1" Cmd ="Update">
            <Názov poľa ="CooperativeLock">zamknuté!</Pole>
            <Názov poľa ="ID">1</Pole>
          </Metóda>
        </Dávky>                     
        </aktualizácie>                
      </UpdateListItems>             
  </soapenv:Orgán>         
</soapenv:Obálka>

Ak ste pás ID pole odkaz potom dostanete otravné "Neplatná adresa URL parameter" správa.

</koniec>

undefinedVyberajte môj blog.

Nasledujte ma na stebėtų na http://www.twitter.com/pagalvin