次の方法で共有


DTS アプリケーション プロパティの設定

新規 : 2005 年 12 月 5 日

SQL Server 2005 Integration Services (SSIS) で、引き続き SQL Server 2000 データ変換サービス (DTS) パッケージの実行が必要な場合に備えて、SQL Server 2005 Integration Services (SSIS) セットアップでは更新版の DTS ランタイム エンジンが提供されています。さらに、Web から更新版の DTS デザイナをダウンロードできます。SQL Server 2005 ツールを使用すると、ほとんどすべての DTS の機能に、使い慣れたデザイナおよびランタイム エンジンでアクセスできます。

ただし、SQL Server 2005 ツールでは、DTS の [パッケージのプロパティ] ダイアログ ボックスにあったアプリケーション全体の設定にはアクセスできなくなりました。これまで、これらの設定には、[データ変換サービス] ノードのポップアップ メニューで [プロパティ] を選択して起動する、SQL Server 2000 Enterprise Manager でアクセスできました。このトピックでは、これらの設定について説明します。また、編集可能なレジストリ エントリを編集して手動でこれらの設定を構成する方法、およびプログラムを使って DTS オブジェクト モデル内の該当メソッドを呼び出し、レジストリ エントリを変更することによりこれらの設定を構成する方法について説明します。

DTS アプリケーション プロパティ

このトピックでは、次の DTS アプリケーション プロパティについて説明します。

  • キャッシュ : [キャッシュをオンにする] (チェック ボックス)
    使用できるタスク、変換、スクリプト言語、および OLE DB プロバイダの一覧をキャッシュして、パフォーマンスを向上させます。
  • キャッシュ : [キャッシュを最新にする] (ボタン)
    上に示したキャッシュの一覧を更新します。
  • デザイナ : [DTS デザイナ内のマルチ フェーズ ポンプを表示する]
    詳細設定オプションの表示を有効にし、"変換元データ前関数" または "変換失敗時" などの特定のフェーズのデータ変換を個別に構成できるようにします。
  • デバッグ : [ジャストインタイム デバッギングを有効にする]
    開発者によるカスタム タスクのデバッグを実行可能にします。
  • Meta Data Services: [Meta Data Services への保存を有効にする]
    すべてのパッケージを Meta Data Services (リポジトリ) に保存できるようにします。
ms345198.note(ja-jp,SQL.90).gifメモ :
SQL Server 2005 ではリポジトリのサポートが制限されています。詳細については、「SQL Server 2005 Integration Services の旧バージョンとの互換性」の「Meta Data Services (リポジトリ) パッケージ」を参照してください。

レジストリでの DTS アプリケーション プロパティの設定

次に示す DTS アプリケーション プロパティを、レジストリを直接変更して手動で有効または無効にする場合は、親キー HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\80\DTS\Settings 内で各項目の REG_DWORD 値を 0 (有効) または 1 (無効) に設定します。

  • [キャッシュをオンにする]
    TasksCache

    TransformationsCache

    ScriptingLanguagesCache

    OLEDBProvidersCache

  • [DTS デザイナ内のマルチ フェーズ ポンプを表示する]
    DesignerSettings
  • [ジャストインタイム デバッギングを有効にする]
    JITDebug
ms345198.note(ja-jp,SQL.90).gifメモ :
レジストリ値を編集してキャッシュを更新することはできません。キャッシュの更新はプログラムによってのみ可能です。

次に示す DTS アプリケーション プロパティを、レジストリを直接変更して手動で有効または無効にする場合は、親キー HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\80\DTS\Settings 内で各項目の REG_DWORD 値を 0 (有効) または 1 (無効) に設定します。

  • [Meta Data Services への保存を有効にする]
    EnableSaveToRepository
ms345198.Caution(ja-jp,SQL.90).gif注意 :
[Meta Data Services への保存を有効にする] プロパティが有効な場合、[パッケージのプロパティ] ダイアログ ボックスでは、"警告 : Meta Data Services に保存されたパッケージは安全であるとは見なされません。パッケージを Meta Data Services に保存することを有効にしますか?" という警告が表示されました。

レジストリ スクリプトのサンプル

次のレジストリ スクリプトを .reg 拡張子を付けてテキスト ファイルに保存し、実行すると、このトピックで説明しているすべての DTS アプリケーション プロパティが有効になります。これらのプロパティを無効にするには、新しい値を 00000001 から 00000000 に変更します。

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\80\DTS\Settings]
"TasksCache"=dword:00000001
"TransformationsCache"=dword:00000001
"ScriptingLanguagesCache"=dword:00000001
"OLEDBProvidersCache"=dword:00000001
"DesignerSettings"=dword:00000001
"JITDebug"=dword:00000001

[HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\80\DTS\Settings]
"EnableSaveToRepository"=dword:00000001

DTS オブジェクト モデル内での DTS アプリケーション プロパティの設定

次に示す DTS アプリケーション プロパティを、プログラムにより有効または無効にするには、DTS Application オブジェクトの各値を True (有効) または False (無効) に設定します。

  • [キャッシュをオンにする]
    .TaskInfos.UseCache

    .TransformationInfos.UseCache

    .ScriptingLanguageInfos.UseCache

    .OLEDBProviderInfos.UseCache

  • [ジャストインタイム デバッギングを有効にする]
    .JITDebug

次に示す DTS アプリケーション オプションを、プログラムにより有効または無効にするには、DTS Application オブジェクトの各値を、DTSDesignerSettings 列挙から適切な値に設定します。

  • 有効 - DTSDesignerSettings.DTSDesigner_ShowMultiPhaseTransforms
  • 無効 - DTSDesignerSettings.DTSDesigner_Default
  • [DTS デザイナ内のマルチ フェーズ ポンプを表示する]
    .DesignerSettings

[Meta Data Services への保存を有効にする] プロパティの値は、DTS オブジェクト モデルを使用して設定できません。このプロパティを設定するには、次のサンプルで示すように、.NET Framework クラス ライブラリの Microsoft.Win32 名前空間内にある Registry クラスを使用します。

サンプル コード

コンソール アプリケーション用のサンプル コードを次に示します。このコードをコンパイルして実行すると、このトピックで説明している DTS アプリケーションのすべてのプロパティが有効になります。これらのオプションを無効にする場合は、新しい値を True から False に変更し、DesignerSettings プロパティの値を DTSDesignerSettings.DTSDesigner_Default に変更します。

このアプリケーションでは、Microsoft DTSPackage Object Library (COM) への参照が必要になります。

[Meta Data Services への保存を有効にする] オプションの値は、レジストリを直接変更することによってのみ設定できます。

Imports Microsoft.Win32
Imports DTS

Module SetDTSProperties

  Sub Main()

    Const SETTINGS_ROOT_KEY As String = "Software\Microsoft\Microsoft SQL Server\80\DTS\Settings"
    Const METADATASERVICES_VALUE As String = "EnableSaveToRepository"

    Dim dtsApp As New DTS.Application
    Dim keySettingsRoot As RegistryKey

    With dtsApp
      .TaskInfos.UseCache = True
      .TransformationInfos.UseCache = True
      .ScriptingLanguageInfos.UseCache = True
      .OLEDBProviderInfos.UseCache = True
      .DesignerSettings = DTSDesignerSettings.DTSDesigner_ShowMultiPhaseTransforms
      .JITDebug = True
    End With

    keySettingsRoot = Registry.LocalMachine.OpenSubKey(SETTINGS_ROOT_KEY, True)
    If keySettingsRoot Is Nothing Then
      keySettingsRoot = Registry.LocalMachine.CreateSubKey(SETTINGS_ROOT_KEY)
    End If
    With keySettingsRoot
      .SetValue(METADATASERVICES_VALUE, Math.Abs(CType(True, Integer)))
      .Close()
    End With

  End Sub

End Module
using Microsoft.Win32;
using DTS;

class SetDTSProperties
{

  public static void Main()
  {

    const string SETTINGS_ROOT_KEY = "Software\\Microsoft\\Microsoft SQL Server\\80\\DTS\\Settings";
    const string METADATASERVICES_VALUE = "EnableSaveToRepository";

    DTS.Application dtsApp = new DTS.Application();
    RegistryKey keySettingsRoot;

    {
      dtsApp.TaskInfos.UseCache = true;
      dtsApp.TransformationInfos.UseCache = true;
      dtsApp.ScriptingLanguageInfos.UseCache = true;
      dtsApp.OLEDBProviderInfos.UseCache = true;
      dtsApp.DesignerSettings = DTSDesignerSettings.DTSDesigner_ShowMultiPhaseTransforms;
      dtsApp.JITDebug = true;
    }

    keySettingsRoot = Registry.LocalMachine.OpenSubKey(SETTINGS_ROOT_KEY, true);
    if (keySettingsRoot==null)
    {
      keySettingsRoot = Registry.LocalMachine.CreateSubKey(SETTINGS_ROOT_KEY);
    }
    {
      keySettingsRoot.SetValue(METADATASERVICES_VALUE, Math.Abs((int) true));
      keySettingsRoot.Close();
    }

  }

}

次のサブルーチンをアプリケーションに追加すると、必要に応じてキャッシュを更新できます。キャッシュ値は、レジストリの HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\80\DTS\Enumeration の下に格納されます。

  Private Sub RefreshCache()

    Me.Cursor = Cursors.WaitCursor
    With dtsApp
      .TaskInfos.Refresh()
      .TransformationInfos.Refresh()
      .ScriptingLanguageInfos.Refresh()
      .OLEDBProviderInfos.Refresh()
    End With
    Me.Cursor = Cursors.Default

  End Sub
  private void RefreshCache()
  {

    this.Cursor = Cursors.WaitCursor;
    {
      dtsApp.TaskInfos.Refresh();
      dtsApp.TransformationInfos.Refresh();
      dtsApp.ScriptingLanguageInfos.Refresh();
      dtsApp.OLEDBProviderInfos.Refresh();
    }
    this.Cursor = Cursors.Default;

  }

参照

概念

SQL Server 2005 Integration Services の旧バージョンとの互換性
データ変換サービスのアップグレードまたは移行

ヘルプおよび情報

SQL Server 2005 の参考資料の入手