月別アーカイブ: 2 月 2014

人々 検索範囲として指定するには、方法 / SharePoint を使用してコンテンツ ソース 2013 REST API

SharePoint を使用する理由を持っていた 2013 最初の時間の残りの部分を介して検索 API. 人を検索したいです。, ドキュメントではなく. ここでは学習キーをその GUID でコンテンツ ソースを指定します (またはこの場合少なくとも). 次の jQuery のスニペットに示す方法:

    loadExpertsAsync: 関数() {

        jQuery.support.cors = true;

        $.ajax({
            url: この.CreateFullApiUrl() +
                "?querytext = 'ポータル'&sourceid ='b09a7990-05ea-4af9-81ef-edfab16c4e31'" +
                "&selectproperties ='LinkedInProfileUrl,GoogleCirclesProfileUrl,BALargeProfilePictureUrls,BAGridPictures,WorkEmail,スキル,自己紹介,利益,氏名,PastProjects,PictureURL,PreferredName,TwitterHandle,LinkedInProfileUrl,PreferredName,GoogleCirclesProfileUrl'" +
                "&rowlimit = 99",
            メソッド: "取得",
            ヘッダー: { "受け入れる": "アプリケーション/json; odata = 詳細" },
            キャッシュ: false,
            成功: 関数 (結果) {

私の場合, 私は実行している API は、SharePoint に対するオンライン. GUID を取得するには, これらの手順:

  1. SharePoint 管理センターにアクセスします。
  2. 左側のナビゲーションから「検索」を選択します。
  3. 「結果ソースの管理」を選択します。
  4. 「地元の人々 の結果」を選択します。
  5. URL を見てください。.

私の URL のようなものに見えた:

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

Sourceid パラメーターが私の仕事.

(Sourceid 実際に可能性があります SP と永続的なもののようなものを理解します。, しかし、私はいつもとにかくチェックします🙂 ).

</終了>

undefined私のブログを購読します。.

私は Twitter の上に従ってください。 http://www.twitter.com/pagalvin

SharePoint 残り呼び出しの例

私の仕事もあなたを助けるかもしれないサンプル残り通話のセットを示します。. の 02/2014, 2つの例があります🙂

  1. その名前にスペースを含む列を参照します。
  2. 複数選択の列を参照します。
  3. 残りの部分を介して、人の検索を実行します。

 

私はこの時が経つにつれて追加します.

ここではいくつか便利なインキも見つけた:

その名前にスペースを含む列を参照します。

「ブログ作成者」という名前の列を持つカスタム リストを作成します。 (ブログと著者間のスペース).

その列を参照する $select です。:

image

単にスペースを「_x0020 _」に置き換える. 我々 は、インターネット全体の多くの例では _x0020 _ を参照してください、残りの部分は異なって.

そうしない場合, あなたはこのようなエラー メッセージを取得する責任を負う:

式 “ブログの著者” 無効です。.

簡単に十分な.

複数選択の参照列を参照します。

を設定します。:

  1. カテゴリという名前のカスタム リストを作成します。.
  2. いくつかのカテゴリを追加します。. Thusly カテゴリを追加:image
  3. MockBlog と呼ばれる別のカスタム リストを作成して、複数選択リストの列としてカテゴリを追加 (サイト列は、どのようにロールバックの場合または).

Mockblog リストにいくつかの項目を追加し、準備ができています。.

JQuery を使用して Ajax スタイルの呼び出しこのようなものになります。:

serverUrl   = "/_api、web、リスト、GetByTitle(' MockBlog')/項目" +
             "?$選択 = タイトル,カテゴリー/タイトル,Blog_x0020_Author/タイトル" + 
             "&$拡大 = Blog_x0020_Author,カテゴリ";

我々 は"私を与えるタイトルすべてのカテゴリに SharePoint を言っています。 (カテゴリー/タイトル). 実際の値を取得します。 タイトル 投稿 $展開ing カテゴリ リスト" (ゆっくり私言い換えがおそらくかなり緩んでいます。, これがどのようにそれを解釈するよ).

Fiddler を使用して、出力を見てくださいする JavaScript を介してこれをやっている場合, このような何かを取得します。:

 

image

(上記は、JSON オブジェクトです。)

残りの部分を介して、人の検索を実行します。

私はこれについてのブログ別に. キーは、sourceid 値がパラメーターを地元の人々 のコンテンツ ソースの GUID を指定するのには. (コンテンツ ソース使用のスコープと呼ばれる、それはすべて私のためのスコープと呼ぶ私-ああ-私は難しいないです。!).

続きを読むここで: http://www.mstechblogs.com/paul/?p=10385

 

</終了>

undefined私のブログを購読します。.

私は Twitter の上に従ってください。 http://www.twitter.com/pagalvin

迅速で簡単な: 残りの部分を使用して SharePoint サイトを作成します。

多くのリソースを示すの周りは、これを行う方法です。, 包括的な移動するリンクを見つけることができなかった, ので、ここで我々 は.

REST API を使用して SharePoint サイトを作成することができます。  ここでは完全に焼かれた例です。:

<!--
    SiteRequestForm.html: 情報を収集し、ユーザーのサイトを作成します。.
-->

<センター>
<テーブル>
    <tr>
        <td>サイト名:</td>
        <td><入力 タイプ"テキストを =" 名前"SiteName =" id"SiteName =" /></td>
    </tr>
    <tr>
        <td colspan="2">
            <入力 タイプ="を提出" id"CreateSiteButton =" ="サイトの作成" />
        </td>
    </tr>
</テーブル>
</センター>

<スクリプト src="../Plugins/jquery-1.11.0.min.js"></スクリプト>

<スクリプト>
var CreateSiteLogicContainer = {

    createSiteData: {
            パラメーター」": {
                _metadata: { "の種類": "。WebInfoCreationInformation" },
                Url: "Paultest1",
                タイトル: "Paultest1",
                説明: "残りの部分作成 web ポール!",
                言語: 1033,
                WebTemplate: "sts",
                UseUniquePermissions: false
            }
    },

    createSite: 関数 () {

        jQuery.support.cors = true;

        CreateSiteLogicContainer.createSiteData.parameters.Url = $("#SiteName").ヴァル();
        
        $.ajax({
            url: "https://bigapplesharepoint.sharepoint.com/NBAIADev/_api/web/webinfos/add",
            メソッド: "ポスト",

            ヘッダー: {
                "を受け入れる": 「アプリケーション/json; odata = 詳細",
                "コンテンツの種類": 「アプリケーション/json;odata = 詳細",
                「X RequestDigest": $(「# __REQUESTDIGEST").ヴァル()
            },

            データ: ために JSON.stringify(CreateSiteLogicContainer.createSiteData),

            成功: 関数 () { アラート("成功"); },
            エラー: 関数 () { アラート("エラー"); }

        });
    },

    wireUpForm: 関数 () {
        $("#CreateSiteButton").クリック(関数 () {
            アラート(「約をしようサイトを作成します。");
            CreateSiteLogicContainer.createSite();
        });
    }


}

CreateSiteLogicContainer.wireUpForm();

</スクリプト>

成功した場合, このような応答の JSON のパケットを取得します。:

image

キーの思いをこのから学んだこと:

  • このアプローチは、jQuery を使用します。  私の場合, 私の jQuery のライブラリがある"./プラグイン」。  お気に入りの JQ 場所を指すを変更したいと思う.
  • コピーして、ページ上のコンテンツ エディター Web パーツにその全体のスニペットを貼り付けるし、うまく動作するはずです。  API 呼び出しの終了点を変更し、JQ を正しく参照するかどうかを確認したくなります。.
  • この URL は、API エンドポイント基準です。  私の場合, それはの下にサブサイトを作成します。 https://bigapplesharepoint.com
  • コンテンツの長さを提供する必要はありません。. いくつかのブログの記事や MSDN ドキュメントはあなたが行うことを意味します, しかし私のために自動的に起こった, 私と仮定 $$.ajax 呼び出し自体によって処理されています。.
  • この行が「禁止」の応答を避けるために必要です。: 「X RequestDigest": $(「# __REQUESTDIGEST").ヴァル().  それを行う他の方法があります。, しかし、これはかなりいいです。  このショートカットを提供するブログへのリンクを失いました。  あなたに H/T, 神秘的なブロガー!

幸運は、この誰かを役に立てば幸い.

</終了>

undefined私のブログを購読します。.

私は Twitter の上に従ってください。 http://www.twitter.com/pagalvin

SharePoint クイック起動の相対 Url で厄介な問題を克服します。

サイド リンク バー ナビゲーション、他の日へのリンクを追加したいし、私に言った SharePoint:

image

純粋なテキストのバージョンがあります。:

URL が有効で、有効な文字のいずれかで始まることを確認します (番号記号 (#) またはフォワード スラッシュ (/)) または、有効なプロトコルのサポート (たとえば, ' http://’, ' https://’, ' ファイル://’, ' ftp://’, ' mailto:’, ' ニュース:’).

"オエッと pox!"私は言った.

Java スクリプトの設定を使用してクイック起動で知られているリンクを見つけるし、その動作をオーバーライドするこの回避策は.

これをテストするには, thusly、テスト サイトに新しいリンクを追加します。:

image

JQuery を使用されます。. それを解決するには, いくつかの JavaScript と jQuery のお好きな技法を使用してページ上に、このようなコードの行を取得します。:

 

$(ドキュメント).準備ができて( 関数 () {

    $("は:含まれています(' URL 置換をテスト ')").クリック(関数 () { アラート("変更されたクリック動作!"); 戻り値 false;});

});

ボブのあなたの叔父さんと.

JQuery セレクターを検索すべて <は> 「テスト URL 置換」は、その名前タグ. 検索を調整することによってあなたのリンクとこのようなします可能性があります。.

] をクリックして(関数() ユーザーがクリックしたときに、SharePoint が行っている何よりも優先されます。. 「False を返す」または他のそれはあなたのものを行うしようとして href こともを確認してください。, これはほぼ確実にあなたの目標.

これは、SharePoint のオンライン環境でテストする必要がありますがうまく動作 2010 以前のバージョンでも.

</終了>

undefined私のブログを購読します。.

私は Twitter の上に従ってください。 http://www.twitter.com/pagalvin

迅速かつ簡単な: SharePoint 残りの呼び出しのみを返します 100 レコード

私は私の SharePoint の練習ここでの公共直面している web サイトに取り組んでいます。 ニューヨーク 使用して JavaScript および残りの呼び出しの多くのコンテンツを表示.

メインラインの開発中に, だけで小さなデータセットを作成します。 10 または、カスタム リストと私の残りの部分の呼び出し行のでそこから引いた。  一度私は予想された成長のためのテストへのデータの数百行をリストに格上げ, 私は正確に得ていたことを発見 100 戻って私の残りの部分の呼び出しで返される行.

これはアドレスを非常に簡単なものです。  私の場合 (ほとんどの場合と考えていると), 既定の SharePoint に残りを呼び出します (業界標準として多分?) 戻り値 100 行します。  既定値以上に戻ります, $top パラメーターを使用して、あなたのコールに, ように:

/Insights Dev/_api/web/lists/GetByTitle を取得します。(' MockBlog')/項目?$選択 ID =,タイトル,カテゴリー/タイトル,Blog_x0020_Author/タイトル,DatePublished,BlogSummary&$拡大 = Blog_x0020_Author,カテゴリ&$フィルター =&$トップ = 9999

私を選んだ 9999 この場合以来私が知っている growth-wise, ない以上 200 またはので行 1 年でこのリストに追加されます。  不格好になる場合, 道のいくつかのページングを実装できます。.

</終了>

undefined私のブログを購読します。.

私は Twitter の上に従ってください。 http://www.twitter.com/pagalvin

迅速かつ簡単な: 「無効な URL パラメーターを解決します。” lists.asmx で UpdateListItems の問題

Lists.asmx を介して UpdateListItems を使用する場合, それは、エラーを生成する簡単です。:

無効な URL パラメーター.

指定された URL が無効なコマンドまたは値が含まれています. URL をもう一度確認してください。.

ID を忘れた場合は、このエラーを得ることができる、更新するフィールドの一覧です。  これは、, 多くの SP これらの web サービスのような, ID 属性には ID を含める必要があるので少し直感に反するが、 <メソッド> 要素。  あなたがいないと ID を更新し、たくないおそらく最初の場所で.

この SOAP エンベロープを動作します。:

<soapenv:封筒 xmlns:soapenv =' http://schemas.xmlsoap.org/soap/envelope/'>
  <soapenv:体>                      
    <UpdateListItems xmlns =' http://schemas.microsoft.com/sharepoint/soap/'>                     
      <姓>{C712E2EA-54E1-47AD-9D99-1848C7773E2F}</姓>                     
        <更新プログラム>                     
         <OnError バッチ =「続ける」">
          <メソッド ID ="1" Cmd ="更新">
            <フィールド名 ="CooperativeLock">ロックされています。!</フィールド>
            <フィールド名 =「ID">1</フィールド>
          </メソッド>
        </バッチ>                     
        </更新プログラム>                
      </UpdateListItems>             
  </soapenv:体>         
</soapenv:封筒>

ID フィールドの参照を取り除く場合は迷惑な「無効な URL パラメーター」メッセージを得るでしょう.

</終了>

undefined私のブログを購読します。.

私は Twitter の上に従ってください。 http://www.twitter.com/pagalvin