Сборка SSAS 2016 из Visual Studio CLI

Проекты SSAS не могут быть созданы с использованием MSBuild. Однако, как сообщается, проекты SSAS можно создавать с помощью Visual Studio или SSAS Helper (описание).

Используя графический интерфейс Visual Studio (devenv.exe), сборка моего табличного проекта SSAS 2016 действительно работает нормально:

Результаты сборки проекта SSAS Tabular 2016 в Visual Studio

Visual Studio также предоставляет интерфейс командной строки для неинтерактивного использования: devenv.com. Однако, хотя мой проект отлично строится с использованием графического интерфейса, он выдает ошибку при попытке сборки с использованием интерфейса командной строки:

сборка devenv.com выдает ошибку Ссылка на объект не соответствует экземпляру объекта

Как создать табличные проекты SSAS 2016 с помощью интерфейса командной строки? devenv.com использует для сборки другую библиотеку, кроме devenv.exe?

Предыстория / дополнительная информация / попытки:

Интерфейс командной строки SSAS Helper Sample дает ту же ошибку.

Интернет, похоже, не знает об этой проблеме ..

Мой файл smproj выглядит следующим образом:

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Development</Configuration>
    <SchemaVersion>2.0</SchemaVersion>
    <ProjectGuid>{8CE414BB-95B2-4C99-9E03-51BA72086E22}</ProjectGuid>
    <OutputType>Exe</OutputType>
    <RootNamespace>MyRootNamespace</RootNamespace>
    <AssemblyName>MyAssemblyName</AssemblyName>
    <EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
    <OutputPath>bin\</OutputPath>
    <Name>ProjectName_Tabular</Name>
    <DeploymentServerName>devserver</DeploymentServerName>
    <DeploymentServerEdition>Developer</DeploymentServerEdition>
    <DeploymentServerVersion>Version_11_0</DeploymentServerVersion>
    <DeploymentServerDatabase>ProjectName_Tabular</DeploymentServerDatabase>
    <DeploymentServerCubeName>Model</DeploymentServerCubeName>
    <DeploymentOptionProcessing>Default</DeploymentOptionProcessing>
    <DeploymentOptionTransactionalDeployment>False</DeploymentOptionTransactionalDeployment>
    <DeploymentOptionDirectQueryMode>InMemory</DeploymentOptionDirectQueryMode>
    <DeploymentOptionQueryImpersonation>Default</DeploymentOptionQueryImpersonation>
    <SccProjectName>SAK</SccProjectName>
    <SccProvider>SAK</SccProvider>
    <SccAuxPath>SAK</SccAuxPath>
    <SccLocalPath>SAK</SccLocalPath>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)' == 'Development' ">
    <OutputPath>bin\Development\</OutputPath>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
    <OutputPath>bin\Release\</OutputPath>
    <DeploymentServerEdition>Enterprise</DeploymentServerEdition>
    <DeploymentOptionProcessing>Full</DeploymentOptionProcessing>
  </PropertyGroup>
  <ItemGroup>
    <Compile Include="ProjectName_Tabular.bim">
      <SubType>Code</SubType>
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </Compile>
  </ItemGroup>
  <Import Project="$(MSBuildExtensionsPath)\Business Intelligence Semantic Model\1.0\Microsoft.AnalysisServices.VSHostBuilder.targets" />
</Project>

person vstrien    schedule 20.01.2017    source источник


Ответы (1)


Используя tabular, вы можете запустить msbuild. Например,

msbuild TabularProject8.smproj / многословие: m / target: Rebuild / property: Configuration = Release

person bdog    schedule 21.01.2017
comment
Это отличный обходной путь! Хотя devenv.com должен работать как devenv.exe ИМХО, по крайней мере, это может помочь мне построить мои решения (вместе с IntegrationServices.Build.dll для проектов SSIS) - person vstrien; 24.01.2017
comment
У меня нет опыта работы с devenv.exe, но примечание вверху этой страницы msdn.microsoft.com/en-us/library/xee0c8y7 (v = vs.140). aspx говорит, что для задач, связанных со сборкой, теперь рекомендуется использовать MSBuild вместо девенв - person bdog; 25.01.2017