Я получаю эту ошибку: «Невозможно получить доступ к защищенному члену GetService без подкласса Python Document» в этой строке кода ... »progressService = Document.GetService (ProgressService)"
Код нижеподразумевается, чтобы предложить сохранить как диалоговое окно и сохранить файл в папку в определенном месте.
Вот код:
import clr
clr.AddReference("System.Windows.Forms")
from System.Windows.Forms import
MessageBox,Form,MessageBoxButtons,DialogResult
from Spotfire.Dxp.Application import DocumentSaveSettings
from Spotfire.Dxp.Framework.Library import *
from Spotfire.Dxp.Framework.ApplicationModel import ProgressService
message="Would you like to save the file"
caption="Save to Library"
reply=MessageBox.Show(message,caption,MessageBoxButtons.YesNo)
def savetoLibrary():
folderName = r"C:\Users\Documents\NEW"
fileName = "TESTNEW.xlsx"
libraryManager = Document.GetService(LibraryManager)
success, libraryFolder = libraryManager.TryGetItem(folderName, LibraryItemType.Folder)
settings = DocumentSaveSettings()
Application.SaveAs(libraryFolder,fileName,LibraryItemMetadataSettings(), settings);
if reply==DialogResult.Yes:
progressService = Document.GetService(ProgressService)
progressService.ExecuteWithProgress("Saving to Library", "Saving analysis", savetoLibrary)
Настройте диспетчер библиотек и убедитесь, что мы можем получить доступ к указанному пути к папке