Data source type

Oct 8, 2012 at 8:41 AM

Hi,

It's possible to deploy data sources with data source type set to Oracle?

Coordinator
Oct 8, 2012 at 9:27 PM

Hi

It's Currently not possible to deploy data sources to use Oralce connectoin.  I will work on a task to create which create a data source for any type.

Steve

Oct 12, 2012 at 6:44 PM
Edited Oct 12, 2012 at 7:04 PM

maybe i don't understand what is being asked, but we are using this and deploying with an oracle datasource.  We had to modify the ssrsmsbuildtask project dll.

First add Oracle to the enum. In DataProviderOprions.cs

     public enum DataProviderOprions
    {
        /// <summary>
        ///   SQL Server Provider.
        /// </summary>
        SQL = 0,

        /// <summary>
        ///   AS Provider.
        /// </summary>
        OLEDBMD = 1,


        /// <summary>
        /// added for oracle
        /// </summary>
        ORACLE = 2

 , then modify the three different deploymentManager.cs files. If you only use, R2 you COULD just modify R2DeploymentManger.cs. Something like this works great. 

       private DataSourceDefinition GetDataSourceDefinition(
            ReportServerDataSource dataSource, SqlConnectionStringBuilder sqlConStringBuilder)
        {
            // create a data source definition and apply default settings
            DataSourceDefinition definition = new DataSourceDefinition();
            this.SetDefaultDefinition(definition);

            // setting the conection string bas up the type
            switch (dataSource.Provider)
            {
                case DataProviderOprions.SQL:
                    definition.Extension = "SQL";
                    break;
                case DataProviderOprions.OLEDBMD:
                    definition.Extension = "OLEDB-MD";
                    break;
                case DataProviderOprions.ORACLE:
                    definition.Extension = "ORACLE";
                    break;
            }

 
            StringBuilder stringBuilder = new StringBuilder();
            stringBuilder.Append(string.Format("Data Source={0};", (object)sqlConStringBuilder.DataSource));
            if (!string.IsNullOrEmpty(sqlConStringBuilder.InitialCatalog))
                stringBuilder.Append(string.Format("Initial Catalog={0};", (object)sqlConStringBuilder.InitialCatalog));
            definition.ConnectString = ((object)stringBuilder).ToString();

   ....

   Hope this helps :)

  Thanks,

 Frank