問題タブ [sharepoint-online]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
datetime - JavaScript DateTime をミリ秒なしで UTC に変換する
現在、人間が読める形式で書かれた日付を、SharePoint リストが受け入れる DateTime 文字列に解析しようとしています。これを行うには、次のような ISO に似た形式の文字列が必要であると判断しました2007-08-20T00:00:00Z
。SharePoint は、ミリ秒が含まれていない UTC の DateTimes のみを受け入れるようです (何らかの理由で、SharePoint はエラーを返し、ミリ秒を含めると DateTime を受け入れません)。そのため、事前にローカル時間を UTC 時間に変換する必要があります。 ISO文字列に変換します。
以下のコードが使用しているプロセスは次のとおりです。
- まず、DateJS を使用して人間の日付を JavaScript の日付に解析します。(問題なく動作しますが、DateJS は放棄されたようです。これを変更して MomentJS を使用する必要があるかもしれません。)
- 次に、UTC で新しい瞬間を作成しようとしました。(この行は非常に間違っており、プログラムがクラッシュします。)
- 次に、SPServices にそれを ISO に変換させます。SPServices は、DateTime からミリ秒を削除して、SharePoint がそれを受け入れるようにします。(正常に動作します)。
3 つの異なるライブラリをつなぎ合わせるのではなく、これを実現するためのよりエレガントで実用的な方法が必要であると確信しています。私はそれが何であるか分かりません。
sharepoint - SharePoint リストのユーザー フィールドに SharePoint ユーザーを書き込む適切な方法
ユーザーを SharePoint リストに書き込んでいます。
SharePoint ユーザー フィールドの内部に次のような文字列があることを読みました。
userId;#userLoginName
ユーザーフィールドに書き込むときに同じ方法で書式設定を試みました。たとえば、この文字列を書き込むと機能します。
9;#i:0#.f|membership|ectropy@example.org
しかし、(少なくとも私にとって)奇妙なことは、それが機能している9;#
ように見えること9
です。userLoginName
情報をまったく渡さなくても、loginId
話しているユーザーを認識するのに十分なようです。
これは、SharePoint User フィールドに書き込むときに必要なのは id だけであり、userLoginName
、または実際には の後のすべてloginId
が無関係であることを暗示しているようです。
ここでの私の推論は正しいですか?または、userLoginName 情報を省略した場合、予期しない結果が生じる可能性がありますか?
twitter-bootstrap - for ループ内のすべての項目で入力を求める
ページの読み込み時に、以下の JavaScript 関数を使用して SharePoint リストを調べ、現在のユーザーが管理者である要求があるかどうかを確認し、存在する場合は、これらの要求を承認または拒否できるようにします。
私の問題は、ブートストラップモーダルを使用して、未承認のリクエストごとにユーザーに入力を促すことができると思ったことです。たとえば、リクエストに関する情報を提供すると、承認または拒否ボタンをクリックして、以下のモックアップのようなプロンプトを使用して判断を下すことができます。彼らがこのリクエストについて決定を下したら、コードを少し実行して、このリクエストに関する決定を記録します。その後、for ループが終了するまで、次のリクエストについてプロンプトが表示されます。
残念ながら、ポップアップするブートストラップ モーダルは 1 つだけで、for ループが終了した後に表示されます。これは、見つかった一致する各アイテムに対するプロンプトの望ましい動作に適合しません。
基本的に、これを達成するための最良の方法が何であるかはわかりません。アラートと確認ボックスのように、希望どおりに実行を「一時停止」し、希望どおりに動作します。(たとえば、未承認のリクエストが 2 つあり、承認済みのリクエストが 1 つある場合、上記のコードは、予想どおり、2 つの「確認」ボックスと「アラート」をポップアップ表示します。)また、プロンプトに表示したくない「X」ボタンもあります (許可または拒否を明示的にクリックするように強制する必要があります)。
私が取るべきアプローチについて何か提案はありますか?
javascript - SharePoint Online REST - JavaScript/AJAX による画像のアップロード
SP.RequestExecutor ではなく、ネイティブ JavaScript/jQuery を使用して画像を SharePoint にアップロードしようとしています。
私は認証の問題を見事に簡単に解決したので、バイナリ ファイルをアップロードする方法を理解するだけです。ファイルにプレーンテキストを入れると、問題なくアップロードされますが、問題が発生しているのは単なるバイナリデータです。
これまでの私のコードは以下に含まれています。getToken()
それは事であり、使用する有効なダイジェスト オブジェクトを私に残します。*
また、ドキュメント ライブラリ名を'sで空白にしたことにも注意してください。
contentType
、設定のさまざまな値の組み合わせを多数試しましbinaryStringRequestBody: true
たが、画像が SharePoint に入ったときにまだ破損しています。
ファイルをバイナリに解析する現時点での私のコードは
ファイルが SharePoint にアップロードされていますが、表示またはダウンロードしようとするとファイルが破損しています。
バイナリ ファイルを SharePoint にアップロードする正しい方法について、誰かがガイダンスを提供できますか? (ajax呼び出しで)data: fileData,
ファイルdata: "A simple string",
のアップロードに置き換え、ダウンロードするとファイルの内容はA simple string
.
sharepoint-2013 - クライアント側オブジェクト モデルを使用して SharePoint アラートをプログラムで送信する
CSOM を使用してプログラムで SharePoint アラートを送信できるかどうか疑問に思っています。
私はアプリを作成しています。JavaScript を使用してユーザーにメッセージを送信できれば便利ですが、ユーザーに手動で [Alert Me] をクリックさせずにアラートを設定する方法があるようには思えません。アラート自体を設定します。
絶対にできない場合は知りたいので、他のアプローチを検討します。
c# - クライアント オブジェクト モデルのプロキシ サーバー経由で SharePoint Online に接続する
CSOM を使用して SharePoint Online サイトに直接接続するデスクトップアプリケーションがあります。ここでの問題は、この要求がプロキシ サーバー経由で行われる必要があることです。これまでに行ったことは、資格情報を含むプロキシ サーバーの設定を ClientContext の ExecutingWebRequest イベントに渡したことです。ただし、問題は SharePointOnlineCredentials クラスです。ClientContext の資格情報を設定する必要があります。このクラスのコンストラクターにユーザー ID とパスワードを渡すと、資格情報を検証するように SP に内部的に要求されます。現在、プロキシ ID/パスワードをこのクラスに設定/渡すことができないため、プロキシ サーバーが IdcrlException を取得している要求を拒否しています。以下は、私が現在使用しているサンプルコードです。
このコードは、認証を必要としないプロキシ サーバーで正常に実行されることが期待されます。構成できないのは、この SharePointOnlineCredentials です。また、SharePointOnlineCredentials の代わりに NetworkCredentials を使用しようとしました。コードは正常にコンパイルされますが、SP は Forbidden 例外をスローしています。
office365 - サンドボックス コードの実行要求がワーカー プロセス内で完了するのを待機中にタイムアウトが発生しました
Sharepoint 2010 Online (BPOS) サイトを使用しています。
リストの編集フォームにビジュアル サンドボックス ソリューションをデプロイしました。リストには約 4000 行が含まれています。
ユーザーがリスト アイテムを編集しようとすると、タイムアウト エラーが発生します。ただし、ユーザーがしばらく試行している間、編集フォームが開きます。
この問題の原因と解決策は何ですか?