2012-03-09 4 views
1

Вот сценарий. Я создаю отчеты PowerPivot, которые необходимо опубликовать на сайте SharePoint 2010. Отчеты должны обновлять базовые данные в ночное время - все данные поступают из списков SharePoint.Как изменить путь к ленте данных в рабочей книге PowerPivot?

Я создал файлы данных, которые мне нужны, и опубликовал их в надежной библиотеке документов. Я создал нужные мне книги и опубликовал их в надежной библиотеке документов. Когда я готов развернуть свое обновленное решение от моего dev до qa до uat в производственных средах, мне нужно изменить путь к фидам данных, чтобы отобразить новое имя сервера.

Кто-нибудь знает, как это сделать программно?

ответ

0

Если вы используете Excel 2013, этот блог поможет

http://www.powerpivotblog.nl/import-data-into-the-model-using-a-macro-in-excel-2013

Он показывает, как добавлять/редактировать conenction с помощью макросов. Это должно быть переносимым для других технологий, таких как .Net. Ключевой линией в макросе образца является

ActiveWorkbook.Connections.Add2 Name:="AzureDataMarketPlaceDataFeed", _ 
             Description:="My Data Feed", _ 
             ConnectionString:=MyConnStr, _ 
             CommandText:="demog1", _ 
             CreateModelConnection:=True 

Последняя часть вызывает подключение модели.

Насколько я знаю, это невозможно в более ранних версиях Excel/PowerPivot. Это изменение было включено благодаря более глубокой и более собственной интеграции ядра базы данных PowerPivot в память в Excel 2013 по сравнению с 2010 годом.