miesięczne archiwum: Lutego 2014

Jak określić ludzi jako zakres wyszukiwania / Źródła zawartości przy użyciu programu SharePoint 2013 REST API

Miałem powód do pracy z programem SharePoint 2013 API wyszukiwania poprzez odpoczynek po raz pierwszy. Ja potrzebował wobec zrewidować pod kątem osób, nie dokumentów. Ten klucz uczenia się że tutaj jest to, że można określić źródła zawartości za pomocą jej identyfikatora GUID (lub przynajmniej w tym przypadku). W poniższym urywku jQuery jak:

    loadExpertsAsync: Funkcja() {

        jQuery.support.cors = PRAWDA;

        $.AJAX({
            adres URL: to.CreateFullApiUrl() +
                "?QueryText = "portale"&element SourceId = "b09a7990-05ea-4af9-81ef-edfab16c4e31"" +
                "&selectproperties ='LinkedInProfileUrl,GoogleCirclesProfileUrl,BALargeProfilePictureUrls,BAGridPictures,WorkEmail,Umiejętności,AboutMe,Interesy,JobTitle,PastProjects,Adres URL zdjęcia,PreferredName,TwitterHandle,LinkedInProfileUrl,PreferredName,GoogleCirclesProfileUrl "" +
                "&RowLimit = 99",
            Metoda: "Pobierz",
            nagłówki: { "Zaakceptować": "aplikacji/json; odata = verbose" },
            pamięci podręcznej: FAŁSZ,
            sukces: Funkcja (wynik) {

W moim przypadku, Jestem uruchomienie interfejsu API z SharePoint online. Aby uzyskać identyfikator GUID, Ja nast¹pi³ tych kroki:

  1. Dostęp do centrum administracji programu SharePoint
  2. Wybierz opcję "Szukaj" z lewej nawigacji
  3. Wybierz "Zarządzaj źródłami wynik"
  4. Wybierz "Wyniki miejscową ludność"
  5. Spójrz na adres.

Mój adres URL wyglądał::

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

Parametr sourceid to, co pracował dla mnie.

(Rozumiem, że element sourceid rzeczywiście może być swego rodzaju stałe rzeczy z SP, but I’ll always check anyway 🙂 ).

</koniec>

undefinedSubskrybowanie mój blog.

Follow me on Twitter wiek na http://www.twitter.com/pagalvin

Przykład programu SharePoint reszta rozmowy

Oto zestaw próbki reszta połączeń, które działa na mnie i może Ci pomóc, jak również. Jak z 02/2014, there are two examples 🙂

  1. Odwoływać się kolumna z pomieszczeń w swoim imieniu
  2. Odwołanie kolumna wielokrotnego wyboru
  3. Wyszukiwania ludzi poprzez odpoczynek

 

Dodam do tego w miarę upływu czasu.

Oto kilka przydatnych farb, znalazłem również:

Odwoływać się kolumna z pomieszczeń w swoim imieniu

Utworzyć niestandardową listę z kolumna o nazwie "Autor bloga" (przestrzeń między Blog i autor).

$select aby odwołać kolumna jest:

image

Po prostu zastąpić miejsca z "_x0020_". Widzimy _x0020_ w wielu przykładach całym internets i reszta nie różni.

Jeśli nie zrobisz, Jesteś mogących otrzymać komunikat o błędzie podobny do tego:

Wyrażenie “Autor bloga” nie jest ważne.

Dość łatwe.

Odwołanie kolumna odnośnika wielokrotnego wyboru

Umieszczaæ w górze:

  1. Utworzyć listę niestandardową o nazwie Kategorie.
  2. Dodać niektóre kategorie. Po dodaniu kategorii wygląda następująco:image
  3. Tworzenie innej listy niestandardowej o nazwie MockBlog i dodać kategorie jako kolumna listy wielokrotnego wyboru (lub stronie kolumny, jeśli to, jak się potoczą).

Dodać kilka elementów do listy Mockblog i gotowe.

Połączenie stylu Ajax przy użyciu jQuery będzie wyglądać tak:

serverUrl  = "/_api/web/list/GetByTitle("MockBlog")/elementy" +
             "?$Wybierz = tytuł,Kategorie/tytuł,Blog_x0020_Author/tytuł" + 
             "&$Rozwiń = Blog_x0020_Author,Kategorie";

Mówisz SharePoint "daj mi tytuł dla wszystkich kategorii (Kategorie/tytuł). Rzeczywiste wartości dla Tytuł przez $Rozwińna liście Kategorie ING." (Mój spokojny parafrazując jest chyba dość luźne, ale to jak jestem interpretacji).

Jeśli robisz to za pomocą JavaScript i spojrzeć na dane wyjściowe przy użyciu skrzypek, masz coś takiego w zamian:

 

image

(Powyżej jest obiekt JSON)

Wyszukiwania ludzi poprzez odpoczynek

Mam blogu o tym osobno. Najważniejsze jest, aby określić parametr sourceid, którego wartość jest identyfikatorem GUID mieszkańców źródła zawartości. (Źródeł zawartości można nazwać zakresy i to jest moje oh-my nie tak trudno połączyć wszystko zakres dla mnie!).

Przeczytaj więcej o go tutaj: http://www.mstechblogs.com/paul/?p=10385

 

</koniec>

undefinedSubskrybowanie mój blog.

Follow me on Twitter wiek na http://www.twitter.com/pagalvin

Szybkie i łatwe: Tworzenie witryny programu SharePoint przy użyciu reszta

Istnieje wiele zasobów wokół tego pokazu, jak to zrobić, ale nie mogłem znaleźć link kompleksowe go do, Więc tu jesteśmy.

Można utworzyć witryny programu SharePoint przy użyciu interfejsu API REST.  Oto przykład pełni pieczone:

<!--
    SiteRequestForm.html: Zbieranie informacji i tworzenie strony internetowej dla użytkownika.
-->

<centrum>
<Tabela>
    <TR>
        <TD>Nazwa witryny:</TD>
        <TD><dane wejściowe Typ= "tekst" Nazwa= "Nazwa witryny" Identyfikator= "Nazwa witryny" /></TD>
    </TR>
    <TR>
        <TD colspan= "2">
            <dane wejściowe Typ= "submit" Identyfikator= "CreateSiteButton" wartość= "Utwórz witrynę" />
        </TD>
    </TR>
</Tabela>
</centrum>

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

<skrypt>
var CreateSiteLogicContainer = {

    createSiteData: {
            "parametry": {
                __metadata: { "typ": "SP.WebInfoCreationInformation" },
                Adres URL: "Paultest1",
                Tytuł: "Paultest1",
                Opis: "reszta utworzone sieci web przez Paul!",
                Język: 1033,
                Paź: "sts",
                UseUniquePermissions: FAŁSZ
            }
    },

    createSite: Funkcja () {

        jQuery.support.cors = PRAWDA;

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

            nagłówki: {
                "Akceptuj": "aplikacja/json; odata = verbose",
                "content-type": "aplikacja/json;odata = verbose",
                "X-RequestDigest": $("#__REQUESTDIGEST").Val()
            },

            dane: JSON.stringify(CreateSiteLogicContainer.createSiteData),

            sukces: Funkcja () { alarm("sukces"); },
            błąd: Funkcja () { alarm("błąd"); }

        });
    },

    wireUpForm: Funkcja () {
        $("#CreateSiteButton").Kliknij przycisk(Funkcja () {
            alarm("Się spróbować i tworzenia witryny.");
            CreateSiteLogicContainer.createSite();
        });
    }


}

CreateSiteLogicContainer.wireUpForm();

</skrypt>

Po pomyślnym, otrzymasz pakiet JSON w odpowiedzi jak to:

image

Mój klucz myśli i wiedza, ze to między innymi:

  • Ta metoda używa jQuery.  W moim przypadku, moja biblioteka jQuery znajduje się w ".../ plugins. "  Chcesz zmienić, wskaż lokalizację ulubionego JQ.
  • Można skopiować i wkleić cały fragment tego Web Part Edytor zawartości na stronie i powinno działać dobrze.  Będziesz chciał zmienić punkt końcowy połączenia API i upewnij się, że odwołanie JQ poprawnie.
  • Adres URL jest twój API punktu końcowego.  W moim przypadku, to jest tworzenie podstron pod https://bigapplesharepoint.com
  • Trzeba zapewnić elementu content-length. Niektóre wpisy na blogu i MSDN dokumentu oznacza, że można zrobić, ale stało się dla mnie automatycznie, które jest obsługiwane przez wywołanie .ajax $, sam.
  • Ten wiersz jest wymagane w celu uniknięcia odpowiedź "zakazane": "X-RequestDigest": $("#__REQUESTDIGEST").Val().  Istnieją inne sposoby na to, ale to jest bardzo ładne.  Straciłem link do bloga, że ten skrót.  H/T do Ciebie, tajemniczy blogger!

Powodzenia i spodziewać się ten współpracownik ktoś.

</koniec>

undefinedSubskrybowanie mój blog.

Follow me on Twitter wiek na http://www.twitter.com/pagalvin

Pokonać przykry Problem z względne adresy URL w SharePoint Quick Launch

Chciałem, aby dodać link do szybkiego uruchamiania nawigacji drugi dzień i powiedział mi, SharePoint:

image

Czysty tekst wersji, że jest:

Zapewnienia, że adres jest prawidłowy i zaczyna się albo prawidłowych znaków (znak numeru (#) lub ukośnika (/)) lub ważnego obsługiwany protokół (na przykład, "http://’, ' https://’, "plik://’, "ftp://’, "mailto:’, "Aktualności:’).

"Blech i ospy!"Powiedziałem.

Pewien workaround wobec to jest znaleźć znane link w ten szybki wprowadzić na rynek i zmienić jego zachowanie za pomocą JavaScript.

Wobec test ten, dodać nowy link do witryny testu dobrze reprezentuje:

image

Używałem jQuery. Aby rozwiązać problem, dostać niektórzy JavaScript i jQuery na stronę za pomocą swojego ulubionego technika i z linii kodu jak to:

 

$(dokument).gotowe( Funkcja () {

    $("a:zawiera("Test wymiany URL")").Kliknij przycisk(Funkcja () { alarm("Kliknij zmienione zachowanie!"); Powrót FAŁSZ;});

});

I twój wujek Bob.

Selektor jQuery znajdzie co <a> znacznik, że ma "Test URL wymiany" w jego imieniu. Może chcesz znaleźć utwór, który w zależności od łącza i takie.

Kliknij(Funkcja() zastępuje cokolwiek SharePoint chcieliby zrobić po kliknięciu przez użytkownika. Upewnij się, że ci "return false" lub inny to zrobi swoje rzeczy i spróbuj coś href zbyt, który jest prawie na pewno nie twój cel.

To zostało zrobione i badania w środowisku SharePoint online ale powinna działać dobrze w 2010 a wcześniej też.

</koniec>

undefinedSubskrybowanie mój blog.

Follow me on Twitter wiek na http://www.twitter.com/pagalvin

Szybkie i proste: SharePoint reszta rozmowy tylko zwraca 100 Rekordy

Pracuję na publicznej stronie internetowej stoi na mojej praktyce SharePoint tutaj w Nowy Jork i wykorzystuje wiele wywołań JavaScript i reszta pokazanie zawartości.

Podczas głównego rozwoju, Po prostu stworzyć małe dataset z 10 albo więc wiersze listy niestandardowej i moje reszta rozmowy z tam.  Raz wpadł na liście mają kilka kilkaset wierszy danych do testowania dla przewidywanego wzrostu, Dowiedziałem się, że był już dokładnie 100 wierszy zwracanych z powrotem na moje reszta rozmowy.

Jest to bardzo prosta sprawa, aby adres.  W moim przypadku (i uważam, że w większości przypadków), Domyślnie reszta wymaga programu SharePoint (i ewentualnie jak standardem?) Powrót 100 wiersze.  Zwraca więcej niż domyślny, Użyj parametru $top na Twój telefon, jak w:

Pobierz /Insights Dev/_api/web/lists/GetByTitle("MockBlog")/elementy?$Wybierz = ID,Tytuł,Kategorie/tytuł,Blog_x0020_Author/tytuł,DatePublished,BlogSummary&$Rozwiń = Blog_x0020_Author,Kategorie&$Filtr =&$góry = 9999

Wybrałem 9999 w tym przypadku od tego czasu wiem, że growth-wise, nie będzie więcej niż 200 lub tak wiersze dodane do tej listy w ciągu roku.  Jeśli staje się brzydka, możemy wdrożyć niektóre stronicowania w dół drogi.

</koniec>

undefinedSubskrybowanie mój blog.

Follow me on Twitter wiek na http://www.twitter.com/pagalvin

Szybkie i proste: Rozwiązać "parametr adresu URL” problem z UpdateListItems w lists.asmx

Podczas pracy z UpdateListItems przez lists.asmx, to jest łatwe do generowania błędu:

Nieprawidłowy adres URL parametr.

Podany adres URL zawiera nieprawidłowe polecenie lub wartość. Proszę sprawdzić adres URL ponownie.

Można dostać ten błąd, gdy zapomnisz włączenie ID w listy pól, aby zaktualizować.  To, jak dużo tych SP usług sieci web, jest nieco sprzeczne z intuicją, ponieważ trzeba dołączyć identyfikator atrybut ID <Metoda> elementu.  I nie jesteś aktualizacja ID i prawdopodobnie nigdy nie chcesz w pierwszej kolejności.

Działa ta koperta:

<soapenv:Koperta xmlns:soapenv ="http://schemas.xmlsoap.org/SOAP/Envelope/ ">
  <soapenv:Organ>                      
    <UpdateListItems xmlns ="http://schemas.Microsoft.com/SharePoint/SOAP/ ">                     
      <listName>{C712E2EA-54E1-47AD-9D99-1848C7773E2F}</listName>                     
        <Aktualizacje>                     
         <Partia OnError ="Nadal">
          <Metoda ID ="1" Cmd ="Aktualizacja">
            <W polu Nazwa ="CooperativeLock">zablokowany!</Pole>
            <W polu Nazwa ="IDENTYFIKATOR">1</Pole>
          </Metoda>
        </Partia>                     
        </Aktualizacje>                
      </UpdateListItems>             
  </soapenv:Organ>         
</soapenv:Koperta>

Jeśli pasek się odwołanie do pola ID następnie otrzymasz irytujący komunikat "Nieprawidłowy URL parametr".

</koniec>

undefinedSubskrybowanie mój blog.

Follow me on Twitter wiek na http://www.twitter.com/pagalvin