2015-11-10 54 views
0

的埃瓦命名空間記錄在這裏:我想用埃瓦API能夠調用是在Ewa.js方法/ EwaMoss.js腳本文件

https://msdn.microsoft.com/en-us/library/office/ee589018.aspx

這是很容易使用,但某些調用沒有記錄,並且沒有示例代碼。 Ewa.js的源代碼位於: https://s1-excel-15.cdn.office.net/x/sc/1662281009__layouts/App_Scripts/Ewa.js 但是它被最小化了。

如果你看看源代碼,你會看到有一個名爲「InsertDeleteCells」的調用。如果你在那裏放置一個斷點,然後試圖在編輯模式下從電子表格中刪除一行,那麼斷點將會被觸發。

有誰知道如何打這個電話?我假設起點是_Ewa和Ewa全局對象,並且我將不得不傳遞會話ID,我可以從Ewa.EwaControl獲得

或者,如果有人從微軟願意提供非最小化版本的Ewa.js和EwsMoss.js(可能叫做Ewa.debug.js和EwaMoss.debug.js),我可以完成剩下的工作。

+0

讓我看看我能不能追捕Ewa.js的非最小化版本......我會告訴你知道我是否。 –

+0

這將是驚人的。謝謝。 – zumalifeguard

回答

0

我查了一下Excel團隊。 Ewa.js調用的API純粹是內部的,所以它們可能(並且將會)隨着時間而改變。這就是爲什麼他們沒有記錄,爲什麼沒有非縮小版本。雖然您可能能夠共同攻擊這些API,但這樣的解決方案會非常脆弱並且容易破壞,所以我們不能誠懇地推薦這些解決方案。從本質上講,只有「Ewa」命名空間是公開的,而「_Ewa」之下的任何內容都是有意私有的。

希望這有助於

〜邁克爾Zlatkovsky,在Office擴展團隊開發,MSFT

+0

它的確如此。不幸的是,這意味着我無法從表中刪除一行。通過向表格下方的行添加數據,將行插入到表中。 Excel將使該行成爲表格的一部分。但是沒有辦法從表中刪除一行。令人遺憾的是,EwaInternalWebService.json REST API可用的全套命令尚未公開給EWA。我非常感謝你的幫助,邁克爾 – zumalifeguard

+0

順便說一句,新的API不會被添加到Ewa。例如,ExcelServices現在有SaveWorkbook等,Ewa中不存在的API,所以我不得不使用Shahar Prish的舊版ExcelServicesAjax.zip JavaScript包裝器。該代碼僅適用於早期版本的Internet Explorer。它甚至不會在IE11中工作,更不用說Chrome或FireFox。我不得不更新,以便我可以從JS調用ExcelServices調用。幸運的是,它和Ewa命名空間之間的SessionID是兼容的。我會喜歡只使用officejs – zumalifeguard