0
SharePoint OnlineでホストされるカスタムPowerPoint Officeアドインを使用しています。 JavaScript APIを使用して、現在のスライドIDなどのデッキに関する情報を取得しています。OfficeアドインからSharePoint O365ドキュメントIDを取得する方法
Office.initialize = function (reason) {
$(document).ready(function() {
Office.context.document.addHandlerAsync('documentSelectionChanged', onDocumentSelectionChanged);
onDocumentSelectionChanged();
});
};
function onDocumentSelectionChanged() {
Office.context.document.getSelectedDataAsync(Office.CoercionType.SlideRange,
function (result) {
if (result.status === Office.AsyncResultStatus.Succeeded) {
var slideId = result.value.slides[0].id;
}
});
}
現在のSharePointドキュメントのID(guid)を取得するためのAPIが見つかりません。これはOffice APIの一部ですか、それとも別の方法でIDを取得できますか?
アドインはメインウィンドウとは別のドメインのiframeにレンダリングされるため、アドレスバーのURLを読み取ることはできません。 – Jared
必要なトークンパラメータとしてSourceDocをアドインに渡すことができました。今度はwindow.nameにjson文字列として移動しました。そのため、JSON.parse(window.name).xdmInfoとURLをクリーンアップするための少し余分な文字列操作が必要になります。これには、sharepoint内のドキュメントのsharepoint URLとGUIDが含まれます。 – Maarten
うわー、ありがとう!私はそれを受け入れることができるようにこれを回答として追加してください。私の最初の検索では、この "フィーチャー"のドキュメントは表示されませんが、私は探し続けます。そして、私はこれをちょっときれいにしますが、このスニペットは私にドキュメントIDを与えます: 'JSON.parse(window.name).xdmInfo.split( '|')[2] .match(/ [a-z0-9 ] {32} /) ' – Jared