|
Программное (xmla) добавление таблицы в DataSourceView.
|
|||
---|---|---|---|
#18+
Уважаемые Форумчане. Прежде всего перерыл много интернетов и так и не нашел ни одного толкового материала по XMLA. На сайте Microsoft - только очень краткое описание. Прежде всего - вопрос: где найти толковые материалы по XMLA ? Ну и конrретный вопрос на котором застрял. MSAS 2017, сервер "OLAP", источник данных: "MyDS", представление источника данных: "MyDS". В представлении источника данных уже есть таблицы и представления, в базе есть измерения, кубы. Необходимо добавить в источник данных еще одну таблицу. Руками в Visual Studio это сделать не сложно. Проблема в том, что нужно это сделать программно. Например программно добавить таблицу из двух колонок: "DocTypes" ID [char(6)] Name[char(50)]) Именно "добавить" к существующим. Скрипт, описанный ниже - нужную таблицу добавляет, а все остальные удаляет. А хотелось, чтобы и все существующие остались и новая была добавлена. Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56.
... |
|||
:
Нравится:
Не нравится:
|
|||
16.03.2018, 17:30 |
|
Программное (xmla) добавление таблицы в DataSourceView.
|
|||
---|---|---|---|
#18+
Vlad_Molodoj, зачем? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.03.2018, 18:11 |
|
Программное (xmla) добавление таблицы в DataSourceView.
|
|||
---|---|---|---|
#18+
в XMLA есть Create, Alter, Delete, у тебя однозначно Create (т.е. пересоздание обьекта с нуля) кроме того в DSV могут быть связи с другими обьектами да и XMLA имеет выраженную тенденцию к содержанию полной дефиниции обьекта (а не только добавляемой части) даже при его изменении. либо вытаскивай сначала оригинальную дефиницию DSV, вноси изменения - потом посылай модифицированный на сервер через Alter. либо (лучше) используй AMO, там есть Add обьектов в DSV. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.03.2018, 19:13 |
|
Программное (xmla) добавление таблицы в DataSourceView.
|
|||
---|---|---|---|
#18+
vikkivлибо вытаскивай сначала оригинальную дефиницию DSV, вноси изменения - потом посылай модифицированный на сервер через Alter. Пугает своей сложностью. Но попробую. vikkivлибо (лучше) используй AMO, там есть Add обьектов в DSV. DLL-ка реализующая AMO вроде не ActiveX, а .NET-сборка, начиная с SS2008 или я не прав? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.03.2018, 12:20 |
|
Программное (xmla) добавление таблицы в DataSourceView.
|
|||
---|---|---|---|
#18+
vikkivлибо вытаскивай сначала оригинальную дефиницию DSV.... А как это сделать программно? В Management Studio- просто... по правой кнопке мыши... А вот как получить программно это дерево? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2018, 18:53 |
|
Программное (xmla) добавление таблицы в DataSourceView.
|
|||
---|---|---|---|
#18+
Vlad_Molodoj, всё то-же AMO : Microsoft.AnalysisServices.Scripter (в примере обьект DataSource а не View т.к. код коротче), PowerShell Code: Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
потом на сервере можно XMLA выполнить через Execute() только наверное легче было-бы без возни с XMLA напрямую работать с DataSourceView родными методами и потом Update() обьекта. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2018, 20:46 |
|
|
Start [/forum/topic.php?fid=49&tid=1857943&gotonew=1]: |
0ms |
get settings: |
0ms |
get forum list: |
6ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
55ms |
get topic data: |
9ms |
get first new msg: |
2ms |
get forum data: |
1ms |
get page messages: |
19ms |
update_topic_read_status (1857943): 18.03.2018 20:46:04: |
0ms |
get tp. blocked users: |
0ms |
get online users: |
36ms |
check new: |
1ms |
others: | 100ms |
total: | 231ms |
0 / 0 |